All of lore.kernel.org
 help / color / mirror / Atom feed
From: Robert Love <robert.w.love@intel.com>
To: James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Tejun Heo <tj@kernel.org>,
	"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>,
	"Eric.Moore@lsi.com" <Eric.Moore@lsi.com>
Subject: Re: [PATCH 3/4] fcoe: use dedicated workqueue instead of system_wq
Date: Tue, 25 Jan 2011 10:26:30 -0800	[thread overview]
Message-ID: <1295979990.12667.7.camel@fritz> (raw)
In-Reply-To: <1295930614.15425.137.camel@mulgrave.site>

On Mon, 2011-01-24 at 20:43 -0800, James Bottomley wrote:
> On Mon, 2011-01-24 at 14:57 +0100, Tejun Heo wrote:
> > fcoe uses the system_wq to destroy ports and the work items need to be
> > flushed before the driver is unloaded.  As the work items free the
> > containing data structure, they can't be flushed directly.  The
> > workqueue should be flushed instead.
> > 
> > Also, the destruction works can be chained - ie. destruction of a port
> > may lead to destruction of another port where the work item for the
> > former queues the work for the latter.  Currently, the depth of chain
> > can be at most two and fcoe_exit() makes sure everything is complete
> > by calling flush_scheduled_work() twice.
> > 
> > With commit c8efcc25 (workqueue: allow chained queueing during
> > destruction), destroy_workqueue() can take care of chained works on
> > workqueue destruction.  Add and use fcoe_wq instead.  Simply
> > destroying fcoe_wq on driver unload takes care of flushing.
> 
> Cc'ing FCoE maintainer for an opinion.
> 
> Robert, I assume this will come back via your queue with an ack.
> 
> James
> 
Yes, I will take care of it. There is going to be a lot of code movement
in the next fcoe update to make way for a new fcoe model that will allow
for new transports. It's the pre-work that the bnx2fc driver can plug
into. I think having this go through my tree is a good idea.

Thanks, //Rob


  reply	other threads:[~2011-01-25 18:26 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-24 13:57 [PATCHSET] scsi: remove use of flush_scheduled_work() Tejun Heo
2011-01-24 13:57 ` [PATCH 1/4] scsi: remove flush_scheduled_work() usages Tejun Heo
2011-01-24 13:57 ` [PATCH 2/4] scsi: pm8001: simplify workqueue usage Tejun Heo
2011-01-25  4:42   ` James Bottomley
2011-01-25  7:12     ` Jack Wang
2011-01-24 13:57 ` [PATCH 3/4] fcoe: use dedicated workqueue instead of system_wq Tejun Heo
2011-01-25  4:43   ` James Bottomley
2011-01-25 18:26     ` Robert Love [this message]
2011-01-24 13:57 ` [PATCH 4/4] fusion: don't use flush_scheduled_work() Tejun Heo
2011-06-15 13:39   ` 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=1295979990.12667.7.camel@fritz \
    --to=robert.w.love@intel.com \
    --cc=Eric.Moore@lsi.com \
    --cc=James.Bottomley@HansenPartnership.com \
    --cc=linux-scsi@vger.kernel.org \
    --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 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.