2023-01-05 00:49:47

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 0/27] Unconditionally enable SRCU

Hello!

This series removes Kconfig "select" clauses and #ifdef directives that
are no longer necessary give that SRCU is now unconditionally enabled,
courtesy of new-age printk() requirements. Finally, the SRCU Kconfig
option is removed entirely.

1. arch/x86: Remove "select SRCU".

2. arch/arm64/kvm: Remove "select SRCU".

3. arch/mips/kvm: Remove "select SRCU".

4. arch/powerpc/kvm: Remove "select SRCU".

5. arch/riscv/kvm: Remove "select SRCU".

6. arch/s390/kvm: Remove "select SRCU".

7. block: Remove "select SRCU".

8. drivers/base: Remove CONFIG_SRCU.

9. drivers/clk: Remove "select SRCU".

10. drivers/cpufreq: Remove "select SRCU".

11. drivers/dax: Remove "select SRCU".

12. drivers/devfreq: Remove "select SRCU".

13. drivers/hwtracing/stm: Remove "select SRCU".

14. drivers/md: Remove "select SRCU".

15. drivers/net: Remove "select SRCU".

16. drivers/opp: Remove "select SRCU".

17. drivers/pci/controller: Remove "select SRCU".

18. fs/btrfs: Remove "select SRCU".

19. fs/dlm: Remove "select SRCU".

20. fs/notify: Remove "select SRCU".

21. fs/quota: Remove "select SRCU".

22. init: Remove "select SRCU".

23. kernel/power: Remove "select SRCU".

24. mm: Remove "select SRCU".

25. fs: Remove CONFIG_SRCU.

26. kernel/notifier: Remove CONFIG_SRCU.

27. rcu: Remove CONFIG_SRCU.

Thanx, Paul

------------------------------------------------------------------------

arch/arm64/kvm/Kconfig | 1
arch/mips/kvm/Kconfig | 1
arch/powerpc/kvm/Kconfig | 1
arch/riscv/kvm/Kconfig | 1
arch/s390/kvm/Kconfig | 1
arch/x86/Kconfig | 2
arch/x86/kvm/Kconfig | 1
block/Kconfig | 1
drivers/base/core.c | 42 ------------
drivers/clk/Kconfig | 1
drivers/cpufreq/Kconfig | 1
drivers/dax/Kconfig | 1
drivers/devfreq/Kconfig | 1
drivers/hwtracing/stm/Kconfig | 1
drivers/md/Kconfig | 1
drivers/net/Kconfig | 1
drivers/opp/Kconfig | 1
drivers/pci/controller/Kconfig | 2
fs/btrfs/Kconfig | 1
fs/dlm/Kconfig | 1
fs/locks.c | 25 -------
fs/notify/Kconfig | 1
fs/quota/Kconfig | 1
init/Kconfig | 1
kernel/notifier.c | 3
kernel/power/Kconfig | 1
kernel/rcu/Kconfig | 3
mm/Kconfig | 1
tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt | 4 -
29 files changed, 1 insertion(+), 102 deletions(-)


2023-01-05 00:50:16

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 10/27] drivers/cpufreq: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: "Rafael J. Wysocki" <[email protected]>
Cc: Viresh Kumar <[email protected]>
Cc: <[email protected]>
---
drivers/cpufreq/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/cpufreq/Kconfig b/drivers/cpufreq/Kconfig
index 2a84fc63371e2..785541df59379 100644
--- a/drivers/cpufreq/Kconfig
+++ b/drivers/cpufreq/Kconfig
@@ -3,7 +3,6 @@ menu "CPU Frequency scaling"

config CPU_FREQ
bool "CPU Frequency scaling"
- select SRCU
help
CPU Frequency scaling allows you to change the clock speed of
CPUs on the fly. This is a nice method to save power, because
--
2.31.1.189.g2e36527f23

2023-01-05 00:52:16

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 27/27] rcu: Remove CONFIG_SRCU

Now that all references to CONFIG_SRCU have been removed, it is time to
remove CONFIG_SRCU itself.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: John Ogness <[email protected]>
Cc: Petr Mladek <[email protected]>
---
kernel/rcu/Kconfig | 3 ---
tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt | 4 ----
2 files changed, 7 deletions(-)

diff --git a/kernel/rcu/Kconfig b/kernel/rcu/Kconfig
index ab62074174c32..9071182b1284b 100644
--- a/kernel/rcu/Kconfig
+++ b/kernel/rcu/Kconfig
@@ -53,9 +53,6 @@ config RCU_EXPERT

Say N if you are unsure.

-config SRCU
- def_bool y
-
config TINY_SRCU
bool
default y if TINY_RCU
diff --git a/tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt b/tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt
index 42acb1a64ce10..3f5fb66f16df7 100644
--- a/tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt
+++ b/tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt
@@ -71,9 +71,5 @@ CONFIG_TASKS_RCU

These are controlled by CONFIG_PREEMPT and/or CONFIG_SMP.

-CONFIG_SRCU
-
- Selected by CONFIG_RCU_TORTURE_TEST, so cannot disable.
-

boot parameters ignored: TBD
--
2.31.1.189.g2e36527f23

2023-01-05 00:52:36

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 18/27] fs/btrfs: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Chris Mason <[email protected]>
Cc: Josef Bacik <[email protected]>
Cc: David Sterba <[email protected]>
Cc: <[email protected]>
---
fs/btrfs/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/fs/btrfs/Kconfig b/fs/btrfs/Kconfig
index 183e5c4aed348..37b6bab90c835 100644
--- a/fs/btrfs/Kconfig
+++ b/fs/btrfs/Kconfig
@@ -17,7 +17,6 @@ config BTRFS_FS
select FS_IOMAP
select RAID6_PQ
select XOR_BLOCKS
- select SRCU
depends on PAGE_SIZE_LESS_THAN_256KB

help
--
2.31.1.189.g2e36527f23

2023-01-05 00:53:06

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 21/27] fs/quota: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Jan Kara <[email protected]>
---
fs/quota/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/fs/quota/Kconfig b/fs/quota/Kconfig
index b59cd172b5f97..d5a85a8062d05 100644
--- a/fs/quota/Kconfig
+++ b/fs/quota/Kconfig
@@ -6,7 +6,6 @@
config QUOTA
bool "Quota support"
select QUOTACTL
- select SRCU
help
If you say Y here, you will be able to set per user limits for disk
usage (also called disk quotas). Currently, it works for the
--
2.31.1.189.g2e36527f23

2023-01-05 00:56:01

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 01/27] arch/x86: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Dave Hansen <[email protected]>
Cc: "H. Peter Anvin" <[email protected]>
Cc: Sean Christopherson <[email protected]>
Cc: Paolo Bonzini <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
---
arch/x86/Kconfig | 2 --
arch/x86/kvm/Kconfig | 1 -
2 files changed, 3 deletions(-)

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 3604074a878b8..4a9175fe7dd18 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -283,7 +283,6 @@ config X86
select RTC_LIB
select RTC_MC146818_LIB
select SPARSE_IRQ
- select SRCU
select SYSCTL_EXCEPTION_TRACE
select THREAD_INFO_IN_TASK
select TRACE_IRQFLAGS_SUPPORT
@@ -1938,7 +1937,6 @@ config X86_SGX
depends on X86_64 && CPU_SUP_INTEL && X86_X2APIC
depends on CRYPTO=y
depends on CRYPTO_SHA256=y
- select SRCU
select MMU_NOTIFIER
select NUMA_KEEP_MEMINFO if NUMA
select XARRAY_MULTI
diff --git a/arch/x86/kvm/Kconfig b/arch/x86/kvm/Kconfig
index fbeaa9ddef598..9306d99585188 100644
--- a/arch/x86/kvm/Kconfig
+++ b/arch/x86/kvm/Kconfig
@@ -46,7 +46,6 @@ config KVM
select KVM_XFER_TO_GUEST_WORK
select KVM_GENERIC_DIRTYLOG_READ_PROTECT
select KVM_VFIO
- select SRCU
select INTERVAL_TREE
select HAVE_KVM_PM_NOTIFIER if PM
help
--
2.31.1.189.g2e36527f23

2023-01-05 00:56:08

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 12/27] drivers/devfreq: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: MyungJoo Ham <[email protected]>
Cc: Kyungmin Park <[email protected]>
Cc: Chanwoo Choi <[email protected]>
Cc: <[email protected]>
---
drivers/devfreq/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/devfreq/Kconfig b/drivers/devfreq/Kconfig
index 9754d8b316211..3c4862a752b5a 100644
--- a/drivers/devfreq/Kconfig
+++ b/drivers/devfreq/Kconfig
@@ -1,7 +1,6 @@
# SPDX-License-Identifier: GPL-2.0-only
menuconfig PM_DEVFREQ
bool "Generic Dynamic Voltage and Frequency Scaling (DVFS) support"
- select SRCU
select PM_OPP
help
A device may have a list of frequencies and voltages available.
--
2.31.1.189.g2e36527f23

2023-01-05 00:56:22

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 07/27] block: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Jens Axboe <[email protected]>
Cc: [email protected]
---
block/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/block/Kconfig b/block/Kconfig
index 444c5ab3b67e2..5d9d9c84d5165 100644
--- a/block/Kconfig
+++ b/block/Kconfig
@@ -6,7 +6,6 @@ menuconfig BLOCK
bool "Enable the block layer" if EXPERT
default y
select SBITMAP
- select SRCU
help
Provide block layer support for the kernel.

--
2.31.1.189.g2e36527f23

2023-01-05 00:56:32

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 02/27] arch/arm64/kvm: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Marc Zyngier <[email protected]>
Cc: James Morse <[email protected]>
Cc: Alexandru Elisei <[email protected]>
Cc: Suzuki K Poulose <[email protected]>
Cc: Oliver Upton <[email protected]>
Cc: Catalin Marinas <[email protected]>
Cc: Will Deacon <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
---
arch/arm64/kvm/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/arch/arm64/kvm/Kconfig b/arch/arm64/kvm/Kconfig
index 05da3c8f7e88f..312f0e9869111 100644
--- a/arch/arm64/kvm/Kconfig
+++ b/arch/arm64/kvm/Kconfig
@@ -28,7 +28,6 @@ menuconfig KVM
select KVM_MMIO
select KVM_GENERIC_DIRTYLOG_READ_PROTECT
select KVM_XFER_TO_GUEST_WORK
- select SRCU
select KVM_VFIO
select HAVE_KVM_EVENTFD
select HAVE_KVM_IRQFD
--
2.31.1.189.g2e36527f23

2023-01-05 00:56:54

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 08/27] drivers/base: Remove CONFIG_SRCU

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in conditional compilation based on CONFIG_SRCU.
Therefore, remove the #ifdef and throw away the #else clause.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Greg Kroah-Hartman <[email protected]>
Cc: "Rafael J. Wysocki" <[email protected]>
---
drivers/base/core.c | 42 ------------------------------------------
1 file changed, 42 deletions(-)

diff --git a/drivers/base/core.c b/drivers/base/core.c
index a3e14143ec0cf..bb36aca8d1b7a 100644
--- a/drivers/base/core.c
+++ b/drivers/base/core.c
@@ -181,7 +181,6 @@ void fw_devlink_purge_absent_suppliers(struct fwnode_handle *fwnode)
}
EXPORT_SYMBOL_GPL(fw_devlink_purge_absent_suppliers);

-#ifdef CONFIG_SRCU
static DEFINE_MUTEX(device_links_lock);
DEFINE_STATIC_SRCU(device_links_srcu);

@@ -220,47 +219,6 @@ static void device_link_remove_from_lists(struct device_link *link)
list_del_rcu(&link->s_node);
list_del_rcu(&link->c_node);
}
-#else /* !CONFIG_SRCU */
-static DECLARE_RWSEM(device_links_lock);
-
-static inline void device_links_write_lock(void)
-{
- down_write(&device_links_lock);
-}
-
-static inline void device_links_write_unlock(void)
-{
- up_write(&device_links_lock);
-}
-
-int device_links_read_lock(void)
-{
- down_read(&device_links_lock);
- return 0;
-}
-
-void device_links_read_unlock(int not_used)
-{
- up_read(&device_links_lock);
-}
-
-#ifdef CONFIG_DEBUG_LOCK_ALLOC
-int device_links_read_lock_held(void)
-{
- return lockdep_is_held(&device_links_lock);
-}
-#endif
-
-static inline void device_link_synchronize_removal(void)
-{
-}
-
-static void device_link_remove_from_lists(struct device_link *link)
-{
- list_del(&link->s_node);
- list_del(&link->c_node);
-}
-#endif /* !CONFIG_SRCU */

static bool device_is_ancestor(struct device *dev, struct device *target)
{
--
2.31.1.189.g2e36527f23

2023-01-05 00:57:22

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 17/27] drivers/pci/controller: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Lorenzo Pieralisi <[email protected]>
Cc: Rob Herring <[email protected]>
Cc: "Krzysztof Wilczyński" <[email protected]>
Cc: Bjorn Helgaas <[email protected]>
Cc: <[email protected]>
---
drivers/pci/controller/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/pci/controller/Kconfig b/drivers/pci/controller/Kconfig
index 1569d9a3ada0b..b09cdc59bfd02 100644
--- a/drivers/pci/controller/Kconfig
+++ b/drivers/pci/controller/Kconfig
@@ -258,7 +258,7 @@ config PCIE_MEDIATEK_GEN3
MediaTek SoCs.

config VMD
- depends on PCI_MSI && X86_64 && SRCU && !UML
+ depends on PCI_MSI && X86_64 && !UML
tristate "Intel Volume Management Device Driver"
help
Adds support for the Intel Volume Management Device (VMD). VMD is a
--
2.31.1.189.g2e36527f23

2023-01-05 01:07:41

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 24/27] mm: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Andrew Morton
Cc: <[email protected]>
---
mm/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/mm/Kconfig b/mm/Kconfig
index ff7b209dec055..dc660775b7d3f 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -667,7 +667,6 @@ config BOUNCE

config MMU_NOTIFIER
bool
- select SRCU
select INTERVAL_TREE

config KSM
--
2.31.1.189.g2e36527f23

2023-01-05 01:07:41

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 03/27] arch/mips/kvm: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Huacai Chen <[email protected]>
Cc: Aleksandar Markovic <[email protected]>
Cc: Thomas Bogendoerfer <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
---
arch/mips/kvm/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/arch/mips/kvm/Kconfig b/arch/mips/kvm/Kconfig
index 91d197bee9c0a..591f46a5d7be1 100644
--- a/arch/mips/kvm/Kconfig
+++ b/arch/mips/kvm/Kconfig
@@ -26,7 +26,6 @@ config KVM
select HAVE_KVM_VCPU_ASYNC_IOCTL
select KVM_MMIO
select MMU_NOTIFIER
- select SRCU
select INTERVAL_TREE
help
Support for hosting Guest kernels.
--
2.31.1.189.g2e36527f23

2023-01-05 01:07:41

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 25/27] fs: Remove CONFIG_SRCU

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in conditional compilation based on CONFIG_SRCU.
Therefore, remove the #ifdef and throw away the #else clause.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Jeff Layton <[email protected]>
Cc: Chuck Lever <[email protected]>
Cc: Alexander Viro <[email protected]>
Cc: <[email protected]>
---
fs/locks.c | 25 -------------------------
1 file changed, 25 deletions(-)

diff --git a/fs/locks.c b/fs/locks.c
index 8f01bee177159..1909a9de242c8 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -1889,7 +1889,6 @@ int generic_setlease(struct file *filp, long arg, struct file_lock **flp,
}
EXPORT_SYMBOL(generic_setlease);

