xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Sander Eikelenboom <linux@eikelenboom.it>
To: Jan Beulich <jbeulich@suse.com>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Igor Druzhinin <igor.druzhinin@citrix.com>,
	Paul Durrant <paul@xen.org>
Subject: Re: [Xen-devel] xen-unstable (4.14 to be): Assertion '!preempt_count()' failed at preempt.c:36
Date: Wed, 4 Dec 2019 22:03:36 +0100	[thread overview]
Message-ID: <08b761ad-c84b-3dad-2dd1-f9b69b0fe2a7@eikelenboom.it> (raw)
In-Reply-To: <59ac3962-a947-337b-b758-7ecfb69561ca@suse.com>

On 04/12/2019 18:30, Jan Beulich wrote:
> On 04.12.2019 18:21, Sander Eikelenboom wrote:
>> On current xen-unstable (4.14 to be) and AMD cpu:
>>
>> After rebooting the host, while the guests are starting, I hit the assertion below.
>> xen-staging-4.13 seems fine on the same machine.
> 
> Nothing between 4.13 RC4 and the tip of staging stands out,
> so I wonder if you could bisect over this range? Or perhaps
> someone else sees something I don't see (right now).
> 
> Jan

Bisection came up with:

commit cd7dedad8209753e0fc8a97e61d04b74912b53dc
Author: Paul Durrant <paul.durrant@citrix.com>
Date:   Fri Nov 15 18:59:30 2019 +0000

    passthrough: simplify locking and logging
    
    Dropping the pcidevs lock between calling device_assigned() and
    assign_device() means that the latter has to do the same check as the
    former for no obvious gain. Also, since long running operations under
    pcidevs lock already drop the lock and return -ERESTART periodically there
    is little point in immediately failing an assignment operation with
    -ERESTART just because the pcidevs lock could not be acquired (for the
    second time, having already blocked on acquiring the lock in
    device_assigned()).
    
    This patch instead acquires the lock once for assignment (or test assign)
    operations directly in iommu_do_pci_domctl() and thus can remove the
    duplicate domain ownership check in assign_device(). Whilst in the
    neighbourhood, the patch also removes some debug logging from
    assign_device() and deassign_device() and replaces it with proper error
    logging, which allows error logging in iommu_do_pci_domctl() to be
    removed.
    
    Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
    Signed-off-by: Igor Druzhinin <igor.druzhinin@citrix.com>
    Acked-by: Jan Beulich <jbeulich@suse.com>



_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

  reply	other threads:[~2019-12-04 21:03 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-04 17:21 [Xen-devel] xen-unstable (4.14 to be): Assertion '!preempt_count()' failed at preempt.c:36 Sander Eikelenboom
2019-12-04 17:30 ` Jan Beulich
2019-12-04 21:03   ` Sander Eikelenboom [this message]
2019-12-05  8:35     ` Durrant, Paul
2019-12-05  8:43       ` Jan Beulich
2019-12-05  8:47         ` Durrant, Paul

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=08b761ad-c84b-3dad-2dd1-f9b69b0fe2a7@eikelenboom.it \
    --to=linux@eikelenboom.it \
    --cc=igor.druzhinin@citrix.com \
    --cc=jbeulich@suse.com \
    --cc=paul@xen.org \
    --cc=xen-devel@lists.xenproject.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).