| From foo@baz Tue Aug 14 16:14:56 CEST 2018 |
| From: Nicolai Stange <nstange@suse.de> |
| Date: Fri, 27 Jul 2018 12:46:29 +0200 |
| Subject: x86/irq: Demote irq_cpustat_t::__softirq_pending to u16 |
| |
| From: Nicolai Stange <nstange@suse.de> |
| |
| commit 9aee5f8a7e30330d0a8f4c626dc924ca5590aba5 upstream |
| |
| An upcoming patch will extend KVM's L1TF mitigation in conditional mode |
| to also cover interrupts after VMEXITs. For tracking those, stores to a |
| new per-cpu flag from interrupt handlers will become necessary. |
| |
| In order to improve cache locality, this new flag will be added to x86's |
| irq_cpustat_t. |
| |
| Make some space available there by shrinking the ->softirq_pending bitfield |
| from 32 to 16 bits: the number of bits actually used is only NR_SOFTIRQS, |
| i.e. 10. |
| |
| Suggested-by: Paolo Bonzini <pbonzini@redhat.com> |
| Signed-off-by: Nicolai Stange <nstange@suse.de> |
| Signed-off-by: Thomas Gleixner <tglx@linutronix.de> |
| Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> |
| Signed-off-by: David Woodhouse <dwmw@amazon.co.uk> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| arch/x86/include/asm/hardirq.h | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/arch/x86/include/asm/hardirq.h |
| +++ b/arch/x86/include/asm/hardirq.h |
| @@ -5,7 +5,7 @@ |
| #include <linux/irq.h> |
| |
| typedef struct { |
| - unsigned int __softirq_pending; |
| + u16 __softirq_pending; |
| unsigned int __nmi_count; /* arch dependent */ |
| #ifdef CONFIG_X86_LOCAL_APIC |
| unsigned int apic_timer_irqs; /* arch dependent */ |