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 |