public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
To: roucaries bastien
	<roucaries.bastien-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: Re: KVM 12 and BUG with preempt kernel
Date: Wed, 24 Jan 2007 15:24:41 +0200	[thread overview]
Message-ID: <45B75E19.7070803@qumranet.com> (raw)
In-Reply-To: <195c7a900701240247h3f478462w6f0d0c565550c480-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

roucaries bastien wrote:
>
> It seems yes (10 boots). 

Good.  I'll commit the patch.

> Nethertheless I think it is time to report
> another bug (present without this patch therefore unrelated).
> Unfortunatly I have no trace because it crash my machine and I do not
> manage to find it.
>
> If I booot my debian guest with framebuffer activated after 20s to 15
> minutes I see on my host screen a cloud of colorfull pixel. These
> pixel flash and seems related to guest frame buffer (same colors
> scheme but because it not the same resolution I can't read it). About
> 3s latter my box crash and is dead (cap lock does not even toggles the
> keyboard led). Therefore it seems that the guest achieve to write the
> host memory :-(, the good point is that he does not poke to my hard
> drive registers.
>
> This behavior is 100% reproductible. If I run the host and I switch to
> the text console I can't even get a trace because the screen is
> corrupted.


You can start the guest in vnc mode (-vnc 1), so the host can remain in 
text mode, or use netconsole.


Alternatively, please post exact instructions for reproducing.



>> Index: paging_tmpl.h
>> ===================================================================
>> --- paging_tmpl.h       (revision 4320)
>> +++ paging_tmpl.h       (working copy)
>> @@ -443,31 +443,17 @@
>> static gpa_t FNAME(gva_to_gpa)(struct kvm_vcpu *vcpu, gva_t vaddr)
>> {
>        struct guest_walker walker;
> -       pt_element_t guest_pte;
> -       gpa_t gpa;
> +       gpa_t gpa = UNMAPPED_GVA;
> +       int r;
>
> -       FNAME(walk_addr)(&walker, vcpu, vaddr, 0, 0, 0);
> -       guest_pte = *walker.ptep;
> -       FNAME(release_walker)(&walker);
> +       r = FNAME(walk_addr)(&walker, vcpu, vaddr, 0, 0, 0);
>
> -       if (!is_present_pte(guest_pte))
> -               return UNMAPPED_GVA;
> -
> -       if (walker.level == PT_DIRECTORY_LEVEL) {
> -               ASSERT((guest_pte & PT_PAGE_SIZE_MASK));
> -               ASSERT(PTTYPE == 64 || is_pse(vcpu));
> -
> -               gpa = (guest_pte & PT_DIR_BASE_ADDR_MASK) | (vaddr &
> -                       (PT_LEVEL_MASK(PT_PAGE_TABLE_LEVEL) | 
> ~PAGE_MASK));
> -
> -               if (PTTYPE == 32 && is_cpuid_PSE36())
> -                       gpa |= (guest_pte & PT32_DIR_PSE36_MASK) <<
> -                                       (32 - PT32_DIR_PSE36_SHIFT);
> -       } else {
> -               gpa = (guest_pte & PT_BASE_ADDR_MASK);
> -               gpa |= (vaddr & ~PAGE_MASK);
> +       if (r) {
> +               gpa = (gpa_t)walker.gfn << PAGE_SHIFT;
> +               gpa |= vaddr & ~PAGE_MASK;
>        }
>
> +       FNAME(release_walker)(&walker);
>        return gpa;
> }


-- 
error compiling committee.c: too many arguments to function


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV

  parent reply	other threads:[~2007-01-24 13:24 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <195c7a900701231506x15370e6epfc2220bc7f809e07@mail.gmail.com>
     [not found] ` <45B72AC3.5050201@qumranet.com>
     [not found]   ` <45B72AC3.5050201-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-01-24 10:47     ` KVM 12 and BUG with preempt kernel roucaries bastien
     [not found]       ` <195c7a900701240247h3f478462w6f0d0c565550c480-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-01-24 13:24         ` Avi Kivity [this message]
     [not found]           ` <45B75E19.7070803-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-01-24 16:10             ` roucaries bastien
     [not found]               ` <195c7a900701240810n2c85c125ubad5ec6baa643fd8-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-01-24 16:53                 ` Avi Kivity
     [not found]                   ` <195c7a900701240949h781c00aembfdbbf2644250769@mail.gmail.com>
     [not found]                     ` <195c7a900701241057v6fd06dd1y7a37d3ab97a5f8cf@mail.gmail.com>
     [not found]                       ` <45B8861B.5050809@qumranet.com>
     [not found]                         ` <45B8861B.5050809-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-01-26  0:09                           ` roucaries bastien
     [not found]                             ` <195c7a900701251609t3558f40cp9e89d63dd1c2eb94-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-01-26  0:14                               ` roucaries bastien

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=45B75E19.7070803@qumranet.com \
    --to=avi-atkuwr5tajbwk0htik3j/w@public.gmane.org \
    --cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=roucaries.bastien-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox