函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\iov_iter.c Create Date:2022-07-27 07:18:08
Last Modify:2022-05-21 11:43:54 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:sanity

函数原型:static bool sanity(const struct iov_iter *i)

返回类型:bool

参数:

类型参数名称
const struct iov_iter *i
327  pipe等于pipe
328  p_head等于head
329  p_tail等于tail
330  p_mask等于ring_size减1
331  p_occupancy等于pipe_occupancy - Return number of slots used in the pipe*@head: The pipe ring head pointer*@tail: The pipe ring tail pointer
332  i_head等于head
335  如果iov_offset
337  如果此条件成立可能性小(为编译器优化)(p_occupancy == 0)则转到:Bad
339  如果此条件成立可能性小(为编译器优化)(i_head != p_head - 1)则转到:Bad
342  p等于bufs[i_head & p_mask]
343  如果此条件成立可能性小(为编译器优化)(offset + len != iov_offset)则转到:Bad
345  否则
346  如果i_head不等于p_head则转到:Bad
349  返回:true
350  Bad :
351  printk(r conditions "idx = %d, offset = %zd\n", i_head, iov_offset)
352  printk(r conditions "head = %d, tail = %d, buffers = %d\n", p_head, p_tail, ring_size)
354 idx小于ring_size循环printk(r conditions "[%p %p %d %d]\n", ops, page, offset, len)
360  WARN_ON(1)
361  返回:false
调用者
名称描述
copy_page_to_iter_pipe
copy_pipe_to_iter
csum_and_copy_to_pipe_iter
pipe_zero
pipe_get_pages
pipe_get_pages_alloc
iov_iter_npages