[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 4/5] qom: delay DeviceState's reclaim to main-lo
From: |
liu ping fan |
Subject: |
Re: [Qemu-devel] [PATCH 4/5] qom: delay DeviceState's reclaim to main-loop |
Date: |
Wed, 25 Jul 2012 16:16:14 +0800 |
On Wed, Jul 25, 2012 at 3:37 PM, Paolo Bonzini <address@hidden> wrote:
> Il 25/07/2012 09:03, Stefan Hajnoczi ha scritto:
>> From: Liu Ping Fan <address@hidden>
>>
>> iohandler/bh/timer may use DeviceState when its refcnt=0,
>
> It's not clear how to me. The only reference to devices from an
> iohandler/bh/timer can be in the opaque. Now, if you have a
> iohandler/bh/timer whose opaque is a DeviceState, you should bump the
> refcount before setting it up, and unref after tearing it down.
>
Yes, I admit refcnt is a good solution, but I think it means that we
will fix it with each device's bh. And this way seems lazy.
Thanx pingfan
> See for example how hw/scsi-disk.c bumps the refcount of a request
> before starting asynchronous I/O and calls unref at the end of the
> asynchronous I/O callback.
>
> Paolo
- [Qemu-devel] [PATCH 0/5] prepare unplug out of protection of global lock, Liu Ping Fan, 2012/07/24
- [Qemu-devel] [PATCH 1/5] qom: adopt rwlock to protect accessing dev from removing it, Liu Ping Fan, 2012/07/24
- [Qemu-devel] [PATCH 2/5] exec.c: use refcnt to protect device during dispatching, Liu Ping Fan, 2012/07/24
- [Qemu-devel] [PATCH 3/5] hotplug: introduce qdev_unplug_ack() to remove device from views, Liu Ping Fan, 2012/07/24
- [Qemu-devel] [PATCH 4/5] qom: delay DeviceState's reclaim to main-loop, Liu Ping Fan, 2012/07/24
- Re: [Qemu-devel] [PATCH 4/5] qom: delay DeviceState's reclaim to main-loop, liu ping fan, 2012/07/25
[Qemu-devel] [PATCH 5/5] e1000: using new interface--unmap to unplug, Liu Ping Fan, 2012/07/24