-#if IS_ENABLED(CONFIG_SRCU)
/*
* Kernel subsystems can register to be notified on any attempt to set
* a new lease with the lease_notifier_chain. This is used by (e.g.) nfsd
@@ -1923,30 +1922,6 @@ void lease_unregister_notifier(struct notifier_block *nb)
}
EXPORT_SYMBOL_GPL(lease_unregister_notifier);

-#else /* !IS_ENABLED(CONFIG_SRCU) */
-static inline void
-lease_notifier_chain_init(void)
-{
-}
-
-static inline void
-setlease_notifier(long arg, struct file_lock *lease)
-{
-}
-
-int lease_register_notifier(struct notifier_block *nb)
-{
- return 0;
-}
-EXPORT_SYMBOL_GPL(lease_register_notifier);
-
-void lease_unregister_notifier(struct notifier_block *nb)
-{
-}
-EXPORT_SYMBOL_GPL(lease_unregister_notifier);
-
-#endif /* IS_ENABLED(CONFIG_SRCU) */
-
/**
* vfs_setlease - sets a lease on an open file
* @filp: file pointer
--
2.31.1.189.g2e36527f23

2023-01-05 01:07:41

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 19/27] fs/dlm: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Christine Caulfield <[email protected]>
Cc: David Teigland <[email protected]>
Cc: <[email protected]>
---
fs/dlm/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/fs/dlm/Kconfig b/fs/dlm/Kconfig
index 1105ce3c80cbd..b3b86dbdc1878 100644
--- a/fs/dlm/Kconfig
+++ b/fs/dlm/Kconfig
@@ -4,7 +4,6 @@ menuconfig DLM
depends on INET
depends on SYSFS && CONFIGFS_FS && (IPV6 || IPV6=n)
select IP_SCTP
- select SRCU
help
A general purpose distributed lock manager for kernel or userspace
applications.
--
2.31.1.189.g2e36527f23

2023-01-05 01:07:47

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 15/27] drivers/net: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: "David S. Miller" <[email protected]>
Cc: Eric Dumazet <[email protected]>
Cc: Jakub Kicinski <[email protected]>
Cc: Paolo Abeni <[email protected]>
Cc: <[email protected]>
---
drivers/net/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
index 9e63b8c43f3e2..12910338ea1a0 100644
--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
@@ -334,7 +334,6 @@ config NETCONSOLE_DYNAMIC

config NETPOLL
def_bool NETCONSOLE
- select SRCU

config NET_POLL_CONTROLLER
def_bool NETPOLL
--
2.31.1.189.g2e36527f23

2023-01-05 01:08:22

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 26/27] kernel/notifier: Remove CONFIG_SRCU

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in conditional compilation based on CONFIG_SRCU.
Therefore, remove the #ifdef.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: "Rafael J. Wysocki" <[email protected]>
Cc: "Michał Mirosław" <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Alan Stern <[email protected]>
---
kernel/notifier.c | 3 ---
1 file changed, 3 deletions(-)

diff --git a/kernel/notifier.c b/kernel/notifier.c
index ab75637fd904f..d353e4b5402d7 100644
--- a/kernel/notifier.c
+++ b/kernel/notifier.c
@@ -456,7 +456,6 @@ int raw_notifier_call_chain(struct raw_notifier_head *nh,
}
EXPORT_SYMBOL_GPL(raw_notifier_call_chain);

-#ifdef CONFIG_SRCU
/*
* SRCU notifier chain routines. Registration and unregistration
* use a mutex, and call_chain is synchronized by SRCU (no locks).
@@ -573,8 +572,6 @@ void srcu_init_notifier_head(struct srcu_notifier_head *nh)
}
EXPORT_SYMBOL_GPL(srcu_init_notifier_head);

-#endif /* CONFIG_SRCU */
-
static ATOMIC_NOTIFIER_HEAD(die_chain);

int notrace notify_die(enum die_val val, const char *str,
--
2.31.1.189.g2e36527f23

2023-01-05 01:08:28

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 11/27] drivers/dax: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Dan Williams <[email protected]>
Cc: Vishal Verma <[email protected]>
Cc: Dave Jiang <[email protected]>
Cc: <[email protected]>
---
drivers/dax/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/dax/Kconfig b/drivers/dax/Kconfig
index 5fdf269a822e5..2bf5123e48279 100644
--- a/drivers/dax/Kconfig
+++ b/drivers/dax/Kconfig
@@ -1,7 +1,6 @@
# SPDX-License-Identifier: GPL-2.0-only
menuconfig DAX
tristate "DAX: direct access to differentiated memory"
- select SRCU
default m if NVDIMM_DAX

if DAX
--
2.31.1.189.g2e36527f23

2023-01-05 01:08:40

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 22/27] init: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Andrew Morton <[email protected]>
Cc: Nick Desaulniers <[email protected]>
Cc: Masahiro Yamada <[email protected]>
Cc: Johannes Weiner <[email protected]>
Cc: Vlastimil Babka <[email protected]>
Cc: Nathan Chancellor <[email protected]>
Cc: Arnd Bergmann <[email protected]>
Cc: Miguel Ojeda <[email protected]>
Cc: Masami Hiramatsu <[email protected]>
Cc: Dmitry Torokhov <[email protected]>
Cc: Aaron Tomlin <[email protected]>
Cc: Tejun Heo <[email protected]>
Cc: Christophe Leroy <[email protected]>
---
init/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/init/Kconfig b/init/Kconfig
index 7e5c3ddc341de..af511c726d695 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1865,7 +1865,6 @@ config PERF_EVENTS
default y if PROFILING
depends on HAVE_PERF_EVENTS
select IRQ_WORK
- select SRCU
help
Enable kernel support for various performance events provided
by software and hardware.
--
2.31.1.189.g2e36527f23

2023-01-05 01:08:53

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 04/27] arch/powerpc/kvm: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Michael Ellerman <[email protected]>
Cc: Nicholas Piggin <[email protected]>
Cc: Christophe Leroy <[email protected]>
Cc: <[email protected]>
---
arch/powerpc/kvm/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/arch/powerpc/kvm/Kconfig b/arch/powerpc/kvm/Kconfig
index a9f57dad6d916..902611954200d 100644
--- a/arch/powerpc/kvm/Kconfig
+++ b/arch/powerpc/kvm/Kconfig
@@ -22,7 +22,6 @@ config KVM
select PREEMPT_NOTIFIERS
select HAVE_KVM_EVENTFD
select HAVE_KVM_VCPU_ASYNC_IOCTL
- select SRCU
select KVM_VFIO
select IRQ_BYPASS_MANAGER
select HAVE_KVM_IRQ_BYPASS
--
2.31.1.189.g2e36527f23

2023-01-05 01:09:10

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 14/27] drivers/md: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Song Liu <[email protected]>
Cc: Alasdair Kergon <[email protected]>
Cc: Mike Snitzer <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
---
drivers/md/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/md/Kconfig b/drivers/md/Kconfig
index 998a5cfdbc4e9..5f1e2593fad7e 100644
--- a/drivers/md/Kconfig
+++ b/drivers/md/Kconfig
@@ -6,7 +6,6 @@
menuconfig MD
bool "Multiple devices driver support (RAID and LVM)"
depends on BLOCK
- select SRCU
help
Support multiple physical spindles through a single logical device.
Required for RAID and logical volume management.
--
2.31.1.189.g2e36527f23

2023-01-05 01:09:28

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 23/27] kernel/power: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: "Rafael J. Wysocki" <[email protected]>
Cc: Len Brown <[email protected]>
Cc: Pavel Machek <[email protected]>
Cc: <[email protected]>
---
kernel/power/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/kernel/power/Kconfig b/kernel/power/Kconfig
index 60a1d3051cc79..4b31629c5be4b 100644
--- a/kernel/power/Kconfig
+++ b/kernel/power/Kconfig
@@ -118,7 +118,6 @@ config PM_SLEEP
def_bool y
depends on SUSPEND || HIBERNATE_CALLBACKS
select PM
- select SRCU

config PM_SLEEP_SMP
def_bool y
--
2.31.1.189.g2e36527f23

2023-01-05 01:10:17

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 05/27] arch/riscv/kvm: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Anup Patel <[email protected]>
Cc: Atish Patra <[email protected]>
Cc: Paul Walmsley <[email protected]>
Cc: Palmer Dabbelt <[email protected]>
Cc: Albert Ou <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
---
arch/riscv/kvm/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/arch/riscv/kvm/Kconfig b/arch/riscv/kvm/Kconfig
index f36a737d5f96d..6bc9b290c1283 100644
--- a/arch/riscv/kvm/Kconfig
+++ b/arch/riscv/kvm/Kconfig
@@ -27,7 +27,6 @@ config KVM
select KVM_XFER_TO_GUEST_WORK
select HAVE_KVM_VCPU_ASYNC_IOCTL
select HAVE_KVM_EVENTFD
- select SRCU
help
Support hosting virtualized guest machines.

--
2.31.1.189.g2e36527f23

2023-01-05 01:10:47

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 16/27] drivers/opp: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Viresh Kumar <[email protected]>
Cc: Nishanth Menon <[email protected]>
Cc: Stephen Boyd <[email protected]>
Cc: <[email protected]>
---
drivers/opp/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/opp/Kconfig b/drivers/opp/Kconfig
index e8ce47b327359..d7c649a1a981c 100644
--- a/drivers/opp/Kconfig
+++ b/drivers/opp/Kconfig
@@ -1,7 +1,6 @@
# SPDX-License-Identifier: GPL-2.0-only
config PM_OPP
bool
- select SRCU
help
SOCs have a standard set of tuples consisting of frequency and
voltage pairs that the device will support per voltage domain. This
--
2.31.1.189.g2e36527f23

2023-01-05 01:12:36

by Song Liu

[permalink] [raw]
Subject: Re: [PATCH rcu 14/27] drivers/md: Remove "select SRCU"

On Wed, Jan 4, 2023 at 4:38 PM Paul E. McKenney <[email protected]> wrote:
>
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Song Liu <[email protected]>
> Cc: Alasdair Kergon <[email protected]>
> Cc: Mike Snitzer <[email protected]>
> Cc: <[email protected]>
> Cc: <[email protected]>

Acked-by: Song Liu <[email protected]>

> ---
> drivers/md/Kconfig | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/drivers/md/Kconfig b/drivers/md/Kconfig
> index 998a5cfdbc4e9..5f1e2593fad7e 100644
> --- a/drivers/md/Kconfig
> +++ b/drivers/md/Kconfig
> @@ -6,7 +6,6 @@
> menuconfig MD
> bool "Multiple devices driver support (RAID and LVM)"
> depends on BLOCK
> - select SRCU
> help
> Support multiple physical spindles through a single logical device.
> Required for RAID and logical volume management.
> --
> 2.31.1.189.g2e36527f23
>

2023-01-05 01:23:48

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 13/27] drivers/hwtracing/stm: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Alexander Shishkin <[email protected]>
Cc: Maxime Coquelin <[email protected]>
Cc: Alexandre Torgue <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
---
drivers/hwtracing/stm/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/hwtracing/stm/Kconfig b/drivers/hwtracing/stm/Kconfig
index aad594fe79cc5..eda6b11d40a1f 100644
--- a/drivers/hwtracing/stm/Kconfig
+++ b/drivers/hwtracing/stm/Kconfig
@@ -2,7 +2,6 @@
config STM
tristate "System Trace Module devices"
select CONFIGFS_FS
- select SRCU
help
A System Trace Module (STM) is a device exporting data in System
Trace Protocol (STP) format as defined by MIPI STP standards.
--
2.31.1.189.g2e36527f23

2023-01-05 01:24:36

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 06/27] arch/s390/kvm: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Christian Borntraeger <[email protected]>
Cc: Janosch Frank <[email protected]>
Cc: Claudio Imbrenda <[email protected]>
Cc: David Hildenbrand <[email protected]>
Cc: Heiko Carstens <[email protected]>
Cc: Vasily Gorbik <[email protected]>
Cc: Alexander Gordeev <[email protected]>
Cc: Sven Schnelle <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
---
arch/s390/kvm/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/arch/s390/kvm/Kconfig b/arch/s390/kvm/Kconfig
index 33f4ff909476c..45fdf2a9b2e32 100644
--- a/arch/s390/kvm/Kconfig
+++ b/arch/s390/kvm/Kconfig
@@ -31,7 +31,6 @@ config KVM
select HAVE_KVM_IRQ_ROUTING
select HAVE_KVM_INVALID_WAKEUPS
select HAVE_KVM_NO_POLL
- select SRCU
select KVM_VFIO
select INTERVAL_TREE
select MMU_NOTIFIER
--
2.31.1.189.g2e36527f23

2023-01-05 01:25:18

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH rcu 07/27] block: Remove "select SRCU"

On 1/4/23 5:37 PM, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.

I'm assuming something earlier made this true (only CC'ed on this patch,
not the cover letter or interesting btis...), then:

Reviewed-by: Jens Axboe <[email protected]>

--
Jens Axboe


2023-01-05 01:25:20

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu 09/27] drivers/clk: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Michael Turquette <[email protected]>
Cc: Stephen Boyd <[email protected]>
Cc: <[email protected]>
---
drivers/clk/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
index d79905f3e1744..b6c5bf69a2b2c 100644
--- a/drivers/clk/Kconfig
+++ b/drivers/clk/Kconfig
@@ -23,7 +23,6 @@ menuconfig COMMON_CLK
depends on !HAVE_LEGACY_CLK
select HAVE_CLK_PREPARE
select HAVE_CLK
- select SRCU
select RATIONAL
help
The common clock framework is a single definition of struct
--
2.31.1.189.g2e36527f23

2023-01-05 01:49:36

by Jakub Kicinski

[permalink] [raw]
Subject: Re: [PATCH rcu 15/27] drivers/net: Remove "select SRCU"

On Wed, 4 Jan 2023 16:38:01 -0800 Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: "David S. Miller" <[email protected]>
> Cc: Eric Dumazet <[email protected]>
> Cc: Jakub Kicinski <[email protected]>
> Cc: Paolo Abeni <[email protected]>
> Cc: <[email protected]>

Acked-by: Jakub Kicinski <[email protected]>

2023-01-05 04:27:08

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH rcu 10/27] drivers/cpufreq: Remove "select SRCU"

On 04-01-23, 16:37, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: "Rafael J. Wysocki" <[email protected]>
> Cc: Viresh Kumar <[email protected]>
> Cc: <[email protected]>
> ---
> drivers/cpufreq/Kconfig | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/drivers/cpufreq/Kconfig b/drivers/cpufreq/Kconfig
> index 2a84fc63371e2..785541df59379 100644
> --- a/drivers/cpufreq/Kconfig
> +++ b/drivers/cpufreq/Kconfig
> @@ -3,7 +3,6 @@ menu "CPU Frequency scaling"
>
> config CPU_FREQ
> bool "CPU Frequency scaling"
> - select SRCU
> help
> CPU Frequency scaling allows you to change the clock speed of
> CPUs on the fly. This is a nice method to save power, because

Acked-by: Viresh Kumar <[email protected]>

--
viresh

2023-01-05 04:36:15

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH rcu 16/27] drivers/opp: Remove "select SRCU"

On 04-01-23, 16:38, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Viresh Kumar <[email protected]>
> Cc: Nishanth Menon <[email protected]>
> Cc: Stephen Boyd <[email protected]>
> Cc: <[email protected]>
> ---
> drivers/opp/Kconfig | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/drivers/opp/Kconfig b/drivers/opp/Kconfig
> index e8ce47b327359..d7c649a1a981c 100644
> --- a/drivers/opp/Kconfig
> +++ b/drivers/opp/Kconfig
> @@ -1,7 +1,6 @@
> # SPDX-License-Identifier: GPL-2.0-only
> config PM_OPP
> bool
> - select SRCU
> help
> SOCs have a standard set of tuples consisting of frequency and
> voltage pairs that the device will support per voltage domain. This

