Bug#406744: linux-kernel-headers: __always_inline not defined outside __KERNEL__

2007-01-13 Thread Bas Zoetekouw
Package: linux-kernel-headers
Version: 2.6.18-6
Severity: important

When including asm/system.h (I need a definition of wmb()), I'm
getting this error:

| In file included from /usr/include/asm/bitops.h:8,
|  from /usr/include/linux/bitops.h:9,
|  from /usr/include/asm-i486/cpufeature.h:10,
|  from /usr/include/asm/cpufeature.h:8,
|  from /usr/include/asm-i486/system.h:6,
|  from /usr/include/asm/system.h:8,
|  from barrier.h:4,
|  from blktrace.c:48:
| /usr/include/asm-i486/bitops.h:244: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or 
‘__attribute__’ before ‘int’

line 244 of bitops.h is:

| static __always_inline int constant_test_bit(int nr, const volatile unsigned 
long *addr)

so the __always_inline doesn't seem to be defined.  It's supposed to
be defined in linux/compiler.h, but there it's inside an #ifdef
__KERNEL__, making it unaccessible for user-space.

Simply defining __always_inline to inline before including
asm/system.h makes the error go away.


-- System Information:
Debian Release: 4.0
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: i386 (x86_64)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18.2
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)

-- no debconf information



Bug#406747: linux-kernel-headers: private symbols u16 and u32 used in asm/system.h on i386

2007-01-13 Thread Bas Zoetekouw
Package: linux-kernel-headers
Version: 2.6.18-6
Severity: important

asm/system.h (line 306-308) uses the private symbols u8, u16 and u32:

| extern unsigned long cmpxchg_386_u8(volatile void *, u8, u8);
| extern unsigned long cmpxchg_386_u16(volatile void *, u16, u16);
| extern unsigned long cmpxchg_386_u32(volatile void *, u32, u32);

These are defined inside an #ifdef __KERNEL__ in asm/types.h, with the
following comment:

|  * These aren't exported outside the kernel to avoid name space clashes


-- System Information:
Debian Release: 4.0
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: i386 (x86_64)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18.2
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)

-- no debconf information


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Processed: Re: Bug#403658: lowlevellock.h missing on amd64.

2007-01-13 Thread Debian Bug Tracking System
Processing commands for [EMAIL PROTECTED]:

 reassign 403658 purelibc
Bug#403658: lowlevellock.h missing on amd64.
Bug reassigned from package `libc6-dev' to `purelibc'.

 retitle 403658 purelibc: FTBFS: Makes use of glibc internal _IO_MTSAFE_IO.
Bug#403658: lowlevellock.h missing on amd64.
Changed Bug title.

 thanks
Stopping processing here.

Please contact me if you need assistance.

Debian bug tracking system administrator
(administrator, Debian Bugs database)


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#403658: lowlevellock.h missing on amd64.

2007-01-13 Thread Kurt Roeckx
reassign 403658 purelibc
retitle 403658 purelibc: FTBFS: Makes use of glibc internal _IO_MTSAFE_IO.
thanks

 Theoretically you should not define _IO_MTSAFE_IO it is reserved for
 glibc internals. That's why you get an error there, when using a NPTL libc.

So, I've reassign it to purelibc, because it shouldn't be using it.

(It seems you tried to merge bugs, but I guess control never got those,
so I've just reassigned one of them to purelibc instead of cloning one.)

 I will try to find a hack to ignore all occurences of _IO_MTSAFE_IO from
 the headers installed by the glibc.

At which point purelibc won't be able to build on any arch, so they
really should look at it.


Kurt



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#406744: linux-kernel-headers: __always_inline not defined outside __KERNEL__

2007-01-13 Thread Daniel Jacobowitz
On Sat, Jan 13, 2007 at 04:49:18PM +0100, Bas Zoetekouw wrote:
 Package: linux-kernel-headers
 Version: 2.6.18-6
 Severity: important
 
 When including asm/system.h (I need a definition of wmb()), I'm

Don't do that.

The sanitized kernel headers (make headers_install, in 2.6.19 and
later) do not even install asm/system.h.  That is a strong sign
you shouldn't be using it from userspace.

I expect the header will go away in a future Debian version.

-- 
Daniel Jacobowitz
CodeSourcery


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#406747: linux-kernel-headers: private symbols u16 and u32 used in asm/system.h on i386

2007-01-13 Thread Daniel Jacobowitz
On Sat, Jan 13, 2007 at 04:58:15PM +0100, Bas Zoetekouw wrote:
 Package: linux-kernel-headers
 Version: 2.6.18-6
 Severity: important
 
 asm/system.h (line 306-308) uses the private symbols u8, u16 and u32:

Same response as for #406744: do not use asm/system.h from userspace.

-- 
Daniel Jacobowitz
CodeSourcery


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]