Krish Sadhukhan <krish.sadhukhan@xxxxxxxxxx> writes: > On 2/12/20 6:37 PM, linmiaohe wrote: >> From: Miaohe Lin <linmiaohe@xxxxxxxxxx> >> >> The function apic_lvt_vector() is unused now, remove it. >> >> Signed-off-by: Miaohe Lin <linmiaohe@xxxxxxxxxx> >> --- >> arch/x86/kvm/lapic.c | 5 ----- >> 1 file changed, 5 deletions(-) >> >> diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c >> index eafc631d305c..0b563c280784 100644 >> --- a/arch/x86/kvm/lapic.c >> +++ b/arch/x86/kvm/lapic.c >> @@ -294,11 +294,6 @@ static inline int apic_lvt_enabled(struct kvm_lapic *apic, int lvt_type) >> return !(kvm_lapic_get_reg(apic, lvt_type) & APIC_LVT_MASKED); >> } >> >> -static inline int apic_lvt_vector(struct kvm_lapic *apic, int lvt_type) >> -{ >> - return kvm_lapic_get_reg(apic, lvt_type) & APIC_VECTOR_MASK; >> -} >> - >> static inline int apic_lvtt_oneshot(struct kvm_lapic *apic) >> { >> return apic->lapic_timer.timer_mode == APIC_LVT_TIMER_ONESHOT; > > There is one place, lapic_timer_int_injected(), where this function be > used : > > struct kvm_lapic *apic = vcpu->arch.apic; > - u32 reg = kvm_lapic_get_reg(apic, APIC_LVTT); > > if (kvm_apic_hw_enabled(apic)) { > > - int vec = reg & APIC_VECTOR_MASK; > > + int vec = apic_lvt_vector(APIC_LVTT); > void *bitmap = apic->regs + APIC_ISR; > > > But since that's the only place I can find, we probably don't need a > separate function. > I like the alternative suggestion more than the original patch) Also, apic_lvt_enabled() is only used once with APIC_LVTT as the second argument so I'd suggest we also do: diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c index afcd30d44cbb..d85463ff4a6f 100644 --- a/arch/x86/kvm/lapic.c +++ b/arch/x86/kvm/lapic.c @@ -289,14 +289,14 @@ static inline void kvm_apic_set_x2apic_id(struct kvm_lapic *apic, u32 id) recalculate_apic_map(apic->vcpu->kvm); } -static inline int apic_lvt_enabled(struct kvm_lapic *apic, int lvt_type) +static inline int apic_lvtt_enabled(struct kvm_lapic *apic) { - return !(kvm_lapic_get_reg(apic, lvt_type) & APIC_LVT_MASKED); + return !(kvm_lapic_get_reg(apic, APIC_LVTT) & APIC_LVT_MASKED); } -static inline int apic_lvt_vector(struct kvm_lapic *apic, int lvt_type) +static inline int apic_lvtt_vector(struct kvm_lapic *apic) { - return kvm_lapic_get_reg(apic, lvt_type) & APIC_VECTOR_MASK; + return kvm_lapic_get_reg(apic, APIC_LVTT) & APIC_VECTOR_MASK; } in addition to the above. -- Vitaly