linux-hotplug.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Udev 147 (and above) dependencies
@ 2009-11-17  7:30 mblanchard.ext
  2009-11-17  7:46 ` Matthias Schwarzott
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: mblanchard.ext @ 2009-11-17  7:30 UTC (permalink / raw)
  To: linux-hotplug

Hi,

I tried to compile the lastest Udev 147 on a system running linux kernel 2.6.31 and glibc 2.8. This attempt failed because the SOCK_CLOEXEC constant is not defined in my glibc header /usr/include/bits/socket.h. After a small investigation, I found the following: kernel support of SOCK_CLOEXEC was introduced in the 2.6.27 release. However, the glibc support was introduced in glibc 2.9. I believe this dependency should be precised in the Udev README.


Regards,

Mickaël Blanchard.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Udev 147 (and above) dependencies
  2009-11-17  7:30 Udev 147 (and above) dependencies mblanchard.ext
@ 2009-11-17  7:46 ` Matthias Schwarzott
  2009-11-17  9:34 ` Kay Sievers
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Matthias Schwarzott @ 2009-11-17  7:46 UTC (permalink / raw)
  To: linux-hotplug

On Dienstag, 17. November 2009, mblanchard.ext@orange-ftgroup.com wrote:
> Hi,
>
> I tried to compile the lastest Udev 147 on a system running linux kernel
> 2.6.31 and glibc 2.8. This attempt failed because the SOCK_CLOEXEC constant
> is not defined in my glibc header /usr/include/bits/socket.h. After a small
> investigation, I found the following: kernel support of SOCK_CLOEXEC was
> introduced in the 2.6.27 release. However, the glibc support was introduced
> in glibc 2.9. I believe this dependency should be precised in the Udev
> README.
>
I think udev-147 even requires kernel 2.6.29 headers, as this is the first 
release in which bsg.h is exported.

Matthias

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Udev 147 (and above) dependencies
  2009-11-17  7:30 Udev 147 (and above) dependencies mblanchard.ext
  2009-11-17  7:46 ` Matthias Schwarzott
@ 2009-11-17  9:34 ` Kay Sievers
  2009-11-17  9:53 ` Matthias Schwarzott
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Kay Sievers @ 2009-11-17  9:34 UTC (permalink / raw)
  To: linux-hotplug

On Tue, Nov 17, 2009 at 08:46, Matthias Schwarzott <zzam@gentoo.org> wrote:
> On Dienstag, 17. November 2009, mblanchard.ext@orange-ftgroup.com wrote:
>> I tried to compile the lastest Udev 147 on a system running linux kernel
>> 2.6.31 and glibc 2.8. This attempt failed because the SOCK_CLOEXEC constant
>> is not defined in my glibc header /usr/include/bits/socket.h. After a small
>> investigation, I found the following: kernel support of SOCK_CLOEXEC was
>> introduced in the 2.6.27 release. However, the glibc support was introduced
>> in glibc 2.9. I believe this dependency should be precised in the Udev
>> README.
>>
> I think udev-147 even requires kernel 2.6.29 headers, as this is the first
> release in which bsg.h is exported.

bsg was added in 2.6.23.

Kay

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Udev 147 (and above) dependencies
  2009-11-17  7:30 Udev 147 (and above) dependencies mblanchard.ext
  2009-11-17  7:46 ` Matthias Schwarzott
  2009-11-17  9:34 ` Kay Sievers
@ 2009-11-17  9:53 ` Matthias Schwarzott
  2009-11-17 10:26 ` mblanchard.ext
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Matthias Schwarzott @ 2009-11-17  9:53 UTC (permalink / raw)
  To: linux-hotplug

On Dienstag, 17. November 2009, Kay Sievers wrote:
> On Tue, Nov 17, 2009 at 08:46, Matthias Schwarzott <zzam@gentoo.org> wrote:
> > On Dienstag, 17. November 2009, mblanchard.ext@orange-ftgroup.com wrote:
> >> I tried to compile the lastest Udev 147 on a system running linux kernel
> >> 2.6.31 and glibc 2.8. This attempt failed because the SOCK_CLOEXEC
> >> constant is not defined in my glibc header /usr/include/bits/socket.h.
> >> After a small investigation, I found the following: kernel support of
> >> SOCK_CLOEXEC was introduced in the 2.6.27 release. However, the glibc
> >> support was introduced in glibc 2.9. I believe this dependency should be
> >> precised in the Udev README.
> >
> > I think udev-147 even requires kernel 2.6.29 headers, as this is the
> > first release in which bsg.h is exported.
>
> bsg was added in 2.6.23.
>
Yes, and this commit exported it to userspace, so it got installed 
below /usr/include. So 2.6.29 were the first linux-headers to contain bsg.h

