函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:arch\x86\kernel\apic\apic.c Create Date:2022-07-27 09:26:22
Last Modify:2020-03-16 21:21:31 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:reserve_eilvt_offset

函数原型:static unsigned int reserve_eilvt_offset(int offset, unsigned int new)

返回类型:unsigned int

参数:

类型参数名称
intoffset
unsigned intnew
405  如果offset大于等于APIC_EILVT_NR_MAX则返回:0的反
408  rsvd等于atomic_read( & Setup extended LVT, AMD specific* Software should use the LVT offsets the BIOS provides. The offsets* are determined by the subsystems using it like those for MCE* threshold or IBS. On K8 only offset 0 (APIC500) and MCE interrupts* are supported[offset])
409  循环
410  vector等于rsvd按位与APIC_EILVT_MASKED的反
411  如果vector且非eilvt_entry_is_changeable(vector, new)则返回:rsvd
414  rsvd等于atomic_cmpxchg( & Setup extended LVT, AMD specific* Software should use the LVT offsets the BIOS provides. The offsets* are determined by the subsystems using it like those for MCE* threshold or IBS. On K8 only offset 0 (APIC500) and MCE interrupts* are supported[offset], rsvd, new)
415 rsvd不等于new循环
417  rsvd与等于APIC_EILVT_MASKED的反
418  如果rsvdrsvd不等于vector打印信息("LVT offset %d assigned for vector 0x%02x\n", offset, rsvd)
422  返回:new
调用者
名称描述
setup_APIC_eilvtIf mask=1, the LVT entry does not generate interrupts while mask=0* enables the vector. See also the BKDGs. Must be called with* preemption disabled.