lkml.org 
[lkml]   [2008]   [May]   [13]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateTue, 13 May 2008 16:12:10 +0100 (BST)
FromHugh Dickins <>
SubjectRe: [PATCH] x86: fix app crashes after SMP resume
On Tue, 13 May 2008, Glauber Costa wrote:
> On Tue, May 13, 2008 at 10:26 AM, Hugh Dickins <hugh@veritas.com> wrote:
> >
> >  +#ifdef CONFIG_X86_32
> >  +       while (low_mappings)
> >  +               cpu_relax();
> >  +       __flush_tlb_all();
> >  +#endif
> >  +
> 
> If possible, we don't want to introduce any more ifdefs. Should be
> better to do it openly, define low_mappings as always 0 for x86_64.

You're right, something like that (but avoiding the __flush_tlb_all
on x86_64) would have been nicer; never mind, now it's going forward,
I'll leave it as is.

A bigger improvement would be to cut out all that swapper_pg_dir
to and fro, needing a global TLB flush on all cpus for each cpu.
Just have an alternate pg_dir (often already there as swsusp_pg_dir)
to point cr3 at for the bootup (or maybe it needs to be vice versa).

But that's harder to get right, and involves wider changes and much
more testing than I could afford for the bugfix.  Plus I expect it's
on your radar if not already done.

Hugh


\
 
 \ /
  Last update: 2008-05-13 17:17    [from the cache]
©2003-2008