函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\test_hash.c Create Date:2022-07-27 07:26:16
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:test_hash_init

函数原型:static int __init test_hash_init(void)

返回类型:int

参数:

147  u32 string_or = 0, hash_or[2][33] = {{0, }}
148  tests等于0
149  h64等于0
152  fill_buf(buf, Run time is cubic in SIZE , 1)
155 j大于0循环
156  buf[j]等于'\0'
158 i小于等于j循环
163  如果hashlen_len(hashlen)不等于ji
164  打印错误信息("hashlen_string(%d..%d) returned length %u, expected %d", i, j, hashlen_len(hashlen), j - i)
167  返回:负EINVAL
174  返回:负EINVAL
177  string_or或等于h0
178  h64等于h64左移32位按位或h0
179  如果非test_int_hash(h64, hash_or)则返回:负EINVAL
181  tests自加
186  如果string_or的反则
187  打印错误信息("OR of all string hash results = %#x != %#x", string_or, - 1u)
189  返回:负EINVAL
191  如果hash_or[0][0]的反则
192  打印错误信息("OR of all __hash_32 results = %#x != %#x", hash_or[0][0], - 1u)
194  返回:负EINVAL
207 i小于等于32循环
208  m等于2左移i减1位的值减1
210  如果hash_or[0][i]不等于m
211  打印错误信息("OR of all hash_32(%d) results = %#x (%#x expected)", i, hash_or[0][i], m)
213  返回:负EINVAL
215  如果hash_or[1][i]不等于m
216  打印错误信息("OR of all hash_64(%d) results = %#x (%#x expected)", i, hash_or[1][i], m)
218  返回:负EINVAL
228  打印信息("__hash_32() has no arch implementation to test.")
235  打印信息("hash_32() has no arch implementation to test.")
242  打印信息("hash_64() has no arch implementation to test.")
245  打印注释信息("%u tests passed.", tests)
247  返回:0