Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 78dbe706 authored by David Woodhouse's avatar David Woodhouse Committed by Linus Torvalds
Browse files

[PATCH] R3964: fix GFP_KERNEL allocations in timer function

In the error case, add_msg() gets called from timer functions, so should
be using GFP_ATOMIC instead of GFP_KERNEL.

Ref: http://bugzilla.kernel.org/show_bug.cgi?id=6659

.  Thanks to Christian
Werner <chw@ch-werner.de> for reporting, and for the initial fix.

Signed-off-by: default avatarDavid Woodhouse <dwmw2@infradead.org>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent c836043e
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -951,7 +951,8 @@ static void add_msg(struct r3964_client_info *pClient, int msg_id, int arg,
   {
queue_the_message:

      pMsg = kmalloc(sizeof(struct r3964_message), GFP_KERNEL);
      pMsg = kmalloc(sizeof(struct r3964_message),
		     error_code?GFP_ATOMIC:GFP_KERNEL);
      TRACE_M("add_msg - kmalloc %p",pMsg);
      if(pMsg==NULL) {
         return;