From: Dietmar Hahn <dietmar.hahn@ts.fujitsu.com>
To: xen-devel@lists.xen.org
Cc: Juergen Gross <jgross@suse.com>
Subject: Re: Wrong cpupool handling
Date: Wed, 12 Nov 2014 11:37:57 +0100 [thread overview]
Message-ID: <1470153.1jGKfzL4FX@amur> (raw)
In-Reply-To: <5463358A.7000108@suse.com>
Am Mittwoch 12 November 2014, 11:25:14 schrieb Juergen Gross:
> On 11/12/2014 10:53 AM, Dietmar Hahn wrote:
> > Am Dienstag 11 November 2014, 15:21:01 schrieb Juergen Gross:
> >> Hi again,
> >>
> >> On 11/11/2014 01:18 PM, Dietmar Hahn wrote:
> >>> Hi list,
> >>>
> >>> When creating a cpupool, starting and destroying a guest within this pool,
> >>> then removing this pool doesn't work because of EBUSY.
> >>>
> >>> It seems the cause of this behavior is the commit
> >>> bac6334b51d9bcfe57ecf4a4cb5288348fcf044a.
> >>>
> >>> In domain_kill() the function sched_move_domain() gets called changing the
> >>> d->cpupool pointer to the new cpupool without incrementing/decrementing the
> >>> counters "n_dom" of the new/old cpupool.
> >>>
> >>> This leads to decrementing the wrong cpupool0->n_dom counter when
> >>> cpupool_rm_domain() gets called at the end and my own cpupool can't be
> >>> destroyed because n_dom = 1!
> >>>
> >>> I don't have a fast patch because I'am not enough familiar with the code
> >>> this time but I think it should be fixed for 4.5.
> >>
> >> Please discard previous patch, try this one.
> >
> > Yes this patch works.
>
> Thanks. Can I add your "tested-by:"?
Sorry forgot it!
Tested-by: Dietmar Hahn <dietmar.hahn@ts.fujitsu.com>
>
> > But I think in general a better solution would be to have the changing of the
> > cpupool pointer in sched_move_domain() together with the increment/decrement
> > of the counters but I see the locking problem.
>
> The scheduler should never change cpupool owned data. The cpupool
> pointer is domain data, so changing this is okay.
>
>
> Juergen
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel
>
--
Company details: http://ts.fujitsu.com/imprint.html
prev parent reply other threads:[~2014-11-12 10:37 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-11 12:18 Wrong cpupool handling Dietmar Hahn
2014-11-11 14:17 ` Juergen Gross
2014-11-11 14:21 ` Juergen Gross
2014-11-12 9:53 ` Dietmar Hahn
2014-11-12 10:25 ` Juergen Gross
2014-11-12 10:37 ` Dietmar Hahn [this message]
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=1470153.1jGKfzL4FX@amur \
--to=dietmar.hahn@ts.fujitsu.com \
--cc=jgross@suse.com \
--cc=xen-devel@lists.xen.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.