From 7f5cc205a72e8e4d9523193de1aa4058976be3eb Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Tue, 3 Mar 2009 13:00:48 +0000 Subject: mknod: widen the parameters to match kernel ustat: same, + remove superfluous "conversion" which does nothing at best, loses high dev bits at worst i386/bits/kernel_stat.h: update to reflect reality (wider dev_t) h8300/bits/kernel_stat.h: same arm/bits/kernel_stat.h: cosmetics to match kernel header to the letter --- libc/sysdeps/linux/common/mknod.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'libc/sysdeps/linux/common/mknod.c') diff --git a/libc/sysdeps/linux/common/mknod.c b/libc/sysdeps/linux/common/mknod.c index 5c7f9a5fd..7428e8be8 100644 --- a/libc/sysdeps/linux/common/mknod.c +++ b/libc/sysdeps/linux/common/mknod.c @@ -11,14 +11,18 @@ #include #include -/* libc_hidden_proto(mknod) */ - #define __NR___syscall_mknod __NR_mknod -static __inline__ _syscall3(int, __syscall_mknod, const char *, path, - __kernel_mode_t, mode, __kernel_dev_t, dev) +/* kernel's fs/namei.c defines this: + * long sys_mknod(const char __user *filename, int mode, unsigned dev), + * so, no __kernel_mode_t and no __kernel_dev_t, please. + */ +static __inline__ _syscall3(int, __syscall_mknod, + const char *, path, + int /* __kernel_mode_t */, mode, + unsigned /* __kernel_dev_t */, dev) int mknod(const char *path, mode_t mode, dev_t dev) { - return __syscall_mknod(path, mode, (__kernel_dev_t)dev); + return __syscall_mknod(path, mode, dev); } libc_hidden_def(mknod) -- cgit v1.2.3