| Function report | 
| Source Code: mm\vmalloc.c | Create Date:2022-07-28 15:00:41 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:vwrite() - write vmalloc area in a safe way.*@buf: buffer for source data*@addr: vm address.*@count: number of bytes to be read.* This function checks that addr is a valid vmalloc'ed area, and* copy data from a buffer to the given addr
Proto:long vwrite(char *buf, char *addr, unsigned long count)
Type:long
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| char * | buf | |
| char * | addr | |
| unsigned long | count | 
| 3000 | copied = 0 | 
| 3007 | spin_lock( & vmap_area_lock) | 
| 3009 | If Not count Then Break | 
| 3012 | If Not in "busy" tree Then Continue | 
| 3015 | vm = in "busy" tree | 
| 3017 | If addr >= vaddr + Lowlevel-APIs (not for driver use!) Then Continue | 
| 3026 | n = vaddr + Lowlevel-APIs (not for driver use!) - addr | 
| 3029 | If Not (flags & remap() and friends ) Then | 
| 3030 | aligned_vwrite(buf, addr, n) | 
| 3031 | copied++ | 
| 3037 | finished : | 
| 3038 | spin_unlock( & vmap_area_lock) | 
| 3039 | If Not copied Then Return 0 | 
| 3041 | Return buflen | 
| 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 |