All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tony Luck <tony.luck@intel.com>
To: david@lang.hm
Cc: Huang Ying <ying.huang@intel.com>,
	David Howells <dhowells@redhat.com>,
	Borislav Petkov <bp@alien8.de>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	"H. Peter Anvin" <hpa@zytor.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-arch@vger.kernel.org" <linux-arch@vger.kernel.org>,
	"tglx@linutronix.de" <tglx@linutronix.de>,
	"mingo@elte.hu" <mingo@elte.hu>,
	"greg@kroah.com" <greg@kroah.com>,
	"akpm@linux-foundation.org" <akpm@linux-foundation.org>,
	David Miller <davem@davemloft.net>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>,
	Jim Keniston <jkenisto@linux.vnet.ibm.com>,
	Kyungmin Park <kmpark@infradead.org>,
	Geert Uytterhoeven <geert@linux-m68k.org>
Subject: Re: [concept & "good taste" review] persistent store
Date: Tue, 21 Dec 2010 23:34:45 -0800	[thread overview]
Message-ID: <AANLkTi=qhwSM8-849OWwKjSAC17tS1GEk90ixkN9O6AJ@mail.gmail.com> (raw)
In-Reply-To: <alpine.DEB.2.00.1012211651000.27461@asgard.lang.hm>

On Tue, Dec 21, 2010 at 4:53 PM,  <david@lang.hm> wrote:
> almost nobody runs syslog with a fsync after each message anymore. the
> problem is that doing so reduced throughput so much that you ended up
> loosing more messages (and causing processes to block, resulting in
> user-visible problems) because the messages had to queue up for processing.
>
> so if you want to record critical messages and be guaranteed that they are
> on disk, you will be needing a specific application, and not just using
> standard syslog.

Here we are talking about OOPS situations ... when we have an
oops we will log it to persistent store and make sure we keep it
until something else says that the information has been saved
somewhere else.

Not sure how difficult it would be to have syslog parse what it
copies to look for oops signatures and
1) Issue an fsync()
2) Tell the persistent store to drop the record.

Perhaps some other logging mechanism would be better?
I outlined my thoughts for this yesterday:
> 1) Oops happens, gets written to persistent store.
> 2) fs/pstore code makes a file appear in /dev/pstore
> 3) Daemon that's watching /dev/pstore sees new file
> 4) File is read, copied some place safe and fsync'd
> 5) Daemon unlinks file from /dev/pstore
> 6) fs/pstore code tells platform level to erase record

Since this is only for "oops" class events, I don't think that
the fsync should be a performance problem (you really have
much bigger problems if there are that many oopses!)

-Tony

  reply	other threads:[~2010-12-22  7:34 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-12-13 18:16 [concept & "good taste" review] persistent store Luck, Tony
2010-12-17  1:57 ` Linus Torvalds
2010-12-17  6:28   ` Tony Luck
2010-12-17 18:09     ` Tony Luck
2010-12-17 18:19       ` James Bottomley
2010-12-17 21:38       ` Linus Torvalds
2010-12-17 23:08         ` Tony Luck
2010-12-17 23:11           ` H. Peter Anvin
2010-12-17 23:53             ` Tony Luck
2010-12-18 18:23               ` Linus Torvalds
2010-12-18 23:06                 ` Tony Luck
2010-12-19  9:17                   ` Borislav Petkov
2010-12-19 17:01                     ` Florian Mickler
2010-12-19 20:17                     ` Tony Luck
2010-12-19 20:17                       ` Tony Luck
2010-12-20  2:47                       ` Huang Ying
2010-12-20 17:19                         ` Tony Luck
2010-12-21  0:48                           ` Huang Ying
2010-12-21  5:13                             ` Tony Luck
2010-12-21  7:42                               ` Borislav Petkov
2010-12-20  7:26                       ` Borislav Petkov
2010-12-20 17:18                         ` Linus Torvalds
2010-12-20 17:18                           ` Linus Torvalds
2010-12-20 18:58                           ` Borislav Petkov
2010-12-20 21:09                             ` Tony Luck
2010-12-20 21:09                               ` Tony Luck
2010-12-20 10:46                       ` David Howells
2010-12-21  0:41                         ` Huang Ying
2010-12-21 10:10                         ` David Howells
2010-12-22  0:26                           ` Huang Ying
2010-12-22  0:53                             ` david
2010-12-22  7:34                               ` Tony Luck [this message]
2010-12-22  0:32                           ` David Howells
2010-12-22  0:32                             ` David Howells
2010-12-22  0:43                             ` Huang Ying
2010-12-20 10:49                     ` David Howells
2010-12-20 16:52                       ` Tony Luck

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='AANLkTi=qhwSM8-849OWwKjSAC17tS1GEk90ixkN9O6AJ@mail.gmail.com' \
    --to=tony.luck@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=bp@alien8.de \
    --cc=davem@davemloft.net \
    --cc=david@lang.hm \
    --cc=dhowells@redhat.com \
    --cc=geert@linux-m68k.org \
    --cc=greg@kroah.com \
    --cc=hpa@zytor.com \
    --cc=jkenisto@linux.vnet.ibm.com \
    --cc=kmpark@infradead.org \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    --cc=ying.huang@intel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.