workqueue: make wq_subsys const

Message ID 20240206-bus_cleanup-workqueue-v1-1-72b10d282d58@marliere.net
State New
Headers
Series workqueue: make wq_subsys const |

Commit Message

Ricardo B. Marliere Feb. 6, 2024, 6:05 p.m. UTC
  Now that the driver core can properly handle constant struct bus_type,
move the wq_subsys variable to be a constant structure as well,
placing it into read-only memory which can not be modified at runtime.

Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>
---
The maintainer asked [1] for this patch to be received through the
driver-core tree.
[1]: https://lore.kernel.org/all/ZcEeOueCbrltxr_b@slm.duckdns.org/
---
 kernel/workqueue.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


---
base-commit: f297a3844aa059c53be3f69be85ebc071b8a6d16
change-id: 20240206-bus_cleanup-workqueue-1547a46532d1

Best regards,
  

Comments

Greg KH Feb. 7, 2024, 10:12 a.m. UTC | #1
On Tue, Feb 06, 2024 at 03:05:06PM -0300, Ricardo B. Marliere wrote:
> Now that the driver core can properly handle constant struct bus_type,
> move the wq_subsys variable to be a constant structure as well,
> placing it into read-only memory which can not be modified at runtime.
> 
> Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>
> ---
> The maintainer asked [1] for this patch to be received through the
> driver-core tree.
> [1]: https://lore.kernel.org/all/ZcEeOueCbrltxr_b@slm.duckdns.org/

There is no cross-tree dependency at all, but hey, I'll take it, no
worries...

thanks,

greg k-h
  
Tejun Heo Feb. 7, 2024, 4:34 p.m. UTC | #2
On Wed, Feb 07, 2024 at 10:12:34AM +0000, Greg Kroah-Hartman wrote:
> On Tue, Feb 06, 2024 at 03:05:06PM -0300, Ricardo B. Marliere wrote:
> > Now that the driver core can properly handle constant struct bus_type,
> > move the wq_subsys variable to be a constant structure as well,
> > placing it into read-only memory which can not be modified at runtime.
> > 
> > Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>
> > ---
> > The maintainer asked [1] for this patch to be received through the
> > driver-core tree.
> > [1]: https://lore.kernel.org/all/ZcEeOueCbrltxr_b@slm.duckdns.org/
> 
> There is no cross-tree dependency at all, but hey, I'll take it, no
> worries...

Ah, my bad. I branched out wq/for-6.9 before rc1 and was assuming the
dependent commit was still in the driver core branch. I should have just
pulled linus#master. That said, that patch going through driver-core should
still be fine.

Thanks.
  
Greg KH Feb. 8, 2024, 10:10 a.m. UTC | #3
On Wed, Feb 07, 2024 at 06:34:27AM -1000, Tejun Heo wrote:
> On Wed, Feb 07, 2024 at 10:12:34AM +0000, Greg Kroah-Hartman wrote:
> > On Tue, Feb 06, 2024 at 03:05:06PM -0300, Ricardo B. Marliere wrote:
> > > Now that the driver core can properly handle constant struct bus_type,
> > > move the wq_subsys variable to be a constant structure as well,
> > > placing it into read-only memory which can not be modified at runtime.
> > > 
> > > Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > > Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>
> > > ---
> > > The maintainer asked [1] for this patch to be received through the
> > > driver-core tree.
> > > [1]: https://lore.kernel.org/all/ZcEeOueCbrltxr_b@slm.duckdns.org/
> > 
> > There is no cross-tree dependency at all, but hey, I'll take it, no
> > worries...
> 
> Ah, my bad. I branched out wq/for-6.9 before rc1 and was assuming the
> dependent commit was still in the driver core branch. I should have just
> pulled linus#master.

The dependent changes are in 6.4, so before -rc1 would have been ok as
well :)

> That said, that patch going through driver-core should still be fine.

Great, will do that, thanks!

greg k-jh
  
