Function report |
Source Code:mm\zsmalloc.c |
Create Date:2022-07-28 16:27:56 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:zs_object_copy
Proto:static void zs_object_copy(struct size_class *class, unsigned long dst, unsigned long src)
Type:void
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct size_class * | class | |
| unsigned long | dst | |
| unsigned long | src |
| 1593 | written = 0 |
| 1600 | s_off = * Size of objects stored in this class. Must be multiple * of ZS_ALIGN. * s_objidx & ~PAGE_MASK |
| 1601 | d_off = * Size of objects stored in this class. Must be multiple * of ZS_ALIGN. * d_objidx & ~PAGE_MASK |
| 1603 | If s_off + * Size of objects stored in this class. Must be multiple * of ZS_ALIGN. > PAGE_SIZE Then s_size = PAGE_SIZE - s_off |
| 1606 | If d_off + * Size of objects stored in this class. Must be multiple * of ZS_ALIGN. > PAGE_SIZE Then d_size = PAGE_SIZE - d_off |
| 1609 | s_addr = kmap_atomic(s_page) |
| 1610 | d_addr = kmap_atomic(d_page) |
| 1612 | When 1 cycle |
| 1613 | size = min - return minimum of two values of the same or compatible types*@x: first value*@y: second value(s_size, d_size) |
| 1617 | If written == * Size of objects stored in this class. Must be multiple * of ZS_ALIGN. Then Break |
| 1626 | Prevent people trying to call kunmap_atomic() as if it were kunmap()* kunmap_atomic() should get the return value of kmap_atomic, not the page.(d_addr) |
| 1627 | Prevent people trying to call kunmap_atomic() as if it were kunmap()* kunmap_atomic() should get the return value of kmap_atomic, not the page.(s_addr) |
| 1628 | s_page = get_next_page(s_page) |
| 1629 | s_addr = kmap_atomic(s_page) |
| 1630 | d_addr = kmap_atomic(d_page) |
| 1632 | s_off = 0 |
| 1644 | Prevent people trying to call kunmap_atomic() as if it were kunmap()* kunmap_atomic() should get the return value of kmap_atomic, not the page.(d_addr) |
| 1645 | Prevent people trying to call kunmap_atomic() as if it were kunmap()* kunmap_atomic() should get the return value of kmap_atomic, not the page.(s_addr) |
| Name | Describe |
|---|---|
| migrate_zspage |
| 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 |