All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v1 0/2] block/replication fixes
@ 2016-10-11  5:38 Changlong Xie
  2016-10-11  5:39 ` [Qemu-devel] [PATCH v1 1/2] block/replication: prefect the logic to acquire 'top_id' Changlong Xie
  2016-10-11  5:39 ` [Qemu-devel] [PATCH v1 2/2] block/replication: Clarify 'top-id' parameter usage Changlong Xie
  0 siblings, 2 replies; 5+ messages in thread
From: Changlong Xie @ 2016-10-11  5:38 UTC (permalink / raw)
  To: qemu devel, qemu block, Stefan Hajnoczi, Fam Zheng, Max Reitz,
	Kevin Wolf

Changlong Xie (2):
  block/replication: prefect the logic to acquire 'top_id'
  block/replication: Clarify 'top-id' parameter usage

 block/replication.c  | 9 +++++++--
 qapi/block-core.json | 3 ++-
 2 files changed, 9 insertions(+), 3 deletions(-)

-- 
1.9.3

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Qemu-devel] [PATCH v1 1/2] block/replication: prefect the logic to acquire 'top_id'
  2016-10-11  5:38 [Qemu-devel] [PATCH v1 0/2] block/replication fixes Changlong Xie
@ 2016-10-11  5:39 ` Changlong Xie
  2016-10-11  5:39 ` [Qemu-devel] [PATCH v1 2/2] block/replication: Clarify 'top-id' parameter usage Changlong Xie
  1 sibling, 0 replies; 5+ messages in thread
From: Changlong Xie @ 2016-10-11  5:39 UTC (permalink / raw)
  To: qemu devel, qemu block, Stefan Hajnoczi, Fam Zheng, Max Reitz,
	Kevin Wolf

Only g_strdup(top_id) if 'top_id' is not NULL, although there
is no memory leak here

Signed-off-by: Changlong Xie <xiecl.fnst@cn.fujitsu.com>
---
 block/replication.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/block/replication.c b/block/replication.c
