函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:enabled_store

函数原型:static ssize_t enabled_store(struct kobject *kobj, struct kobj_attribute *attr, const char *buf, size_t count)

返回类型:ssize_t

参数:

类型参数名称
struct kobject *kobj
struct kobj_attribute *attr
const char *buf
size_tcount
319  ret等于kstrtobool - convert common user inputs into boolean values*@s: input string*@res: result* This routine returns 0 iff the first character is one of 'Yy1Nn0', or* [oO][NnFf] for "on" and "off". Otherwise it will return -EINVAL. Value
320  如果ret则返回:ret
323  patch等于container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(kobj, structklp_patch, kobj)
325  mutex_lock( & klp_mutex is a coarse lock which serializes access to klp data)
327  如果enabled恒等于enabled
329  ret等于负EINVAL
330  转到:out
340  如果patch恒等于klp_transition_patchThis function can be called in the middle of an existing transition to* reverse the direction of the target patch state. This can be done to* effectively cancel an existing enable or disable operation if there are any
342  否则如果非enabledret等于Sysfs Interface* /sys/kernel/livepatch* /sys/kernel/livepatch/* /sys/kernel/livepatch//enabled* /sys/kernel/livepatch//transition* /sys/kernel/livepatch//force* /sys/kernel/livepatch//*
344  否则ret等于负EINVAL
347  out :
348  mutex_unlock - release the mutex*@lock: the mutex to be released* Unlock a mutex that has been locked by this task previously.* This function must not be used in interrupt context. Unlocking* of a not locked mutex is not allowed.
350  如果ret则返回:ret
352  返回:count