From: Halil Pasic <pasic@linux.ibm.com>
To: "Jason J. Herne" <jjherne@linux.ibm.com>
Cc: Cornelia Huck <cohuck@redhat.com>, Thomas Huth <thuth@redhat.com>,
Eric Farman <farman@linux.ibm.com>,
Farhan Ali <alifm@linux.ibm.com>,
qemu-devel@nongnu.org, borntraeger@de.ibm.com,
qemu-s390x@nongnu.org
Subject: Re: [Qemu-devel] [qemu-s390x] [PATCH 00/15] s390: vfio-ccw dasd ipl support
Date: Tue, 8 Jan 2019 18:36:09 +0100 [thread overview]
Message-ID: <20190108183609.235a8eb8@oc2783563651> (raw)
In-Reply-To: <f38c791b-3aad-46a8-79e7-9adb74ba4726@linux.ibm.com>
On Tue, 8 Jan 2019 11:37:56 -0500
"Jason J. Herne" <jjherne@linux.ibm.com> wrote:
> On 12/12/18 9:34 AM, Cornelia Huck wrote:
> ...
> >>
> >> NOTE: It has been a while, but I've finally chased down my infamous "reset bug".
> >> On subsystem reset (I see this right after host ipl) we sometimes end up getting
> >> an unexpected unit check status from a dasd device. This causes the first start
> >> subchannel instruction to fail due to the pending unit check status. My solution
> >> to this problem, as advised by the kernel folks, is to simply retry my ssch
> >> instructions before declaring failure when unexpected unit checks happen. In the
> >> event of a persistent error, after two retries we'll give up and print some
> >> useful error info for the user.
> >
> > So, is that a status we only see because the vfio-ccw driver keeps the
> > subchannel enabled (as by the other recent thread)?
> >
> > Is there any value in distinguishing different unit checks, or is retry
> > the best strategy in any case?
> >
> The status presents on device reset. So when the host kernel IPLs this status will be
> present. The very first attempt to use the device (SSCH, other instructions perhaps?) will
> cause this status to be presented. Sometimes the host kernel must "get there first" and
> clear the status. And other times the guest (by way of Qemu bios) gets there first.
>
> The kernel handles unexpected unit checks by simply retrying a low number of times before
> giving up. Given that bios code is a constant frequency code path, and the kernel has
> already set this precedent, I feel safe with this decision and don't see a ton of value in
> doing much more. If we find a case that requires more handling we can take a look at it.
>
I agree, doing elaborate CIO error handling here does not seem like a
particularly good idea.
Something remotely related -- let me play crazy for a moment: let's say
we pass-through two DASD's to a single guest, one as the IPL disk and
one just so. If I'm not mistaken, the guest is guaranteed to get this
special after reset unit check (let's say freshly constructed VM),
unless there is another OS messing with the same DASD maybe, at least
for the 'just son DASD'. I would even guess that the condition in
question is indicated even for the IPL-DASD (if we thing guest1).
But ccw-passthrough won't get perfect anyway. So I think we can ignore
this side effect of the reset, unless a need arises not to.
Regards,
Halil
next prev parent reply other threads:[~2019-01-08 17:36 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-12 14:11 [Qemu-devel] [PATCH 00/15] s390: vfio-ccw dasd ipl support Jason J. Herne
2018-12-12 14:11 ` [Qemu-devel] [PATCH 01/15] s390 vfio-ccw: Add bootindex property and IPLB data Jason J. Herne
2018-12-12 15:22 ` [Qemu-devel] [qemu-s390x] " Jason J. Herne
2018-12-13 16:48 ` [Qemu-devel] " Cornelia Huck
2018-12-12 14:11 ` [Qemu-devel] [PATCH 02/15] s390-bios: decouple cio setup from virtio Jason J. Herne
2018-12-13 13:14 ` Farhan Ali
2018-12-12 14:11 ` [Qemu-devel] [PATCH 03/15] s390-bios: decouple common boot logic " Jason J. Herne
2018-12-13 13:17 ` Farhan Ali
2018-12-12 14:11 ` [Qemu-devel] [PATCH 04/15] s390-bios: Extend find_dev() for non-virtio devices Jason J. Herne
2018-12-12 14:11 ` [Qemu-devel] [PATCH 05/15] s390-bios: Factor finding boot device out of virtio code path Jason J. Herne
2018-12-13 13:55 ` Farhan Ali
2018-12-12 14:11 ` [Qemu-devel] [PATCH 06/15] s390-bios: Clean up cio.h Jason J. Herne
2018-12-12 14:11 ` [Qemu-devel] [PATCH 07/15] s390-bios: Decouple channel i/o logic from virtio Jason J. Herne
2018-12-12 14:11 ` [Qemu-devel] [PATCH 08/15] s390-bios: Map low core memory Jason J. Herne
2018-12-12 14:11 ` [Qemu-devel] [PATCH 09/15] s390-bios: ptr2u32 and u32toptr Jason J. Herne
2018-12-12 14:11 ` [Qemu-devel] [PATCH 10/15] s390-bios: Support for running format-0/1 channel programs Jason J. Herne
2018-12-13 16:54 ` Farhan Ali
2018-12-13 17:21 ` Cornelia Huck
2019-01-07 19:02 ` Jason J. Herne
2019-01-08 11:07 ` Cornelia Huck
2019-01-09 18:10 ` [Qemu-devel] [qemu-s390x] " Jason J. Herne
2019-01-09 18:34 ` Cornelia Huck
2019-01-09 20:01 ` Jason J. Herne
2019-01-10 12:15 ` Cornelia Huck
2019-01-10 15:02 ` Jason J. Herne
2019-01-10 15:21 ` Cornelia Huck
2019-01-16 15:19 ` Jason J. Herne
2019-01-14 18:44 ` Jason J. Herne
2019-01-15 8:54 ` Cornelia Huck
2018-12-12 14:11 ` [Qemu-devel] [PATCH 11/15] s390-bios: cio error handling Jason J. Herne
2018-12-13 17:11 ` Farhan Ali
2018-12-13 17:26 ` Cornelia Huck
2018-12-12 14:11 ` [Qemu-devel] [PATCH 12/15] s390-bios: Refactor virtio to run channel programs via cio Jason J. Herne
2018-12-14 13:04 ` Cornelia Huck
2019-01-10 16:12 ` Jason J. Herne
2019-01-10 16:19 ` Cornelia Huck
2018-12-12 14:11 ` [Qemu-devel] [PATCH 13/15] s390-bios: Use control unit type to determine boot method Jason J. Herne
2018-12-12 14:11 ` [Qemu-devel] [PATCH 14/15] s390-bios: Add channel command codes/structs needed for dasd-ipl Jason J. Herne
2018-12-12 14:11 ` [Qemu-devel] [PATCH 15/15] s390-bios: Support booting from real dasd device Jason J. Herne
2018-12-12 14:34 ` [Qemu-devel] [PATCH 00/15] s390: vfio-ccw dasd ipl support Cornelia Huck
2018-12-12 14:47 ` Jason J. Herne
2019-01-08 16:37 ` Jason J. Herne
2019-01-08 17:36 ` Halil Pasic [this message]
2019-01-09 9:57 ` [Qemu-devel] [qemu-s390x] " Cornelia Huck
2018-12-12 20:28 ` [Qemu-devel] " no-reply
-- strict thread matches above, loose matches on Subject: below --
2019-01-29 13:29 Jason J. Herne
2019-01-29 16:40 ` [Qemu-devel] [qemu-s390x] " Jason J. Herne
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=20190108183609.235a8eb8@oc2783563651 \
--to=pasic@linux.ibm.com \
--cc=alifm@linux.ibm.com \
--cc=borntraeger@de.ibm.com \
--cc=cohuck@redhat.com \
--cc=farman@linux.ibm.com \
--cc=jjherne@linux.ibm.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-s390x@nongnu.org \
--cc=thuth@redhat.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 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).