函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\crc32.c Create Date:2022-07-27 07:52:47
Last Modify:2020-03-16 11:24:07 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:mplements slicing-by-4 or slicing-by-8 algorithm

函数原型:static inline u32 __pure crc32_body(u32 crc, unsigned char const *buf, size_t len, const u32 (*tab)[256])

返回类型:u32

参数:

类型参数名称
u32crc
unsigned char const *buf
size_tlen
const u32 (*tab
78  t0等于tab[0], t1等于tab[1], t2等于tab[2], t3等于tab[3]
85  如果此条件成立可能性小(为编译器优化)((long)buf & 3 && len)则
86  循环
88 len先自减且buf按位与3循环
92  rem_len等于len按位与3
93  len等于len右移2位
99  b等于buf
104 len循环
106  q等于crc按位异或*b先自加
108  crc等于DO_CRC4
115  len等于rem_len
117  如果len
118  p等于b加1减1
123  循环
125 len先自减循环
128  返回:crc
调用者
名称描述
crc32_le_genericrc32_le_generic() - Calculate bitwise little-endian Ethernet AUTODIN II* CRC32/CRC32C*@crc: seed value for computation
crc32_be_genericrc32_be_generic() - Calculate bitwise big-endian Ethernet AUTODIN II CRC32*@crc: seed value for computation