commit a229fc61ef0ee3c30fd193beee0eeb87410227f1
Author: Boaz Harrosh <bharrosh@panasas.com>
Date:   Mon Jan 19 10:37:38 2009 +0100
include/linux: Add bsg.h to the Kernel exported headers


Matthias

^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: Udev 147 (and above) dependencies
  2009-11-17  7:30 Udev 147 (and above) dependencies mblanchard.ext
                   ` (2 preceding siblings ...)
  2009-11-17  9:53 ` Matthias Schwarzott
@ 2009-11-17 10:26 ` mblanchard.ext
  2009-11-17 10:30 ` mblanchard.ext
  2009-11-17 17:11 ` Bryan Kadzban
  5 siblings, 0 replies; 7+ messages in thread
From: mblanchard.ext @ 2009-11-17 10:26 UTC (permalink / raw)
  To: linux-hotplug

 

-----Message d'origine-----
De : Matthias Schwarzott [mailto:zzam@gentoo.org] 
Envoyé : mardi 17 novembre 2009 10:53
À : linux-hotplug@vger.kernel.org
Cc : Kay Sievers; zze-FS DEAN BLANCHARD M ext RD-RESA-LAN
Objet : Re: Udev 147 (and above) dependencies

On Dienstag, 17. November 2009, Kay Sievers wrote:
> On Tue, Nov 17, 2009 at 08:46, Matthias Schwarzott <zzam@gentoo.org> wrote:
> > On Dienstag, 17. November 2009, mblanchard.ext@orange-ftgroup.com wrote:
> >> I tried to compile the lastest Udev 147 on a system running linux 
> >> kernel
> >> 2.6.31 and glibc 2.8. This attempt failed because the SOCK_CLOEXEC 
> >> constant is not defined in my glibc header /usr/include/bits/socket.h.
> >> After a small investigation, I found the following: kernel support 
> >> of SOCK_CLOEXEC was introduced in the 2.6.27 release. However, the 
> >> glibc support was introduced in glibc 2.9. I believe this 
> >> dependency should be precised in the Udev README.
> >
> > I think udev-147 even requires kernel 2.6.29 headers, as this is the 
> > first release in which bsg.h is exported.
>
> bsg was added in 2.6.23.
>
Yes, and this commit exported it to userspace, so it got installed below /usr/include. So 2.6.29 were the first linux-headers to contain bsg.h

commit a229fc61ef0ee3c30fd193beee0eeb87410227f1
Author: Boaz Harrosh <bharrosh@panasas.com>
Date:   Mon Jan 19 10:37:38 2009 +0100
include/linux: Add bsg.h to the Kernel exported headers


Matthias


Thanks for your feedback. According to the various elements mentioned, the minimal requirements for a successful kernel compilation are:
- Glibc 2.9 (for SOCK_CLOEXEC support in the glibc header /usr/include/bits/socket.h),
- Linux kernel headers 2.6.29 (for bsg.h support)

Actually, I think Glibc 2.9 supports SOCK_CLOEXEC properly even without the associated kernel support: this one is optional and activated when specifying, at least, the '--enable-kernel=2.6.27' at Glibc compilation. However, as kernel headers 2.6.29 are mandatory for bsg.h, this fact is not significant :)






^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: Udev 147 (and above) dependencies
  2009-11-17  7:30 Udev 147 (and above) dependencies mblanchard.ext
                   ` (3 preceding siblings ...)
  2009-11-17 10:26 ` mblanchard.ext
@ 2009-11-17 10:30 ` mblanchard.ext
  2009-11-17 17:11 ` Bryan Kadzban
  5 siblings, 0 replies; 7+ messages in thread
From: mblanchard.ext @ 2009-11-17 10:30 UTC (permalink / raw)
  To: linux-hotplug

 

-----Message d'origine-----
De : zze-FS DEAN BLANCHARD M ext RD-RESA-LAN 
Envoyé : mardi 17 novembre 2009 11:26
À : linux-hotplug@vger.kernel.org
Cc : Kay Sievers; 'Matthias Schwarzott'
Objet : RE: Udev 147 (and above) dependencies

 

-----Message d'origine-----
De : Matthias Schwarzott [mailto:zzam@gentoo.org] Envoyé : mardi 17 novembre 2009 10:53 À : linux-hotplug@vger.kernel.org Cc : Kay Sievers; zze-FS DEAN BLANCHARD M ext RD-RESA-LAN Objet : Re: Udev 147 (and above) dependencies

On Dienstag, 17. November 2009, Kay Sievers wrote:
> On Tue, Nov 17, 2009 at 08:46, Matthias Schwarzott <zzam@gentoo.org> wrote:
> > On Dienstag, 17. November 2009, mblanchard.ext@orange-ftgroup.com wrote:
> >> I tried to compile the lastest Udev 147 on a system running linux 
> >> kernel
> >> 2.6.31 and glibc 2.8. This attempt failed because the SOCK_CLOEXEC 
> >> constant is not defined in my glibc header /usr/include/bits/socket.h.
> >> After a small investigation, I found the following: kernel support 
> >> of SOCK_CLOEXEC was introduced in the 2.6.27 release. However, the 
> >> glibc support was introduced in glibc 2.9. I believe this 
> >> dependency should be precised in the Udev README.
> >
> > I think udev-147 even requires kernel 2.6.29 headers, as this is the 
> > first release in which bsg.h is exported.
>
> bsg was added in 2.6.23.
>
Yes, and this commit exported it to userspace, so it got installed below /usr/include. So 2.6.29 were the first linux-headers to contain bsg.h

commit a229fc61ef0ee3c30fd193beee0eeb87410227f1
Author: Boaz Harrosh <bharrosh@panasas.com>
Date:   Mon Jan 19 10:37:38 2009 +0100
include/linux: Add bsg.h to the Kernel exported headers


Matthias


Thanks for your feedback. According to the various elements mentioned, the minimal requirements for a successful kernel compilation are:
- Glibc 2.9 (for SOCK_CLOEXEC support in the glibc header /usr/include/bits/socket.h),
- Linux kernel headers 2.6.29 (for bsg.h support)

Actually, I think Glibc 2.9 supports SOCK_CLOEXEC properly even without the associated kernel support: this one is optional and activated when specifying, at least, the '--enable-kernel=2.6.27' at Glibc compilation. However, as kernel headers 2.6.29 are mandatory for bsg.h, this fact is not significant :)


Oops, I meant successful Udev compilation, of course :)





^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Udev 147 (and above) dependencies
  2009-11-17  7:30 Udev 147 (and above) dependencies mblanchard.ext
                   ` (4 preceding siblings ...)
  2009-11-17 10:30 ` mblanchard.ext
@ 2009-11-17 17:11 ` Bryan Kadzban
  5 siblings, 0 replies; 7+ messages in thread
