WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
los_lms_pri.h 文件参考
#include "los_typedef.h"
#include "los_list.h"
#include "securec.h"
los_lms_pri.h 的引用(Include)关系图:

浏览源代码.

结构体

struct  LmsMemListNode
 
struct  LmsAddrInfo
 
struct  LmsHook
 

宏定义

#define COMMON_ERRMODE   3
 
#define FREE_ERRORMODE   2
 
#define STORE_ERRMODE   1
 
#define LOAD_ERRMODE   0
 
#define SANITIZER_INTERFACE_ATTRIBUTE
 
#define ATTRIBUTE_NO_SANITIZE_ADDRESS   __attribute__((no_sanitize_address))
 
#define LMS_POOL_RESIZE(size)   ((size) / 17 * 16)
 
#define LMS_ADDR_ALIGN(p)   (((UINTPTR)(p) + sizeof(UINTPTR) - 1) & ~((UINTPTR)(sizeof(UINTPTR) - 1)))
 
#define LMS_SHADOW_ACCESSABLE   0x00
 
#define LMS_SHADOW_AFTERFREE   0x03
 
#define LMS_SHADOW_REDZONE   0x02
 
#define LMS_SHADOW_PAINT   0x01
 
#define LMS_SHADOW_MASK   0x03
 
#define LMS_SHADOW_BITS_PER_CELL   2
 
#define LMS_MEM_BYTES_PER_SHADOW_CELL   4
 
#define LMS_SHADOW_U8_CELL_NUM   4
 
#define LMS_SHADOW_U8_REFER_BYTES   16
 
#define LMS_SHADOW_ACCESSABLE_U8   0x00
 
#define LMS_SHADOW_AFTERFREE_U8   0xFF
 
#define LMS_SHADOW_REDZONE_U8   0xAA
 
#define LMS_SHADOW_MASK_U8   0xFF
 
#define LMS_SHADOW_PAINT_U8   0x55
 
#define MEM_REGION_SIZE_1   1
 
#define MEM_REGION_SIZE_2   2
 
#define MEM_REGION_SIZE_4   4
 
#define MEM_REGION_SIZE_8   8
 
#define MEM_REGION_SIZE_16   16
 

函数

VOID OsLmsCheckValid (UINTPTR checkAddr, BOOL isFreeCheck)
 
VOID OsLmsLosMallocMark (const VOID *curNodeStart, const VOID *nextNodeStart, UINT32 nodeHeadSize)
 
VOID OsLmsLosFreeMark (const VOID *curNodeStart, const VOID *nextNodeStart, UINT32 nodeHeadSize)
 
VOID OsLmsSimpleMark (UINTPTR startAddr, UINTPTR endAddr, UINT32 value)
 
UINT32 OsLmsInit (VOID)
 
VOID OsLmsPrintPoolListInfo (VOID)
 
VOID OsLmsReportError (UINTPTR p, UINT32 size, UINT32 errMod)
 
VOID __asan_store1_noabort (UINTPTR p)
 
VOID __asan_store4_noabort (UINTPTR p)
 
VOID __asan_load4_noabort (UINTPTR p)
 
VOID __asan_load1_noabort (UINTPTR p)
 
VOID __asan_loadN_noabort (UINTPTR p, UINT32 size)
 
VOID __asan_storeN_noabort (UINTPTR p, UINT32 size)
 
VOID __asan_store2_noabort (UINTPTR p)
 
VOID __asan_load2_noabort (UINTPTR p)
 
VOID __asan_store8_noabort (UINTPTR p)
 
VOID __asan_load8_noabort (UINTPTR p)
 
VOID __asan_load16_noabort (UINTPTR p)
 
VOID __asan_store16_noabort (UINTPTR p)
 
VOID __asan_handle_no_return (VOID)
 

变量

LmsHookg_lms
 

宏定义说明

◆ ATTRIBUTE_NO_SANITIZE_ADDRESS

#define ATTRIBUTE_NO_SANITIZE_ADDRESS   __attribute__((no_sanitize_address))

◆ COMMON_ERRMODE

#define COMMON_ERRMODE   3

◆ FREE_ERRORMODE

#define FREE_ERRORMODE   2

◆ LMS_ADDR_ALIGN

#define LMS_ADDR_ALIGN (   p)    (((UINTPTR)(p) + sizeof(UINTPTR) - 1) & ~((UINTPTR)(sizeof(UINTPTR) - 1)))

◆ LMS_MEM_BYTES_PER_SHADOW_CELL

#define LMS_MEM_BYTES_PER_SHADOW_CELL   4

◆ LMS_POOL_RESIZE

#define LMS_POOL_RESIZE (   size)    ((size) / 17 * 16)

◆ LMS_SHADOW_ACCESSABLE

