From: Heiko Carstens <heiko.carstens@de.ibm.com>
To: Cornelia Huck <cornelia.huck@de.ibm.com>
Cc: Avi Kivity <avi@redhat.com>, KVM <kvm@vger.kernel.org>,
linux-s390 <linux-s390@vger.kernel.org>,
qemu-devel <qemu-devel@nongnu.org>,
Marcelo Tosatti <mtosatti@redhat.com>,
Anthony Liguori <aliguori@us.ibm.com>,
Rusty Russell <rusty@rustcorp.com.au>,
Christian Borntraeger <borntraeger@de.ibm.com>,
Carsten Otte <cotte@de.ibm.com>, Alexander Graf <agraf@suse.de>,
Martin Schwidefsky <schwidefsky@de.ibm.com>,
Sebastian Ott <sebott@linux.vnet.ibm.com>
Subject: Re: [PATCH 1/4] s390/kvm: Handle hosts not supporting s390-virtio.
Date: Fri, 10 Aug 2012 10:42:48 +0200 [thread overview]
Message-ID: <20120810084248.GA3283@osiris.de.ibm.com> (raw)
In-Reply-To: <20120809124157.582fd609@BR9GNB5Z>
On Thu, Aug 09, 2012 at 12:41:57PM +0200, Cornelia Huck wrote:
> On Thu, 09 Aug 2012 13:03:57 +0300
> Avi Kivity <avi@redhat.com> wrote:
>
> > On 08/07/2012 05:52 PM, Cornelia Huck wrote:
> > > Running under a kvm host does not necessarily imply the presence of
> > > a page mapped above the main memory with the virtio information;
> > > however, the code includes a hard coded access to that page.
> > >
> > > Instead, check for the presence of the page and exit gracefully
> > > before we hit an addressing exception if it does not exist.
> > >
> > > /*
> > > * Init function for virtio
> > > * devices are in a single page above top of "normal" mem
> > > @@ -443,6 +458,12 @@ static int __init kvm_devices_init(void)
> > > }
> > >
> > > kvm_devices = (void *) real_memory_size;
> > > + if (test_devices_support() < 0) {
> > > + vmem_remove_mapping(real_memory_size, PAGE_SIZE);
> > > + root_device_unregister(kvm_root);
> > > + /* No error. */
> > > + return 0;
> > > + }
> > >
> >
> > Cleaner to defer root_device_register() until after the mapping has been
> > verified.
>
> OK, will reorder.
Please use the "lura" instruction to figure out if the guest real page
even exists _before_ creating the mapping.
That way you don't need all the code afterwards.
WARNING: multiple messages have this Message-ID (diff)
From: Heiko Carstens <heiko.carstens@de.ibm.com>
To: Cornelia Huck <cornelia.huck@de.ibm.com>
Cc: linux-s390 <linux-s390@vger.kernel.org>,
Anthony Liguori <aliguori@us.ibm.com>,
Rusty Russell <rusty@rustcorp.com.au>, KVM <kvm@vger.kernel.org>,
Carsten Otte <cotte@de.ibm.com>,
Marcelo Tosatti <mtosatti@redhat.com>,
Sebastian Ott <sebott@linux.vnet.ibm.com>,
qemu-devel <qemu-devel@nongnu.org>,
Alexander Graf <agraf@suse.de>,
Christian Borntraeger <borntraeger@de.ibm.com>,
Avi Kivity <avi@redhat.com>,
Martin Schwidefsky <schwidefsky@de.ibm.com>
Subject: Re: [Qemu-devel] [PATCH 1/4] s390/kvm: Handle hosts not supporting s390-virtio.
Date: Fri, 10 Aug 2012 10:42:48 +0200 [thread overview]
Message-ID: <20120810084248.GA3283@osiris.de.ibm.com> (raw)
In-Reply-To: <20120809124157.582fd609@BR9GNB5Z>
On Thu, Aug 09, 2012 at 12:41:57PM +0200, Cornelia Huck wrote:
> On Thu, 09 Aug 2012 13:03:57 +0300
> Avi Kivity <avi@redhat.com> wrote:
>
> > On 08/07/2012 05:52 PM, Cornelia Huck wrote:
> > > Running under a kvm host does not necessarily imply the presence of
> > > a page mapped above the main memory with the virtio information;
> > > however, the code includes a hard coded access to that page.
> > >
> > > Instead, check for the presence of the page and exit gracefully
> > > before we hit an addressing exception if it does not exist.
> > >
> > > /*
> > > * Init function for virtio
> > > * devices are in a single page above top of "normal" mem
> > > @@ -443,6 +458,12 @@ static int __init kvm_devices_init(void)
> > > }
> > >
> > > kvm_devices = (void *) real_memory_size;
> > > + if (test_devices_support() < 0) {
> > > + vmem_remove_mapping(real_memory_size, PAGE_SIZE);
> > > + root_device_unregister(kvm_root);
> > > + /* No error. */
> > > + return 0;
> > > + }
> > >
> >
> > Cleaner to defer root_device_register() until after the mapping has been
> > verified.
>
> OK, will reorder.
Please use the "lura" instruction to figure out if the guest real page
even exists _before_ creating the mapping.
That way you don't need all the code afterwards.
next prev parent reply other threads:[~2012-08-10 8:42 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-07 14:52 [RFC PATCH 0/4] s390: virtio-ccw guest kernel support Cornelia Huck
2012-08-07 14:52 ` [Qemu-devel] " Cornelia Huck
2012-08-07 14:52 ` [PATCH 1/4] s390/kvm: Handle hosts not supporting s390-virtio Cornelia Huck
2012-08-07 14:52 ` [Qemu-devel] " Cornelia Huck
2012-08-09 10:03 ` Avi Kivity
2012-08-09 10:03 ` [Qemu-devel] " Avi Kivity
2012-08-09 10:41 ` Cornelia Huck
2012-08-09 10:41 ` [Qemu-devel] " Cornelia Huck
2012-08-10 8:42 ` Heiko Carstens [this message]
2012-08-10 8:42 ` Heiko Carstens
2012-08-10 11:03 ` Cornelia Huck
2012-08-10 11:03 ` [Qemu-devel] " Cornelia Huck
2012-08-09 23:09 ` Alexander Graf
2012-08-09 23:09 ` [Qemu-devel] " Alexander Graf
2012-08-10 7:45 ` Cornelia Huck
2012-08-10 7:45 ` [Qemu-devel] " Cornelia Huck
2012-08-07 14:52 ` [PATCH 2/4] s390: Add a mechanism to get the subchannel id Cornelia Huck
2012-08-07 14:52 ` [Qemu-devel] " Cornelia Huck
2012-08-13 17:16 ` Sebastian Ott
2012-08-13 17:16 ` [Qemu-devel] " Sebastian Ott
2012-08-14 8:52 ` Sebastian Ott
2012-08-14 8:52 ` [Qemu-devel] " Sebastian Ott
2012-08-14 10:38 ` Cornelia Huck
2012-08-14 10:38 ` [Qemu-devel] " Cornelia Huck
2012-08-14 10:53 ` Sebastian Ott
2012-08-14 10:53 ` [Qemu-devel] " Sebastian Ott
2012-08-07 14:52 ` [PATCH 3/4] s390/kvm: Add a channel I/O based virtio transport driver Cornelia Huck
2012-08-07 14:52 ` [Qemu-devel] " Cornelia Huck
2012-08-08 4:22 ` Rusty Russell
2012-08-08 4:22 ` [Qemu-devel] " Rusty Russell
2012-08-13 8:56 ` Cornelia Huck
2012-08-13 8:56 ` [Qemu-devel] " Cornelia Huck
2012-08-14 0:10 ` Rusty Russell
2012-08-14 0:10 ` [Qemu-devel] " Rusty Russell
2012-08-14 11:03 ` Cornelia Huck
2012-08-14 11:03 ` [Qemu-devel] " Cornelia Huck
2012-08-15 3:15 ` Rusty Russell
2012-08-15 3:15 ` [Qemu-devel] " Rusty Russell
2012-08-14 19:56 ` Anthony Liguori
2012-08-14 19:56 ` [Qemu-devel] " Anthony Liguori
2012-08-15 7:28 ` Rusty Russell
2012-08-15 7:28 ` [Qemu-devel] " Rusty Russell
2012-08-15 7:48 ` Christian Borntraeger
2012-08-15 7:48 ` [Qemu-devel] " Christian Borntraeger
2012-08-21 5:35 ` Rusty Russell
2012-08-21 5:35 ` [Qemu-devel] " Rusty Russell
2012-08-07 14:52 ` [PATCH 4/4] s390/kvm: Split out early console code Cornelia Huck
2012-08-07 14:52 ` [Qemu-devel] " Cornelia Huck
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=20120810084248.GA3283@osiris.de.ibm.com \
--to=heiko.carstens@de.ibm.com \
--cc=agraf@suse.de \
--cc=aliguori@us.ibm.com \
--cc=avi@redhat.com \
--cc=borntraeger@de.ibm.com \
--cc=cornelia.huck@de.ibm.com \
--cc=cotte@de.ibm.com \
--cc=kvm@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=mtosatti@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=rusty@rustcorp.com.au \
--cc=schwidefsky@de.ibm.com \
--cc=sebott@linux.vnet.ibm.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.