contigmalloc() and mmap()

Scott Long scottl at samsco.org
Mon Jun 13 18:39:43 GMT 2005


Christoph Hellwig wrote:

> On Mon, Jun 13, 2005 at 10:50:26AM -0700, Julian Elischer wrote:
> 
>>Several times in the past we've seen people complainign that Linux 
>>allows a device driver to know
>>who called it and somehow it seems to store somewhere some information 
>>about who
>>openned the device.. thos somehow allows linux to store an arbitrary 
>>structure
>>for each openning process.  I thin from the sond of it that he wants to 
>>do something
>>similar. From the sond of it he wants to have a different buffer be used 
>>depending on
>>who is calling. This would partly work but would not work when processes 
>>fork etc.
>>
>>I think Linux must do some extra housekeeping in this case.
> 
> 
> What Linux does is pretty simple.  The driver has access to the file
> structure, and this structure has a field for driver private data.
> It can store private data in open and free it again in the release
> callback.
> 

How does linux handle the implications of fork(2) in this scenario?

Scott


More information about the freebsd-hackers mailing list