get rid of legacy 'get_ds()' function
authorLinus Torvalds <torvalds@linux-foundation.org>
Mon, 4 Mar 2019 18:39:05 +0000 (10:39 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 4 Mar 2019 18:50:14 +0000 (10:50 -0800)
commit736706bee3298208343a76096370e4f6a5c55915
tree3e90fd9d540cb15ac671182d52f9a4ade8657c59
parent84c4e1f89fefe70554da0ab33be72c9be7994379
get rid of legacy 'get_ds()' function

Every in-kernel use of this function defined it to KERNEL_DS (either as
an actual define, or as an inline function).  It's an entirely
historical artifact, and long long long ago used to actually read the
segment selector valueof '%ds' on x86.

Which in the kernel is always KERNEL_DS.

Inspired by a patch from Jann Horn that just did this for a very small
subset of users (the ones in fs/), along with Al who suggested a script.
I then just took it to the logical extreme and removed all the remaining
gunk.

Roughly scripted with

   git grep -l '(get_ds())' -- :^tools/ | xargs sed -i 's/(get_ds())/(KERNEL_DS)/'
   git grep -lw 'get_ds' -- :^tools/ | xargs sed -i '/^#define get_ds()/d'

plus manual fixups to remove a few unusual usage patterns, the couple of
inline function cases and to fix up a comment that had become stale.

The 'get_ds()' function remains in an x86 kvm selftest, since in user
space it actually does something relevant.

Inspired-by: Jann Horn <jannh@google.com>
Inspired-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
33 files changed:
arch/alpha/include/asm/uaccess.h
arch/arm/include/asm/uaccess.h
arch/arm/kernel/process.c
arch/arm/xen/hypercall.S
arch/arm64/include/asm/uaccess.h
arch/csky/include/asm/segment.h
arch/h8300/include/asm/segment.h
arch/ia64/include/asm/uaccess.h
arch/m68k/include/asm/segment.h
arch/microblaze/include/asm/uaccess.h
arch/mips/include/asm/uaccess.h
arch/mips/kernel/ftrace.c
arch/mips/kernel/kgdb.c
arch/mips/kernel/traps.c
arch/nds32/include/asm/uaccess.h
arch/nds32/kernel/process.c
arch/nios2/include/asm/uaccess.h
arch/openrisc/include/asm/uaccess.h
arch/parisc/include/asm/uaccess.h
arch/powerpc/include/asm/uaccess.h
arch/riscv/include/asm/uaccess.h
arch/s390/include/asm/uaccess.h
arch/sh/include/asm/segment.h
arch/sparc/include/asm/uaccess_32.h
arch/sparc/include/asm/uaccess_64.h
arch/x86/include/asm/uaccess.h
arch/xtensa/include/asm/asm-uaccess.h
arch/xtensa/include/asm/uaccess.h
drivers/staging/rtl8723bs/os_dep/osdep_service.c
fs/read_write.c
fs/splice.c
include/asm-generic/uaccess.h
security/integrity/iint.c