| Function report | 
| Source Code: kernel\printk\printk_safe.c | Create Date:2022-07-28 10:07:38 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:Add a message to per-CPU context-dependent buffer
Proto:static __printf(2, 0) int printk_safe_log_store(struct printk_safe_seq_buf *s, const char *fmt, va_list args)
Type:int
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct printk_safe_seq_buf * | s | |
| const char * | fmt | |
| va_list | args | 
| 75 | again : | 
| 76 | len = atomic_read( & length of written data ) | 
| 95 | If Not add Then Return 0 | 
| 103 | If atomic_cmpxchg( & length of written data , len, len + add) != len Then Go to again | 
| 107 | Return add | 
| Name | Describe | 
|---|---|
| vprintk_safe | Lock-less printk(), to avoid deadlocks should the printk() recurse* into itself. It uses a per-CPU buffer to store the message, just like* NMI. | 
| 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 |