函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:_rs_internal - Allocate rs control, find a matching codec or allocate a new one*@symsize: the symbol size (number of bits)*@gfpoly: the extended Galois field generator polynomial coefficients,* with the 0th coefficient in the low order bit

函数原型:static struct rs_control *init_rs_internal(int symsize, int gfpoly, int (*gffunc)(int ), int fcr, int prim, int nroots, gfp_t gfp)

返回类型:struct rs_control

参数:

类型参数名称
intsymsize
intgfpoly
int (*gffunc
intfcr
intprim
intnroots
gfp_tgfp
222  如果symsize小于1则返回:NULL
224  如果fcr小于0或fcr大于等于1左移symsize位则返回:NULL
226  如果prim小于等于0或prim大于等于1左移symsize位则返回:NULL
228  如果nroots小于0或nroots大于等于1左移symsize位则返回:NULL
236  bsize等于sizeof(uint16_t)乘RS_DECODE_NUM_BUFFERSnroots加1的和
237  rs等于分配内存并置零
238  如果非rs则返回:NULL
241  mutex_lock( & Protection for the list )
245  cd等于list_entry - get the struct for this entry*@ptr: the &struct list_head pointer.*@type: the type of the struct this is embedded in.*@member: the name of the list_head within the struct.(tmp, structrs_codec, list)
247  如果symsize不等于mm则继续下一循环
249  如果gfpoly不等于gfpoly则继续下一循环
251  如果gffunc不等于gffunc则继续下一循环
253  如果fcr不等于fcr则继续下一循环
255  如果prim不等于prim则继续下一循环
257  如果nroots不等于nroots则继续下一循环
260  users自加
261  codec等于cd
262  转到:out
266  codec等于dec_init - Initialize a Reed-Solomon codec*@symsize: symbol size, bits (1-8)*@gfpoly: Field generator polynomial coefficients*@gffunc: Field generator function*@fcr: first root of RS code generator polynomial, index form*@prim: primitive element to
267  如果非codec
268  kfree(rs)
269  rs = NULL
271  out :
272  mutex_unlock( & Protection for the list )
273  返回:rs
调用者
名称描述
init_rs_gfp_rs_gfp - Create a RS control struct and initialize it*@symsize: the symbol size (number of bits)*@gfpoly: the extended Galois field generator polynomial coefficients,* with the 0th coefficient in the low order bit
init_rs_non_canonical_rs_non_canonical - Allocate rs control struct for fields with* non-canonical representation*@symsize: the symbol size (number of bits)*@gffunc: pointer to function to generate the next field element,* or the multiplicative identity element if given 0