Paul,

Should I apply this in my tree ? Or you plan to merge all the patches
yourself ?

--
viresh

2023-01-05 05:29:19

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 16/27] drivers/opp: Remove "select SRCU"

On Thu, Jan 05, 2023 at 09:36:16AM +0530, Viresh Kumar wrote:
> On 04-01-23, 16:38, Paul E. McKenney wrote:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Viresh Kumar <[email protected]>
> > Cc: Nishanth Menon <[email protected]>
> > Cc: Stephen Boyd <[email protected]>
> > Cc: <[email protected]>
> > ---
> > drivers/opp/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/drivers/opp/Kconfig b/drivers/opp/Kconfig
> > index e8ce47b327359..d7c649a1a981c 100644
> > --- a/drivers/opp/Kconfig
> > +++ b/drivers/opp/Kconfig
> > @@ -1,7 +1,6 @@
> > # SPDX-License-Identifier: GPL-2.0-only
> > config PM_OPP
> > bool
> > - select SRCU
> > help
> > SOCs have a standard set of tuples consisting of frequency and
> > voltage pairs that the device will support per voltage domain. This
>
> Paul,
>
> Should I apply this in my tree ? Or you plan to merge all the patches
> yourself ?

Your choice, either way works for me, just let me know!

Thanx, Paul

2023-01-05 06:24:31

by Viresh Kumar

[permalink] [raw]
Subject: Re: [PATCH rcu 16/27] drivers/opp: Remove "select SRCU"

On 04-01-23, 16:38, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Viresh Kumar <[email protected]>
> Cc: Nishanth Menon <[email protected]>
> Cc: Stephen Boyd <[email protected]>
> Cc: <[email protected]>
> ---
> drivers/opp/Kconfig | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/drivers/opp/Kconfig b/drivers/opp/Kconfig
> index e8ce47b327359..d7c649a1a981c 100644
> --- a/drivers/opp/Kconfig
> +++ b/drivers/opp/Kconfig
> @@ -1,7 +1,6 @@
> # SPDX-License-Identifier: GPL-2.0-only
> config PM_OPP
> bool
> - select SRCU
> help
> SOCs have a standard set of tuples consisting of frequency and
> voltage pairs that the device will support per voltage domain. This

Applied. Thanks.

--
viresh

2023-01-05 08:37:04

by Heiko Carstens

[permalink] [raw]
Subject: Re: [PATCH rcu 07/27] block: Remove "select SRCU"

On Wed, Jan 04, 2023 at 05:43:07PM -0700, Jens Axboe wrote:
> On 1/4/23 5:37 PM, Paul E. McKenney wrote:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
>
> I'm assuming something earlier made this true (only CC'ed on this patch,
> not the cover letter or interesting btis...), then:

I was wondering the same. But it is already unconditionally enabled
since commit 0cd7e350abc4 ("rcu: Make SRCU mandatory").

2023-01-05 08:42:02

by John Ogness

[permalink] [raw]
Subject: Re: [PATCH rcu 27/27] rcu: Remove CONFIG_SRCU

On 2023-01-04, "Paul E. McKenney" <[email protected]> wrote:
> Now that all references to CONFIG_SRCU have been removed, it is time to
> remove CONFIG_SRCU itself.

I think "all references" is a bit misleading since there still are
several places in the kernel code that use it:

$ git grep CONFIG_SRCU
drivers/base/core.c:#ifdef CONFIG_SRCU
drivers/base/core.c:#else /* !CONFIG_SRCU */
drivers/base/core.c:#endif /* !CONFIG_SRCU */
fs/locks.c:#if IS_ENABLED(CONFIG_SRCU)
fs/locks.c:#else /* !IS_ENABLED(CONFIG_SRCU) */
fs/locks.c:#endif /* IS_ENABLED(CONFIG_SRCU) */
kernel/notifier.c:#ifdef CONFIG_SRCU
kernel/notifier.c:#endif /* CONFIG_SRCU */

Should those be removed before this patch?

John Ogness

2023-01-05 08:43:04

by Heiko Carstens

[permalink] [raw]
Subject: Re: [PATCH rcu 06/27] arch/s390/kvm: Remove "select SRCU"

On Wed, Jan 04, 2023 at 04:37:52PM -0800, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Christian Borntraeger <[email protected]>
> Cc: Janosch Frank <[email protected]>
> Cc: Claudio Imbrenda <[email protected]>
> Cc: David Hildenbrand <[email protected]>
> Cc: Heiko Carstens <[email protected]>
> Cc: Vasily Gorbik <[email protected]>
> Cc: Alexander Gordeev <[email protected]>
> Cc: Sven Schnelle <[email protected]>
> Cc: <[email protected]>
> Cc: <[email protected]>
> ---
> arch/s390/kvm/Kconfig | 1 -
> 1 file changed, 1 deletion(-)

Acked-by: Heiko Carstens <[email protected]>

2023-01-05 09:43:31

by Qu Wenruo

[permalink] [raw]
Subject: Re: [PATCH rcu 18/27] fs/btrfs: Remove "select SRCU"



On 2023/1/5 08:38, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Chris Mason <[email protected]>
> Cc: Josef Bacik <[email protected]>
> Cc: David Sterba <[email protected]>
> Cc: <[email protected]>

In fact, since commit c75e839414d3 ("btrfs: kill the subvol_srcu"), we
can completely remove any SRCU related configs and even includes.

Reviewed-by: Qu Wenruo <[email protected]>

Thanks,
Qu

> ---
> fs/btrfs/Kconfig | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/fs/btrfs/Kconfig b/fs/btrfs/Kconfig
> index 183e5c4aed348..37b6bab90c835 100644
> --- a/fs/btrfs/Kconfig
> +++ b/fs/btrfs/Kconfig
> @@ -17,7 +17,6 @@ config BTRFS_FS
> select FS_IOMAP
> select RAID6_PQ
> select XOR_BLOCKS
> - select SRCU
> depends on PAGE_SIZE_LESS_THAN_256KB
>
> help

2023-01-05 10:07:44

by Marc Zyngier

[permalink] [raw]
Subject: Re: [PATCH rcu 02/27] arch/arm64/kvm: Remove "select SRCU"

On Thu, 05 Jan 2023 00:37:48 +0000,
"Paul E. McKenney" <[email protected]> wrote:
>
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Marc Zyngier <[email protected]>
> Cc: James Morse <[email protected]>
> Cc: Alexandru Elisei <[email protected]>
> Cc: Suzuki K Poulose <[email protected]>
> Cc: Oliver Upton <[email protected]>
> Cc: Catalin Marinas <[email protected]>
> Cc: Will Deacon <[email protected]>
> Cc: <[email protected]>
> Cc: <[email protected]>
> Cc: <[email protected]>
> ---
> arch/arm64/kvm/Kconfig | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/arch/arm64/kvm/Kconfig b/arch/arm64/kvm/Kconfig
> index 05da3c8f7e88f..312f0e9869111 100644
> --- a/arch/arm64/kvm/Kconfig
> +++ b/arch/arm64/kvm/Kconfig
> @@ -28,7 +28,6 @@ menuconfig KVM
> select KVM_MMIO
> select KVM_GENERIC_DIRTYLOG_READ_PROTECT
> select KVM_XFER_TO_GUEST_WORK
> - select SRCU
> select KVM_VFIO
> select HAVE_KVM_EVENTFD
> select HAVE_KVM_IRQFD

Acked-by: Marc Zyngier <[email protected]>

M.

--
Without deviation from the norm, progress is not possible.

2023-01-05 11:41:05

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH rcu 08/27] drivers/base: Remove CONFIG_SRCU

On Wed, Jan 04, 2023 at 04:37:54PM -0800, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in conditional compilation based on CONFIG_SRCU.
> Therefore, remove the #ifdef and throw away the #else clause.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Greg Kroah-Hartman <[email protected]>
> Cc: "Rafael J. Wysocki" <[email protected]>
> ---
> drivers/base/core.c | 42 ------------------------------------------
> 1 file changed, 42 deletions(-)

Acked-by: Greg Kroah-Hartman <[email protected]>

2023-01-05 12:02:43

by Jan Kara

[permalink] [raw]
Subject: Re: [PATCH rcu 21/27] fs/quota: Remove "select SRCU"

On Wed 04-01-23 16:38:07, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Jan Kara <[email protected]>
> ---
> fs/quota/Kconfig | 1 -
> 1 file changed, 1 deletion(-)

Sure. You can add:

Acked-by: Jan Kara <[email protected]>

Honza

>
> diff --git a/fs/quota/Kconfig b/fs/quota/Kconfig
> index b59cd172b5f97..d5a85a8062d05 100644
> --- a/fs/quota/Kconfig
> +++ b/fs/quota/Kconfig
> @@ -6,7 +6,6 @@
> config QUOTA
> bool "Quota support"
> select QUOTACTL
> - select SRCU
> help
> If you say Y here, you will be able to set per user limits for disk
> usage (also called disk quotas). Currently, it works for the
> --
> 2.31.1.189.g2e36527f23
>
--
Jan Kara <[email protected]>
SUSE Labs, CR

2023-01-05 15:21:31

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: [PATCH rcu 10/27] drivers/cpufreq: Remove "select SRCU"

On Thu, Jan 5, 2023 at 1:38 AM Paul E. McKenney <[email protected]> wrote:
>
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: "Rafael J. Wysocki" <[email protected]>
> Cc: Viresh Kumar <[email protected]>
> Cc: <[email protected]>

Acked-by: "Rafael J. Wysocki" <[email protected]>

> ---
> drivers/cpufreq/Kconfig | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/drivers/cpufreq/Kconfig b/drivers/cpufreq/Kconfig
> index 2a84fc63371e2..785541df59379 100644
> --- a/drivers/cpufreq/Kconfig
> +++ b/drivers/cpufreq/Kconfig
> @@ -3,7 +3,6 @@ menu "CPU Frequency scaling"
>
> config CPU_FREQ
> bool "CPU Frequency scaling"
> - select SRCU
> help
> CPU Frequency scaling allows you to change the clock speed of
> CPUs on the fly. This is a nice method to save power, because
> --
> 2.31.1.189.g2e36527f23
>

2023-01-05 15:22:11

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: [PATCH rcu 23/27] kernel/power: Remove "select SRCU"

On Thu, Jan 5, 2023 at 1:38 AM Paul E. McKenney <[email protected]> wrote:
>
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: "Rafael J. Wysocki" <[email protected]>
> Cc: Len Brown <[email protected]>
> Cc: Pavel Machek <[email protected]>
> Cc: <[email protected]>

Acked-by: "Rafael J. Wysocki" <[email protected]>

> ---
> kernel/power/Kconfig | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/kernel/power/Kconfig b/kernel/power/Kconfig
> index 60a1d3051cc79..4b31629c5be4b 100644
> --- a/kernel/power/Kconfig
> +++ b/kernel/power/Kconfig
> @@ -118,7 +118,6 @@ config PM_SLEEP
> def_bool y
> depends on SUSPEND || HIBERNATE_CALLBACKS
> select PM
> - select SRCU
>
> config PM_SLEEP_SMP
> def_bool y
> --
> 2.31.1.189.g2e36527f23
>

2023-01-05 15:43:11

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 27/27] rcu: Remove CONFIG_SRCU

On Thu, Jan 05, 2023 at 09:10:16AM +0106, John Ogness wrote:
> On 2023-01-04, "Paul E. McKenney" <[email protected]> wrote:
> > Now that all references to CONFIG_SRCU have been removed, it is time to
> > remove CONFIG_SRCU itself.
>
> I think "all references" is a bit misleading since there still are
> several places in the kernel code that use it:
>
> $ git grep CONFIG_SRCU
> drivers/base/core.c:#ifdef CONFIG_SRCU
> drivers/base/core.c:#else /* !CONFIG_SRCU */
> drivers/base/core.c:#endif /* !CONFIG_SRCU */
> fs/locks.c:#if IS_ENABLED(CONFIG_SRCU)
> fs/locks.c:#else /* !IS_ENABLED(CONFIG_SRCU) */
> fs/locks.c:#endif /* IS_ENABLED(CONFIG_SRCU) */
> kernel/notifier.c:#ifdef CONFIG_SRCU
> kernel/notifier.c:#endif /* CONFIG_SRCU */

In the -rcu tree, these are removed by these commits:

1798c5b6b0ea ("drivers/base: Remove CONFIG_SRCU")
19aa50512372 ("fs: Remove CONFIG_SRCU")
fe0c9bd625ad ("kernel/notifier: Remove CONFIG_SRCU")

> Should those be removed before this patch?

When I merge the -rcu tree's "dev" branch with current mainline, "git
grep CONFIG_SRCU" gives me no output. Am I fat-fingering something here?

Thanx, Paul

2023-01-05 15:54:37

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 21/27] fs/quota: Remove "select SRCU"

On Thu, Jan 05, 2023 at 12:30:15PM +0100, Jan Kara wrote:
> On Wed 04-01-23 16:38:07, Paul E. McKenney wrote:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Jan Kara <[email protected]>
> > ---
> > fs/quota/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
>
> Sure. You can add:
>
> Acked-by: Jan Kara <[email protected]>

Thank you, Jan! I will apply both on my next rebase.

> Honza
>
> >
> > diff --git a/fs/quota/Kconfig b/fs/quota/Kconfig
> > index b59cd172b5f97..d5a85a8062d05 100644
> > --- a/fs/quota/Kconfig
> > +++ b/fs/quota/Kconfig
> > @@ -6,7 +6,6 @@
> > config QUOTA
> > bool "Quota support"
> > select QUOTACTL
> > - select SRCU
> > help
> > If you say Y here, you will be able to set per user limits for disk
> > usage (also called disk quotas). Currently, it works for the
> > --
> > 2.31.1.189.g2e36527f23
> >
> --
> Jan Kara <[email protected]>
> SUSE Labs, CR

2023-01-05 16:05:37

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 16/27] drivers/opp: Remove "select SRCU"

On Thu, Jan 05, 2023 at 11:47:30AM +0530, Viresh Kumar wrote:
> On 04-01-23, 16:38, Paul E. McKenney wrote:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Viresh Kumar <[email protected]>
> > Cc: Nishanth Menon <[email protected]>
> > Cc: Stephen Boyd <[email protected]>
> > Cc: <[email protected]>
> > ---
> > drivers/opp/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/drivers/opp/Kconfig b/drivers/opp/Kconfig
> > index e8ce47b327359..d7c649a1a981c 100644
> > --- a/drivers/opp/Kconfig
> > +++ b/drivers/opp/Kconfig
> > @@ -1,7 +1,6 @@
> > # SPDX-License-Identifier: GPL-2.0-only
> > config PM_OPP
> > bool
> > - select SRCU
> > help
> > SOCs have a standard set of tuples consisting of frequency and
> > voltage pairs that the device will support per voltage domain. This
>
> Applied. Thanks.

Thank you, Viresh! I will drop my patch on my next rebase.

Thanx, Paul

2023-01-05 16:06:00

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 06/27] arch/s390/kvm: Remove "select SRCU"

