Messages in this thread | | | Subject | Re: how do you call userspace syscalls (e.g. sys_rename) from inside kernel | From | Bernd Petrovitsch <> | Date | Fri, 08 Oct 2004 17:12:51 +0200 |
| |
On Fri, 2004-10-08 at 16:18 +0100, Luke Kenneth Casson Leighton wrote: > On Fri, Oct 08, 2004 at 10:02:08AM -0400, Brian Gerst wrote: > > Luke Kenneth Casson Leighton wrote: > > >could someone kindly advise me on the location of some example code in > > >the kernel which calls one of the userspace system calls from inside the > > >kernel? > > > > > >alternatively if this has never been considered before, please could > > >someone advise me as to how it might be achieved? > > > > What are you trying to do? > > call sys_rename, sys_pread, sys_create, sys_mknod, sys_rmdir > etc. - everything that does file access. > > > In most cases needing to use syscalls from > > within the kernel is an indication of a design flaw. > > in this case it's an attempt to avoid cutting and pasting > the entire contents of sys_rename, sys_pread, sys_this, > sys_that, removing the first couple and last few lines (that > do copy_from_user) and replacing the arguments with either > a dentry or a kernel-side char* instead of an __user char*. > > my alternative is to patch every single vfs-related sys_* in fs/*.c to > be able to "plug in" to these functions.
Why not implement it in user-space?
Bernd -- Firmix Software GmbH http://www.firmix.at/ mobil: +43 664 4416156 fax: +43 1 7890849-55 Embedded Linux Development and Services
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |