[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#617973: libc6-dev: wrong SOCK_CLOEXEC on hppa causes udev startup to fail and boot fails

Package: libc6-dev
Version: 2.11.2-10
Severity: important

While debugging #617967 (udev fails to start on hppa and breaks boot) it came out that
SOCK_CLOEXEC is defined wrong on hppa. Namely, asm-generic has O_CLOEXEC 020000000 and
SOCK_CLOEXEC is defined to that value. In addition, SOCK_CLOEXEC is unconditionally
redefined in bits/socket.h enum to 020000000 independent on the value of O_CLOEXEC.
This works fine while O_CLOEXEC is 020000000 like on most architectures. But on
hppa, O_CLOEXEC is defined to be 010000000 but SOCK_CLOEXEC does not change.

This makes udev's socket(PF_NETLINK, SOCK_DGAM|SOCK_CLOEXEC, ...) use invalid flag for
SOCK_CLOEXEC and socket call fails with EINVAL, breaking udev startup and machine bootup.

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'stable')
Architecture: hppa (parisc64)

Kernel: Linux 2.6.37-2-parisc64-smp (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages libc6-dev depends on:
ii  libc-dev-bin                  2.11.2-10  Embedded GNU C Library: Developmen
ii  libc6                         2.11.2-10  Embedded GNU C Library: Shared lib
ii  linux-libc-dev                2.6.37-2   Linux support headers for userspac

Versions of packages libc6-dev recommends:
ii  gcc [c-compiler]              4:4.4.5-4  The GNU C compiler
ii  gcc-4.4 [c-compiler]          4.4.5-10   The GNU C compiler

Versions of packages libc6-dev suggests:
pn  glibc-doc                     <none>     (no description available)
ii  manpages-dev                  3.27-1     Manual pages about using GNU/Linux

-- no debconf information

Reply to: