Messages in this thread |  | | | Date | Thu, 7 Oct 2004 09:51:33 +0200 | | From | Pavel Machek <> | | Subject | Re: [kernel] Fix random crashes in x86-64 swsusp |
| |
Hi!
> Maybe not really a final version: The __init should remain there if > suspend/resume isn't enabled in the configuration. I'd guess you want > something for this paralleling the __cpuinit/__devinit/module_init stuff > (if these occur very rarely, then doing this inline may of course also > be an acceptable choice). Jan
I do not think we care enough about those few bytes to make sources more complex. These functions are really small. Pavel
> >>> pavel@suse.cz 07.10.04 00:06:00 >>> > Hi! > > fix_processor_context was calling functions marked __init on x86-64; > bad idea. Maybe we should memset freed memory to zero so such bugs are > prevented? > > Thanks to Rafael for keeping notifying me about this bug, and someone > get me yet another brown paper bag. > > Anyway, this should fix it, please apply, > Pavel > > --- clean-suse/arch/x86_64/ia32/syscall32.c 2004-06-22 > 12:36:00.000000000 +0200 > +++ linux-suse/arch/x86_64/ia32/syscall32.c 2004-10-06 > 23:58:27.000000000 +0200 > @@ -76,7 +76,8 @@ > > __initcall(init_syscall32); > > -void __init syscall32_cpu_init(void) > +/* May not be __init: called during resume */ > +void syscall32_cpu_init(void) > { > if (use_sysenter < 0) > use_sysenter = (boot_cpu_data.x86_vendor == > X86_VENDOR_INTEL); > --- clean-suse/arch/x86_64/kernel/setup64.c 2004-10-05 > 11:36:21.000000000 +0200 > +++ linux-suse/arch/x86_64/kernel/setup64.c 2004-10-06 > 23:59:08.000000000 +0200 > @@ -195,7 +195,8 @@ > char boot_exception_stacks[N_EXCEPTION_STACKS * EXCEPTION_STKSZ] > __attribute__((section(".bss.page_aligned"))); > > -void __init syscall_init(void) > +/* May not be marked __init: used by software suspend */ > +void syscall_init(void) > { > /* > * LSTAR and STAR live in a bit strange symbiosis. >
-- 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/
|  |