On Thu, Jan 05, 2023 at 09:06:26AM +0100, Heiko Carstens wrote:
> On Wed, Jan 04, 2023 at 04:37:52PM -0800, Paul E. McKenney wrote:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Christian Borntraeger <[email protected]>
> > Cc: Janosch Frank <[email protected]>
> > Cc: Claudio Imbrenda <[email protected]>
> > Cc: David Hildenbrand <[email protected]>
> > Cc: Heiko Carstens <[email protected]>
> > Cc: Vasily Gorbik <[email protected]>
> > Cc: Alexander Gordeev <[email protected]>
> > Cc: Sven Schnelle <[email protected]>
> > Cc: <[email protected]>
> > Cc: <[email protected]>
> > ---
> > arch/s390/kvm/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
>
> Acked-by: Heiko Carstens <[email protected]>

Thank you, Heiko! I will apply on my next rebase.

Thanx, Paul

2023-01-05 16:07:26

by David Sterba

[permalink] [raw]
Subject: Re: [PATCH rcu 18/27] fs/btrfs: Remove "select SRCU"

On Wed, Jan 04, 2023 at 04:38:04PM -0800, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Chris Mason <[email protected]>
> Cc: Josef Bacik <[email protected]>
> Cc: David Sterba <[email protected]>
> Cc: <[email protected]>

Acked-by: David Sterba <[email protected]>

2023-01-05 16:07:27

by Jens Axboe

[permalink] [raw]
Subject: Re: (subset) [PATCH rcu 0/27] Unconditionally enable SRCU


On Wed, 04 Jan 2023 16:37:59 -0800, Paul E. McKenney wrote:
> This series removes Kconfig "select" clauses and #ifdef directives that
> are no longer necessary give that SRCU is now unconditionally enabled,
> courtesy of new-age printk() requirements. Finally, the SRCU Kconfig
> option is removed entirely.
>
> 1. arch/x86: Remove "select SRCU".
>
> [...]

Applied, thanks!

[07/27] block: Remove "select SRCU"
commit: b2b50d572135c5c6e10c2ff79cd828d5a8141ef6

Best regards,
--
Jens Axboe


2023-01-05 16:07:29

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 02/27] arch/arm64/kvm: Remove "select SRCU"

On Thu, Jan 05, 2023 at 09:38:01AM +0000, Marc Zyngier wrote:
> On Thu, 05 Jan 2023 00:37:48 +0000,
> "Paul E. McKenney" <[email protected]> wrote:
> >
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Marc Zyngier <[email protected]>
> > Cc: James Morse <[email protected]>
> > Cc: Alexandru Elisei <[email protected]>
> > Cc: Suzuki K Poulose <[email protected]>
> > Cc: Oliver Upton <[email protected]>
> > Cc: Catalin Marinas <[email protected]>
> > Cc: Will Deacon <[email protected]>
> > Cc: <[email protected]>
> > Cc: <[email protected]>
> > Cc: <[email protected]>
> > ---
> > arch/arm64/kvm/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/arch/arm64/kvm/Kconfig b/arch/arm64/kvm/Kconfig
> > index 05da3c8f7e88f..312f0e9869111 100644
> > --- a/arch/arm64/kvm/Kconfig
> > +++ b/arch/arm64/kvm/Kconfig
> > @@ -28,7 +28,6 @@ menuconfig KVM
> > select KVM_MMIO
> > select KVM_GENERIC_DIRTYLOG_READ_PROTECT
> > select KVM_XFER_TO_GUEST_WORK
> > - select SRCU
> > select KVM_VFIO
> > select HAVE_KVM_EVENTFD
> > select HAVE_KVM_IRQFD
>
> Acked-by: Marc Zyngier <[email protected]>

Thank you, Marc! I will apply this on my next rebase.

Thanx, Paul

> M.
>
> --
> Without deviation from the norm, progress is not possible.

2023-01-05 16:09:12

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 07/27] block: Remove "select SRCU"

On Thu, Jan 05, 2023 at 08:36:43AM -0700, Jens Axboe wrote:
> On 1/5/23 8:33 AM, Paul E. McKenney wrote:
> > On Thu, Jan 05, 2023 at 09:05:47AM +0100, Heiko Carstens wrote:
> >> On Wed, Jan 04, 2023 at 05:43:07PM -0700, Jens Axboe wrote:
> >>> On 1/4/23 5:37 PM, Paul E. McKenney wrote:
> >>>> Now that the SRCU Kconfig option is unconditionally selected, there is
> >>>> no longer any point in selecting it. Therefore, remove the "select SRCU"
> >>>> Kconfig statements.
> >>>
> >>> I'm assuming something earlier made this true (only CC'ed on this patch,
> >>> not the cover letter or interesting btis...), then:
> >>
> >> I was wondering the same. But it is already unconditionally enabled
> >> since commit 0cd7e350abc4 ("rcu: Make SRCU mandatory").
> >
> > Ah, apologies for the terseness!
> >
> > I took the coward's way out by making CONFIG_SRCU unconditional during
> > the last merge window and removing all references during this merge
> > window. ;-)
>
> Are you intending for maintainers to pick up these patches, or are you
> collecting acks for sending the series separately? That part is also
> not clear :-)

Fair point!

Maintainer's choice. By default, I collect acks and send it. But if
(for example) this change is in a high-traffic area, the maintainer
might want to take it, in which case I drop it from my tree.

Either way works for me, as long as you let me know. ;-)

Thanx, Paul

2023-01-05 16:09:54

by John Ogness

[permalink] [raw]
Subject: Re: [PATCH rcu 27/27] rcu: Remove CONFIG_SRCU

On 2023-01-05, "Paul E. McKenney" <[email protected]> wrote:
>> $ git grep CONFIG_SRCU
>> drivers/base/core.c:#ifdef CONFIG_SRCU
>> drivers/base/core.c:#else /* !CONFIG_SRCU */
>> drivers/base/core.c:#endif /* !CONFIG_SRCU */
>> fs/locks.c:#if IS_ENABLED(CONFIG_SRCU)
>> fs/locks.c:#else /* !IS_ENABLED(CONFIG_SRCU) */
>> fs/locks.c:#endif /* IS_ENABLED(CONFIG_SRCU) */
>> kernel/notifier.c:#ifdef CONFIG_SRCU
>> kernel/notifier.c:#endif /* CONFIG_SRCU */
>
> In the -rcu tree, these are removed by these commits:
>
> 1798c5b6b0ea ("drivers/base: Remove CONFIG_SRCU")
> 19aa50512372 ("fs: Remove CONFIG_SRCU")
> fe0c9bd625ad ("kernel/notifier: Remove CONFIG_SRCU")
>
>> Should those be removed before this patch?
>
> When I merge the -rcu tree's "dev" branch with current mainline, "git
> grep CONFIG_SRCU" gives me no output. Am I fat-fingering something
> here?

Sorry, I checked against the wrong branch. You are good.

Reviewed-by: John Ogness <[email protected]>

2023-01-05 16:11:08

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH rcu 07/27] block: Remove "select SRCU"

On 1/5/23 8:33 AM, Paul E. McKenney wrote:
> On Thu, Jan 05, 2023 at 09:05:47AM +0100, Heiko Carstens wrote:
>> On Wed, Jan 04, 2023 at 05:43:07PM -0700, Jens Axboe wrote:
>>> On 1/4/23 5:37 PM, Paul E. McKenney wrote:
>>>> Now that the SRCU Kconfig option is unconditionally selected, there is
>>>> no longer any point in selecting it. Therefore, remove the "select SRCU"
>>>> Kconfig statements.
>>>
>>> I'm assuming something earlier made this true (only CC'ed on this patch,
>>> not the cover letter or interesting btis...), then:
>>
>> I was wondering the same. But it is already unconditionally enabled
>> since commit 0cd7e350abc4 ("rcu: Make SRCU mandatory").
>
> Ah, apologies for the terseness!
>
> I took the coward's way out by making CONFIG_SRCU unconditional during
> the last merge window and removing all references during this merge
> window. ;-)

Are you intending for maintainers to pick up these patches, or are you
collecting acks for sending the series separately? That part is also
not clear :-)

--
Jens Axboe


2023-01-05 16:12:28

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 18/27] fs/btrfs: Remove "select SRCU"

On Thu, Jan 05, 2023 at 05:06:09PM +0800, Qu Wenruo wrote:
>
>
> On 2023/1/5 08:38, Paul E. McKenney wrote:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Chris Mason <[email protected]>
> > Cc: Josef Bacik <[email protected]>
> > Cc: David Sterba <[email protected]>
> > Cc: <[email protected]>
>
> In fact, since commit c75e839414d3 ("btrfs: kill the subvol_srcu"), we can
> completely remove any SRCU related configs and even includes.

$ git grep srcu fs/btrfs/
fs/btrfs/disk-io.h: * fs_info->subvol_srcu

I know that situation. ;-)

> Reviewed-by: Qu Wenruo <[email protected]>

Thank you! I will update on my next rebase.

Thanx, Paul

> Thanks,
> Qu
>
> > ---
> > fs/btrfs/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/fs/btrfs/Kconfig b/fs/btrfs/Kconfig
> > index 183e5c4aed348..37b6bab90c835 100644
> > --- a/fs/btrfs/Kconfig
> > +++ b/fs/btrfs/Kconfig
> > @@ -17,7 +17,6 @@ config BTRFS_FS
> > select FS_IOMAP
> > select RAID6_PQ
> > select XOR_BLOCKS
> > - select SRCU
> > depends on PAGE_SIZE_LESS_THAN_256KB
> > help

2023-01-05 16:15:03

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 27/27] rcu: Remove CONFIG_SRCU

On Thu, Jan 05, 2023 at 04:58:40PM +0106, John Ogness wrote:
> On 2023-01-05, "Paul E. McKenney" <[email protected]> wrote:
> >> $ git grep CONFIG_SRCU
> >> drivers/base/core.c:#ifdef CONFIG_SRCU
> >> drivers/base/core.c:#else /* !CONFIG_SRCU */
> >> drivers/base/core.c:#endif /* !CONFIG_SRCU */
> >> fs/locks.c:#if IS_ENABLED(CONFIG_SRCU)
> >> fs/locks.c:#else /* !IS_ENABLED(CONFIG_SRCU) */
> >> fs/locks.c:#endif /* IS_ENABLED(CONFIG_SRCU) */
> >> kernel/notifier.c:#ifdef CONFIG_SRCU
> >> kernel/notifier.c:#endif /* CONFIG_SRCU */
> >
> > In the -rcu tree, these are removed by these commits:
> >
> > 1798c5b6b0ea ("drivers/base: Remove CONFIG_SRCU")
> > 19aa50512372 ("fs: Remove CONFIG_SRCU")
> > fe0c9bd625ad ("kernel/notifier: Remove CONFIG_SRCU")
> >
> >> Should those be removed before this patch?
> >
> > When I merge the -rcu tree's "dev" branch with current mainline, "git
> > grep CONFIG_SRCU" gives me no output. Am I fat-fingering something
> > here?
>
> Sorry, I checked against the wrong branch. You are good.
>
> Reviewed-by: John Ogness <[email protected]>

Thank you, and I will apply this on the next rebase.

Thanx, Paul

2023-01-05 16:15:44

by Paul E. McKenney

[permalink] [raw]
Subject: Re: (subset) [PATCH rcu 0/27] Unconditionally enable SRCU

On Thu, Jan 05, 2023 at 08:50:37AM -0700, Jens Axboe wrote:
>
> On Wed, 04 Jan 2023 16:37:59 -0800, Paul E. McKenney wrote:
> > This series removes Kconfig "select" clauses and #ifdef directives that
> > are no longer necessary give that SRCU is now unconditionally enabled,
> > courtesy of new-age printk() requirements. Finally, the SRCU Kconfig
> > option is removed entirely.
> >
> > 1. arch/x86: Remove "select SRCU".
> >
> > [...]
>
> Applied, thanks!
>
> [07/27] block: Remove "select SRCU"
> commit: b2b50d572135c5c6e10c2ff79cd828d5a8141ef6

Thank you, Jens! I will drop this one on my next rebase.

Thanx, Paul

2023-01-05 16:29:29

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 10/27] drivers/cpufreq: Remove "select SRCU"

On Thu, Jan 05, 2023 at 04:09:38PM +0100, Rafael J. Wysocki wrote:
> On Thu, Jan 5, 2023 at 1:38 AM Paul E. McKenney <[email protected]> wrote:
> >
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: "Rafael J. Wysocki" <[email protected]>
> > Cc: Viresh Kumar <[email protected]>
> > Cc: <[email protected]>
>
> Acked-by: "Rafael J. Wysocki" <[email protected]>

Thank you, Rafael! I will apply both on my next rebase.

Thanx, Paul

> > ---
> > drivers/cpufreq/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/drivers/cpufreq/Kconfig b/drivers/cpufreq/Kconfig
> > index 2a84fc63371e2..785541df59379 100644
> > --- a/drivers/cpufreq/Kconfig
> > +++ b/drivers/cpufreq/Kconfig
> > @@ -3,7 +3,6 @@ menu "CPU Frequency scaling"
> >
> > config CPU_FREQ
> > bool "CPU Frequency scaling"
> > - select SRCU
> > help
> > CPU Frequency scaling allows you to change the clock speed of
> > CPUs on the fly. This is a nice method to save power, because
> > --
> > 2.31.1.189.g2e36527f23
> >

2023-01-05 16:58:19

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 07/27] block: Remove "select SRCU"

On Thu, Jan 05, 2023 at 09:05:47AM +0100, Heiko Carstens wrote:
> On Wed, Jan 04, 2023 at 05:43:07PM -0700, Jens Axboe wrote:
> > On 1/4/23 5:37 PM, Paul E. McKenney wrote:
> > > Now that the SRCU Kconfig option is unconditionally selected, there is
> > > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > > Kconfig statements.
> >
> > I'm assuming something earlier made this true (only CC'ed on this patch,
> > not the cover letter or interesting btis...), then:
>
> I was wondering the same. But it is already unconditionally enabled
> since commit 0cd7e350abc4 ("rcu: Make SRCU mandatory").

Ah, apologies for the terseness!

I took the coward's way out by making CONFIG_SRCU unconditional during
the last merge window and removing all references during this merge
window. ;-)

Thanx, Paul

2023-01-05 17:01:27

by Dan Williams

[permalink] [raw]
Subject: RE: [PATCH rcu 11/27] drivers/dax: Remove "select SRCU"

Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Dan Williams <[email protected]>
> Cc: Vishal Verma <[email protected]>
> Cc: Dave Jiang <[email protected]>
> Cc: <[email protected]>

Acked-by: Dan Williams <[email protected]>

Let me know if I should pick this up directly, otherwise I assume this
will go in along with the rest of the set.

2023-01-05 17:02:46

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 18/27] fs/btrfs: Remove "select SRCU"

On Thu, Jan 05, 2023 at 04:45:18PM +0100, David Sterba wrote:
> On Wed, Jan 04, 2023 at 04:38:04PM -0800, Paul E. McKenney wrote:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Chris Mason <[email protected]>
> > Cc: Josef Bacik <[email protected]>
> > Cc: David Sterba <[email protected]>
> > Cc: <[email protected]>
>
> Acked-by: David Sterba <[email protected]>

Thank you, David! I will apply this on my next rebase.

Thanx, Paul

2023-01-05 18:05:34

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 11/27] drivers/dax: Remove "select SRCU"

On Thu, Jan 05, 2023 at 08:48:28AM -0800, Dan Williams wrote:
> Paul E. McKenney wrote:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Dan Williams <[email protected]>
> > Cc: Vishal Verma <[email protected]>
> > Cc: Dave Jiang <[email protected]>
> > Cc: <[email protected]>
>
> Acked-by: Dan Williams <[email protected]>
>
> Let me know if I should pick this up directly, otherwise I assume this
> will go in along with the rest of the set.

Thank you, Dan! I will apply your ack on my next rebase. I do plan to
send this along with the rest of the set, but if you do decide to take
it, please just let me know.

