linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: ebiederm@xmission.com (Eric W. Biederman)
To: Alan Stern <stern@rowland.harvard.edu>
Cc: Tejun Heo <tj@kernel.org>,
	Kernel development list <linux-kernel@vger.kernel.org>,
	Greg Kroah-Hartman <gregkh@suse.de>,
	Kay Sievers <kay.sievers@vrfy.org>
Subject: Re: Sysfs attributes racing with unregistration
Date: Wed, 04 Jan 2012 19:07:52 -0800	[thread overview]
Message-ID: <m1boqietiv.fsf@fess.ebiederm.org> (raw)
In-Reply-To: <Pine.LNX.4.44L0.1201041431160.1505-100000@iolanthe.rowland.org> (Alan Stern's message of "Wed, 4 Jan 2012 14:41:12 -0500 (EST)")

Alan Stern <stern@rowland.harvard.edu> writes:

> On Wed, 4 Jan 2012, Eric W. Biederman wrote:
>
>> > Someone (I think Eric, right?) was trying to generalize the semantics
>> > to vfs layer so that severance/revocation capability is generally
>> > available.  IIRC, it didn't get through tho.
>> 
>> Unfortunately I didn't have time to complete the effort of those
>> patches.  The approach was not fundamentally rejected but it needed a
>> clear and convincing use case as well as some strong scrutiny.  But
>> fundamentally finding a way to do that was seen as an interesting,
>> if it could be solved without slowing down the existing cases.
>
> Ted Ts'o has been talking about something similar but not the same -- a
> way to revoke an entire filesystem.  For example, see commit
> 7c2e70879fc0949b4220ee61b7c4553f6976a94d (ext4: add ext4-specific
> kludge to avoid an oops after the disk disappears).
>
> The use case for that is obvious and widespread: Somebody yanks out a
> USB drive without unmounting it first.

Agreed.  The best I have at the moment is a library that can wrap
filesystem methods to implement the hotplug bits.

Do you know how hard it is to remove event up to the filesystem that
sits on top of a block device?

Do you know how hard it is to detect at mount time if a block device
might be hot-plugable?  We can always use a mount option here and
make userspace figure it out, but being to have a good default would
be nice.

If it isn't too hard to get the event up from the block device to the
filesystem when the block device is uncermoniously removed I might just
make the time to have hotunplug trigger a filesystem wide revoke on a
filesystem like ext4.

In addition to sysfs we need the same logic in proc, sysctl, and uio.
So it makes sense to move towards a common library that can do all of
the hard bits.

I just notice that sysctl is currently sysctl is broken in design if not
in practice by having poll methods that will break if you unregister
the sysctls.  Fortunately for the time being we don't have any sysctls
where that case comes up.

Eric

  reply	other threads:[~2012-01-05  3:05 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-04 16:52 Sysfs attributes racing with unregistration Alan Stern
2012-01-04 17:18 ` Tejun Heo
2012-01-04 18:13   ` Eric W. Biederman
2012-01-04 19:41     ` Alan Stern
2012-01-05  3:07       ` Eric W. Biederman [this message]
2012-01-05 15:13         ` Revoking filesystems [was Re: Sysfs attributes racing with unregistration] Alan Stern
2012-01-05 15:32           ` Tejun Heo
2012-01-05 16:03             ` Eric W. Biederman
2012-01-05 16:44               ` Tejun Heo
2012-01-05 16:47               ` Alan Stern
2012-01-05 17:11                 ` Tejun Heo
2012-01-05 18:27                 ` Ted Ts'o
2012-01-05 18:36                   ` Tejun Heo
2012-01-05 19:28                     ` Ted Ts'o
2012-01-05 20:52                       ` Tejun Heo
2012-01-06  6:25                       ` Alexander E. Patrakov
2012-01-07 21:01                       ` Revoking filesystems [was Re: Sysfs attributes racing withunregistration] Milton Miller
2012-01-05 20:43                     ` Revoking filesystems [was Re: Sysfs attributes racing with unregistration] Eric W. Biederman
2012-01-05 20:55                       ` Tejun Heo
2012-01-05 18:38                   ` Christoph Hellwig
2012-01-05 15:52           ` Eric W. Biederman
2013-01-14 15:11             ` watchdog code anish kumar
2012-01-05 18:18           ` Revoking filesystems [was Re: Sysfs attributes racing with unregistration] Greg KH
2012-01-04 18:13   ` Sysfs attributes racing with unregistration Alan Stern
2012-01-04 18:20     ` Tejun Heo

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=m1boqietiv.fsf@fess.ebiederm.org \
    --to=ebiederm@xmission.com \
    --cc=gregkh@suse.de \
    --cc=kay.sievers@vrfy.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stern@rowland.harvard.edu \
    --cc=tj@kernel.org \
    /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).