linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] drivers: base: power: Fix GFP_KERNEL in spinlock context
@ 2017-12-12 13:45 shrikant.maurya
  2017-12-12 14:58 ` Geert Uytterhoeven
  2017-12-12 16:55 ` Rafael J. Wysocki
  0 siblings, 2 replies; 7+ messages in thread
From: shrikant.maurya @ 2017-12-12 13:45 UTC (permalink / raw)
  To: rjw, pavel, len.brown, gregkh
  Cc: linux-pm, linux-kernel, sunil.m, karthik, raghu, Shrikant Maurya

From: Shrikant Maurya <shrikant.maurya@techveda.org>

As reported by Jia-Ju Bai (https://lkml.org/lkml/2017/12/11/872):
API's are using GFP_KERNEL to allocate memory which may sleep.

To ensure atomicity such allocations must be avoided in critical
sections under spinlock.
Fixed by replacing GFP_KERNEL to GFP_ATOMIC.

Reported-by: Jia-Ju Bai <baijiaju1990@gmail.com>
Signed-off-by: Shrikant Maurya <shrikant.maurya@techveda.org>
Signed-off-by: Suniel Mahesh <sunil.m@techveda.org>
Signed-off-by: Raghu Bharadwaj <raghu@techveda.org>
Signed-off-by: Karthik Tummala <karthik@techveda.org>
---
Note:
- Patch was compile tested and built(ARCH=arm) on linux-next
  (latest).
- No build issues reported.
---
 drivers/base/power/wakeup.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/base/power/wakeup.c b/drivers/base/power/wakeup.c
index 38559f0..de56952 100644
--- a/drivers/base/power/wakeup.c
+++ b/drivers/base/power/wakeup.c
@@ -92,11 +92,11 @@ struct wakeup_source *wakeup_source_create(const char *name)
 {
 	struct wakeup_source *ws;
 
-	ws = kmalloc(sizeof(*ws), GFP_KERNEL);
+	ws = kmalloc(sizeof(*ws), GFP_ATOMIC);
 	if (!ws)
 		return NULL;
 
-	wakeup_source_prepare(ws, name ? kstrdup_const(name, GFP_KERNEL) : NULL);
+	wakeup_source_prepare(ws, name ? kstrdup_const(name, GFP_ATOMIC) : NULL);
 	return ws;
 }
 EXPORT_SYMBOL_GPL(wakeup_source_create);
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2017-12-16  8:21 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-12 13:45 [PATCH] drivers: base: power: Fix GFP_KERNEL in spinlock context shrikant.maurya
2017-12-12 14:58 ` Geert Uytterhoeven
2017-12-15  8:45   ` Pavel Machek
2017-12-16  8:15     ` shrikant
2017-12-16  8:14   ` shrikant
2017-12-12 16:55 ` Rafael J. Wysocki
2017-12-16  8:21   ` shrikant

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).