Re: Problem in calling System call [sys_mknod] in Kernel Module.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> This is what udev is for, and previously also devfs.
> It has been done
> in userspace properly using a daemon which handles
> device creation in
> a portable way - so it's not worth re-inventing the
> wheel for just one
> driver - but more to the point, it's icky and yucky
> doing this in a
> driver.

Thanks again Jon.

I read very nice explanation that why we
sys_call_table support has been stopped. 

In some kernel versions it is possible to add or
modify a systemcall by changing the sys_call_table.
But because this table is not intended to be changed
at runtime, it has no protection. Changing the table
will lead to race conditions. Even without the race
conditions, there are problems related to removing the
modules while they are in use or stacked. Because of
the problems with changing sys_call_table from
modules, the symbol is no longer exported in new
kernels. In other words if you get "unresolved symbol
sys_call_table" when trying to load a module, it means
there is a bug in the module, and the kernel does no 
longer accept such buggy modules.


Regards
Dinesh

Can anything be sadder than work unfinished? Yes; work
never begun."

-- Christina Rossetti





________________________________________________________________________
Yahoo! India Matrimony: Find your life partner online
Go to: http://yahoo.shaadi.com/india-matrimony

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux