Removing queue length check in ip_output (was Re: buf_ring in HEAD is racy)

Navdeep Parhar np at FreeBSD.org
Thu Dec 19 20:03:35 UTC 2013


On 12/19/13 11:59, Adrian Chadd wrote:
> How's this?
> 
> Index: sys/netinet/ip_output.c
> ===================================================================
> --- sys/netinet/ip_output.c     (revision 259474)
> +++ sys/netinet/ip_output.c     (working copy)
> @@ -123,7 +123,9 @@
>         struct mbuf *m0;
>         int hlen = sizeof (struct ip);
>         int mtu;
> +#if 0
>         int n;  /* scratchpad */
> +#endif
>         int error = 0;
>         struct sockaddr_in *dst;
>         const struct sockaddr_in *gw;
> @@ -431,6 +433,25 @@
>         }
> 
>         /*
> +        * Both in the SMP world, pre-emption world if_transmit() world,
> +        * the following code doesn't really function as intended any further.

Doesn't make sense in the tx multiqueue world either.  (which queue is
this piece of code checking?)

Navdeep


More information about the freebsd-net mailing list