public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Pekka Enberg <penberg@kernel.org>
To: Asias He <asias.hejun@gmail.com>
Cc: David Evensky <evensky@sandia.gov>,
	Sasha Levin <levinsasha928@gmail.com>,
	kvm@vger.kernel.org
Subject: Re: [PATCH] kvm tools: adds a PCI device that exports a host shared segment as a PCI BAR in the guest
Date: Thu, 25 Aug 2011 10:24:17 +0300	[thread overview]
Message-ID: <4E55F8A1.5040801@kernel.org> (raw)
In-Reply-To: <CAFO3S403wV5aR7P8MGOpUUxxJ+kWaDx67NBNTgPcNeL2r2ACxQ@mail.gmail.com>

On 8/25/11 10:20 AM, Asias He wrote:
> On Thu, Aug 25, 2011 at 3:02 PM, Pekka Enberg<penberg@kernel.org>  wrote:
>> On 8/25/11 9:30 AM, Asias He wrote:
>>> On Thu, Aug 25, 2011 at 1:54 PM, Pekka Enberg<penberg@kernel.org>    wrote:
>>>> On 8/25/11 8:34 AM, Asias He wrote:
>>>>
>>>> Hi, David
>>>>
>>>> On Thu, Aug 25, 2011 at 6:25 AM, David Evensky<evensky@sandia.gov>
>>>>   wrote:
>>>>> This patch adds a PCI device that provides PCI device memory to the
>>>>> guest. This memory in the guest exists as a shared memory segment in
>>>>> the host. This is similar memory sharing capability of Nahanni
>>>>> (ivshmem) available in QEMU. In this case, the shared memory segment
>>>>> is exposed as a PCI BAR only.
>>>>>
>>>>> A new command line argument is added as:
>>>>>     --shmem pci:0xc8000000:16MB:handle=/newmem:create
>>>>>
>>>>> which will set the PCI BAR at 0xc8000000, the shared memory segment
>>>>> and the region pointed to by the BAR will be 16MB. On the host side
>>>>> the shm_open handle will be '/newmem', and the kvm tool will create
>>>>> the shared segment, set its size, and initialize it. If the size,
>>>>> handle, or create flag are absent, they will default to 16MB,
>>>>> handle=/kvm_shmem, and create will be false.
>>>> I think it's better to use a default BAR address if user does not specify
>>>> one as well.
>>>> This way,
>>>>
>>>> ./kvm --shmem
>>>>
>>>> will work with default values with zero configuration.
>>>>
>>>> Does that sort of thing make sense here? It's a special purpose device
>>>> and the guest is expected to ioremap() the memory so it needs to
>>>> know the BAR.
>>> I mean a default bar address for --shmem device.  Yes, guest needs to know
>>> this address, but even if we specify the address at command line the guest
>>> still
>>> does not know this address, no? So having a default bar address does no
>>> harm.
>> How does the user discover what the default BAR is? Which default BAR
>> should we use? I don't think default BAR adds much value here.
> 1. Print it on startup like, like we do for --name.
>    # kvm run -k ./bzImage -m 448 -c 4 --name guest-26676 --shmem bar=0xc8000000
>
> or
>
> 2. kvm stat --shmem
>
> David has chosen a default BAR already.
> #define SHMEM_DEFAULT_ADDR (0xc8000000)

OK. Makes sense.

                         Pekka

  reply	other threads:[~2011-08-25  7:24 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-24 22:25 [PATCH] kvm tools: adds a PCI device that exports a host shared segment as a PCI BAR in the guest David Evensky
2011-08-25  3:27 ` Alexander Graf
2011-08-25  4:49   ` David Evensky
2011-08-25  4:52     ` Alexander Graf
2011-08-25  5:11       ` Pekka Enberg
     [not found]         ` <A16CB574-D2F7-440B-BD26-12EB4DEAD917@suse.de>
2011-08-25  5:37           ` Pekka Enberg
2011-08-25  5:38             ` Alexander Graf
2011-08-25  5:06     ` Pekka Enberg
2011-08-25  5:49       ` David Evensky
2011-08-25 10:31       ` Stefan Hajnoczi
2011-08-25 10:37         ` Pekka Enberg
2011-08-25 10:59           ` Stefan Hajnoczi
2011-08-25 11:15             ` Pekka Enberg
2011-08-25 11:30               ` Avi Kivity
2011-08-25 11:38                 ` Pekka Enberg
2011-08-25 11:51                   ` Avi Kivity
2011-08-25 12:01                     ` Pekka Enberg
2011-08-25 11:51                 ` Sasha Levin
2011-08-25 11:25             ` Sasha Levin
2011-08-25 15:08               ` David Evensky
2011-08-25 22:08                 ` Eric Northup
2011-08-25 22:27                   ` David Evensky
2011-08-26  6:33                 ` Sasha Levin
2011-08-26 15:05                   ` David Evensky
     [not found]               ` <30669_1314285268_p7PFESZN013126_20110825150806.GF24996@dancer.ca.sandia.gov>
2011-08-25 21:00                 ` David Evensky
2011-08-25 21:11                   ` Avi Kivity
2011-08-25 22:03                     ` David Evensky
2011-08-28  7:34                       ` Avi Kivity
2011-08-29  4:55                         ` David Evensky
2011-08-25  5:41 ` Avi Kivity
2011-08-25  6:01   ` David Evensky
2011-08-25  6:02 ` Pekka Enberg
2011-08-25  6:11   ` David Evensky
     [not found] ` <CAFO3S41WOutTEmMGAeor6w=OZ_cax_AHB7Wo24jfUioynv3DFg@mail.gmail.com>
     [not found]   ` <4E55E378.4060904@kernel.org>
2011-08-25  6:30     ` Asias He
2011-08-25  7:02       ` Pekka Enberg
2011-08-25  7:20         ` Asias He
2011-08-25  7:24           ` Pekka Enberg [this message]
2011-08-25 21:35 ` Anthony Liguori
2011-08-25 21:50   ` David Evensky
2011-08-26  6:11   ` Sasha Levin

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=4E55F8A1.5040801@kernel.org \
    --to=penberg@kernel.org \
    --cc=asias.hejun@gmail.com \
    --cc=evensky@sandia.gov \
    --cc=kvm@vger.kernel.org \
    --cc=levinsasha928@gmail.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