* Renamed fs/vfs_select.cpp to wait_for_objects.cpp and got rid of

vfs_select.h, respectively moved most of it into the new kernel
  private header wait_for_objects.h.
* Added new experimental API functions wait_for_objects[_etc](). They
  work pretty much like poll(), but also for semaphores, ports, and
  threads.
* Removed the "ref" parameter from notify_select_events() and the
  select_sync_pool functions as well as from fd_ops::fd_[de]select(). It
  is no longer needed. The FS interface select() hook still has it,
  though -- the VFS will always pass 0.
* de]select_fd() take a select_info* instead of a select_sync* + ref
  pair, now. Added respective functions for semaphores, ports, and
  threads.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22416 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold
2007-10-02 19:47:31 +00:00
parent a82d70c719
commit 636bfc08ae
37 changed files with 717 additions and 160 deletions
+1
View File
@@ -23,6 +23,7 @@ MergeObject os_main.o :
thread.c
time.c
syscalls.S
wait_for_objects.cpp
;
# We need to specify the dependency on the generated syscalls file explicitly.
@@ -0,0 +1,23 @@
/*
* Copyright 2007, Ingo Weinhold, [email protected]. All rights reserved.
* Distributed under the terms of the MIT License.
*/
#include <OS.h>
#include <syscalls.h>
ssize_t
wait_for_objects(object_wait_info* infos, int numInfos)
{
return _kern_wait_for_objects(infos, numInfos, 0, 0);
}
ssize_t
wait_for_objects_etc(object_wait_info* infos, int numInfos, uint32 flags,
bigtime_t timeout)
{
return _kern_wait_for_objects(infos, numInfos, flags, timeout);
}