函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\sed-opal.c Create Date:2022-07-27 19:45:33
Last Modify:2020-03-17 23:36:33 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:cmd_finalize

函数原型:static int cmd_finalize(struct opal_dev *cmd, unsigned int hsn, unsigned int tsn)

返回类型:int

参数:

类型参数名称
struct opal_dev *cmd
unsigned inthsn
unsigned inttsn
689  err等于0
696  add_token_u8( & err, cmd, OPAL_ENDLIST)
698  add_token_u8( & err, cmd, OPAL_ENDOFDATA)
699  add_token_u8( & err, cmd, OPAL_STARTLIST)
700  add_token_u8( & err, cmd, 0)
701  add_token_u8( & err, cmd, 0)
702  add_token_u8( & err, cmd, 0)
703  add_token_u8( & err, cmd, OPAL_ENDLIST)
705  如果err
706  pr_debug("Error finalizing command.\n")
707  返回:负EFAULT
710  hdr等于cmd
712  tsn等于cpu_to_be32(tsn)
713  hsn等于cpu_to_be32(hsn)
715  length等于cpu_to_be32(pos - hdr的长度)
716 pos取模4循环
717  如果pos大于等于IO_BUFFER_LENGTH
718  pr_debug("Error: Buffer overrun\n")
719  返回:负ERANGE
721  cmd[pos++]等于0
723  length等于cpu_to_be32(pos - cp的长度 - pkt的长度)
725  length等于cpu_to_be32(pos - cp的长度)
727  返回:0
调用者
名称描述
finalize_and_send