Thanx, Paul

2023-01-07 10:24:28

by Anup Patel

[permalink] [raw]
Subject: Re: [PATCH rcu 05/27] arch/riscv/kvm: Remove "select SRCU"

On Thu, Jan 5, 2023 at 6:08 AM Paul E. McKenney <[email protected]> wrote:
>
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Anup Patel <[email protected]>
> Cc: Atish Patra <[email protected]>
> Cc: Paul Walmsley <[email protected]>
> Cc: Palmer Dabbelt <[email protected]>
> Cc: Albert Ou <[email protected]>
> Cc: <[email protected]>
> Cc: <[email protected]>
> Cc: <[email protected]>

For KVM RISC-V:
Acked-by: Anup Patel <[email protected]>

Thanks,
Anup

> ---
> arch/riscv/kvm/Kconfig | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/arch/riscv/kvm/Kconfig b/arch/riscv/kvm/Kconfig
> index f36a737d5f96d..6bc9b290c1283 100644
> --- a/arch/riscv/kvm/Kconfig
> +++ b/arch/riscv/kvm/Kconfig
> @@ -27,7 +27,6 @@ config KVM
> select KVM_XFER_TO_GUEST_WORK
> select HAVE_KVM_VCPU_ASYNC_IOCTL
> select HAVE_KVM_EVENTFD
> - select SRCU
> help
> Support hosting virtualized guest machines.
>
> --
> 2.31.1.189.g2e36527f23
>

2023-01-07 16:35:32

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 05/27] arch/riscv/kvm: Remove "select SRCU"

On Sat, Jan 07, 2023 at 03:28:06PM +0530, Anup Patel wrote:
> On Thu, Jan 5, 2023 at 6:08 AM Paul E. McKenney <[email protected]> wrote:
> >
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Anup Patel <[email protected]>
> > Cc: Atish Patra <[email protected]>
> > Cc: Paul Walmsley <[email protected]>
> > Cc: Palmer Dabbelt <[email protected]>
> > Cc: Albert Ou <[email protected]>
> > Cc: <[email protected]>
> > Cc: <[email protected]>
> > Cc: <[email protected]>
>
> For KVM RISC-V:
> Acked-by: Anup Patel <[email protected]>

Thank you, Anup! I will apply this on my next rebase.

Thanx, Paul

> Thanks,
> Anup
>
> > ---
> > arch/riscv/kvm/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/arch/riscv/kvm/Kconfig b/arch/riscv/kvm/Kconfig
> > index f36a737d5f96d..6bc9b290c1283 100644
> > --- a/arch/riscv/kvm/Kconfig
> > +++ b/arch/riscv/kvm/Kconfig
> > @@ -27,7 +27,6 @@ config KVM
> > select KVM_XFER_TO_GUEST_WORK
> > select HAVE_KVM_VCPU_ASYNC_IOCTL
> > select HAVE_KVM_EVENTFD
> > - select SRCU
> > help
> > Support hosting virtualized guest machines.
> >
> > --
> > 2.31.1.189.g2e36527f23
> >

2023-01-09 18:10:33

by Sean Christopherson

[permalink] [raw]
Subject: Re: [PATCH rcu 01/27] arch/x86: Remove "select SRCU"

On Wed, Jan 04, 2023, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Thomas Gleixner <[email protected]>
> Cc: Ingo Molnar <[email protected]>
> Cc: Borislav Petkov <[email protected]>
> Cc: Dave Hansen <[email protected]>
> Cc: "H. Peter Anvin" <[email protected]>
> Cc: Sean Christopherson <[email protected]>
> Cc: Paolo Bonzini <[email protected]>
> Cc: <[email protected]>
> Cc: <[email protected]>
> ---

...

> diff --git a/arch/x86/kvm/Kconfig b/arch/x86/kvm/Kconfig
> index fbeaa9ddef598..9306d99585188 100644
> --- a/arch/x86/kvm/Kconfig
> +++ b/arch/x86/kvm/Kconfig
> @@ -46,7 +46,6 @@ config KVM
> select KVM_XFER_TO_GUEST_WORK
> select KVM_GENERIC_DIRTYLOG_READ_PROTECT
> select KVM_VFIO
> - select SRCU

Would it be too much trouble to bundle all of the KVM changes into a single patch?
The SRCU requirement is a generic KVM requirement that's handled in the arch Kconfigs
purely because of KVM's somewhat roundabout Kconfig setup.

> select INTERVAL_TREE
> select HAVE_KVM_PM_NOTIFIER if PM
> help
> --
> 2.31.1.189.g2e36527f23
>

2023-01-09 20:14:03

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 01/27] arch/x86: Remove "select SRCU"

On Mon, Jan 09, 2023 at 05:43:23PM +0000, Sean Christopherson wrote:
> On Wed, Jan 04, 2023, Paul E. McKenney wrote:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Thomas Gleixner <[email protected]>
> > Cc: Ingo Molnar <[email protected]>
> > Cc: Borislav Petkov <[email protected]>
> > Cc: Dave Hansen <[email protected]>
> > Cc: "H. Peter Anvin" <[email protected]>
> > Cc: Sean Christopherson <[email protected]>
> > Cc: Paolo Bonzini <[email protected]>
> > Cc: <[email protected]>
> > Cc: <[email protected]>
> > ---
>
> ...
>
> > diff --git a/arch/x86/kvm/Kconfig b/arch/x86/kvm/Kconfig
> > index fbeaa9ddef598..9306d99585188 100644
> > --- a/arch/x86/kvm/Kconfig
> > +++ b/arch/x86/kvm/Kconfig
> > @@ -46,7 +46,6 @@ config KVM
> > select KVM_XFER_TO_GUEST_WORK
> > select KVM_GENERIC_DIRTYLOG_READ_PROTECT
> > select KVM_VFIO
> > - select SRCU
>
> Would it be too much trouble to bundle all of the KVM changes into a single patch?
> The SRCU requirement is a generic KVM requirement that's handled in the arch Kconfigs
> purely because of KVM's somewhat roundabout Kconfig setup.

No problem, and will do on my next rebase. I might end up with a long
list of Cc's, but so it goes. I will of course send the result as a
reply to this message.

Thanx, Paul

> > select INTERVAL_TREE
> > select HAVE_KVM_PM_NOTIFIER if PM
> > help
> > --
> > 2.31.1.189.g2e36527f23
> >

2023-01-09 20:35:28

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 01/27] arch/x86: Remove "select SRCU"

On Mon, Jan 09, 2023 at 11:22:28AM -0800, Paul E. McKenney wrote:
> On Mon, Jan 09, 2023 at 05:43:23PM +0000, Sean Christopherson wrote:
> > On Wed, Jan 04, 2023, Paul E. McKenney wrote:
> > > Now that the SRCU Kconfig option is unconditionally selected, there is
> > > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > > Kconfig statements.
> > >
> > > Signed-off-by: Paul E. McKenney <[email protected]>
> > > Cc: Thomas Gleixner <[email protected]>
> > > Cc: Ingo Molnar <[email protected]>
> > > Cc: Borislav Petkov <[email protected]>
> > > Cc: Dave Hansen <[email protected]>
> > > Cc: "H. Peter Anvin" <[email protected]>
> > > Cc: Sean Christopherson <[email protected]>
> > > Cc: Paolo Bonzini <[email protected]>
> > > Cc: <[email protected]>
> > > Cc: <[email protected]>
> > > ---
> >
> > ...
> >
> > > diff --git a/arch/x86/kvm/Kconfig b/arch/x86/kvm/Kconfig
> > > index fbeaa9ddef598..9306d99585188 100644
> > > --- a/arch/x86/kvm/Kconfig
> > > +++ b/arch/x86/kvm/Kconfig
> > > @@ -46,7 +46,6 @@ config KVM
> > > select KVM_XFER_TO_GUEST_WORK
> > > select KVM_GENERIC_DIRTYLOG_READ_PROTECT
> > > select KVM_VFIO
> > > - select SRCU
> >
> > Would it be too much trouble to bundle all of the KVM changes into a single patch?
> > The SRCU requirement is a generic KVM requirement that's handled in the arch Kconfigs
> > purely because of KVM's somewhat roundabout Kconfig setup.
>
> No problem, and will do on my next rebase. I might end up with a long
> list of Cc's, but so it goes. I will of course send the result as a
> reply to this message.

Like this? (Given the acks, the Cc list wasn't as long as I feared that
it would be.)

Thanx, Paul

------------------------------------------------------------------------

commit 8bde7256e3bdcf4519ee783b0bd919685b960402
Author: Paul E. McKenney <[email protected]>
Date: Tue Nov 22 15:45:39 2022 -0800

kvm: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements from the various KVM Kconfig files.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Huacai Chen <[email protected]>
Cc: Aleksandar Markovic <[email protected]>
Cc: Thomas Bogendoerfer <[email protected]>
Cc: Michael Ellerman <[email protected]>
Cc: Christophe Leroy <[email protected]>
Cc: Sean Christopherson <[email protected]>
Cc: Paolo Bonzini <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Dave Hansen <[email protected]>
Cc: "H. Peter Anvin" <[email protected]>
Cc: <[email protected]>
Acked-by: Marc Zyngier <[email protected]>
Acked-by: Anup Patel <[email protected]>
Acked-by: Heiko Carstens <[email protected]>
Reviewed-by: John Ogness <[email protected]>

diff --git a/arch/arm64/kvm/Kconfig b/arch/arm64/kvm/Kconfig
index 05da3c8f7e88f..312f0e9869111 100644
--- a/arch/arm64/kvm/Kconfig
+++ b/arch/arm64/kvm/Kconfig
@@ -28,7 +28,6 @@ menuconfig KVM
select KVM_MMIO
select KVM_GENERIC_DIRTYLOG_READ_PROTECT
select KVM_XFER_TO_GUEST_WORK
- select SRCU
select KVM_VFIO
select HAVE_KVM_EVENTFD
select HAVE_KVM_IRQFD
diff --git a/arch/mips/kvm/Kconfig b/arch/mips/kvm/Kconfig
index 91d197bee9c0a..591f46a5d7be1 100644
--- a/arch/mips/kvm/Kconfig
+++ b/arch/mips/kvm/Kconfig
@@ -26,7 +26,6 @@ config KVM
select HAVE_KVM_VCPU_ASYNC_IOCTL
select KVM_MMIO
select MMU_NOTIFIER
- select SRCU
select INTERVAL_TREE
help
Support for hosting Guest kernels.
diff --git a/arch/powerpc/kvm/Kconfig b/arch/powerpc/kvm/Kconfig
index a9f57dad6d916..902611954200d 100644
--- a/arch/powerpc/kvm/Kconfig
+++ b/arch/powerpc/kvm/Kconfig
@@ -22,7 +22,6 @@ config KVM
select PREEMPT_NOTIFIERS
select HAVE_KVM_EVENTFD
select HAVE_KVM_VCPU_ASYNC_IOCTL
- select SRCU
select KVM_VFIO
select IRQ_BYPASS_MANAGER
select HAVE_KVM_IRQ_BYPASS
diff --git a/arch/riscv/kvm/Kconfig b/arch/riscv/kvm/Kconfig
index f36a737d5f96d..6bc9b290c1283 100644
--- a/arch/riscv/kvm/Kconfig
+++ b/arch/riscv/kvm/Kconfig
@@ -27,7 +27,6 @@ config KVM
select KVM_XFER_TO_GUEST_WORK
select HAVE_KVM_VCPU_ASYNC_IOCTL
select HAVE_KVM_EVENTFD
- select SRCU
help
Support hosting virtualized guest machines.

diff --git a/arch/s390/kvm/Kconfig b/arch/s390/kvm/Kconfig
index 33f4ff909476c..45fdf2a9b2e32 100644
--- a/arch/s390/kvm/Kconfig
+++ b/arch/s390/kvm/Kconfig
@@ -31,7 +31,6 @@ config KVM
select HAVE_KVM_IRQ_ROUTING
select HAVE_KVM_INVALID_WAKEUPS
select HAVE_KVM_NO_POLL
- select SRCU
select KVM_VFIO
select INTERVAL_TREE
select MMU_NOTIFIER
diff --git a/arch/x86/kvm/Kconfig b/arch/x86/kvm/Kconfig
index fbeaa9ddef598..9306d99585188 100644
--- a/arch/x86/kvm/Kconfig
+++ b/arch/x86/kvm/Kconfig
@@ -46,7 +46,6 @@ config KVM
select KVM_XFER_TO_GUEST_WORK
select KVM_GENERIC_DIRTYLOG_READ_PROTECT
select KVM_VFIO
- select SRCU
select INTERVAL_TREE
select HAVE_KVM_PM_NOTIFIER if PM
help

2023-01-10 00:19:28

by Nick Desaulniers

[permalink] [raw]
Subject: Re: [PATCH rcu 22/27] init: Remove "select SRCU"

On Wed, Jan 4, 2023 at 4:38 PM Paul E. McKenney <[email protected]> wrote:
>
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.

Looks like that's the case as of
commit 0cd7e350abc4 ("rcu: Make SRCU mandatory")
in v6.2-rc1.

>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Andrew Morton <[email protected]>
> Cc: Nick Desaulniers <[email protected]>
> Cc: Masahiro Yamada <[email protected]>
> Cc: Johannes Weiner <[email protected]>
> Cc: Vlastimil Babka <[email protected]>
> Cc: Nathan Chancellor <[email protected]>
> Cc: Arnd Bergmann <[email protected]>
> Cc: Miguel Ojeda <[email protected]>
> Cc: Masami Hiramatsu <[email protected]>
> Cc: Dmitry Torokhov <[email protected]>
> Cc: Aaron Tomlin <[email protected]>
> Cc: Tejun Heo <[email protected]>
> Cc: Christophe Leroy <[email protected]>

Patch LGTM
Reviewed-by: Nick Desaulniers <[email protected]>

Note that there's quite a few more of these though. Perhaps best to
remove them all together? Or perhaps you already have individual
patches out already for all of these?

$ grep -rn 'select SRCU'
mm/Kconfig:670: select SRCU
kernel/power/Kconfig:121: select SRCU
arch/mips/kvm/Kconfig:29: select SRCU
arch/riscv/kvm/Kconfig:30: select SRCU
arch/s390/kvm/Kconfig:34: select SRCU
arch/powerpc/kvm/Kconfig:25: select SRCU
arch/x86/kvm/Kconfig:49: select SRCU
arch/x86/Kconfig:286: select SRCU
arch/x86/Kconfig:1941: select SRCU
arch/arm64/kvm/Kconfig:31: select SRCU
init/Kconfig:1868: select SRCU
security/tomoyo/Kconfig:9: select SRCU
fs/btrfs/Kconfig:20: select SRCU
fs/dlm/Kconfig:7: select SRCU
fs/quota/Kconfig:9: select SRCU
fs/notify/Kconfig:4: select SRCU
drivers/md/Kconfig:9: select SRCU
drivers/clk/Kconfig:26: select SRCU
drivers/dax/Kconfig:4: select SRCU
drivers/devfreq/Kconfig:4: select SRCU
drivers/net/Kconfig:337: select SRCU
drivers/hwtracing/stm/Kconfig:5: select SRCU
drivers/cpufreq/Kconfig:6: select SRCU
drivers/opp/Kconfig:4: select SRCU

> ---
> init/Kconfig | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/init/Kconfig b/init/Kconfig
> index 7e5c3ddc341de..af511c726d695 100644
> --- a/init/Kconfig
> +++ b/init/Kconfig
> @@ -1865,7 +1865,6 @@ config PERF_EVENTS
> default y if PROFILING
> depends on HAVE_PERF_EVENTS
> select IRQ_WORK
> - select SRCU
> help
> Enable kernel support for various performance events provided
> by software and hardware.
> --
> 2.31.1.189.g2e36527f23
>


