From: Olaf Hering <olaf@aepfle.de>
To: Keir Fraser <keir.xen@gmail.com>
Cc: xen-devel@lists.xensource.com
Subject: Re: Need help with fixing the Xen waitqueue feature
Date: Tue, 8 Nov 2011 23:20:11 +0100 [thread overview]
Message-ID: <20111108222011.GA23969@aepfle.de> (raw)
In-Reply-To: <CADF5835.245E1%keir.xen@gmail.com>
On Tue, Nov 08, Keir Fraser wrote:
> On 08/11/2011 21:20, "Olaf Hering" <olaf@aepfle.de> wrote:
>
> > Another thing is that sometimes the host suddenly reboots without any
> > message. I think the reason for this is that a vcpu whose stack was put
> > aside and that was later resumed may find itself on another physical
> > cpu. And if that happens, wouldnt that invalidate some of the local
> > variables back in the callchain? If some of them point to the old
> > physical cpu, how could this be fixed? Perhaps a few "volatiles" are
> > needed in some places.
>
> From how many call sites can we end up on a wait queue? I know we were going
> to end up with a small and explicit number (e.g., in __hvm_copy()) but does
> this patch make it a more generally-used mechanism? There will unavoidably
> be many constraints on callers who want to be able to yield the cpu. We can
> add Linux-style get_cpu/put_cpu abstractions to catch some of them. Actually
> I don't think it's *that* common that hypercall contexts cache things like
> per-cpu pointers. But every caller will need auditing, I expect.
I havent started to audit the callers. In my testing
mem_event_put_request() is called from p2m_mem_paging_drop_page() and
p2m_mem_paging_populate(). The latter is called from more places.
My plan is to put the sleep into ept_get_entry(), but I'm not there yet.
First I want to test waitqueues in a rather simple code path like
mem_event_put_request().
> A sudden reboot is very extreme. No message even on a serial line? That most
> commonly indicates bad page tables. Most other bugs you'd at least get a
> double fault message.
There is no output on serial, I boot with this cmdline:
vga=mode-normal console=com1 com1=57600 loglvl=all guest_loglvl=all
sync_console conring_size=123456 maxcpus=8 dom0_vcpus_pin
dom0_max_vcpus=2
My base changeset is 24003, the testhost is a Xeon X5670 @ 2.93GHz.
Olaf
next prev parent reply other threads:[~2011-11-08 22:20 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-08 21:20 Need help with fixing the Xen waitqueue feature Olaf Hering
2011-11-08 22:05 ` Keir Fraser
2011-11-08 22:20 ` Olaf Hering [this message]
2011-11-08 22:54 ` Keir Fraser
2011-11-11 22:56 ` Olaf Hering
2011-11-12 7:00 ` Keir Fraser
2011-11-22 11:40 ` Olaf Hering
2011-11-22 13:04 ` Keir Fraser
2011-11-22 13:54 ` Olaf Hering
2011-11-22 14:24 ` Keir Fraser
[not found] <20111108214540.EAEBB72C4A1@homiemail-mx8.g.dreamhost.com>
2011-11-09 3:37 ` Andres Lagar-Cavilla
2011-11-09 7:02 ` Olaf Hering
[not found] <20111108224414.83985CF73A@homiemail-mx7.g.dreamhost.com>
2011-11-09 3:52 ` Andres Lagar-Cavilla
2011-11-09 7:09 ` Olaf Hering
2011-11-09 21:21 ` Andres Lagar-Cavilla
2011-11-22 14:34 ` George Dunlap
2011-11-09 21:30 ` Andres Lagar-Cavilla
2011-11-09 22:11 ` Olaf Hering
2011-11-10 4:29 ` Andres Lagar-Cavilla
2011-11-10 9:20 ` Jan Beulich
2011-11-10 9:26 ` Keir Fraser
2011-11-10 10:18 ` Olaf Hering
2011-11-10 12:05 ` Olaf Hering
[not found] <20111122150755.GA18727@aepfle.de>
2011-11-22 15:40 ` Keir Fraser
2011-11-22 15:54 ` Keir Fraser
2011-11-22 17:36 ` Olaf Hering
2011-11-22 17:42 ` Keir Fraser
2011-11-22 18:04 ` Olaf Hering
2011-11-22 21:15 ` Olaf Hering
2011-11-22 21:53 ` Keir Fraser
2011-11-23 17:00 ` Olaf Hering
2011-11-23 17:16 ` Keir Fraser
2011-11-23 18:06 ` Olaf Hering
2011-11-23 18:23 ` Keir Fraser
2011-11-23 18:18 ` Keir Fraser
2011-11-23 18:31 ` Olaf Hering
2011-11-23 19:21 ` Keir Fraser
2011-11-23 21:03 ` Keir Fraser
2011-11-23 22:30 ` Olaf Hering
2011-11-23 23:12 ` Keir Fraser
2011-11-24 10:00 ` Olaf Hering
2011-11-25 12:56 ` Olaf Hering
2011-11-25 18:26 ` Olaf Hering
2011-11-25 19:35 ` Keir Fraser
2011-11-24 9:15 ` Jan Beulich
2011-11-24 9:51 ` Keir Fraser
2011-11-24 9:58 ` Keir Fraser
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=20111108222011.GA23969@aepfle.de \
--to=olaf@aepfle.de \
--cc=keir.xen@gmail.com \
--cc=xen-devel@lists.xensource.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 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.