Notification Mechanism
Built on top of the standard pipe driver
can be enabled by
CONFIG_WATCH_QUEUE
splicing is disabled on these pipes to prevent inter-leaving of kernel messages
owner of the pipe has to tell the kernel, the sources from which it would like to get notifications
a message will be discarded if there isn’t a slot available in the ring or if no preallocated message buffer is available. In both of these cases
the kernel does not wait for the consumers to collect it, but rather just continues on.
This means that notifications can be generated whilst spinlocks are held and also protects the kernel from being held up indefinitely by a userspace malfunction.
Please refer General notification mechanism - Kernel Docs for information on Mesage Structure, Watch Queue, Watch List and Event Filtering.
Last updated