From: Bryan Kadzban @ 2009-11-17 17:11 UTC (permalink / raw)
  To: linux-hotplug

[-- Attachment #1: Type: text/plain, Size: 1016 bytes --]

mblanchard.ext@orange-ftgroup.com wrote:
> Actually, I think Glibc 2.9 supports SOCK_CLOEXEC properly even 
> without the associated kernel support: this one is optional and 
> activated when specifying, at least, the '--enable-kernel=2.6.27' at 
> Glibc compilation.

Huh?  Changing --enable-kernel *never* adds support for some new
feature.  The whole point of --enable-kernel is to specify the minimum
kernel that this glibc will ever see *at runtime*, and to enable or
disable various workarounds required for some features on older kernels.

And specifically in this case, the only thing that --enable-kernel=X
does is (maybe) turn on __ASSUME_SOCK_CLOEXEC; you can see what this
symbol does by opening up sysdeps/unix/sysv/linux/opensock.c in glibc.

(One of those workarounds is to try once with SOCK_CLOEXEC, then if that
fails, to retry without it.  udevd adding that flag in on its own is
going to disable this workaround.  But maybe the udev developers don't
care about that case...)


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 261 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2009-11-17 17:11 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-17  7:30 Udev 147 (and above) dependencies mblanchard.ext
2009-11-17  7:46 ` Matthias Schwarzott
2009-11-17  9:34 ` Kay Sievers
2009-11-17  9:53 ` Matthias Schwarzott
2009-11-17 10:26 ` mblanchard.ext
2009-11-17 10:30 ` mblanchard.ext
2009-11-17 17:11 ` Bryan Kadzban

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).