Re: [PATCH v4 2/3] printk: Change type of CONFIG_BASE_SMALL to bool

From: Masahiro Yamada
Date: Tue Feb 06 2024 - 18:06:11 EST


On Tue, Feb 6, 2024 at 9:13 AM Yoann Congal <yoann.congal@xxxxxxxx> wrote:
>
> CONFIG_BASE_SMALL is currently a type int but is only used as a boolean.
>
> So, change its type to bool and adapt all usages:
> CONFIG_BASE_SMALL == 0 becomes !IS_ENABLED(CONFIG_BASE_SMALL) and
> CONFIG_BASE_SMALL != 0 becomes IS_ENABLED(CONFIG_BASE_SMALL).
>
> Signed-off-by: Yoann Congal <yoann.congal@xxxxxxxx>
> ---
> NB: This is preliminary work for the following patch removing
> CONFIG_BASE_FULL (now equivalent to !CONFIG_BASE_SMALL)
>
> v3->v4:
> * Split "switch CONFIG_BASE_SMALL to bool" (this patch) and "Remove the redundant
> config" into two patches
> * keep CONFIG_BASE_SMALL instead of CONFIG_BASE_FULL
> ---
> arch/x86/include/asm/mpspec.h | 6 +++---
> drivers/tty/vt/vc_screen.c | 2 +-
> include/linux/threads.h | 4 ++--
> include/linux/udp.h | 2 +-
> include/linux/xarray.h | 2 +-
> init/Kconfig | 8 ++++----
> kernel/futex/core.c | 2 +-
> kernel/user.c | 2 +-
> 8 files changed, 14 insertions(+), 14 deletions(-)
>
> diff --git a/arch/x86/include/asm/mpspec.h b/arch/x86/include/asm/mpspec.h
> index 4b0f98a8d338d..c01d3105840cf 100644
> --- a/arch/x86/include/asm/mpspec.h
> +++ b/arch/x86/include/asm/mpspec.h
> @@ -15,10 +15,10 @@ extern int pic_mode;
> * Summit or generic (i.e. installer) kernels need lots of bus entries.
> * Maximum 256 PCI busses, plus 1 ISA bus in each of 4 cabinets.
> */
> -#if CONFIG_BASE_SMALL == 0
> -# define MAX_MP_BUSSES 260
> -#else
> +#ifdef CONFIG_BASE_SMALL
> # define MAX_MP_BUSSES 32
> +#else
> +# define MAX_MP_BUSSES 260
> #endif
>
> #define MAX_IRQ_SOURCES 256
> diff --git a/drivers/tty/vt/vc_screen.c b/drivers/tty/vt/vc_screen.c
> index 67e2cb7c96eec..da33c6c4691c0 100644
> --- a/drivers/tty/vt/vc_screen.c
> +++ b/drivers/tty/vt/vc_screen.c
> @@ -51,7 +51,7 @@
> #include <asm/unaligned.h>
>
> #define HEADER_SIZE 4u
> -#define CON_BUF_SIZE (CONFIG_BASE_SMALL ? 256 : PAGE_SIZE)
> +#define CON_BUF_SIZE (IS_ENABLED(CONFIG_BASE_SMALL) ? 256 : PAGE_SIZE)
>
> /*
> * Our minor space:
> diff --git a/include/linux/threads.h b/include/linux/threads.h
> index c34173e6c5f18..1674a471b0b4c 100644
> --- a/include/linux/threads.h
> +++ b/include/linux/threads.h
> @@ -25,13 +25,13 @@
> /*
> * This controls the default maximum pid allocated to a process
> */
> -#define PID_MAX_DEFAULT (CONFIG_BASE_SMALL ? 0x1000 : 0x8000)
> +#define PID_MAX_DEFAULT (IS_ENABLED(CONFIG_BASE_SMALL) ? 0x1000 : 0x8000)
>
> /*
> * A maximum of 4 million PIDs should be enough for a while.
> * [NOTE: PID/TIDs are limited to 2^30 ~= 1 billion, see FUTEX_TID_MASK.]
> */
> -#define PID_MAX_LIMIT (CONFIG_BASE_SMALL ? PAGE_SIZE * 8 : \
> +#define PID_MAX_LIMIT (IS_ENABLED(CONFIG_BASE_SMALL) ? PAGE_SIZE * 8 : \
> (sizeof(long) > 4 ? 4 * 1024 * 1024 : PID_MAX_DEFAULT))
>
> /*
> diff --git a/include/linux/udp.h b/include/linux/udp.h
> index d04188714dca1..b456417fb4515 100644
> --- a/include/linux/udp.h
> +++ b/include/linux/udp.h
> @@ -24,7 +24,7 @@ static inline struct udphdr *udp_hdr(const struct sk_buff *skb)
> }
>
> #define UDP_HTABLE_SIZE_MIN_PERNET 128
> -#define UDP_HTABLE_SIZE_MIN (CONFIG_BASE_SMALL ? 128 : 256)
> +#define UDP_HTABLE_SIZE_MIN (IS_ENABLED(CONFIG_BASE_SMALL) ? 128 : 256)
> #define UDP_HTABLE_SIZE_MAX 65536
>
> static inline u32 udp_hashfn(const struct net *net, u32 num, u32 mask)
> diff --git a/include/linux/xarray.h b/include/linux/xarray.h
> index cb571dfcf4b16..3f81ee5f9fb9c 100644
> --- a/include/linux/xarray.h
> +++ b/include/linux/xarray.h
> @@ -1141,7 +1141,7 @@ static inline void xa_release(struct xarray *xa, unsigned long index)
> * doubled the number of slots per node, we'd get only 3 nodes per 4kB page.
> */
> #ifndef XA_CHUNK_SHIFT
> -#define XA_CHUNK_SHIFT (CONFIG_BASE_SMALL ? 4 : 6)
> +#define XA_CHUNK_SHIFT (IS_ENABLED(CONFIG_BASE_SMALL) ? 4 : 6)
> #endif
> #define XA_CHUNK_SIZE (1UL << XA_CHUNK_SHIFT)
> #define XA_CHUNK_MASK (XA_CHUNK_SIZE - 1)
> diff --git a/init/Kconfig b/init/Kconfig
> index d50ebd2a2ce42..d4b16cad98502 100644
> --- a/init/Kconfig
> +++ b/init/Kconfig
> @@ -734,7 +734,7 @@ config LOG_CPU_MAX_BUF_SHIFT
> int "CPU kernel log buffer size contribution (13 => 8 KB, 17 => 128KB)"
> depends on SMP
> range 0 21
> - default 0 if BASE_SMALL != 0
> + default 0 if BASE_SMALL
> default 12
> depends on PRINTK
> help
> @@ -1941,9 +1941,9 @@ config RT_MUTEXES
> default y if PREEMPT_RT
>
> config BASE_SMALL
> - int
> - default 0 if BASE_FULL
> - default 1 if !BASE_FULL
> + bool
> + default y if !BASE_FULL
> + default n



The shortest form would be:


config BASE_SMALL
def_bool !BASE_FULL



But, that is not a big deal, as this hunk will
be removed by 3/3.




Reviewed-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>








--
Best Regards
Masahiro Yamada