[Devel] [PATCH] fix oops in checkpoint/restart error path
Dave Hansen
dave at linux.vnet.ibm.com
Thu Oct 16 15:51:28 PDT 2008
The 'ctx' is kzmalloc()'d. So, all its contents are zeroed.
It has a list_head, which is walked during cr_ctx_free().
list_for_each() on a non-initalized list_head is bad. Whoops.
Signed-off-by: Dave Hansen <dave at linux.vnet.ibm.com>
---
linux-2.6.git-dave/checkpoint/sys.c | 1 +
1 file changed, 1 insertion(+)
diff -puN checkpoint/sys.c~fix-cr-oops0 checkpoint/sys.c
--- linux-2.6.git/checkpoint/sys.c~fix-cr-oops0 2008-10-16 15:48:18.000000000 -0700
+++ linux-2.6.git-dave/checkpoint/sys.c 2008-10-16 15:48:35.000000000 -0700
@@ -179,6 +179,7 @@ struct cr_ctx *cr_ctx_alloc(pid_t pid, i
ctx = kzalloc(sizeof(*ctx), GFP_KERNEL);
if (!ctx)
return ERR_PTR(-ENOMEM);
+ INIT_LIST_HEAD(&ctx->pgarr_list);
ctx->file = fget(fd);
if (!ctx->file) {
diff -L checkpoint/ckpt_mem.h -puN /dev/null /dev/null
_
_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers
More information about the Devel
mailing list