Tejun Heo Feb. 8, 2024, 4:54 p.m. UTC | #4
On Thu, Feb 08, 2024 at 10:10:56AM +0000, Greg Kroah-Hartman wrote:
> On Wed, Feb 07, 2024 at 06:34:27AM -1000, Tejun Heo wrote:
> > On Wed, Feb 07, 2024 at 10:12:34AM +0000, Greg Kroah-Hartman wrote:
> > > On Tue, Feb 06, 2024 at 03:05:06PM -0300, Ricardo B. Marliere wrote:
> > > > Now that the driver core can properly handle constant struct bus_type,
> > > > move the wq_subsys variable to be a constant structure as well,
> > > > placing it into read-only memory which can not be modified at runtime.
> > > > 
> > > > Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > > > Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>
> > > > ---
> > > > The maintainer asked [1] for this patch to be received through the
> > > > driver-core tree.
> > > > [1]: https://lore.kernel.org/all/ZcEeOueCbrltxr_b@slm.duckdns.org/
> > > 
> > > There is no cross-tree dependency at all, but hey, I'll take it, no
> > > worries...
> > 
> > Ah, my bad. I branched out wq/for-6.9 before rc1 and was assuming the
> > dependent commit was still in the driver core branch. I should have just
> > pulled linus#master.
> 
> The dependent changes are in 6.4, so before -rc1 would have been ok as
> well :)

Hmmm....

 > git log -1 --oneline 32f78abe59c7
 32f78abe59c7 driver core: bus: constantify subsys_register() calls
 > git describe --contains 32f78abe59c7
 v6.8-rc1~61^2~10
  
Greg KH Feb. 8, 2024, 5:28 p.m. UTC | #5
On Thu, Feb 08, 2024 at 06:54:57AM -1000, Tejun Heo wrote:
> On Thu, Feb 08, 2024 at 10:10:56AM +0000, Greg Kroah-Hartman wrote:
> > On Wed, Feb 07, 2024 at 06:34:27AM -1000, Tejun Heo wrote:
> > > On Wed, Feb 07, 2024 at 10:12:34AM +0000, Greg Kroah-Hartman wrote:
> > > > On Tue, Feb 06, 2024 at 03:05:06PM -0300, Ricardo B. Marliere wrote:
> > > > > Now that the driver core can properly handle constant struct bus_type,
> > > > > move the wq_subsys variable to be a constant structure as well,
> > > > > placing it into read-only memory which can not be modified at runtime.
> > > > > 
> > > > > Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > > > > Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>
> > > > > ---
> > > > > The maintainer asked [1] for this patch to be received through the
> > > > > driver-core tree.
> > > > > [1]: https://lore.kernel.org/all/ZcEeOueCbrltxr_b@slm.duckdns.org/
> > > > 
> > > > There is no cross-tree dependency at all, but hey, I'll take it, no
> > > > worries...
> > > 
> > > Ah, my bad. I branched out wq/for-6.9 before rc1 and was assuming the
> > > dependent commit was still in the driver core branch. I should have just
> > > pulled linus#master.
> > 
> > The dependent changes are in 6.4, so before -rc1 would have been ok as
> > well :)
> 
> Hmmm....
> 
>  > git log -1 --oneline 32f78abe59c7
>  32f78abe59c7 driver core: bus: constantify subsys_register() calls
>  > git describe --contains 32f78abe59c7
>  v6.8-rc1~61^2~10

Ugh, sorry, you are totally right.  Too many different "make X const"
series are floating around now, my fault.  I'll go suck this in now to
end the pointless discussion where I am proven wrong multiple times :)

greg k-h
  

Patch

diff --git a/kernel/workqueue.c b/kernel/workqueue.c
index 76e60faed892..f1e062acd091 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -6157,7 +6157,7 @@  static struct device_attribute wq_sysfs_unbound_attrs[] = {
 	__ATTR_NULL,
 };
 
-static struct bus_type wq_subsys = {
+static const struct bus_type wq_subsys = {
 	.name				= "workqueue",
 	.dev_groups			= wq_sysfs_groups,
 };