All of lore.kernel.org
 help / color / mirror / Atom feed
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 10:53:24 +0100	[thread overview]
Message-ID: <3016118.gIEEAtXxHA@amur> (raw)
In-Reply-To: <54621B4D.7000408@suse.com>

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.
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.
Thanks.

Dietmar.

> 
> Juergen
> 

-- 
Company details: http://ts.fujitsu.com/imprint.html

  reply	other threads:[~2014-11-12  9:53 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 [this message]
2014-11-12 10:25     ` Juergen Gross
2014-11-12 10:37       ` Dietmar Hahn

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=3016118.gIEEAtXxHA@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.