WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH][XEN]xm dump command add on

Hi, Ken

Yes, This is wrong patch.
Please see another mail.
http://lists.xensource.com/archives/html/xen-devel/2006-08/msg00901.html

Best Regards,

Akio Takebe

>Akio,
>
>Thank you for your input. Though you are using an error counter, it
>seems like you are still using it as an error status flag
>if(err_cnt!=0)...
>How is this different from simply setting 0 or -1?
>
>On Wed, 2006-08-16 at 09:53 +0900, Akio Takebe wrote:
>> Hi, Ken
>> 
>> Good work!
>> But you should check coding-style. ;-)
>> 
>> How about the following patch?
>> I think cpy_sts is always -1 or 0.
>> I think checking error counter is more worth than error status.
>> I don't test the following patch. This is RFC.
>> 
>> diff -r bef360142b62 tools/libxc/xc_core.c
>> --- a/tools/libxc/xc_core.c     Mon Aug 14 14:21:21 2006 -0600
>> +++ b/tools/libxc/xc_core.c     Wed Aug 16 09:19:08 2006 +0900
>> @@ -37,6 +37,7 @@ xc_domain_dumpcore_via_callback(int xc_h
>>      char dummy[PAGE_SIZE];
>>      int dummy_len;
>>      int sts;
>> +    int err_cnt = 0;
>>  
>>      if ( (dump_mem_start = malloc(DUMP_INCREMENT*PAGE_SIZE)) == NULL )
>>      {
>> @@ -103,7 +104,10 @@ xc_domain_dumpcore_via_callback(int xc_h
>>  
>>      for ( dump_mem = dump_mem_start, i = 0; i < nr_pages; i++ )
>>      {
>> -        copy_from_domain_page(xc_handle, domid, page_array[i], dump_mem);
>> +        sts = copy_from_domain_page(xc_handle, domid, page_array[i], 
>> dump_mem);
>> +        if ( sts != 0 )
>> +            err_cnt++;
>> +
>>          dump_mem += PAGE_SIZE;
>>          if ( ((i + 1) % DUMP_INCREMENT == 0) || ((i + 1) == nr_pages) )
>>          {
>> @@ -112,6 +116,11 @@ xc_domain_dumpcore_via_callback(int xc_h
>>                  goto error_out;
>>              dump_mem = dump_mem_start;
>>          }
>> +    }
>> +
>> +    if ( err_cnt != 0 ){
>> +        IPRINTF("Could not copy from domid=%d page\n", domid);
>> +        goto error_out;
>>      }
>>  
>>      free(dump_mem_start);
>> 
>> 
>> Best Regards,
>> 
>> Akio Takebe
>> 



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel