cvs commit: src/sys/netinet tcp_input.c tcp_syncache.c tcp_var.h

Robert Watson rwatson at FreeBSD.org
Sun Jun 18 08:18:08 UTC 2006


On Sun, 18 Jun 2006, Maxim Konovalov wrote:

> On Sun, 18 Jun 2006, 01:37+0100, Robert Watson wrote:
>
>> On Sat, 17 Jun 2006, Andre Oppermann wrote:
>>
>>>  Revision  Changes    Path
>>>  1.299     +9 -6      src/sys/netinet/tcp_input.c
>>>  1.87      +286 -255  src/sys/netinet/tcp_syncache.c
>>>  1.130     +9 -6      src/sys/netinet/tcp_var.h
>>
>> This change appears to have broken world on all architectures by exposing 
>> the mutex data structure to usr.bin/netstat/inet.c via tcp_var.h.  I'm not 
>> quite sure what the "right" solution is, but if
>
> usr.bin/systat/netstat.c and usr.bin/netstat/inet.c 
> contrib/bsnmp/snmp_mibII/mibII_tcp.c as well.
>
> +#include <sys/callout.h> fixes the build.

But is increasing the exposure of kernel data structures to user space apps 
the right fix, or decreasing them?  Andre fell into this trap precisely 
because of the leakage of kernel types into user space, and that's just one of 
several good reasons not to do it where it can possibly be avoided.

Robert N M Watson
Computer Laboratory
University of Cambridge


More information about the cvs-src mailing list