|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v4 2/5] libxl: Fix libxl_set_memory_target return value
George Dunlap writes ("[PATCH v4 2/5] libxl: Fix libxl_set_memory_target return
value"):
> 2. Use 'r' for return values to functions whose return values are a
> different error space (like xc_domain_setmaxmem and
> xc_domain_set_pod_target), or where a failure means retry, rather than
> fail the whole function (libxl__fill_dom0_memory_info), to reduce the
> risk that
The use of `r' to contain libxl__fill_dom0_memory_info's return value
is IMO confusing and contrary to CODING_STYLE.
Sorry that I didn't spot this last sentence in your point `2' when
reading ijc's review of your v3, where ijc suggested `r'.
> v4:
> - Use 'r' instead of 'lrc'
Can you go back to `lrc' for just that one use ? I think that would
be analogous with CODING_STYLE's suggestion to use `rc' for libxl
error codes.
> abort_transaction = 1;
> + rc = ERROR_FAIL;
There is an awful lot of this. I won't object to this in your patch,
as what you have is an improvement, but:
Every `goto out' here is preceded by `abort_transaction = 1'.
If you converted this function to:
- use libxl__xs_transaction_start et al
- in the intended pattern as shown in its doc comment
- use the `out' path only for errors
- unconditionally call libxl__xs_transaction_abort in the out
block
- call libxl__xs_transaction_commit in the success path
Then you could abolish `abort_transaction' and remove all assignments
to it. You could also abolish `out_no_transaction'.
If you were feeling really gung-ho you could get rid of `goto retry'
and replace it with a loop.
Ian.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |