This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: [2.6 patch] unexport uts_sem
- From: Christoph Hellwig <hch at infradead dot org>
- To: "Frank Ch. Eigler" <fche at redhat dot com>
- Cc: Christoph Hellwig <hch at infradead dot org>, Adrian Bunk <bunk at kernel dot org>, linux-kernel at vger dot kernel dot org, "David S. Miller" <davem at sunset dot davemloft dot net>, Andrew Morton <akpm at linux-foundation dot org>, systemtap at sources dot redhat dot com, usb-storage at lists dot one-eyed-alien dot net, linux-cifs-client at lists dot samba dot org, linux-nfs at vger dot kernel dot org
- Date: Wed, 21 May 2008 08:37:00 -0400
- Subject: Re: [2.6 patch] unexport uts_sem
- References: <20080505182937.GZ17139@cs181133002.pp.htv.fi> <y0mwsloq4kc.fsf@ton.toronto.redhat.com> <20080520172730.GA2361@infradead.org> <20080520183802.GA686@redhat.com>
On Tue, May 20, 2008 at 02:38:02PM -0400, Frank Ch. Eigler wrote:
> Sorry, I misspoke - this check is intended not to cross-check
> kernel-devel and the kernel itself, but the debuginfo or similar data
> that is given to describe target of a systemtap script. I guess for
> new enough kernels we'll just do that using buildid hash codes.
>
> By the way, there do appear to be a few suspect in-tree users of
> utsname() without uts_sem locking (usb/storage/usb.c
Just a debug printk. Note sure why this particular one needs to
print the version, but if it really wants to do it it should rather use
UTS_RELEASE.
> cifs/connect.c,
This one is quite fishy. Not sure what it needs the name for but the
kernel utsname is probably a bad choise. And yes, this one actually
is racy because the host name can change.
> char/random.c,
random.c is always built-in and utsname is called during the
single-threaded kernel initialization phase, so this is safe.
> fs/lockd/clntproc.c, ...).
Yes, this one is racy. Should probably be fixed by starting lockd
with CLONE_NEWUTS so that it never changed during it's lifetime.
It's probably not a good idea when it changes with outstanding lockd
request anyway.
> If these need to be fixed,
> then wouldn't uts_sem need to come back exported?