--
Thanks,
~Nick Desaulniers

2023-01-10 01:12:33

by Nick Desaulniers

[permalink] [raw]
Subject: Re: [PATCH rcu 22/27] init: Remove "select SRCU"

On Mon, Jan 9, 2023 at 4:02 PM Nick Desaulniers <[email protected]> wrote:
>
> On Wed, Jan 4, 2023 at 4:38 PM Paul E. McKenney <[email protected]> wrote:
> >
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
>
> Looks like that's the case as of
> commit 0cd7e350abc4 ("rcu: Make SRCU mandatory")
> in v6.2-rc1.
>
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Andrew Morton <[email protected]>
> > Cc: Nick Desaulniers <[email protected]>
> > Cc: Masahiro Yamada <[email protected]>
> > Cc: Johannes Weiner <[email protected]>
> > Cc: Vlastimil Babka <[email protected]>
> > Cc: Nathan Chancellor <[email protected]>
> > Cc: Arnd Bergmann <[email protected]>
> > Cc: Miguel Ojeda <[email protected]>
> > Cc: Masami Hiramatsu <[email protected]>
> > Cc: Dmitry Torokhov <[email protected]>
> > Cc: Aaron Tomlin <[email protected]>
> > Cc: Tejun Heo <[email protected]>
> > Cc: Christophe Leroy <[email protected]>
>
> Patch LGTM
> Reviewed-by: Nick Desaulniers <[email protected]>
>
> Note that there's quite a few more of these though. Perhaps best to
> remove them all together? Or perhaps you already have individual
> patches out already for all of these?

Ah indeed, I missed that this was part of such a series:
https://lore.kernel.org/lkml/20230105003759.GA1769545@paulmck-ThinkPad-P17-Gen-1/


>
> $ grep -rn 'select SRCU'
> mm/Kconfig:670: select SRCU
> kernel/power/Kconfig:121: select SRCU
> arch/mips/kvm/Kconfig:29: select SRCU
> arch/riscv/kvm/Kconfig:30: select SRCU
> arch/s390/kvm/Kconfig:34: select SRCU
> arch/powerpc/kvm/Kconfig:25: select SRCU
> arch/x86/kvm/Kconfig:49: select SRCU
> arch/x86/Kconfig:286: select SRCU
> arch/x86/Kconfig:1941: select SRCU
> arch/arm64/kvm/Kconfig:31: select SRCU
> init/Kconfig:1868: select SRCU
> security/tomoyo/Kconfig:9: select SRCU
> fs/btrfs/Kconfig:20: select SRCU
> fs/dlm/Kconfig:7: select SRCU
> fs/quota/Kconfig:9: select SRCU
> fs/notify/Kconfig:4: select SRCU
> drivers/md/Kconfig:9: select SRCU
> drivers/clk/Kconfig:26: select SRCU
> drivers/dax/Kconfig:4: select SRCU
> drivers/devfreq/Kconfig:4: select SRCU
> drivers/net/Kconfig:337: select SRCU
> drivers/hwtracing/stm/Kconfig:5: select SRCU
> drivers/cpufreq/Kconfig:6: select SRCU
> drivers/opp/Kconfig:4: select SRCU
>
> > ---
> > init/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/init/Kconfig b/init/Kconfig
> > index 7e5c3ddc341de..af511c726d695 100644
> > --- a/init/Kconfig
> > +++ b/init/Kconfig
> > @@ -1865,7 +1865,6 @@ config PERF_EVENTS
> > default y if PROFILING
> > depends on HAVE_PERF_EVENTS
> > select IRQ_WORK
> > - select SRCU
> > help
> > Enable kernel support for various performance events provided
> > by software and hardware.
> > --
> > 2.31.1.189.g2e36527f23
> >
>
>
> --
> Thanks,
> ~Nick Desaulniers



--
Thanks,
~Nick Desaulniers

2023-01-10 01:13:57

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 22/27] init: Remove "select SRCU"

On Mon, Jan 09, 2023 at 04:02:48PM -0800, Nick Desaulniers wrote:
> On Wed, Jan 4, 2023 at 4:38 PM Paul E. McKenney <[email protected]> wrote:
> >
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
>
> Looks like that's the case as of
> commit 0cd7e350abc4 ("rcu: Make SRCU mandatory")
> in v6.2-rc1.

I freely confess that I took the cowardly way out by making it
unconditional in the last merge window and getting rid of references in
the next merge window. ;-)

> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Andrew Morton <[email protected]>
> > Cc: Nick Desaulniers <[email protected]>
> > Cc: Masahiro Yamada <[email protected]>
> > Cc: Johannes Weiner <[email protected]>
> > Cc: Vlastimil Babka <[email protected]>
> > Cc: Nathan Chancellor <[email protected]>
> > Cc: Arnd Bergmann <[email protected]>
> > Cc: Miguel Ojeda <[email protected]>
> > Cc: Masami Hiramatsu <[email protected]>
> > Cc: Dmitry Torokhov <[email protected]>
> > Cc: Aaron Tomlin <[email protected]>
> > Cc: Tejun Heo <[email protected]>
> > Cc: Christophe Leroy <[email protected]>
>
> Patch LGTM
> Reviewed-by: Nick Desaulniers <[email protected]>

Thank you! I will apply this on my next rebase.

> Note that there's quite a few more of these though. Perhaps best to
> remove them all together? Or perhaps you already have individual
> patches out already for all of these?

I have these:

e73b36cbeb8eb arch/x86: Remove "select SRCU"
8bde7256e3bdc kvm: Remove "select SRCU"
047bbf23dd4f2 drivers/base: Remove CONFIG_SRCU
1b63789c861c1 drivers/clk: Remove "select SRCU"
3fe724041d29d drivers/cpufreq: Remove "select SRCU"
e8dc9f0f97d6f drivers/dax: Remove "select SRCU"
0be2fa022bcde drivers/devfreq: Remove "select SRCU"
e4ac435cd24da drivers/hwtracing/stm: Remove "select SRCU"
159ce13a6c500 drivers/md: Remove "select SRCU"
dbe417fa57042 drivers/net: Remove "select SRCU"
7cc598f342ae4 drivers/pci/controller: Remove "select SRCU"
fba630f40b15d fs/btrfs: Remove "select SRCU"
a17c8daaee218 fs/dlm: Remove "select SRCU"
fd77fd4fe1852 fs/notify: Remove "select SRCU"
47a84e7a9c1c6 fs/quota: Remove "select SRCU"
e5bc2dc08a416 init: Remove "select SRCU"
b7f8ff0898c04 kernel/power: Remove "select SRCU"
db389dace41db mm: Remove "select SRCU"
e5316ffd44aa1 fs: Remove CONFIG_SRCU
2d07d1c58fad7 kernel/notifier: Remove CONFIG_SRCU
c761c79f1e72f rcu: Remove CONFIG_SRCU

Plus there are three more that people wanted to take via their own
trees. And I am fine either way.

But as long as you generated the list...

> $ grep -rn 'select SRCU'
> mm/Kconfig:670: select SRCU
> kernel/power/Kconfig:121: select SRCU
> arch/mips/kvm/Kconfig:29: select SRCU
> arch/riscv/kvm/Kconfig:30: select SRCU
> arch/s390/kvm/Kconfig:34: select SRCU
> arch/powerpc/kvm/Kconfig:25: select SRCU
> arch/x86/kvm/Kconfig:49: select SRCU
> arch/x86/Kconfig:286: select SRCU
> arch/x86/Kconfig:1941: select SRCU
> arch/arm64/kvm/Kconfig:31: select SRCU
> init/Kconfig:1868: select SRCU
> security/tomoyo/Kconfig:9: select SRCU
> fs/btrfs/Kconfig:20: select SRCU
> fs/dlm/Kconfig:7: select SRCU
> fs/quota/Kconfig:9: select SRCU
> fs/notify/Kconfig:4: select SRCU
> drivers/md/Kconfig:9: select SRCU
> drivers/clk/Kconfig:26: select SRCU
> drivers/dax/Kconfig:4: select SRCU
> drivers/devfreq/Kconfig:4: select SRCU
> drivers/net/Kconfig:337: select SRCU
> drivers/hwtracing/stm/Kconfig:5: select SRCU
> drivers/cpufreq/Kconfig:6: select SRCU
> drivers/opp/Kconfig:4: select SRCU

And it does look like I missed security/tomoyo/Kconfig, so thank you
for checking! I have queued the patch.

The other one missing from -next is drivers/opp/Kconfig, which Viresh
said that he was taking.

There is no trace of CONFIG_SRCU in -next, which is the more worrying
one.

Thanx, Paul

> > ---
> > init/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/init/Kconfig b/init/Kconfig
> > index 7e5c3ddc341de..af511c726d695 100644
> > --- a/init/Kconfig
> > +++ b/init/Kconfig
> > @@ -1865,7 +1865,6 @@ config PERF_EVENTS
> > default y if PROFILING
> > depends on HAVE_PERF_EVENTS
> > select IRQ_WORK
> > - select SRCU
> > help
> > Enable kernel support for various performance events provided
> > by software and hardware.
> > --
> > 2.31.1.189.g2e36527f23
> >
>
>
> --
> Thanks,
> ~Nick Desaulniers

2023-01-10 13:24:13

by Chanwoo Choi

[permalink] [raw]
Subject: Re: [PATCH rcu 12/27] drivers/devfreq: Remove "select SRCU"

On 23. 1. 5. 09:37, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: MyungJoo Ham <[email protected]>
> Cc: Kyungmin Park <[email protected]>
> Cc: Chanwoo Choi <[email protected]>
> Cc: <[email protected]>
> ---
> drivers/devfreq/Kconfig | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/drivers/devfreq/Kconfig b/drivers/devfreq/Kconfig
> index 9754d8b316211..3c4862a752b5a 100644
> --- a/drivers/devfreq/Kconfig
> +++ b/drivers/devfreq/Kconfig
> @@ -1,7 +1,6 @@
> # SPDX-License-Identifier: GPL-2.0-only
> menuconfig PM_DEVFREQ
> bool "Generic Dynamic Voltage and Frequency Scaling (DVFS) support"
> - select SRCU
> select PM_OPP
> help
> A device may have a list of frequencies and voltages available.

Applied it. Thanks.

--
Best Regards,
Samsung Electronics
Chanwoo Choi

2023-01-10 16:04:08

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 12/27] drivers/devfreq: Remove "select SRCU"

On Tue, Jan 10, 2023 at 10:07:54PM +0900, Chanwoo Choi wrote:
> On 23. 1. 5. 09:37, Paul E. McKenney wrote:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: MyungJoo Ham <[email protected]>
> > Cc: Kyungmin Park <[email protected]>
> > Cc: Chanwoo Choi <[email protected]>
> > Cc: <[email protected]>
> > ---
> > drivers/devfreq/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/drivers/devfreq/Kconfig b/drivers/devfreq/Kconfig
> > index 9754d8b316211..3c4862a752b5a 100644
> > --- a/drivers/devfreq/Kconfig
> > +++ b/drivers/devfreq/Kconfig
> > @@ -1,7 +1,6 @@
> > # SPDX-License-Identifier: GPL-2.0-only
> > menuconfig PM_DEVFREQ
> > bool "Generic Dynamic Voltage and Frequency Scaling (DVFS) support"
> > - select SRCU
> > select PM_OPP
> > help
> > A device may have a list of frequencies and voltages available.
>
> Applied it. Thanks.

Thank you! I will drop mine on my next rebase.

Thanx, Paul

2023-01-10 20:06:10

by Sean Christopherson

[permalink] [raw]
Subject: Re: [PATCH rcu 01/27] arch/x86: Remove "select SRCU"

On Mon, Jan 09, 2023, Paul E. McKenney wrote:
> On Mon, Jan 09, 2023 at 11:22:28AM -0800, Paul E. McKenney wrote:
> > On Mon, Jan 09, 2023 at 05:43:23PM +0000, Sean Christopherson wrote:
> > > On Wed, Jan 04, 2023, Paul E. McKenney wrote:
> > > > Now that the SRCU Kconfig option is unconditionally selected, there is
> > > > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > > > Kconfig statements.
> > > >
> > > > Signed-off-by: Paul E. McKenney <[email protected]>
> > > > Cc: Thomas Gleixner <[email protected]>
> > > > Cc: Ingo Molnar <[email protected]>
> > > > Cc: Borislav Petkov <[email protected]>
> > > > Cc: Dave Hansen <[email protected]>
> > > > Cc: "H. Peter Anvin" <[email protected]>
> > > > Cc: Sean Christopherson <[email protected]>
> > > > Cc: Paolo Bonzini <[email protected]>
> > > > Cc: <[email protected]>
> > > > Cc: <[email protected]>
> > > > ---
> > >
> > > ...
> > >
> > > > diff --git a/arch/x86/kvm/Kconfig b/arch/x86/kvm/Kconfig
> > > > index fbeaa9ddef598..9306d99585188 100644
> > > > --- a/arch/x86/kvm/Kconfig
> > > > +++ b/arch/x86/kvm/Kconfig
> > > > @@ -46,7 +46,6 @@ config KVM
> > > > select KVM_XFER_TO_GUEST_WORK
> > > > select KVM_GENERIC_DIRTYLOG_READ_PROTECT
> > > > select KVM_VFIO
> > > > - select SRCU
> > >
> > > Would it be too much trouble to bundle all of the KVM changes into a single patch?
> > > The SRCU requirement is a generic KVM requirement that's handled in the arch Kconfigs
> > > purely because of KVM's somewhat roundabout Kconfig setup.
> >
> > No problem, and will do on my next rebase. I might end up with a long
> > list of Cc's, but so it goes. I will of course send the result as a
> > reply to this message.
>
> Like this?

Ya, looks good!

2023-01-11 20:29:45

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 09/27] drivers/clk: Remove "select SRCU"

On Wed, Jan 11, 2023 at 11:37:15AM -0800, Stephen Boyd wrote:
> Quoting Paul E. McKenney (2023-01-04 16:37:55)
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Michael Turquette <[email protected]>
> > Cc: Stephen Boyd <[email protected]>
> > Cc: <[email protected]>
> > ---
>
> Applied to clk-next

Thank you! I will drop it from my tree on my next rebase.

Thanx, Paul

2023-01-12 00:16:04

by Michael Ellerman

[permalink] [raw]
Subject: Re: [PATCH rcu 04/27] arch/powerpc/kvm: Remove "select SRCU"

"Paul E. McKenney" <[email protected]> writes:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Michael Ellerman <[email protected]>
> Cc: Nicholas Piggin <[email protected]>
> Cc: Christophe Leroy <[email protected]>
> Cc: <[email protected]>
> ---
> arch/powerpc/kvm/Kconfig | 1 -
> 1 file changed, 1 deletion(-)

Acked-by: Michael Ellerman <[email protected]> (powerpc)

cheers

> diff --git a/arch/powerpc/kvm/Kconfig b/arch/powerpc/kvm/Kconfig
> index a9f57dad6d916..902611954200d 100644
> --- a/arch/powerpc/kvm/Kconfig
> +++ b/arch/powerpc/kvm/Kconfig
> @@ -22,7 +22,6 @@ config KVM
> select PREEMPT_NOTIFIERS
> select HAVE_KVM_EVENTFD
> select HAVE_KVM_VCPU_ASYNC_IOCTL
> - select SRCU
> select KVM_VFIO
> select IRQ_BYPASS_MANAGER
> select HAVE_KVM_IRQ_BYPASS
> --
> 2.31.1.189.g2e36527f23

