public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@infradead.org>
To: Alan Stern <stern@rowland.harvard.edu>
Cc: Mike Anderson <andmike@us.ibm.com>,
	Christoph Hellwig <hch@infradead.org>,
	SCSI development list <linux-scsi@vger.kernel.org>
Subject: Re: Race in removal of host class device attribute file
Date: Fri, 17 Oct 2003 13:30:07 +0100	[thread overview]
Message-ID: <20031017133007.A27304@infradead.org> (raw)
In-Reply-To: <Pine.LNX.4.44L0.0310161656400.890-100000@ida.rowland.org>; from stern@rowland.harvard.edu on Thu, Oct 16, 2003 at 05:09:04PM -0400

On Thu, Oct 16, 2003 at 05:09:04PM -0400, Alan Stern wrote:
> I've created a class device attribute file for the hosts supported by the
> usb-storage driver, using the shost_attrs member of the host template.  
> It seems to contain an intractable race condition when unregistering the
> host.  There's no way for the driver to know when the scsi host's class
> device is released, so there's no way to know when it's safe to deallocate
> the host's driver-specific data structure.  Waiting until
> scsi_remove_host() returns isn't good enough, because a user process might
> keep the attribute file open and thus prevent release of the class device
> indefinitely.

What's the problem with that?  Yes, that means a user process can lock
the memory into core, but we do this in many places.  General rule
of the thumb is that a driver may only release data after scsi_remove_host()
returns for per-host data or in ->slave_destroy() for per-device data.


  parent reply	other threads:[~2003-10-17 12:30 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20030619213109.GB5644@kroah.com>
2003-06-20 20:05 ` Host drivers and conversion of SCSI to the driver model Alan Stern
2003-06-20 21:07   ` Mike Anderson
2003-06-23 14:57     ` Alan Stern
2003-06-27 10:03       ` Christoph Hellwig
2003-06-27 17:56         ` Alan Stern
2003-06-27 18:04           ` Christoph Hellwig
2003-06-27 19:23             ` Mike Anderson
2003-06-28  8:34               ` Christoph Hellwig
2003-06-28 15:08                 ` Jeff Garzik
2003-06-28 15:12                   ` Christoph Hellwig
2003-07-03 15:15         ` Alan Stern
2003-07-06 16:04           ` Christoph Hellwig
2003-07-03 21:02         ` scsi_forget_host() and scsi_remove_device() Alan Stern
2003-07-03 22:19           ` Mike Anderson
2003-07-04 14:16             ` Alan Stern
2003-07-04 19:36             ` Alan Stern
2003-07-04 19:54               ` Matthew Dharm
2003-07-05 14:11                 ` Alan Stern
2003-07-05 16:25                   ` Matthew Dharm
2003-07-06 16:13             ` Christoph Hellwig
2003-07-07 15:19             ` PATCH: (as54) Fix hot-unplugging for sr.c Alan Stern
2003-07-08 22:29               ` Mike Anderson
2003-07-09 14:04                 ` Alan Stern
2003-07-09 14:44                   ` Mike Anderson
2003-07-09 16:02                     ` Alan Stern
2003-07-31 19:38                     ` PATCH: (as33e) Fix removal of /proc/scsi/hostdir on hot-unplug Alan Stern
2003-08-01 20:03                       ` Mike Anderson
2003-08-15 20:05                     ` PATCH: (as84) Fix my earlier scsi procdir patch Alan Stern
2003-09-16 14:50                     ` PATCH: (as84) Small fixup for SCSI proc code Alan Stern
2003-10-16 21:09                     ` Race in removal of host class device attribute file Alan Stern
2003-10-16 22:47                       ` Mike Anderson
2003-10-17 12:18                         ` Alan Stern
2003-10-17 12:30                       ` Christoph Hellwig [this message]
2003-12-10 15:02                     ` Suggestion for aiding debugging of host removal Alan Stern
2003-12-10 15:14                       ` Christoph Hellwig
2003-12-11  4:16                         ` DMA Timeout with Promise S150TX4 and 2.6.0-test11-bk8 Paul
2003-12-11  7:48                         ` Suggestion for aiding debugging of host removal Mike Anderson
2003-12-11 11:39                           ` Christoph Hellwig
2003-12-11 15:14                           ` Alan Stern
2003-07-06 16:11           ` scsi_forget_host() and scsi_remove_device() Christoph Hellwig
2003-07-07 16:06             ` Alan Stern
2003-07-03 20:20     ` SCSI documentation in scsi_mid_low_api.txt Alan Stern
2003-07-03 20:42       ` aic7xxx driver schedules() while holding spinlock Tony Battersby

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=20031017133007.A27304@infradead.org \
    --to=hch@infradead.org \
    --cc=andmike@us.ibm.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=stern@rowland.harvard.edu \
    /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