Re: rfc: remove print_vma_addr ? (was Re: [PATCH 00/16] remove eight obsolete architectures)

From: Matthew Wilcox
Date: Thu Mar 15 2018 - 13:09:13 EST


On Thu, Mar 15, 2018 at 09:56:46AM -0700, Joe Perches wrote:
> I have a patchset that creates a vsprintf extension for
> print_vma_addr and removes all the uses similar to the
> print_symbol() removal.
>
> This now avoids any possible printk interleaving.
>
> Unfortunately, without some #ifdef in vsprintf, which
> I would like to avoid, it increases the nommu kernel
> size by ~500 bytes.
>
> Anyone think this is acceptable?
>
> Here's the overall patch, but I have it as a series
> ---
> Documentation/core-api/printk-formats.rst | 9 +++++
> arch/arm64/kernel/traps.c | 13 +++----
> arch/mips/mm/fault.c | 16 ++++-----
> arch/parisc/mm/fault.c | 15 ++++----
> arch/riscv/kernel/traps.c | 11 +++---
> arch/s390/mm/fault.c | 7 ++--
> arch/sparc/mm/fault_32.c | 8 ++---
> arch/sparc/mm/fault_64.c | 8 ++---
> arch/tile/kernel/signal.c | 9 ++---
> arch/um/kernel/trap.c | 13 +++----
> arch/x86/kernel/signal.c | 10 ++----
> arch/x86/kernel/traps.c | 18 ++++------
> arch/x86/mm/fault.c | 12 +++----
> include/linux/mm.h | 1 -
> lib/vsprintf.c | 58 ++++++++++++++++++++++++++-----
> mm/memory.c | 33 ------------------
> 16 files changed, 112 insertions(+), 129 deletions(-)

This doesn't feel like a huge win since it's only called ~once per
architecture. I'd be more excited if it made the printing of the whole
thing standardised; eg we have a print_fault() function in mm/memory.c
which takes a suitable set of arguments.