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: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <Pine.LNX.4.64.0707060847470.23786@localhost.localdomain>
2007-07-06 18:25 ` [PATCH] I386: Deactivate the test for the dead CONFIG_DEBUG_PAGE_TYPE variable 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).