[PATCH] mknod fix for major/minor number greater than 255
Basheer Mansoor Ahamed
mansoor.ahamed at gmail.com
Wed Mar 12 06:27:24 UTC 2008
Hi,
Resending message (my outlook settings corrupts inline patch) from
gmail account.
Current mknod implementation fails for major/minor number greater than 255.
I'm suggesting following change. Please comment.
-Mansoor
Signed-off-by: Mansoor Ahamed <mansoor.ahamed at gmail.com>
--- libc/sysdeps/linux/common/mknod.c 2008-03-11 17:43:54.000000000 +0530
+++ libc/sysdeps/linux/common/mknod.c 2008-03-11 17:45:21.000000000 +0530
@@ -20,9 +20,8 @@ static inline _syscall3(int, __syscall_m
int mknod(const char *path, mode_t mode, dev_t dev)
{
/* We must convert the dev_t value to a __kernel_dev_t */
- __kernel_dev_t k_dev;
+ __kernel_dev_t k_dev = (__kernel_dev_t)dev;
- k_dev = ((major(dev) & 0xff) << 8) | (minor(dev) & 0xff);
return __syscall_mknod(path, mode, k_dev);
}
libc_hidden_def(mknod)
More information about the uClibc
mailing list