Added a section to the select() hook documentation discussing the FSs
responsibility never to call notify_select_event() after deselect(). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25262 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -510,6 +510,15 @@
|
|||||||
This function is optional. If you don't export it, the default implementation
|
This function is optional. If you don't export it, the default implementation
|
||||||
in the VFS will call notify_select_event() directly which will be sufficient
|
in the VFS will call notify_select_event() directly which will be sufficient
|
||||||
for most file systems.
|
for most file systems.
|
||||||
|
|
||||||
|
Note that while select() and the corresponding deselect() are invoked by the
|
||||||
|
same thread, notifications are usually generated by other threads. It is
|
||||||
|
your responsibility to make sure that notify_select_event() is never called
|
||||||
|
for a selectsync object for which deselect() has already returned. This is
|
||||||
|
commonly done by holding the same lock when invoking notify_select_event()
|
||||||
|
and when removing the selectsync object from the cookie in deselect().
|
||||||
|
Such a lock can be any lock, usually one that is associated with the node or
|
||||||
|
the volume.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
|||||||
Reference in New Issue
Block a user