How to call execve() form a function under linux2.4.x/drivers/char/?

Hi all,

I am writing a driver for GPIO device, gpio_int.c, and I put it under / linux-2.4.x/drivers/char. I need to call execve() in a function, v_hwrb_timer_handler() in gpio_int.c:

void v_hwrb_timer_handler() { ... execve(path, argv, argc); ... }

When I make it, I get the result:

drivers/char/char.o(.text+0xe9c4): In function `v_hwrb_timer_handler': : undefined reference to `execve' make[1]: *** [linux] Error 1 make[1]: Leaving directory `/home/uClinux-dist/linux-2.4.x' make: *** [linux] Error 1

Can anyone present ideas for it?

Sincerely,

Ken

Reply to
Ken
Loading thread data ...

On Fri, 13 Jul 2007 00:43:22 -0700, Ken rearanged some electrons and created:

You may need to include .

Reply to
david m

execve() is not supported inside the kernel. It is only available in user space.

Read this:

formatting link

regards

Wolfgang

Reply to
Wolfgang Mües

Thank you for your advices, this problem has been solved by add a macro before #KERNEL_CALL #include

regards,

Ken

Reply to
Ken

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.