On Tue, Mar 26, 2019 at 01:40:57PM +0100, Thomas Gleixner wrote: > On Tue, 26 Mar 2019, Huang, Kai wrote: > > On Wed, 2019-03-20 at 18:21 +0200, Jarkko Sakkinen wrote: > > > 13 files changed, 1657 insertions(+), 2 deletions(-) > > > create mode 100644 arch/x86/include/uapi/asm/sgx.h > > > create mode 100644 arch/x86/kernel/cpu/sgx/driver/Makefile > > > create mode 100644 arch/x86/kernel/cpu/sgx/driver/driver.h > > > create mode 100644 arch/x86/kernel/cpu/sgx/driver/ioctl.c > > > create mode 100644 arch/x86/kernel/cpu/sgx/driver/main.c > > > create mode 100644 arch/x86/kernel/cpu/sgx/encl.c > > > create mode 100644 arch/x86/kernel/cpu/sgx/encl.h > > > > Shouldn't the driver be located somewhere under drivers/, but not under arch/x86? > > > > I don't think x86 maintainers should have the burden to review every code > > change made to SGX driver? > > I rather prefer to have it in x86. Why? Because driver code has a tendency > to get under the radar. And having everything under arch/x86 will likely reduce the maintenance burden for everyone: - Doesn't require taking changes through multiple trees or coordinating acks from multiple maintainers. - Significantly reduces the number of functions, macros, structs and variables that needs to be exposed in asm/sgx.h (actually eliminates it entirely at this point) which allows for sane code organization as opposed to dumping everything in one big header. - Mostly avoids bikeshedding over whether something is architectural or belongs in the so called driver.