Message ID | 20240219223833.95710-1-zfigura@codeweavers.com |
---|---|
Headers | show |
Series | NT synchronization primitive driver | expand |
On Mon, Feb 19, 2024 at 04:38:04PM -0600, Elizabeth Figura wrote: > This corresponds to the NT syscall NtCreateSemaphore(). > > Semaphores are one of three types of object to be implemented in this driver, > the others being mutexes and events. > > An NT semaphore contains a 32-bit counter, and is signaled and can be acquired > when the counter is nonzero. The counter has a maximum value which is specified > at creation time. The initial value of the semaphore is also specified at > creation time. There are no restrictions on the maximum and initial value. > > Each object is exposed as an file, to which any number of fds may be opened. > When all fds are closed, the object is deleted. > > Objects hold a pointer to the ntsync_device that created them. The device's > reference count is driven by struct file. > > Signed-off-by: Elizabeth Figura <zfigura@codeweavers.com> I want to take these, but I need someone who knows how to review locking/sync primitives to give it a review to verify that it is working properly within the kernel constraints we have here. Anyone want to give it a review? thanks, greg k-h