Messages in this thread Patch in this message | | | Date | Fri, 11 Jun 2004 20:16:55 +1000 | Subject | Re: Fix memory leak in swsusp | From | Herbert Xu <> |
| |
On Fri, Jun 11, 2004 at 11:48:44AM +0200, Pavel Machek wrote: > > > Thanks, but my question remains: why do we need the memset? The > > area allocated is either thrown away because it collides or is > > overwritten with the pagedir stuff straight away. > > You are right, it should not be needed.
Great. Here's the patch that removes the memset calls from both pmdisk and swsusp. It depends on the previous patches in this thread.
Cheers, -- Visit Openswan at http://www.openswan.org/ Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt diff -Nru a/kernel/power/pmdisk.c b/kernel/power/pmdisk.c --- a/kernel/power/pmdisk.c 2004-06-11 20:14:54 +10:00 +++ b/kernel/power/pmdisk.c 2004-06-11 20:14:54 +10:00 @@ -806,7 +806,6 @@ err = -ENOMEM; while ((m = (void *) __get_free_pages(GFP_ATOMIC, pagedir_order))) { - memset(m, 0, PAGE_SIZE); if (!does_collide_order(old_pagedir, (unsigned long)m, pagedir_order)) { pm_pagedir_nosave = new_pagedir = m; --- linux-2.5/kernel/power/swsusp.c.orig 2004-06-11 20:14:02.000000000 +1000 +++ linux-2.5/kernel/power/swsusp.c 2004-06-11 20:14:07.000000000 +1000 @@ -936,7 +936,6 @@ } while ((m = (void *) __get_free_pages(GFP_ATOMIC, pagedir_order))) { - memset(m, 0, PAGE_SIZE); if (!does_collide_order(old_pagedir, (unsigned long)m, pagedir_order)) break; eaten_memory = m; | |