Re: [Qemu-devel] [PATCH 1/6] libqblock APIs

2012-09-10 Thread Wenchao Xia
Il 04/09/2012 05:15, Wenchao Xia ha scritto: Can you use GError instead? read through the GError doc, GError is defined as following: struct GError { GQuark domain; gint code; gchar *message; }; I am worried about the message member, I guess program would

Re: [Qemu-devel] [PATCH 1/6] libqblock APIs

2012-09-04 Thread Wenchao Xia
Thank u for the careful reviewing of my codes, I will write down the typo errors you mentioned on a note. On 09/03/2012 03:18 AM, Wenchao Xia wrote: This patch contains the major APIs in the library. Important APIs: 1 QBroker. These structure was used to retrieve errors, every thread

Re: [Qemu-devel] [PATCH 1/6] libqblock APIs

2012-09-04 Thread Paolo Bonzini
Il 04/09/2012 05:15, Wenchao Xia ha scritto: Can you use GError instead? read through the GError doc, GError is defined as following: struct GError { GQuark domain; gint code; gchar *message; }; I am worried about the message member, I guess program would be

Re: [Qemu-devel] [PATCH 1/6] libqblock APIs

2012-09-04 Thread Wenchao Xia
于 2012-9-3 22:05, Paolo Bonzini 写道: Il 03/09/2012 15:56, Eric Blake ha scritto: Exactly how does the *pnum argument work? This interface looks like it isn't fully thought out yet. Either I want to know if a chunk of sectors is allocated (I supply start and length of sectors to check),

Re: [Qemu-devel] [PATCH 1/6] libqblock APIs

2012-09-04 Thread Paolo Bonzini
Il 04/09/2012 09:05, Wenchao Xia ha scritto: That said, QEMU's internal bdrv_is_allocated function does have one not entirely appealing property: the block at start + *pnum might have the same state as the block at start + *pnum - 1, even if *pnum length. We may want to work around this in

Re: [Qemu-devel] [PATCH 1/6] libqblock APIs

2012-09-04 Thread Wenchao Xia
于 2012-9-4 14:50, Paolo Bonzini 写道: Il 04/09/2012 05:15, Wenchao Xia ha scritto: Can you use GError instead? read through the GError doc, GError is defined as following: struct GError { GQuark domain; gint code; gchar *message; }; I am worried about the

Re: [Qemu-devel] [PATCH 1/6] libqblock APIs

2012-09-04 Thread Eric Blake
On 09/04/2012 12:42 AM, Wenchao Xia wrote: +/** + * libqblock_init: Initialize the library + */ +void libqblock_init(void); Is this function safe to call more than once? Even tighter, is it safe to call this function simultaneously from multiple threads? No, it should be only called

Re: [Qemu-devel] [PATCH 1/6] libqblock APIs

2012-09-04 Thread Paolo Bonzini
Il 04/09/2012 13:35, Eric Blake ha scritto: No, it should be only called once, any other thread should not call it again, will document it. About the multiple thread user case, qemu block layer can't support that now, will fix that later. What a shame. That makes libraries much harder to

Re: [Qemu-devel] [PATCH 1/6] libqblock APIs

2012-09-03 Thread Paolo Bonzini
Il 03/09/2012 11:18, Wenchao Xia ha scritto: 1 QBroker. These structure was used to retrieve errors, every thread must create one first, Later maybe thread related staff could be added into it. Can you use GError instead? 3 QBlockInfoImageStatic. Now it is not folded with location and

Re: [Qemu-devel] [PATCH 1/6] libqblock APIs

2012-09-03 Thread Eric Blake
On 09/03/2012 03:18 AM, Wenchao Xia wrote: This patch contains the major APIs in the library. Important APIs: 1 QBroker. These structure was used to retrieve errors, every thread must create one first, Later maybe thread related staff could be added into it. 2 QBlockState. It stands for

Re: [Qemu-devel] [PATCH 1/6] libqblock APIs

2012-09-03 Thread Paolo Bonzini
Il 03/09/2012 15:56, Eric Blake ha scritto: Exactly how does the *pnum argument work? This interface looks like it isn't fully thought out yet. Either I want to know if a chunk of sectors is allocated (I supply start and length of sectors to check), regardless of how many sectors beyond that

Re: [Qemu-devel] [PATCH 1/6] libqblock APIs

2012-09-03 Thread Blue Swirl
On Mon, Sep 3, 2012 at 9:18 AM, Wenchao Xia xiaw...@linux.vnet.ibm.com wrote: This patch contains the major APIs in the library. Important APIs: 1 QBroker. These structure was used to retrieve errors, every thread must create one first, Later maybe thread related staff could be added into

Re: [Qemu-devel] [PATCH 1/6] libqblock APIs

2012-09-03 Thread Wenchao Xia
于 2012-9-3 21:18, Paolo Bonzini 写道: Il 03/09/2012 11:18, Wenchao Xia ha scritto: 1 QBroker. These structure was used to retrieve errors, every thread must create one first, Later maybe thread related staff could be added into it. Can you use GError instead? read through the GError doc,