Johannes Stezenbach wrote:
>http://lwn.net/Articles/49684/ suggests otherwise, but the mknod()
> binary seems to clip the minor number to 8 bits. The mknod()
> syscall however uses a fancy backwards compatible encoding
> which allows more than 8 bit minor numbers, see new_decode_dev()
> in the change of the bkbits page.
>> I guess udev has a a similar bug then.
More to the point, the makedev() macro in /usr/include/sys/sysmacros.h
is out of date in my glibc. The one that is part of klibc which
comes with udev 0.54 is OK.
static __inline__ dev_t makedev(int __ma, int __mi)
{
return ((__ma & 0xfff) << 8) | (__mi & 0xff) | ((__mi & 0xfff00) << 12);
}
Johannes