Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 10 Dec 2007 17:25:50 +0300
From:      Boris Samorodov <bsam@ipt.ru>
To:        freebsd-stable@FreeBSD.org
Subject:   Re: RELENG_7: GENERIC and options LOCK_PROFILING are breaking sockstat and netstat -a
Message-ID:  <74426321@bb.ipt.ru>
In-Reply-To: <20071210112201.GA1117@menantico.com> (Skip Ford's message of "Mon\, 10 Dec 2007 06\:22\:01 -0500")
References:  <86910657@bb.ipt.ru> <20071210112201.GA1117@menantico.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 10 Dec 2007 06:22:01 -0500 Skip Ford wrote:

> Boris Samorodov wrote:
> > The system updated a couple of hours ago (RELENG_7), the kernel config
> > is GENERIC with "options LOCK_PROFILING", default /etc/make.conf, i386
> > (I have this problem at current-amd64 as well):
> > -----
> > bb% uname -a
> > FreeBSD bb.ipt.ru 7.0-BETA4 FreeBSD 7.0-BETA4 #1: Mon Dec 10 10:12:24 MSK 2007     root@bb.ipt.ru:/usr/obj/usr/src/sys/GENERIC  i386
> > bb% sockstat
> > sockstat: struct xtcpcb size mismatch
> > sockstat: struct xinpcb size mismatch
> > sockstat: struct xunpcb size mismatch
> > sockstat: struct xunpcb size mismatch
> > USER     COMMAND    PID   FD PROTO  LOCAL ADDRESS         FOREIGN ADDRESS      
> > bb% netstat -a | head
> > Active UNIX domain sockets
> > Address  Type   Recv-Q Send-Q    Inode     Conn     Refs  Nextref Addr
> >        0 #0     131073      0 ca5c6580        0        0        0 
> >        0 #0          1      0        0 d36bda90        0        0 
> >        0 #0          1      0        0 d2e11750        0        0
> >        0 #0          1      0        0 d36bdd00        0        0 
> >        0 #0          1      0        0 d2e120d0        0        0
> >        0 #0          1      0        0 d2e128f0        0        0
> >        0 #0          1      0        0 d2e12820        0        0
> >        0 #0     262145      0        0 d2e12a90        0        0 
> > -----
> > 
> > Can somebody confirm?
> > Is it a feature?
> > Should I file a PR?

> That error occurs when your kernel and world are out of sync.  You need to
> rebuild netstat(1) and sockstat(1) with LOCK_PROFILING defined to match your
> kernel, or rebuild your kernel without the option LOCK_PROFILING to match
> your world.

Ah, that's it! The world is also affected by this option. It's not
clear from LOCK_PROFILING(9):
-----
NOTES
     The LOCK_PROFILING option increases the size of struct lock_object, so a
     kernel built with that option will not work with modules built without
     it.
-----

I've read it as if only kernel (i.e. modules) should be at sync...

Thanks for the point!


WBR
-- 
Boris Samorodov (bsam)
Research Engineer, http://www.ipt.ru Telephone & Internet SP
FreeBSD committer, http://www.FreeBSD.org The Power To Serve



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