public inbox for linux-ext4@vger.kernel.org
 help / color / mirror / Atom feed
From: Dave Chinner <david@fromorbit.com>
To: Andreas Dilger <adilger@sun.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>,
	Toshiyuki Okajima <toshi.okajima@jp.fujitsu.com>,
	Theodore Ts'o <tytso@mit.edu>,
	linux-fsdevel@vger.kernel.org,
	"linux-ext4@vger.kernel.org development"
	<linux-ext4@vger.kernel.org>,
	"James C. Browne" <browne@cs.utexas.edu>
Subject: Re: [REPOST][PATCH][RFC] vfs: add message print mechanism for the mount/umount into the VFS layer
Date: Fri, 15 Jan 2010 22:02:20 +1100	[thread overview]
Message-ID: <20100115110220.GG28498@discord.disaster> (raw)
In-Reply-To: <5E9FF033-5FD5-42B4-985B-C241F45746C1@sun.com>

On Thu, Jan 14, 2010 at 11:36:25PM -0500, Andreas Dilger wrote:
> On 2010-01-14, at 20:24, Dave Chinner wrote:
>> On Thu, Jan 14, 2010 at 10:33:42AM -0500, Andreas Dilger wrote:
>>> Sure, it is _possible_ to do this, but you miss the fact that there  
>>> are
>>> many system monitoring tools that already scrape /var/log/messages  
>>> and
>>> integrate with event managers.  What you are suggesting is that every
>>> such tool implement an extra, completely ad-hoc mechanism just for
>>> monitoring the mount/unmount of filesystems on Linux.  That doesn't  
>>> make
>>> sense.
>>
>> We already report various events through a netlink interface, but not
>> to the log files (e.g. quota warnings), so those system monitoring
>> tools are already going to be missing interesting information.
>>
>> Using log files for system event notification used to be the only
>> way to communicate such events. Now we have much more advanced and
>> efficient mechanisms for notifications so I think we should use
>> them.
....
> However, there are many reasons why it still makes sense to do this:
> - it is in plain text format.  I can't recall the number of times
>   people were proposing crazy schemes to have a text interface to the
>   kernel (via /sys/blah, or /debugfs/blah) for things that are much
>   better suited to an ioctl, since they are largely handled by binaries
>   (applications), yet in the case where we have an existing plain-text
>   interface (dmesg and /var/log/messages) that are meant (at least
>   partly) for human consumption we are proposing a binary interface
> - every system monitoring tool in existence has a /var/log/messages
>   scraping interface, because this is the lowest common denominator,
>   but I'd suspect that few/none have a netlink interface, or if they
>   do it probably can't be easily added to by a user

A daemon that captures the events from netlink and writes them to
syslog is all that is needed to support log file scraping
monitoring tools. The message they scrape does not have to come from
the kernel...

> If we are going to propose adding a binary interface for kernel status
> notification, then we should discuss a proper interface for such that
> is a real improvement over what we have today.  Things like having
> proper error message numbers, error levels, subsystem identifiers,
> timestamps, name=value status fields, not doing printf formatting in
> the kernel, etc.

Event notifications don't need this sort of complexity - classifying
an event is something for the userspace side of the notification -
it is the policy part of the equation.  Different applications will
do this differently. e.g. system monitoring might write it to syslog
for the scraper to read, while a desktop subsystem might deliver it
to a taskbar notification mechanism to generate a usre visible popup
message.

IMO, using printk() for such notifications provides none of the
flexibility that modern systems require, but events can easily be
used to support legacy methods of event reporting. Hence it seems to
me like a no brainer to use events rather than printk for all new
notifications....

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

  parent reply	other threads:[~2010-01-15 11:02 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-14  6:48 [REPOST][PATCH][RFC] vfs: add message print mechanism for the mount/umount into the VFS layer Toshiyuki Okajima
2010-01-14  8:14 ` Al Viro
2010-01-14 15:33   ` Andreas Dilger
2010-01-15  1:24     ` Dave Chinner
2010-01-15  4:36       ` Andreas Dilger
2010-01-15  8:31         ` Toshiyuki Okajima
2010-01-15 11:02         ` Dave Chinner [this message]
2010-01-15 11:44           ` Mike Mestnik
2010-01-15 13:15             ` Dave Chinner
2010-01-15 18:07       ` Valerie Aurora
2010-01-15 18:43         ` Ric Wheeler
  -- strict thread matches above, loose matches on Subject: below --
2009-11-04  4:49 [REPOST] [PATCH][RFC] " Toshiyuki Okajima

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=20100115110220.GG28498@discord.disaster \
    --to=david@fromorbit.com \
    --cc=adilger@sun.com \
    --cc=browne@cs.utexas.edu \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=toshi.okajima@jp.fujitsu.com \
    --cc=tytso@mit.edu \
    --cc=viro@zeniv.linux.org.uk \
    /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