[lkml]   [2001]   [May]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRE: ioctl call for network device
On Tue, 8 May 2001, Hen, Shmulik wrote:

> > struct ifreq has a member called ifr_data. It is a pointer. You can
> > put a pointer to any of your data, including the most complex structure
> > you might envision, in that area. This allows you to pass anything
> > to and from your module. This pointer can be properly dereferenced
> > in kernel space but you should use copy_to/from_user and friends so a
> > user-space coding bug won't panic the kernel.
> How about a linked list ?
> Will the driver be able to follow the list where each node was dynamically
> allocated by the application ?
> Is there a size limit on the buffer ifr_data points to ? (AFAIK, Windows
> NDIS drivers limit to 1 page buffer =4096 bytes).
> Thanks,
> Shmulik Hen
> Linux Advanced Networking Services
> Intel Network Communications Group

Again; This is a pointer. Your driver can dereference any valid pointer.
You can't do this while holding a lock that will prevent page faults.
Other than this, there are no problems.

Dick Johnson

Penguin : Linux version 2.4.1 on an i686 machine (799.53 BogoMips).

"Memory is like gasoline. You use it up when you are running. Of
course you get it all back when you reboot..."; Actual explanation
obtained from the Micro$oft help desk.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-03-22 12:52    [W:0.064 / U:0.464 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site