2023-01-12 00:16:16

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 01/27] arch/x86: Remove "select SRCU"

On Tue, Jan 10, 2023 at 07:55:13PM +0000, Sean Christopherson wrote:
> On Mon, Jan 09, 2023, Paul E. McKenney wrote:
> > On Mon, Jan 09, 2023 at 11:22:28AM -0800, Paul E. McKenney wrote:
> > > On Mon, Jan 09, 2023 at 05:43:23PM +0000, Sean Christopherson wrote:
> > > > On Wed, Jan 04, 2023, Paul E. McKenney wrote:
> > > > > Now that the SRCU Kconfig option is unconditionally selected, there is
> > > > > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > > > > Kconfig statements.
> > > > >
> > > > > Signed-off-by: Paul E. McKenney <[email protected]>
> > > > > Cc: Thomas Gleixner <[email protected]>
> > > > > Cc: Ingo Molnar <[email protected]>
> > > > > Cc: Borislav Petkov <[email protected]>
> > > > > Cc: Dave Hansen <[email protected]>
> > > > > Cc: "H. Peter Anvin" <[email protected]>
> > > > > Cc: Sean Christopherson <[email protected]>
> > > > > Cc: Paolo Bonzini <[email protected]>
> > > > > Cc: <[email protected]>
> > > > > Cc: <[email protected]>
> > > > > ---
> > > >
> > > > ...
> > > >
> > > > > diff --git a/arch/x86/kvm/Kconfig b/arch/x86/kvm/Kconfig
> > > > > index fbeaa9ddef598..9306d99585188 100644
> > > > > --- a/arch/x86/kvm/Kconfig
> > > > > +++ b/arch/x86/kvm/Kconfig
> > > > > @@ -46,7 +46,6 @@ config KVM
> > > > > select KVM_XFER_TO_GUEST_WORK
> > > > > select KVM_GENERIC_DIRTYLOG_READ_PROTECT
> > > > > select KVM_VFIO
> > > > > - select SRCU
> > > >
> > > > Would it be too much trouble to bundle all of the KVM changes into a single patch?
> > > > The SRCU requirement is a generic KVM requirement that's handled in the arch Kconfigs
> > > > purely because of KVM's somewhat roundabout Kconfig setup.
> > >
> > > No problem, and will do on my next rebase. I might end up with a long
> > > list of Cc's, but so it goes. I will of course send the result as a
> > > reply to this message.
> >
> > Like this?
>
> Ya, looks good!

Glad you like it! May I have your ack? Or would you take this one?

Thanx, Paul

2023-01-12 00:16:52

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 04/27] arch/powerpc/kvm: Remove "select SRCU"

On Thu, Jan 12, 2023 at 10:49:04AM +1100, Michael Ellerman wrote:
> "Paul E. McKenney" <[email protected]> writes:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Michael Ellerman <[email protected]>
> > Cc: Nicholas Piggin <[email protected]>
> > Cc: Christophe Leroy <[email protected]>
> > Cc: <[email protected]>
> > ---
> > arch/powerpc/kvm/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
>
> Acked-by: Michael Ellerman <[email protected]> (powerpc)

Thank you! I will apply on the next rebase.

Thanx, Paul

> cheers
>
> > diff --git a/arch/powerpc/kvm/Kconfig b/arch/powerpc/kvm/Kconfig
> > index a9f57dad6d916..902611954200d 100644
> > --- a/arch/powerpc/kvm/Kconfig
> > +++ b/arch/powerpc/kvm/Kconfig
> > @@ -22,7 +22,6 @@ config KVM
> > select PREEMPT_NOTIFIERS
> > select HAVE_KVM_EVENTFD
> > select HAVE_KVM_VCPU_ASYNC_IOCTL
> > - select SRCU
> > select KVM_VFIO
> > select IRQ_BYPASS_MANAGER
> > select HAVE_KVM_IRQ_BYPASS
> > --
> > 2.31.1.189.g2e36527f23

2023-01-12 16:01:19

by Lorenzo Pieralisi

[permalink] [raw]
Subject: Re: [PATCH rcu 17/27] drivers/pci/controller: Remove "select SRCU"

On Wed, Jan 04, 2023 at 04:38:03PM -0800, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Lorenzo Pieralisi <[email protected]>
> Cc: Rob Herring <[email protected]>
> Cc: "Krzysztof Wilczyński" <[email protected]>
> Cc: Bjorn Helgaas <[email protected]>
> Cc: <[email protected]>
> ---
> drivers/pci/controller/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)

Acked-by: Lorenzo Pieralisi <[email protected]>

I assume I don't have to pick this up and it will go via
a separate route upstream, if I am wrong please let me know.

Thanks,
Lorenzo

> diff --git a/drivers/pci/controller/Kconfig b/drivers/pci/controller/Kconfig
> index 1569d9a3ada0b..b09cdc59bfd02 100644
> --- a/drivers/pci/controller/Kconfig
> +++ b/drivers/pci/controller/Kconfig
> @@ -258,7 +258,7 @@ config PCIE_MEDIATEK_GEN3
> MediaTek SoCs.
>
> config VMD
> - depends on PCI_MSI && X86_64 && SRCU && !UML
> + depends on PCI_MSI && X86_64 && !UML
> tristate "Intel Volume Management Device Driver"
> help
> Adds support for the Intel Volume Management Device (VMD). VMD is a
> --
> 2.31.1.189.g2e36527f23
>

2023-01-12 16:15:34

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 17/27] drivers/pci/controller: Remove "select SRCU"

On Thu, Jan 12, 2023 at 03:37:16PM +0100, Lorenzo Pieralisi wrote:
> On Wed, Jan 04, 2023 at 04:38:03PM -0800, Paul E. McKenney wrote:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Lorenzo Pieralisi <[email protected]>
> > Cc: Rob Herring <[email protected]>
> > Cc: "Krzysztof Wilczyński" <[email protected]>
> > Cc: Bjorn Helgaas <[email protected]>
> > Cc: <[email protected]>
> > ---
> > drivers/pci/controller/Kconfig | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
>
> Acked-by: Lorenzo Pieralisi <[email protected]>
>
> I assume I don't have to pick this up and it will go via
> a separate route upstream, if I am wrong please let me know.

Thank you!

I will apply your ack on my next rebase and send it along into the
upcoming merge window. If you later decide that you would like to take
it, just let me know, either way works for me.

Thanx, Paul

> Thanks,
> Lorenzo
>
> > diff --git a/drivers/pci/controller/Kconfig b/drivers/pci/controller/Kconfig
> > index 1569d9a3ada0b..b09cdc59bfd02 100644
> > --- a/drivers/pci/controller/Kconfig
> > +++ b/drivers/pci/controller/Kconfig
> > @@ -258,7 +258,7 @@ config PCIE_MEDIATEK_GEN3
> > MediaTek SoCs.
> >
> > config VMD
> > - depends on PCI_MSI && X86_64 && SRCU && !UML
> > + depends on PCI_MSI && X86_64 && !UML
> > tristate "Intel Volume Management Device Driver"
> > help
> > Adds support for the Intel Volume Management Device (VMD). VMD is a
> > --
> > 2.31.1.189.g2e36527f23
> >

2023-01-13 00:23:13

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu 0/27] Unconditionally enable SRCU

Hello!

This v2 series removes Kconfig "select" clauses and #ifdef directives that
are no longer necessary give that SRCU is now unconditionally enabled,
courtesy of new-age printk() requirements. Finally, the SRCU Kconfig
option is removed entirely.

1. arch/x86: Remove "select SRCU".

2. drivers/base: Remove CONFIG_SRCU.

3. drivers/cpufreq: Remove "select SRCU".

4. drivers/dax: Remove "select SRCU".

5. drivers/hwtracing/stm: Remove "select SRCU".

6. drivers/md: Remove "select SRCU".

7. drivers/net: Remove "select SRCU".

8. drivers/pci/controller: Remove "select SRCU".

9. fs: Remove CONFIG_SRCU.

10. fs/btrfs: Remove "select SRCU".

11. fs/dlm: Remove "select SRCU".

12. fs/notify: Remove "select SRCU".

13. fs/quota: Remove "select SRCU".

14. init: Remove "select SRCU".

15. kernel/notifier: Remove CONFIG_SRCU.

16. kernel/power: Remove "select SRCU".

17. kvm: Remove "select SRCU".

18. mm: Remove "select SRCU".

19. tomoyo: Remove "select SRCU".

20. Remove CONFIG_SRCU.

Changes since v1:

o Added ack and review tags.

o Dropped patches taken by their maintainers.

o Combined the KVM-related commits into a single commit, as requested
by Sean Christopherson. Acks received thus far are qualified by
the corresponding architecture.

o Added the tomoyo patch based on feedback from Nick Desaulniers.

Thanx, Paul

------------------------------------------------------------------------

arch/arm64/kvm/Kconfig | 1
arch/mips/kvm/Kconfig | 1
arch/powerpc/kvm/Kconfig | 1
arch/riscv/kvm/Kconfig | 1
arch/s390/kvm/Kconfig | 1
arch/x86/Kconfig | 2
arch/x86/kvm/Kconfig | 1
drivers/base/core.c | 42 ------------
drivers/cpufreq/Kconfig | 1
drivers/dax/Kconfig | 1
drivers/hwtracing/stm/Kconfig | 1
drivers/md/Kconfig | 1
drivers/net/Kconfig | 1
drivers/pci/controller/Kconfig | 2
fs/btrfs/Kconfig | 1
fs/dlm/Kconfig | 1
fs/locks.c | 25 -------
fs/notify/Kconfig | 1
fs/quota/Kconfig | 1
init/Kconfig | 1
kernel/notifier.c | 3
kernel/power/Kconfig | 1
kernel/rcu/Kconfig | 3
mm/Kconfig | 1
security/tomoyo/Kconfig | 1
tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt | 4 -
26 files changed, 1 insertion(+), 99 deletions(-)

2023-01-13 00:24:40

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu v2 19/20] tomoyo: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Kentaro Takeda <[email protected]>
Cc: Tetsuo Handa <[email protected]>
Cc: Paul Moore <[email protected]>
Cc: James Morris <[email protected]>
Cc: "Serge E. Hallyn" <[email protected]>
Cc: <[email protected]>
Cc: <[email protected]>
---
security/tomoyo/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/security/tomoyo/Kconfig b/security/tomoyo/Kconfig
index b9f867100a9ff..a9796b4003124 100644
--- a/security/tomoyo/Kconfig
+++ b/security/tomoyo/Kconfig
@@ -6,7 +6,6 @@ config SECURITY_TOMOYO
select SECURITYFS
select SECURITY_PATH
select SECURITY_NETWORK
- select SRCU
select BUILD_BIN2C
default n
help
--
2.31.1.189.g2e36527f23

2023-01-13 00:24:46

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu v2 03/20] drivers/cpufreq: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: "Rafael J. Wysocki" <[email protected]>
Cc: Viresh Kumar <[email protected]>
Cc: <[email protected]>
Acked-by: "Rafael J. Wysocki" <[email protected]>
Acked-by: Viresh Kumar <[email protected]>
Reviewed-by: John Ogness <[email protected]>
---
drivers/cpufreq/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/cpufreq/Kconfig b/drivers/cpufreq/Kconfig
index 2a84fc63371e2..785541df59379 100644
--- a/drivers/cpufreq/Kconfig
+++ b/drivers/cpufreq/Kconfig
@@ -3,7 +3,6 @@ menu "CPU Frequency scaling"

config CPU_FREQ
bool "CPU Frequency scaling"
- select SRCU
help
CPU Frequency scaling allows you to change the clock speed of
CPUs on the fly. This is a nice method to save power, because
--
2.31.1.189.g2e36527f23

2023-01-13 00:24:57

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu v2 07/20] drivers/net: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: "David S. Miller" <[email protected]>
Cc: Eric Dumazet <[email protected]>
Cc: Jakub Kicinski <[email protected]>
Cc: Paolo Abeni <[email protected]>
Cc: <[email protected]>
Acked-by: Jakub Kicinski <[email protected]>
Reviewed-by: John Ogness <[email protected]>
---
drivers/net/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
index 9e63b8c43f3e2..12910338ea1a0 100644
--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
@@ -334,7 +334,6 @@ config NETCONSOLE_DYNAMIC

config NETPOLL
def_bool NETCONSOLE
- select SRCU

config NET_POLL_CONTROLLER
def_bool NETPOLL
--
2.31.1.189.g2e36527f23

2023-01-13 00:25:01

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu v2 18/20] mm: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Andrew Morton
Cc: <[email protected]>
Reviewed-by: John Ogness <[email protected]>
---
mm/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/mm/Kconfig b/mm/Kconfig
index ff7b209dec055..dc660775b7d3f 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -667,7 +667,6 @@ config BOUNCE

config MMU_NOTIFIER
bool
- select SRCU
select INTERVAL_TREE

config KSM
--
2.31.1.189.g2e36527f23

2023-01-13 00:25:29

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu v2 20/20] rcu: Remove CONFIG_SRCU

Now that all references to CONFIG_SRCU have been removed, it is time to
remove CONFIG_SRCU itself.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: John Ogness <[email protected]>
Cc: Petr Mladek <[email protected]>
Reviewed-by: John Ogness <[email protected]>
---
kernel/rcu/Kconfig | 3 ---
tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt | 4 ----
2 files changed, 7 deletions(-)

diff --git a/kernel/rcu/Kconfig b/kernel/rcu/Kconfig
index ab62074174c32..9071182b1284b 100644
--- a/kernel/rcu/Kconfig
+++ b/kernel/rcu/Kconfig
@@ -53,9 +53,6 @@ config RCU_EXPERT

Say N if you are unsure.

-config SRCU
- def_bool y
-
config TINY_SRCU
bool
default y if TINY_RCU
diff --git a/tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt b/tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt
index 42acb1a64ce10..3f5fb66f16df7 100644
--- a/tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt
+++ b/tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt
@@ -71,9 +71,5 @@ CONFIG_TASKS_RCU

These are controlled by CONFIG_PREEMPT and/or CONFIG_SMP.

-CONFIG_SRCU
-
- Selected by CONFIG_RCU_TORTURE_TEST, so cannot disable.
-

boot parameters ignored: TBD
--
2.31.1.189.g2e36527f23

2023-01-13 00:25:38

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu v2 13/20] fs/quota: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Jan Kara <[email protected]>
Acked-by: Jan Kara <[email protected]>
Reviewed-by: John Ogness <[email protected]>
---
fs/quota/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/fs/quota/Kconfig b/fs/quota/Kconfig
index b59cd172b5f97..d5a85a8062d05 100644
--- a/fs/quota/Kconfig
+++ b/fs/quota/Kconfig
@@ -6,7 +6,6 @@
config QUOTA
bool "Quota support"
select QUOTACTL
- select SRCU
help
If you say Y here, you will be able to set per user limits for disk
usage (also called disk quotas). Currently, it works for the
--
2.31.1.189.g2e36527f23

2023-01-13 00:25:42

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu v2 14/20] init: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Andrew Morton <[email protected]>
Cc: Nick Desaulniers <[email protected]>
Cc: Masahiro Yamada <[email protected]>
Cc: Johannes Weiner <[email protected]>
Cc: Vlastimil Babka <[email protected]>
Cc: Nathan Chancellor <[email protected]>
Cc: Arnd Bergmann <[email protected]>
Cc: Miguel Ojeda <[email protected]>
Cc: Masami Hiramatsu <[email protected]>
Cc: Dmitry Torokhov <[email protected]>
Cc: Aaron Tomlin <[email protected]>
Cc: Tejun Heo <[email protected]>
Cc: Christophe Leroy <[email protected]>
Reviewed-by: Nick Desaulniers <[email protected]>
Reviewed-by: John Ogness <[email protected]>
---
init/Kconfig | 1 -
1 file changed, 1 deletion(-)

