From: Andrea Arcangeli <andrea@suse.de>
To: Linus Torvalds <torvalds@transmeta.com>
Cc: ehrhardt@mathematik.uni-ulm.de, linux-kernel@vger.kernel.org
Subject: Re: VM-related Oops: 2.4.15pre1
Date: Sun, 18 Nov 2001 07:37:30 +0100 [thread overview]
Message-ID: <20011118073730.C25232@athlon.random> (raw)
In-Reply-To: <20011118051023.A25232@athlon.random> <Pine.LNX.4.33.0111172220300.1290-100000@penguin.transmeta.com>
In-Reply-To: <Pine.LNX.4.33.0111172220300.1290-100000@penguin.transmeta.com>; from torvalds@transmeta.com on Sat, Nov 17, 2001 at 10:24:44PM -0800
On Sat, Nov 17, 2001 at 10:24:44PM -0800, Linus Torvalds wrote:
>
> On Sun, 18 Nov 2001, Andrea Arcangeli wrote:
> >
> > I also agree the patch shouldn't matter, but one suspect thing is the
> > fact add_to_swap_cache goes to clobber in a non atomic manner the page
> > lock.
>
> .. you mean __add_to_page_cache(), not add_to_swap_cache().
>
> And nope, not really. It does use plain stores to page->flags, and I agree
> that it is ugly, but if the page was locked before calling it, all the
> stores will be with the PG_lock bit set - and even plain stores _are_
> documented to be atomic on x86 (and on all other reasonable architectures
> too).
I know all is right if GCC just overwrites the page->flags with data
that keeps PG_locked set. But GCC doesn't guarantee that. GCC can as
well do:
flags = page->flags;
page->flags = 0;
change flags here
page->flags = flags
probably gcc doesn't, but that's still a kernel bug.
Andrea
next prev parent reply other threads:[~2001-11-18 6:37 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-11-16 22:23 VM-related Oops: 2.4.15pre1 Simon Kirby
2001-11-17 22:53 ` Christian Ehrhardt
2001-11-18 3:12 ` Linus Torvalds
2001-11-18 4:10 ` Andrea Arcangeli
2001-11-18 6:24 ` Linus Torvalds
2001-11-18 6:37 ` Andrea Arcangeli [this message]
2001-11-18 7:31 ` Linus Torvalds
2001-11-18 12:05 ` Alan Cox
2001-11-19 2:02 ` Linus Torvalds
2001-11-19 2:27 ` Linus Torvalds
2001-11-19 18:40 ` kuznet
2001-11-19 10:15 ` Alan Cox
2001-11-19 16:39 ` Linus Torvalds
2001-11-19 18:03 ` Eric W. Biederman
2001-11-19 19:04 ` Linus Torvalds
2001-11-19 23:52 ` John Alvord
2001-11-21 2:31 ` Pavel Machek
[not found] ` <200111180731.fAI7VFa01371@penguin.transmeta.com>
2001-11-18 7:51 ` Andrea Arcangeli
2001-11-18 17:10 ` Horst von Brand
2001-11-19 2:04 ` Linus Torvalds
2001-11-19 3:22 ` Jeff V. Merkey
2001-11-19 8:44 ` David Woodhouse
2001-11-19 16:57 ` Linus Torvalds
2001-11-19 17:56 ` Simon Kirby
2001-11-19 18:03 ` Linus Torvalds
2001-11-19 18:31 ` Simon Kirby
2001-11-19 20:01 ` Marcelo Tosatti
2001-11-19 21:26 ` Linus Torvalds
2001-11-19 21:49 ` Rik van Riel
2001-11-19 22:40 ` Linus Torvalds
2001-11-19 22:59 ` Rik van Riel
2001-11-19 23:03 ` Linus Torvalds
2001-11-20 0:06 ` Rik van Riel
2001-11-20 0:08 ` Linus Torvalds
2001-11-20 0:27 ` Rik van Riel
2001-11-19 23:27 ` Simon Kirby
2001-11-19 23:38 ` Linus Torvalds
2001-11-19 23:52 ` Simon Kirby
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20011118073730.C25232@athlon.random \
--to=andrea@suse.de \
--cc=ehrhardt@mathematik.uni-ulm.de \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@transmeta.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox