2013-08-23 11:12:45

by Richard Weinberger

[permalink] [raw]
Subject: [PATCH] kernel/padata.c: Register hotcpu notifier after initialization

padata_cpu_callback() takes pinst->lock, to avoid taking
an uninitialized lock, register the notifier after it's
initialization.

Signed-off-by: Richard Weinberger <[email protected]>
---
kernel/padata.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/kernel/padata.c b/kernel/padata.c
index 072f4ee..8e1bf9d 100644
--- a/kernel/padata.c
+++ b/kernel/padata.c
@@ -1086,18 +1086,18 @@ struct padata_instance *padata_alloc(struct workqueue_struct *wq,

pinst->flags = 0;

-#ifdef CONFIG_HOTPLUG_CPU
- pinst->cpu_notifier.notifier_call = padata_cpu_callback;
- pinst->cpu_notifier.priority = 0;
- register_hotcpu_notifier(&pinst->cpu_notifier);
-#endif
-
put_online_cpus();

BLOCKING_INIT_NOTIFIER_HEAD(&pinst->cpumask_change_notifier);
kobject_init(&pinst->kobj, &padata_attr_type);
mutex_init(&pinst->lock);

+#ifdef CONFIG_HOTPLUG_CPU
+ pinst->cpu_notifier.notifier_call = padata_cpu_callback;
+ pinst->cpu_notifier.priority = 0;
+ register_hotcpu_notifier(&pinst->cpu_notifier);
+#endif
+
return pinst;

err_free_masks:
--
1.8.3.1


2013-08-27 09:30:47

by Steffen Klassert

[permalink] [raw]
Subject: Re: [PATCH] kernel/padata.c: Register hotcpu notifier after initialization

On Fri, Aug 23, 2013 at 01:12:33PM +0200, Richard Weinberger wrote:
> padata_cpu_callback() takes pinst->lock, to avoid taking
> an uninitialized lock, register the notifier after it's
> initialization.
>
> Signed-off-by: Richard Weinberger <[email protected]>

Looks ok,

Acked-by: Steffen Klassert <[email protected]>

2013-08-29 04:43:46

by Herbert Xu

[permalink] [raw]
Subject: Re: [PATCH] kernel/padata.c: Register hotcpu notifier after initialization

On Tue, Aug 27, 2013 at 11:30:41AM +0200, Steffen Klassert wrote:
> On Fri, Aug 23, 2013 at 01:12:33PM +0200, Richard Weinberger wrote:
> > padata_cpu_callback() takes pinst->lock, to avoid taking
> > an uninitialized lock, register the notifier after it's
> > initialization.
> >
> > Signed-off-by: Richard Weinberger <[email protected]>
>
> Looks ok,
>
> Acked-by: Steffen Klassert <[email protected]>

Also applied.
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt