lkml.org 
[lkml]   [2005]   [Sep]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [discuss] Re: [PATCH][Fix][Resend] Fix Bug #4959: Page tables corrupted during resume on x86-64 (take 3)
Hi!

> > > > > The following patch fixes Bug #4959.  For this purpose it creates
> > > > > temporary page translation tables including the kernel mapping (reused)
> > > > > and the direct mapping (created from scratch) and makes swsusp switch
> > > > > to these tables right before the image is restored.
> > > > >
> > > > > The code that generates the direct mapping is based on the code in
> > > > > arch/x86_64/mm/init.c.
> > > >
> > > > Looks much better than before, but is there any reason you cannot
> > > > share the code with the mm/init.c code?
> > >
> > > I think so. I have to make the temporary page tables nosavedata or set
> > > PG_nosave on them, so that swsusp doesn't overwrite them. I'm not
> > > sure if I could do this cleanly if I used the code from mm/init.c directly.
> >
> > Just pass a flag for that.
>
> Well, the code in mm/init.c is only executed really early, before zones
> are initialized, and it uses alloc_low_page() to map memory. Thus it seems
> I only could make my code be executed next to init_memory_mapping(),
> in which case I wouldn't be able to use page flags. Apparently I'm missing
> something but now I'm too tired to think efficiently.

I guess Andi meant "add a parameter to those mm/init.c functions".

(Otoh, you have reserved area, anyway, just set all of it PG_nosave,
and you'll not need to modify mm/init.c stuff).
Pavel
--
if you have sharp zaurus hardware you don't need... you know my address
-
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/

\
 
 \ /
  Last update: 2005-09-29 00:38    [W:0.186 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site