[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v6 0/8] push mmio dispatch out of big lock
From: |
Jan Kiszka |
Subject: |
Re: [Qemu-devel] [PATCH v6 0/8] push mmio dispatch out of big lock |
Date: |
Fri, 09 Nov 2012 09:15:36 +0100 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666 |
On 2012-11-09 07:23, liu ping fan wrote:
> Ping? Any further comments?
>
Don't expect too much feedback these days. Folks are busy listening to
KVM forum talks, doing networking, enjoying Barcelona and curing their
hangovers. ;)
Anyway, while hacking my talk it became clearer to me that one of the
bigger issues remaining is with the ref/unref callbacks. I don't think
we want that much boilerplate code in the device models that this
approach implies.
The idea I had so far on this is to go back to registering a QOM object
reference with the access callbacks and reference it in the generic code
directly instead of letting the device models do this. We could introduce
struct MemoryRegionOps {
uint64_t (*read)(void *opaque,
hwaddr addr,
unsigned size);
uint64_t (*read_unlocked)(QObject *object,
hwaddr addr,
unsigned size);
void (*write)(void *opaque,
hwaddr addr,
uint64_t data,
unsigned size);
void (*write_unlocked)(QObject *object,
hwaddr addr,
uint64_t data,
unsigned size);
So, device models supporting the lock-less mode would implement the
*_unlocked callbacks, all the rest stay with the simple read/write
versions, leaving the new ones NULL. It's an early idea, not fully
thought through yet.
Jan
signature.asc
Description: OpenPGP digital signature
- [Qemu-devel] [PATCH v6 3/8] hotplug: introduce qdev_unplug_complete() to remove device from views, (continued)
- [Qemu-devel] [PATCH v6 3/8] hotplug: introduce qdev_unplug_complete() to remove device from views, Liu Ping Fan, 2012/11/05
- [Qemu-devel] [PATCH v6 4/8] pci: remove pci device from mem view when unplug, Liu Ping Fan, 2012/11/05
- [Qemu-devel] [PATCH v6 5/8] memory: introduce local lock for address space, Liu Ping Fan, 2012/11/05
- [Qemu-devel] [PATCH v6 6/8] memory: make mmio dispatch able to be out of biglock, Liu Ping Fan, 2012/11/05
- [Qemu-devel] [PATCH v6 8/8] vcpu: push mmio dispatcher out of big lock, Liu Ping Fan, 2012/11/05
- [Qemu-devel] [PATCH v6 7/8] memory: introduce tls context to trace nested mmio request issue, Liu Ping Fan, 2012/11/05
- Re: [Qemu-devel] [PATCH v6 0/8] push mmio dispatch out of big lock, Jan Kiszka, 2012/11/05