All of lore.kernel.org
 help / color / mirror / Atom feed
From: Brian King <brking@linux.vnet.ibm.com>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	"Eric W. Biederman" <ebiederm@xmission.com>,
	Anton Blanchard <anton@samba.org>
Cc: james.smart@broadcom.com, dick.kennedy@broadcom.com,
	jejb@linux.vnet.ibm.com, martin.petersen@oracle.com,
	jk@ozlabs.org, linux-scsi@vger.kernel.org
Subject: Re: [PATCH] scsi: lpfc: Add shutdown method for kexec
Date: Mon, 13 Feb 2017 15:57:22 -0600	[thread overview]
Message-ID: <2fa7fc70-44d4-f536-befb-8a7849741fb7@linux.vnet.ibm.com> (raw)
In-Reply-To: <1486947669.3401.69.camel@kernel.crashing.org>

On 02/12/2017 07:01 PM, Benjamin Herrenschmidt wrote:
> On Mon, 2017-02-13 at 13:21 +1300, Eric W. Biederman wrote:
>>> Good point, at the very least we should call remove if shutdown doesn't
>>> exist. Eric: could we make the changes Ben suggests?
>>
>> Definitely.  That was the original design of the kexec interface
>> but people were worried about calling remove during reboot might
>> introduce regressions on the reboot functionality.  So shutdown was
>> added to be remove without the cleaning up the kernel data structures.
> 
> Right. Part of the problem was also that remove was dependent on CONFIG_HOTPLUG
> though that's no longer the case anymore.
> 
> The problem is that a bunch of drivers either don't have a shutdown or
> worse, have one that actually shuts the HW down rather than "idle" it
> which puts it in a state that the new kernel can't deal with.

If we do transition to use remove rather than shutdown, I think we want
some way for a device driver to know whether we are doing kexec or not.
A RAID adapter with a write cache is going to want to flush its write
cache on a PCI hotplug remove, but for a kexec, its going to want to skip
that so the kexec is faster. Today, since kexec looks like a reboot,
rather than a shutdown, we can skip the flush on a reboot, since its
technically not needed there either.

-Brian

-- 
Brian King
Power Linux I/O
IBM Linux Technology Center

  reply	other threads:[~2017-02-13 21:57 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-12 21:49 [PATCH] scsi: lpfc: Add shutdown method for kexec Anton Blanchard
2017-02-12 23:14 ` Benjamin Herrenschmidt
2017-02-12 23:47   ` Anton Blanchard
2017-02-13  0:21     ` Eric W. Biederman
2017-02-13  1:01       ` Benjamin Herrenschmidt
2017-02-13 21:57         ` Brian King [this message]
2017-02-14  2:04           ` Benjamin Herrenschmidt
2017-02-14 14:56             ` Brian King
2017-02-15  2:44               ` Eric W. Biederman
2017-02-14  2:45           ` Eric W. Biederman
2017-02-14  3:39             ` Benjamin Herrenschmidt
2017-03-06 14:52 ` Mauricio Faria de Oliveira
2017-03-07  3:46   ` Martin K. Petersen
2017-03-07  5:24     ` Benjamin Herrenschmidt
2017-03-07 12:51       ` Mauricio Faria de Oliveira
2017-03-08  1:29         ` Martin K. Petersen

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=2fa7fc70-44d4-f536-befb-8a7849741fb7@linux.vnet.ibm.com \
    --to=brking@linux.vnet.ibm.com \
    --cc=anton@samba.org \
    --cc=benh@kernel.crashing.org \
    --cc=dick.kennedy@broadcom.com \
    --cc=ebiederm@xmission.com \
    --cc=james.smart@broadcom.com \
    --cc=jejb@linux.vnet.ibm.com \
    --cc=jk@ozlabs.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.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 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.