Messages in this thread Patch in this message | | | Date | Tue, 5 Oct 2004 23:27:58 +0200 | From | Pavel Machek <> | Subject | Re: 2.6.9-rc3[+recent swsusp patches]: swsusp kernel-preemption-unfriendly? |
| |
Hi!
> It looks like there's a probel with the kernel preemption vs swsusp:
It is not in kernel preemption, see that NULL pointer dereference? Try this one...
Pavel
--- clean-suse/kernel/power/swsusp.c 2004-10-05 11:36:23.000000000 +0200 +++ linux-suse/kernel/power/swsusp.c 2004-10-05 22:35:21.000000000 +0200 @@ -568,6 +568,7 @@ struct zone *zone; unsigned long zone_pfn; struct pbe * pbe = pagedir_nosave; + int pages_copied = 0; for_each_zone(zone) { if (is_highmem(zone)) @@ -576,13 +577,17 @@ if (saveable(zone, &zone_pfn)) { struct page * page; page = pfn_to_page(zone_pfn + zone->zone_start_pfn); + pbe->orig_address = (long) page_address(page); /* copy_page is no usable for copying task structs. */ memcpy((void *)pbe->address, (void *)pbe->orig_address, PAGE_SIZE); pbe++; + pages_copied++; } } } + BUG_ON(pages_copied > nr_copy_pages); + nr_copy_pages = pages_copied; } @@ -863,7 +868,7 @@ asmlinkage int swsusp_restore(void) { - BUG_ON (nr_copy_pages_check != nr_copy_pages); +// BUG_ON (nr_copy_pages_check != nr_copy_pages); BUG_ON (pagedir_order_check != pagedir_order); /* Even mappings of "global" things (vmalloc) need to be fixed */ -- People were complaining that M$ turns users into beta-testers... ...jr ghea gurz vagb qrirybcref, naq gurl frrz gb yvxr vg gung jnl! - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |