Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Sep 2007 05:59:00 GMT
From:      Kip Macy <kmacy@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 126708 for review
Message-ID:  <200709230559.l8N5x05g020881@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=126708

Change 126708 by kmacy@kmacy_home:ethng on 2007/09/23 05:58:54

	remove attempt to only call rt_check when needed
	the locking is far more convoluted than it appears

Affected files ...

.. //depot/projects/ethng/src/sys/netinet/if_ether.c#4 edit

Differences ...

==== //depot/projects/ethng/src/sys/netinet/if_ether.c#4 (text+ko) ====

@@ -358,7 +358,7 @@
 	struct llinfo_arp *la = NULL;
 	struct rtentry *rt = NULL;
 	struct sockaddr_dl *sdl;
-	int error = 0;
+	int error;
 
 	if (m->m_flags & M_BCAST) {	/* broadcast */
 		(void)memcpy(desten, ifp->if_broadcastaddr, ifp->if_addrlen);
@@ -370,11 +370,7 @@
 	}
 
 	if (rt0 != NULL) {
-		if (((rt0->rt_flags && RTF_UP) == 0) ||
-		    ((rt0->rt_flags & RTF_GATEWAY) && (rt0->rt_gateway == NULL)))
-			error = rt_check(&rt, &rt0, dst);
-		else
-			rt = rt0;
+		error = rt_check(&rt, &rt0, dst);
 		if (error) {
 			m_freem(m);
 			return error;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200709230559.l8N5x05g020881>