Re: shm bug introduced with pagecache in 2.3.11

Christoph Rohland (hans-christoph.rohland@sap.com)
09 Nov 1999 16:26:57 +0100


Hi Andrea,

andrea@suse.de (Andrea Arcangeli) writes:

> On 8 Nov 1999, Christoph Rohland wrote:
>
> >Hi folks,
> >
> >I finally found the change, which gives me
> >
> >swap_duplicate: unused page
>
> You got also the EIP address of the caller, please resolved it it's very
> sensitive.
>
> Could you give a try removing this line:
>
> --- 2.3.26/ipc/shm.c Sun Nov 7 17:33:38 1999
> +++ /tmp/shm.c Tue Nov 9 12:16:28 1999
> @@ -790,7 +790,6 @@
> page = lookup_swap_cache(entry);
> if (!page) {
> lock_kernel();
> - swapin_readahead(entry);
> page = read_swap_cache(entry);
> unlock_kernel();
> if (!page)
>
> (note: the above is not the right fix for the kernel, it's just to verify
> that's the problem)

No, this did not help. But I am quite sure that the problem lies in
the swapin code when two processes want to access the same page in
swap. The stack trace is always :

swap_duplicate
read_swap_cache_async
shm_nopage
handle_mm_fault
...

or

swap_duplicate
read_swap_cache_async
swapin_readahead
shm_nopage
handle_mm_fault
...

Greetings
Christoph

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