Function report |
Source Code:kernel\relay.c |
Create Date:2022-07-28 11:46:45 |
| Last Modify:2020-03-17 19:20:22 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:lay_alloc_buf - allocate a channel buffer*@buf: the buffer struct*@size: total size of the buffer* Returns a pointer to the resulting buffer, %NULL if unsuccessful. The* passed in size will get page aligned, if it isn't already.
Proto:static void *relay_alloc_buf(struct rchan_buf *buf, size_t *size)
Type:void
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct rchan_buf * | buf | |
| size_t * | size |
| 132 | If Not array of current buffer pages Then Return NULL |
| 137 | If Value for the false possibility is greater at compile time(!array of current buffer pages [i]) Then Go to depopulate |
| 139 | set_page_private(array of current buffer pages [i], (unsignedlong)buf) |
| 141 | mem = vmap(array of current buffer pages , n_pages, vmap()ed pages , PAGE_KERNEL) |
| 142 | If Not mem Then Go to depopulate |
| 147 | Return mem |
| 149 | depopulate : |
| 150 | When j < i cycle __free_page(array of current buffer pages [j]) |
| 153 | Return NULL |
| Name | Describe |
|---|---|
| relay_create_buf | lay_create_buf - allocate and initialize a channel buffer*@chan: the relay channel* Returns channel buffer if successful, %NULL otherwise. |
| 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 |