From: James S. <jsi...@us...> - 2002-03-15 18:28:16
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/x86_64/ia32 In directory usw-pr-cvs1:/tmp/cvs-serv4512/linux/arch/x86_64/ia32 Added Files: ia32_ioctl.c Log Message: Alots of fixes across many platforms. --- NEW FILE: ia32_ioctl.c --- /* $Id: ia32_ioctl.c,v 1.1 2002/03/15 18:28:12 jsimmons Exp $ * ioctl32.c: Conversion between 32bit and 64bit native ioctls. * * Copyright (C) 1997-2000 Jakub Jelinek (ja...@re...) * Copyright (C) 1998 Eddie C. Dost (ec...@sk...) * Copyright (C) 2001 Andi Kleen, SuSE Labs * * These routines maintain argument size conversion between 32bit and 64bit * ioctls. */ #include <linux/config.h> #include <linux/types.h> #include <linux/kernel.h> #include <linux/sched.h> #include <linux/smp.h> #include <linux/smp_lock.h> #include <linux/ioctl.h> #include <linux/if.h> [...3810 lines suppressed...] while (t && t->cmd != cmd) t = (struct ioctl_trans *)(long)t->next; if (t) { handler = (void *)(long)t->handler; error = handler(fd, cmd, arg, filp); } else { static int count = 0; if (++count <= 50) printk("sys32_ioctl(%s:%d): Unknown cmd fd(%d) " "cmd(%08x) arg(%08x)\n", current->comm, current->pid, (int)fd, (unsigned int)cmd, (unsigned int)arg); error = -EINVAL; } out: fput(filp); out2: return error; } |