[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20150115210458.625399149@linutronix.de>
Date: Thu, 15 Jan 2015 21:22:07 -0000
From: Thomas Gleixner <tglx@...utronix.de>
To: LKML <linux-kernel@...r.kernel.org>
Cc: Jiang Liu <jiang.liu@...ux.intel.com>,
Joerg Roedel <joro@...tes.org>, x86@...nel.org,
Tony Luck <tony.luck@...el.com>, Borislav Petkov <bp@...en8.de>
Subject: [patch 00/23] x86: Cleanup apic/ioapic/x2apic setup code
While reviewing Jiangs interrupt remapping patch set, I had several
serious WTF moments when trying to understand what that code is doing.
The main issues I've seen are:
- Blindly copy and pasted code
- Random places which initialize bits and pieces
- Code which got mindlessly expanded with duct tape and glue
without considering readability and maintainability.
- Missing inline stubs which result in a ifdef nightmare
- Superflous inline stubs to artificially avoid sensible ifdefs
The deeper I looked the more I started to get grumpy about that maze
and finally sat down and cleaned it up seriously. One bug I fixed on
the way (surprise, surprise) got folded into Jiangs series which is
now in tip/x86/apic. The other one is not that crucial and cant be
fixed in the previous code without adding more mess.
The following patch series applies on top of tip/x86/apic. It cleans
up and consolidates the apic/ioapic/x2apic setup functions.
Please give it a proper review and testing.
Thanks,
tglx
---
arch/x86/include/asm/smpboot_hooks.h | 68 ------
tip/arch/x86/include/asm/apic.h | 57 +----
tip/arch/x86/include/asm/io_apic.h | 5
tip/arch/x86/kernel/apic/apic.c | 395 ++++++++++++++++++-----------------
tip/arch/x86/kernel/apic/io_apic.c | 13 -
tip/arch/x86/kernel/cpu/common.c | 2
tip/arch/x86/kernel/smpboot.c | 113 +++++-----
tip/init/main.c | 14 -
8 files changed, 308 insertions(+), 359 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists