From: Jeremy Fitzhardinge <jeremy@goop.org>
To: Zachary Amsden <zach@vmware.com>
Cc: Chris Wright <chrisw@sous-sol.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
virtualization@lists.osdl.org,
Stefan Richter <stefanr@s5r6.in-berlin.de>,
"Robert P. J. Day" <rpjday@mindspring.com>,
Rusty Russell <rusty@rustcorp.com.au>,
Martin Schwidefsky <schwidefsky@de.ibm.com>,
Carsten Otte <cotte@de.ibm.com>,
Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [PATCH] VMI: remove CONFIG_DEBUG_PAGE_TYPE and associated bitrotted code
Date: Fri, 06 Jul 2007 14:01:45 -0700 [thread overview]
Message-ID: <468EADB9.9050802@goop.org> (raw)
In-Reply-To: <468EA74D.7010706@vmware.com>
Zachary Amsden wrote:
> I though about it, but it gets really ugly. You need wrappers for all
> the MMU ops in pvops generic code, which means either another layer of
> wrappers or a bunch of CONFIG_DEBUG_PARAVIRT
Oh, yes, more wrappers please! We could do it at the paravirt_ops
level: set up your pv_ops, then call paravirt_debug_mmuops(), which
would save away your ops and replace them with wrappers. That basic
structure would lend itself to all kinds of paravirt-level debugging tools.
It would be a bit more elegant if we had mmu_ops. Maybe we should do
that splitup before 64bit?
> only things that are easy to break because they also depend on PAE vs.
> non-PAE.
Hm, would they? Would they need to inspect the content of the pte_t
(etc), or just look at the struct page for the page being updated? (pmd
operations being a bit more awkward, of course.)
> It's doable, though, and might even be extensible to s390 for CMM page
> type debugging, as well as descriptor type tracking and enforcement of
> page isolation of GDTs.
>
> Page state tracking could track -
>
> PAGE_ZERO, PAGE_UNUSED, PAGE_STABLE, PAGE_VOLATILE,
> PAGE_POTENTIALLY_VOLATILE, PAGE_L1{2/3/4}, PAGE_LDT, PAGE_GDT,
>
> actually, no this seems silly, since we'd just be duplicating bits for
> the page types, so the only debug benefit is ensuring the intersection
> of volatile and L{1/2/3/4} is nil, which is already trivially
> verifiable by inspection.
Well, I have to say that keeping the hypervisor hints in sync with the
actual kernel-level page state worries me, so any debug tools which
could help there would be good. This seems like it should be the right
place to do it, but I can't say I've thought about it in any detail.
Of course, if it *is* helpful to the page hinting patches, then it
suggests that it's a facility with wider scope than pv-ops.
J
next prev parent reply other threads:[~2007-07-06 21:01 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-07-06 12:48 [PATCH] I386: Deactivate the test for the dead CONFIG_DEBUG_PAGE_TYPE variable Robert P. J. Day
2007-07-06 18:25 ` Stefan Richter
2007-07-06 19:54 ` Zachary Amsden
2007-07-06 20:16 ` [PATCH] VMI: remove CONFIG_DEBUG_PAGE_TYPE and associated bitrotted code Chris Wright
2007-07-06 20:13 ` Zachary Amsden
2007-07-06 20:28 ` Jeremy Fitzhardinge
2007-07-06 20:34 ` Zachary Amsden
2007-07-06 21:01 ` Jeremy Fitzhardinge [this message]
2007-07-06 21:17 ` Zachary Amsden
2007-07-06 20:40 ` Chris Wright
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=468EADB9.9050802@goop.org \
--to=jeremy@goop.org \
--cc=akpm@linux-foundation.org \
--cc=chrisw@sous-sol.org \
--cc=cotte@de.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=rpjday@mindspring.com \
--cc=rusty@rustcorp.com.au \
--cc=schwidefsky@de.ibm.com \
--cc=stefanr@s5r6.in-berlin.de \
--cc=virtualization@lists.osdl.org \
--cc=zach@vmware.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.