From: Andi Kleen <andi@firstfloor.org>
To: Mitsuhiro Tanino <mitsuhiro.tanino.gm@hitachi.com>
Cc: Andi Kleen <andi@firstfloor.org>,
linux-kernel <linux-kernel@vger.kernel.org>,
linux-mm <linux-mm@kvack.org>
Subject: Re: [RFC Patch 0/2] mm: Add parameters to make kernel behavior at memory error on dirty cache selectable
Date: Thu, 11 Apr 2013 15:49:16 +0200 [thread overview]
Message-ID: <20130411134915.GH16732@two.firstfloor.org> (raw)
In-Reply-To: <51662D5B.3050001@hitachi.com>
> As a result, if the dirty cache includes user data, the data is lost,
> and data corruption occurs if an application uses old data.
The application cannot use old data, the kernel code kills it if it
would do that. And if it's IO data there is an EIO triggered.
iirc the only concern in the past was that the application may miss
the asynchronous EIO because it's cleared on any fd access.
This is a general problem not specific to memory error handling,
as these asynchronous IO errors can happen due to other reason
(bad disk etc.)
If you're really concerned about this case I think the solution
is to make the EIO more sticky so that there is a higher chance
than it gets returned. This will make your data much more safe,
as it will cover all kinds of IO errors, not just the obscure memory
errors.
Or maybe have a panic knob on any IO error for any case if you don't
trust your application to check IO syscalls. But I would rather
have better EIO reporting than just giving up like this.
The problem of tying it just to any dirty data for memory errors
is that most anonymous data is dirty and it doesn't have this problem
at all (because the signals handle this and they cannot be lost)
And that is a far more common case than this relatively unlikely
case of dirty IO data.
So just doing it for "dirty" is not the right knob.
Basically I'm saying if you worry about unreliable IO error reporting
fix IO error reporting, don't add random unnecessary panics to
the memory error handling.
BTW my suspicion is that if you approach this from a data driven
perspective: that is measure how much such dirty data is typically
around in comparison to other data it will be unlikely. Such
a study can be done with the "page-types" program in tools/vm
-Andi
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2013-04-11 13:49 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-11 3:26 [RFC Patch 0/2] mm: Add parameters to make kernel behavior at memory error on dirty cache selectable Mitsuhiro Tanino
2013-04-11 3:53 ` Simon Jeons
2013-04-11 12:51 ` Mitsuhiro Tanino
2013-04-11 13:00 ` Ric Mason
2013-04-12 13:43 ` Mitsuhiro Tanino
2013-04-17 5:49 ` Simon Jeons
2013-04-11 7:11 ` Naoya Horiguchi
2013-04-12 13:24 ` Mitsuhiro Tanino
2013-04-12 14:45 ` Naoya Horiguchi
2013-04-17 7:14 ` Simon Jeons
2013-04-17 14:55 ` Naoya Horiguchi
2013-04-18 0:27 ` Simon Jeons
2013-04-11 13:49 ` Andi Kleen [this message]
2013-04-11 15:23 ` Naoya Horiguchi
2013-04-11 18:10 ` Andi Kleen
2013-04-12 13:38 ` Mitsuhiro Tanino
2013-04-12 15:13 ` Naoya Horiguchi
2013-04-17 13:58 ` Naoya Horiguchi
2013-04-17 6:42 ` Simon Jeons
2013-04-17 14:16 ` Naoya Horiguchi
2013-04-17 5:30 ` Simon Jeons
2013-04-11 15:15 ` KOSAKI Motohiro
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=20130411134915.GH16732@two.firstfloor.org \
--to=andi@firstfloor.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mitsuhiro.tanino.gm@hitachi.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;
as well as URLs for NNTP newsgroup(s).