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:02:36 +0300 [thread overview]
Message-ID: <4E55F38C.5080303@kernel.org> (raw)
In-Reply-To: <CAFO3S41LB_S69aBYf6njOgOc=7M2VKVxhqLQQeYabCp8=ZSYyg@mail.gmail.com>
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.
>>> The address family,
>>> 'pci:' is also optional as it is the only address family currently
>>> supported. Only a single --shmem is supported at this time.
>> So, let's drop the 'pci:' prefix.
>>
>> That means the user interface will change if someone adds new address
>> families. So we should keep the prefix, no?
> We can have a more flexible option format which does not depend on the order of
> args, e.g.:
>
> --shmem bar=0xc8000000,size=16MB,handle=/newmem,ops=create, type=pci
>
> if user does not specify sub-args, just use the default one.
Sure, makes sense.
Pekka
next prev parent reply other threads:[~2011-08-25 7:02 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 [this message]
2011-08-25 7:20 ` Asias He
2011-08-25 7:24 ` Pekka Enberg
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=4E55F38C.5080303@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