diff --git a/init/Kconfig b/init/Kconfig
index 7e5c3ddc341de..af511c726d695 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1865,7 +1865,6 @@ config PERF_EVENTS
default y if PROFILING
depends on HAVE_PERF_EVENTS
select IRQ_WORK
- select SRCU
help
Enable kernel support for various performance events provided
by software and hardware.
--
2.31.1.189.g2e36527f23

2023-01-13 00:26:12

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu v2 09/20] fs: Remove CONFIG_SRCU

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in conditional compilation based on CONFIG_SRCU.
Therefore, remove the #ifdef and throw away the #else clause.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Jeff Layton <[email protected]>
Cc: Chuck Lever <[email protected]>
Cc: Alexander Viro <[email protected]>
Cc: <[email protected]>
Reviewed-by: John Ogness <[email protected]>
---
fs/locks.c | 25 -------------------------
1 file changed, 25 deletions(-)

diff --git a/fs/locks.c b/fs/locks.c
index 8f01bee177159..1909a9de242c8 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -1889,7 +1889,6 @@ int generic_setlease(struct file *filp, long arg, struct file_lock **flp,
}
EXPORT_SYMBOL(generic_setlease);

-#if IS_ENABLED(CONFIG_SRCU)
/*
* Kernel subsystems can register to be notified on any attempt to set
* a new lease with the lease_notifier_chain. This is used by (e.g.) nfsd
@@ -1923,30 +1922,6 @@ void lease_unregister_notifier(struct notifier_block *nb)
}
EXPORT_SYMBOL_GPL(lease_unregister_notifier);

-#else /* !IS_ENABLED(CONFIG_SRCU) */
-static inline void
-lease_notifier_chain_init(void)
-{
-}
-
-static inline void
-setlease_notifier(long arg, struct file_lock *lease)
-{
-}
-
-int lease_register_notifier(struct notifier_block *nb)
-{
- return 0;
-}
-EXPORT_SYMBOL_GPL(lease_register_notifier);
-
-void lease_unregister_notifier(struct notifier_block *nb)
-{
-}
-EXPORT_SYMBOL_GPL(lease_unregister_notifier);
-
-#endif /* IS_ENABLED(CONFIG_SRCU) */
-
/**
* vfs_setlease - sets a lease on an open file
* @filp: file pointer
--
2.31.1.189.g2e36527f23

2023-01-13 00:33:14

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu v2 08/20] drivers/pci/controller: Remove "select SRCU"

Now that the SRCU Kconfig option is unconditionally selected, there is
no longer any point in selecting it. Therefore, remove the "select SRCU"
Kconfig statements.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: Lorenzo Pieralisi <[email protected]>
Cc: Rob Herring <[email protected]>
Cc: "Krzysztof Wilczyński" <[email protected]>
Cc: Bjorn Helgaas <[email protected]>
Cc: <[email protected]>
Acked-by: Lorenzo Pieralisi <[email protected]>
Reviewed-by: John Ogness <[email protected]>
---
drivers/pci/controller/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/pci/controller/Kconfig b/drivers/pci/controller/Kconfig
index 1569d9a3ada0b..b09cdc59bfd02 100644
--- a/drivers/pci/controller/Kconfig
+++ b/drivers/pci/controller/Kconfig
@@ -258,7 +258,7 @@ config PCIE_MEDIATEK_GEN3
MediaTek SoCs.

config VMD
- depends on PCI_MSI && X86_64 && SRCU && !UML
+ depends on PCI_MSI && X86_64 && !UML
tristate "Intel Volume Management Device Driver"
help
Adds support for the Intel Volume Management Device (VMD). VMD is a
--
2.31.1.189.g2e36527f23

2023-01-13 01:31:57

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu v2 09/20] fs: Remove CONFIG_SRCU

On Thu, Jan 12, 2023 at 08:03:48PM -0500, Jeff Layton wrote:
> On Thu, 2023-01-12 at 16:11 -0800, Paul E. McKenney wrote:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in conditional compilation based on CONFIG_SRCU.
> > Therefore, remove the #ifdef and throw away the #else clause.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: Jeff Layton <[email protected]>
> > Cc: Chuck Lever <[email protected]>
> > Cc: Alexander Viro <[email protected]>
> > Cc: <[email protected]>
> > Reviewed-by: John Ogness <[email protected]>
> > ---
> > fs/locks.c | 25 -------------------------
> > 1 file changed, 25 deletions(-)
> >
> > diff --git a/fs/locks.c b/fs/locks.c
> > index 8f01bee177159..1909a9de242c8 100644
> > --- a/fs/locks.c
> > +++ b/fs/locks.c
> > @@ -1889,7 +1889,6 @@ int generic_setlease(struct file *filp, long arg, struct file_lock **flp,
> > }
> > EXPORT_SYMBOL(generic_setlease);
> >
> > -#if IS_ENABLED(CONFIG_SRCU)
> > /*
> > * Kernel subsystems can register to be notified on any attempt to set
> > * a new lease with the lease_notifier_chain. This is used by (e.g.) nfsd
> > @@ -1923,30 +1922,6 @@ void lease_unregister_notifier(struct notifier_block *nb)
> > }
> > EXPORT_SYMBOL_GPL(lease_unregister_notifier);
> >
> > -#else /* !IS_ENABLED(CONFIG_SRCU) */
> > -static inline void
> > -lease_notifier_chain_init(void)
> > -{
> > -}
> > -
> > -static inline void
> > -setlease_notifier(long arg, struct file_lock *lease)
> > -{
> > -}
> > -
> > -int lease_register_notifier(struct notifier_block *nb)
> > -{
> > - return 0;
> > -}
> > -EXPORT_SYMBOL_GPL(lease_register_notifier);
> > -
> > -void lease_unregister_notifier(struct notifier_block *nb)
> > -{
> > -}
> > -EXPORT_SYMBOL_GPL(lease_unregister_notifier);
> > -
> > -#endif /* IS_ENABLED(CONFIG_SRCU) */
> > -
> > /**
> > * vfs_setlease - sets a lease on an open file
> > * @filp: file pointer
>
> Reviewed-by: Jeff Layton <[email protected]>

Thank you! I will apply this on my next rebase.

Thanx, Paul

2023-01-13 02:08:21

by Jeff Layton

[permalink] [raw]
Subject: Re: [PATCH rcu v2 09/20] fs: Remove CONFIG_SRCU

On Thu, 2023-01-12 at 16:11 -0800, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in conditional compilation based on CONFIG_SRCU.
> Therefore, remove the #ifdef and throw away the #else clause.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: Jeff Layton <[email protected]>
> Cc: Chuck Lever <[email protected]>
> Cc: Alexander Viro <[email protected]>
> Cc: <[email protected]>
> Reviewed-by: John Ogness <[email protected]>
> ---
> fs/locks.c | 25 -------------------------
> 1 file changed, 25 deletions(-)
>
> diff --git a/fs/locks.c b/fs/locks.c
> index 8f01bee177159..1909a9de242c8 100644
> --- a/fs/locks.c
> +++ b/fs/locks.c
> @@ -1889,7 +1889,6 @@ int generic_setlease(struct file *filp, long arg, struct file_lock **flp,
> }
> EXPORT_SYMBOL(generic_setlease);
>
> -#if IS_ENABLED(CONFIG_SRCU)
> /*
> * Kernel subsystems can register to be notified on any attempt to set
> * a new lease with the lease_notifier_chain. This is used by (e.g.) nfsd
> @@ -1923,30 +1922,6 @@ void lease_unregister_notifier(struct notifier_block *nb)
> }
> EXPORT_SYMBOL_GPL(lease_unregister_notifier);
>
> -#else /* !IS_ENABLED(CONFIG_SRCU) */
> -static inline void
> -lease_notifier_chain_init(void)
> -{
> -}
> -
> -static inline void
> -setlease_notifier(long arg, struct file_lock *lease)
> -{
> -}
> -
> -int lease_register_notifier(struct notifier_block *nb)
> -{
> - return 0;
> -}
> -EXPORT_SYMBOL_GPL(lease_register_notifier);
> -
> -void lease_unregister_notifier(struct notifier_block *nb)
> -{
> -}
> -EXPORT_SYMBOL_GPL(lease_unregister_notifier);
> -
> -#endif /* IS_ENABLED(CONFIG_SRCU) */
> -
> /**
> * vfs_setlease - sets a lease on an open file
> * @filp: file pointer

Reviewed-by: Jeff Layton <[email protected]>

2023-01-13 13:38:05

by Alexander Shishkin

[permalink] [raw]
Subject: Re: [PATCH rcu 13/27] drivers/hwtracing/stm: Remove "select SRCU"

"Paul E. McKenney" <[email protected]> writes:

> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.

Acked-by: Alexander Shishkin <[email protected]>

Thanks,
--
Alex

2023-01-13 14:52:45

by Tetsuo Handa

[permalink] [raw]
Subject: Re: [PATCH rcu v2 19/20] tomoyo: Remove "select SRCU"

On 2023/01/13 9:11, Paul E. McKenney wrote:
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.

Applied to https://osdn.net/projects/tomoyo/scm/git/tomoyo-test1/commits/1ed8a46256771de283772d482403691807214cf7 .

I will send to linux.git after a few days.

Thank you.

2023-01-13 20:50:21

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu v2 19/20] tomoyo: Remove "select SRCU"

On Fri, Jan 13, 2023 at 11:22:10PM +0900, Tetsuo Handa wrote:
> On 2023/01/13 9:11, Paul E. McKenney wrote:
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
>
> Applied to https://osdn.net/projects/tomoyo/scm/git/tomoyo-test1/commits/1ed8a46256771de283772d482403691807214cf7 .
>
> I will send to linux.git after a few days.

Thank you! I will drop my version of this commit during my next rebase.

Thanx, Paul

2023-01-20 17:22:08

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: [PATCH rcu v2 03/20] drivers/cpufreq: Remove "select SRCU"

On Fri, Jan 13, 2023 at 1:11 AM Paul E. McKenney <[email protected]> wrote:
>
> Now that the SRCU Kconfig option is unconditionally selected, there is
> no longer any point in selecting it. Therefore, remove the "select SRCU"
> Kconfig statements.
>
> Signed-off-by: Paul E. McKenney <[email protected]>
> Cc: "Rafael J. Wysocki" <[email protected]>
> Cc: Viresh Kumar <[email protected]>
> Cc: <[email protected]>
> Acked-by: "Rafael J. Wysocki" <[email protected]>
> Acked-by: Viresh Kumar <[email protected]>
> Reviewed-by: John Ogness <[email protected]>
> ---
> drivers/cpufreq/Kconfig | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/drivers/cpufreq/Kconfig b/drivers/cpufreq/Kconfig
> index 2a84fc63371e2..785541df59379 100644
> --- a/drivers/cpufreq/Kconfig
> +++ b/drivers/cpufreq/Kconfig
> @@ -3,7 +3,6 @@ menu "CPU Frequency scaling"
>
> config CPU_FREQ
> bool "CPU Frequency scaling"
> - select SRCU
> help
> CPU Frequency scaling allows you to change the clock speed of
> CPUs on the fly. This is a nice method to save power, because
> --

Applied as 6.3 material, thanks!

2023-01-20 19:27:40

by Paul E. McKenney

[permalink] [raw]
Subject: Re: [PATCH rcu v2 03/20] drivers/cpufreq: Remove "select SRCU"

On Fri, Jan 20, 2023 at 05:54:17PM +0100, Rafael J. Wysocki wrote:
> On Fri, Jan 13, 2023 at 1:11 AM Paul E. McKenney <[email protected]> wrote:
> >
> > Now that the SRCU Kconfig option is unconditionally selected, there is
> > no longer any point in selecting it. Therefore, remove the "select SRCU"
> > Kconfig statements.
> >
> > Signed-off-by: Paul E. McKenney <[email protected]>
> > Cc: "Rafael J. Wysocki" <[email protected]>
> > Cc: Viresh Kumar <[email protected]>
> > Cc: <[email protected]>
> > Acked-by: "Rafael J. Wysocki" <[email protected]>
> > Acked-by: Viresh Kumar <[email protected]>
> > Reviewed-by: John Ogness <[email protected]>
> > ---
> > drivers/cpufreq/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/drivers/cpufreq/Kconfig b/drivers/cpufreq/Kconfig
> > index 2a84fc63371e2..785541df59379 100644
> > --- a/drivers/cpufreq/Kconfig
> > +++ b/drivers/cpufreq/Kconfig
> > @@ -3,7 +3,6 @@ menu "CPU Frequency scaling"
> >
> > config CPU_FREQ
> > bool "CPU Frequency scaling"
> > - select SRCU
> > help
> > CPU Frequency scaling allows you to change the clock speed of
> > CPUs on the fly. This is a nice method to save power, because
> > --
>
> Applied as 6.3 material, thanks!

Thank you, I will drop it from my tree on my next rebase.

Thanx, Paul

2023-03-24 20:59:32

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu v3 0/27] Unconditionally enable SRCU

Hello!

This v3 series removes the remaining Kconfig "select" clauses that are
no longer necessary given that SRCU is now unconditionally enabled,
courtesy of new-age printk() requirements. Finally, the SRCU Kconfig
option is removed entirely.

1. arch/x86: Remove "select SRCU".

2. kvm: Remove "select SRCU".

3. mm: Remove "select SRCU".

4. Remove CONFIG_SRCU.

Thanx, Paul

------------------------------------------------------------------------

arch/arm64/kvm/Kconfig | 1 -
arch/mips/kvm/Kconfig | 1 -
arch/powerpc/kvm/Kconfig | 1 -
arch/riscv/kvm/Kconfig | 1 -
arch/s390/kvm/Kconfig | 1 -
arch/x86/Kconfig | 2 --
arch/x86/kvm/Kconfig | 1 -
kernel/rcu/Kconfig | 3 ---
mm/Kconfig | 1 -
tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt | 4 ----
10 files changed, 16 deletions(-)

2023-03-24 20:59:39

by Paul E. McKenney

[permalink] [raw]
Subject: [PATCH rcu v3 4/4] rcu: Remove CONFIG_SRCU

Now that all references to CONFIG_SRCU have been removed, it is time to
remove CONFIG_SRCU itself.

Signed-off-by: Paul E. McKenney <[email protected]>
Cc: John Ogness <[email protected]>
Cc: Petr Mladek <[email protected]>
Reviewed-by: John Ogness <[email protected]>
---
kernel/rcu/Kconfig | 3 ---
tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt | 4 ----
2 files changed, 7 deletions(-)

diff --git a/kernel/rcu/Kconfig b/kernel/rcu/Kconfig
index ab62074174c3..9071182b1284 100644
--- a/kernel/rcu/Kconfig
+++ b/kernel/rcu/Kconfig
@@ -53,9 +53,6 @@ config RCU_EXPERT

Say N if you are unsure.

-config SRCU
- def_bool y
-
config TINY_SRCU
bool
default y if TINY_RCU
diff --git a/tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt b/tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt
index 42acb1a64ce1..3f5fb66f16df 100644
--- a/tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt
+++ b/tools/testing/selftests/rcutorture/doc/TREE_RCU-kconfig.txt
@@ -71,9 +71,5 @@ CONFIG_TASKS_RCU

These are controlled by CONFIG_PREEMPT and/or CONFIG_SMP.

-CONFIG_SRCU
-
- Selected by CONFIG_RCU_TORTURE_TEST, so cannot disable.
-

boot parameters ignored: TBD
--
2.40.0.rc2