Function report |
Source Code:fs\signalfd.c |
Create Date:2022-07-28 20:19:38 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:signalfd_dequeue
Proto:static ssize_t signalfd_dequeue(struct signalfd_ctx *ctx, kernel_siginfo_t *info, int nonblock)
Type:ssize_t
Parameter:
Type | Parameter | Name |
---|---|---|
struct signalfd_ctx * | ctx | |
kernel_siginfo_t * | info | |
int | nonblock |
172 | spin_lock_irq( & siglock) |
173 | ret = Dequeue a signal and return the element to the caller, which is* expected to free it.* All callers have to hold the siglock. |
175 | Case ret == 0 |
180 | Default |
181 | spin_unlock_irq( & siglock) |
182 | Return ret |
185 | add_wait_queue( & signalfd_wqh, & wait) |
186 | cycle |
188 | ret = Dequeue a signal and return the element to the caller, which is* expected to free it.* All callers have to hold the siglock. |
189 | If ret != 0 Then Break |
191 | If signal_pending(current process) Then |
193 | Break |
195 | spin_unlock_irq( & siglock) |
196 | schedule() |
197 | spin_lock_irq( & siglock) |
199 | spin_unlock_irq( & siglock) |
201 | remove_wait_queue( & signalfd_wqh, & wait) |
204 | Return ret |
Name | Describe |
---|---|
signalfd_read | Returns a multiple of the size of a "struct signalfd_siginfo", or a negative* error code. The "count" parameter must be at least the size of a* "struct signalfd_siginfo". |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |