lkml.org 
[lkml]   [2000]   [Oct]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: SMP VM race in 2.[0-4]
Hello,

> I found a possible problem on SMP. In vmscan.c / try_to_swap_out you do
> not use atomic operations for manipulating with ptes. You read the pte,
> modify it and write it nonatomically. When the second CPU is running
> process that turns on 'D' bit of pte while the first CPU is in
> try_to_swap_out, 'D' bit is lost. Because anonymous pages have always 'D'
> bit set, the bug can only affect pages mapped with MAP_SHAREAD,
> PROT_WRITE. Sometimes updates are not written back to file.
>

You're correct. A discussion about this occurred on Linux-MM
1-2 weeks ago, and a patch followed. (Unfortunately, it's not
very efficient, but I'm not sure if anyone has found a really
good solution yet to this problem on any other x86 OS)

Check out:
http://mail.nl.linux.org/linux-mm/2000-09/

Thread: [PATCH] workaround for lost dirty bits on x86 SMP -and-
Thread: [PATCH] 2.2.18pre5 version of pte dirty bit psmp race atch

--
Eric Lowe
FibreChannel Software Engineer, Systran Corporation
elowe@systran.com


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 12:45    [W:0.046 / U:10.584 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site