#define LMS_SHADOW_ACCESSABLE   0x00

◆ LMS_SHADOW_ACCESSABLE_U8

#define LMS_SHADOW_ACCESSABLE_U8   0x00

◆ LMS_SHADOW_AFTERFREE

#define LMS_SHADOW_AFTERFREE   0x03

◆ LMS_SHADOW_AFTERFREE_U8

#define LMS_SHADOW_AFTERFREE_U8   0xFF

◆ LMS_SHADOW_BITS_PER_CELL

#define LMS_SHADOW_BITS_PER_CELL   2

◆ LMS_SHADOW_MASK

#define LMS_SHADOW_MASK   0x03

◆ LMS_SHADOW_MASK_U8

#define LMS_SHADOW_MASK_U8   0xFF

◆ LMS_SHADOW_PAINT

#define LMS_SHADOW_PAINT   0x01

◆ LMS_SHADOW_PAINT_U8

#define LMS_SHADOW_PAINT_U8   0x55

◆ LMS_SHADOW_REDZONE

#define LMS_SHADOW_REDZONE   0x02

◆ LMS_SHADOW_REDZONE_U8

#define LMS_SHADOW_REDZONE_U8   0xAA

◆ LMS_SHADOW_U8_CELL_NUM

#define LMS_SHADOW_U8_CELL_NUM   4

◆ LMS_SHADOW_U8_REFER_BYTES

#define LMS_SHADOW_U8_REFER_BYTES   16

◆ LOAD_ERRMODE

#define LOAD_ERRMODE   0

◆ MEM_REGION_SIZE_1

#define MEM_REGION_SIZE_1   1

◆ MEM_REGION_SIZE_16

#define MEM_REGION_SIZE_16   16

◆ MEM_REGION_SIZE_2

#define MEM_REGION_SIZE_2   2

◆ MEM_REGION_SIZE_4

#define MEM_REGION_SIZE_4   4

◆ MEM_REGION_SIZE_8

#define MEM_REGION_SIZE_8   8

◆ SANITIZER_INTERFACE_ATTRIBUTE

#define SANITIZER_INTERFACE_ATTRIBUTE

◆ STORE_ERRMODE

#define STORE_ERRMODE   1

函数说明

◆ __asan_handle_no_return()

VOID __asan_handle_no_return ( VOID  )
extern

◆ __asan_load16_noabort()

VOID __asan_load16_noabort ( UINTPTR  p)
extern

◆ __asan_load1_noabort()

VOID __asan_load1_noabort ( UINTPTR  p)
extern

◆ __asan_load2_noabort()

VOID __asan_load2_noabort ( UINTPTR  p)
extern

◆ __asan_load4_noabort()

VOID __asan_load4_noabort ( UINTPTR  p)
extern

◆ __asan_load8_noabort()

VOID __asan_load8_noabort ( UINTPTR  p)
extern

◆ __asan_loadN_noabort()

VOID __asan_loadN_noabort ( UINTPTR  p,
UINT32  size 
)
extern

◆ __asan_store16_noabort()

VOID __asan_store16_noabort ( UINTPTR  p)
extern

◆ __asan_store1_noabort()

VOID __asan_store1_noabort ( UINTPTR  p)
extern

◆ __asan_store2_noabort()

VOID __asan_store2_noabort ( UINTPTR  p)
extern

◆ __asan_store4_noabort()

VOID __asan_store4_noabort ( UINTPTR  p)
extern

◆ __asan_store8_noabort()

VOID __asan_store8_noabort ( UINTPTR  p)
extern

◆ __asan_storeN_noabort()

VOID __asan_storeN_noabort ( UINTPTR  p,
UINT32  size 
)
extern

◆ OsLmsCheckValid()

VOID OsLmsCheckValid ( UINTPTR  checkAddr,
BOOL  isFreeCheck 
)

◆ OsLmsInit()

UINT32 OsLmsInit ( VOID  )

◆ OsLmsLosFreeMark()

VOID OsLmsLosFreeMark ( const VOID curNodeStart,
const VOID nextNodeStart,
UINT32  nodeHeadSize 
)

◆ OsLmsLosMallocMark()

VOID OsLmsLosMallocMark ( const VOID curNodeStart,
const VOID nextNodeStart,
UINT32  nodeHeadSize 
)

◆ OsLmsPrintPoolListInfo()

VOID OsLmsPrintPoolListInfo ( VOID  )

◆ OsLmsReportError()

VOID OsLmsReportError ( UINTPTR  p,
UINT32  size,
UINT32  errMod 
)

◆ OsLmsSimpleMark()

VOID OsLmsSimpleMark ( UINTPTR  startAddr,
UINTPTR  endAddr,
UINT32  value 
)

变量说明

◆ g_lms

LmsHook* g_lms
extern