Xen-Devel Archive on lore.kernel.org
 help / color / 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
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
    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
    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

       reply index

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <ce5bd41b-90ed-fcf3-9e2d-a536ff1fcf90@eikelenboom.it>
     [not found] ` <59ac3962-a947-337b-b758-7ecfb69561ca@suse.com>
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 publically 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:

* 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 \


* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Xen-Devel Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/xen-devel/0 xen-devel/git/0.git
	git clone --mirror https://lore.kernel.org/xen-devel/1 xen-devel/git/1.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 xen-devel xen-devel/ https://lore.kernel.org/xen-devel \
		xen-devel@lists.xenproject.org xen-devel@lists.xen.org
	public-inbox-index xen-devel

Example config snippet for mirrors

Newsgroup available over NNTP:

AGPL code for this site: git clone https://public-inbox.org/public-inbox.git