mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Tvrtko Ursulin <tvrtko.ursulin@onelan.co.uk>
To: "Jörn Engel" <joern@logfs.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	linux-kernel@vger.kernel.org, Jeff Moyer <jmoyer@redhat.com>,
	Steve Hodgson <steve@purestorage.com>
Subject: Re: [PATCH] add blockconsole version 1.1
Date: Wed, 25 Jul 2012 09:17:09 +0100	[thread overview]
Message-ID: <201207250917.09516.tvrtko.ursulin@onelan.co.uk> (raw)
In-Reply-To: <20120724143822.GA24954@logfs.org>

On Tuesday 24 Jul 2012 15:38:22 Jörn Engel wrote:
> On Tue, 24 July 2012 09:01:16 +0100, Tvrtko Ursulin wrote:
> > On Monday 23 Jul 2012 21:02:30 Jörn Engel wrote:
> > > On Mon, 23 July 2012 15:33:16 +0100, Tvrtko Ursulin wrote:
> > > > On Thursday 12 Jul 2012 18:46:34 Jörn Engel wrote:
> > At the very least block console does not work from interrupt context
> > while netconsole does, right? Also netconsole does things to try and
> > work around low memory situations. Things like that I think would be
> > useful additions to documentation.
> 
> Blockconsole does work from interrupt context.  It has buffers for 1MB
> worth of data.  Until those fill up, it only does a memcpy and
> schedules a workqueue for writeback.  If you panic, it will do the
> writeback immediately.  While I wouldn't believe this to always work,
> I have yet to see a confirmed failure case.

As far as I know there is nothing like netpoll in the block layer so it has to 
be a lot less reliable than netconsole. Especially with delaying write out to 
a workqueue. Anyway, I am not arguing, just saying in my opinion those caveats 
are worth documenting.
 
> Blockconsole itself has no allocations in the write path, so it should
> be unaffected by low memory situation.  The underlying driver and
> block layer code may well be.

Same thing.
 
> > > > Also, and I haven't checked what the swap format is, if it could
> > > > somehow be integrated together that could be useful.
> > > 
> > > That appears to be slightly less likely than crossbreeding a rabbit
> > > with a chicken.  Is there something obvious I have missed?
> > 
> > I was thinking how swap space is always there and is potentially much
> > faster to write to than a random USB stick - which could translate to
> > more reliable. Then it's a question of which storage subsystem (libata
> > vs. usb-storage) would work better in different oops/panic situations.
> > Again I tend to have less hope in USB based solutions - maybe it's my
> > bias from working in that area many years ago. So the idea of swap space
> > was that _if_ swap format could be extended to allocate a number of
> > blocks to use other than swap, then that area could be used by
> > blockconsole. Seemed like a convenient and potentially more reliable
> > solution to me, but as I said the latter may depend.
> 
> In my systems swap is often absent.  Plus, taking a few blocks a swap
> aside is in the end just partitioning in a new dress.  So the argumen
> appears to boil down to using partitions again.  The equivalent of
> swap files might be interesting, but can also be somewhat scary.  So I
> would leave it to others to actually write the code - if they care.

I knew you'll pick me up on a new partitioning scheme. :) I just see it as 
convenience. Whereas it is often not possible (or at least to much effort) to 
create new partitions, swap if often around and potentially more reliable than 
a random USB stick (considering the whole data path).
 
> Libata is fine, blockconsole can work on any block device.

My point was that it's reliability will differ depending on the block device 
in use, which is unlike netconsole. Again I am not arguing against the 
feature, but if you don't see things like these are worth documenting I give 
up.

Tvrtko

  reply	other threads:[~2012-07-25  8:17 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-24 20:59 [RFC][PATCH] add blockconsole Jörn Engel
2012-04-25 13:42 ` Jeff Moyer
2012-04-25 13:25   ` Jörn Engel
2012-04-25 15:52     ` Jeff Moyer
2012-07-12 17:46       ` [PATCH] add blockconsole version 1.1 Jörn Engel
2012-07-13 13:03         ` Borislav Petkov
2012-07-13 16:20           ` Jörn Engel
2012-07-13 21:14             ` Borislav Petkov
2012-07-16 12:46             ` Borislav Petkov
2012-07-18 18:53               ` Jörn Engel
2012-07-18 21:45                 ` Borislav Petkov
2012-07-18 21:08                   ` Jörn Engel
2012-07-19  9:26                     ` Borislav Petkov
2012-07-23 20:04                   ` Jörn Engel
2012-07-24 15:42                     ` Borislav Petkov
2012-07-24 14:53                       ` Jörn Engel
2012-07-24 16:25                         ` Borislav Petkov
2012-07-24 17:52                           ` Jörn Engel
2012-07-24 20:28                             ` Borislav Petkov
2012-12-19 10:20                               ` Borislav Petkov
2012-08-14 11:54                 ` Jan Engelhardt
2012-07-23 14:33         ` Tvrtko Ursulin
2012-07-23 20:02           ` Jörn Engel
2012-07-24  8:01             ` Tvrtko Ursulin
2012-07-24 14:38               ` Jörn Engel
2012-07-25  8:17                 ` Tvrtko Ursulin [this message]
2012-07-25 16:39                   ` Jörn Engel

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=201207250917.09516.tvrtko.ursulin@onelan.co.uk \
    --to=tvrtko.ursulin@onelan.co.uk \
    --cc=akpm@linux-foundation.org \
    --cc=jmoyer@redhat.com \
    --cc=joern@logfs.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=steve@purestorage.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

all inboxes | Powered by JetHome®