index 3bd1cf1..5b432d9 100644
--- a/block/replication.c
+++ b/block/replication.c
@@ -104,11 +104,11 @@ static int replication_open(BlockDriverState *bs, QDict *options,
     } else if (!strcmp(mode, "secondary")) {
         s->mode = REPLICATION_MODE_SECONDARY;
         top_id = qemu_opt_get(opts, REPLICATION_TOP_ID);
-        s->top_id = g_strdup(top_id);
-        if (!s->top_id) {
+        if (!top_id) {
             error_setg(&local_err, "Missing the option top-id");
             goto fail;
         }
+        s->top_id = g_strdup(top_id);
     } else {
         error_setg(&local_err,
                    "The option mode's value should be primary or secondary");
-- 
1.9.3

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Qemu-devel] [PATCH v1 2/2] block/replication: Clarify 'top-id' parameter usage
  2016-10-11  5:38 [Qemu-devel] [PATCH v1 0/2] block/replication fixes Changlong Xie
  2016-10-11  5:39 ` [Qemu-devel] [PATCH v1 1/2] block/replication: prefect the logic to acquire 'top_id' Changlong Xie
@ 2016-10-11  5:39 ` Changlong Xie
  2016-10-11  6:30   ` Fam Zheng
  1 sibling, 1 reply; 5+ messages in thread
From: Changlong Xie @ 2016-10-11  5:39 UTC (permalink / raw)
  To: qemu devel, qemu block, Stefan Hajnoczi, Fam Zheng, Max Reitz,
	Kevin Wolf

Replication driver only support 'top-id' parameter in secondary side,
and it must not be supplied in primary side

Signed-off-by: Changlong Xie <xiecl.fnst@cn.fujitsu.com>
---
 block/replication.c  | 5 +++++
 qapi/block-core.json | 3 ++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/block/replication.c b/block/replication.c
index 5b432d9..1e8284b 100644
--- a/block/replication.c
+++ b/block/replication.c
@@ -101,6 +101,11 @@ static int replication_open(BlockDriverState *bs, QDict *options,
 
     if (!strcmp(mode, "primary")) {
         s->mode = REPLICATION_MODE_PRIMARY;
+        top_id = qemu_opt_get(opts, REPLICATION_TOP_ID);
+        if (top_id) {
+            error_setg(&local_err, "The primary side do not support option top-id");
+            goto fail;
+        }
     } else if (!strcmp(mode, "secondary")) {
         s->mode = REPLICATION_MODE_SECONDARY;
         top_id = qemu_opt_get(opts, REPLICATION_TOP_ID);
diff --git a/qapi/block-core.json b/qapi/block-core.json
index 4badb97..ec92df4 100644
--- a/qapi/block-core.json
+++ b/qapi/block-core.json
@@ -2197,7 +2197,8 @@
 # @mode: the replication mode
 #
 # @top-id: #optional In secondary mode, node name or device ID of the root
-#          node who owns the replication node chain. Ignored in primary mode.
+#          node who owns the replication node chain. Must not be given in
+#          primary mode.
 #
 # Since: 2.8
 ##
-- 
1.9.3

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] [PATCH v1 2/2] block/replication: Clarify 'top-id' parameter usage
  2016-10-11  5:39 ` [Qemu-devel] [PATCH v1 2/2] block/replication: Clarify 'top-id' parameter usage Changlong Xie
@ 2016-10-11  6:30   ` Fam Zheng
  2016-10-11 10:38     ` Changlong Xie
  0 siblings, 1 reply; 5+ messages in thread
From: Fam Zheng @ 2016-10-11  6:30 UTC (permalink / raw)
  To: Changlong Xie
  Cc: qemu devel, qemu block, Stefan Hajnoczi, Max Reitz, Kevin Wolf

On Tue, 10/11 13:39, Changlong Xie wrote:
> Replication driver only support 'top-id' parameter in secondary side,
> and it must not be supplied in primary side
> 
> Signed-off-by: Changlong Xie <xiecl.fnst@cn.fujitsu.com>
> ---
>  block/replication.c  | 5 +++++
>  qapi/block-core.json | 3 ++-
>  2 files changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/block/replication.c b/block/replication.c
> index 5b432d9..1e8284b 100644
> --- a/block/replication.c
> +++ b/block/replication.c
> @@ -101,6 +101,11 @@ static int replication_open(BlockDriverState *bs, QDict *options,
>  
>      if (!strcmp(mode, "primary")) {
>          s->mode = REPLICATION_MODE_PRIMARY;
> +        top_id = qemu_opt_get(opts, REPLICATION_TOP_ID);
> +        if (top_id) {
> +            error_setg(&local_err, "The primary side do not support option top-id");

s/do not/does not/

> +            goto fail;
> +        }
>      } else if (!strcmp(mode, "secondary")) {
>          s->mode = REPLICATION_MODE_SECONDARY;
>          top_id = qemu_opt_get(opts, REPLICATION_TOP_ID);
> diff --git a/qapi/block-core.json b/qapi/block-core.json
> index 4badb97..ec92df4 100644
> --- a/qapi/block-core.json
> +++ b/qapi/block-core.json
> @@ -2197,7 +2197,8 @@
>  # @mode: the replication mode
>  #
>  # @top-id: #optional In secondary mode, node name or device ID of the root
> -#          node who owns the replication node chain. Ignored in primary mode.
> +#          node who owns the replication node chain. Must not be given in
> +#          primary mode.
>  #
>  # Since: 2.8
>  ##
> -- 
> 1.9.3
> 
> 
> 
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] [PATCH v1 2/2] block/replication: Clarify 'top-id' parameter usage
  2016-10-11  6:30   ` Fam Zheng
@ 2016-10-11 10:38     ` Changlong Xie
  0 siblings, 0 replies; 5+ messages in thread
From: Changlong Xie @ 2016-10-11 10:38 UTC (permalink / raw)
  To: Fam Zheng; +Cc: qemu devel, qemu block, Stefan Hajnoczi, Max Reitz, Kevin Wolf

On 10/11/2016 02:30 PM, Fam Zheng wrote:
> On Tue, 10/11 13:39, Changlong Xie wrote:
>> Replication driver only support 'top-id' parameter in secondary side,
>> and it must not be supplied in primary side
>>
>> Signed-off-by: Changlong Xie <xiecl.fnst@cn.fujitsu.com>
>> ---
>>   block/replication.c  | 5 +++++
>>   qapi/block-core.json | 3 ++-
>>   2 files changed, 7 insertions(+), 1 deletion(-)
>>
>> diff --git a/block/replication.c b/block/replication.c
>> index 5b432d9..1e8284b 100644
>> --- a/block/replication.c
>> +++ b/block/replication.c
>> @@ -101,6 +101,11 @@ static int replication_open(BlockDriverState *bs, QDict *options,
>>
>>       if (!strcmp(mode, "primary")) {
>>           s->mode = REPLICATION_MODE_PRIMARY;
>> +        top_id = qemu_opt_get(opts, REPLICATION_TOP_ID);
>> +        if (top_id) {
>> +            error_setg(&local_err, "The primary side do not support option top-id");
>
> s/do not/does not/

Yes, thanks.

>
>> +            goto fail;
>> +        }
>>       } else if (!strcmp(mode, "secondary")) {
>>           s->mode = REPLICATION_MODE_SECONDARY;
>>           top_id = qemu_opt_get(opts, REPLICATION_TOP_ID);
>> diff --git a/qapi/block-core.json b/qapi/block-core.json
>> index 4badb97..ec92df4 100644
>> --- a/qapi/block-core.json
>> +++ b/qapi/block-core.json
>> @@ -2197,7 +2197,8 @@
>>   # @mode: the replication mode
>>   #
>>   # @top-id: #optional In secondary mode, node name or device ID of the root
>> -#          node who owns the replication node chain. Ignored in primary mode.
>> +#          node who owns the replication node chain. Must not be given in
>> +#          primary mode.
>>   #
>>   # Since: 2.8
>>   ##
>> --
>> 1.9.3
>>
>>
>>
>>
>
>
> .
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2016-10-11 10:31 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-11  5:38 [Qemu-devel] [PATCH v1 0/2] block/replication fixes Changlong Xie
2016-10-11  5:39 ` [Qemu-devel] [PATCH v1 1/2] block/replication: prefect the logic to acquire 'top_id' Changlong Xie
2016-10-11  5:39 ` [Qemu-devel] [PATCH v1 2/2] block/replication: Clarify 'top-id' parameter usage Changlong Xie
2016-10-11  6:30   ` Fam Zheng
2016-10-11 10:38     ` Changlong Xie

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.