[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] libxl: consolidate casting to xc psr type to a function
commit a396c2549e079ab2f644aab8b2e7f47a8d0e3937 Author: Wei Liu <wei.liu2@xxxxxxxxxx> AuthorDate: Wed May 18 16:19:45 2016 +0100 Commit: Wei Liu <wei.liu2@xxxxxxxxxx> CommitDate: Thu May 19 12:49:59 2016 +0100 libxl: consolidate casting to xc psr type to a function In commit 31268fea (libxl: fix passing the type argument to xc_psr_*), casting to xc psr type was done at each call site. This patch consolidates casting into a function to avoid casting at each conversion point. Each call site remains more type safe. Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> Acked-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Release-acked-by: Wei Liu <wei.liu2@xxxxxxxxxx> --- tools/libxl/libxl_psr.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/tools/libxl/libxl_psr.c b/tools/libxl/libxl_psr.c index 40f2d5f..99733f6 100644 --- a/tools/libxl/libxl_psr.c +++ b/tools/libxl/libxl_psr.c @@ -293,12 +293,18 @@ out: return rc; } +static inline xc_psr_cat_type libxl__psr_cbm_type_to_libxc_psr_cat_type( + libxl_psr_cbm_type type) +{ + BUILD_BUG_ON(sizeof(libxl_psr_cbm_type) != sizeof(xc_psr_cat_type)); + return (xc_psr_cat_type)type; +} + int libxl_psr_cat_set_cbm(libxl_ctx *ctx, uint32_t domid, libxl_psr_cbm_type type, libxl_bitmap *target_map, uint64_t cbm) { GC_INIT(ctx); - BUILD_BUG_ON(sizeof(libxl_psr_cbm_type) != sizeof(xc_psr_cat_type)); int rc; int socketid, nr_sockets; @@ -309,9 +315,13 @@ int libxl_psr_cat_set_cbm(libxl_ctx *ctx, uint32_t domid, } libxl_for_each_set_bit(socketid, *target_map) { + xc_psr_cat_type xc_type; + if (socketid >= nr_sockets) break; - if (xc_psr_cat_set_domain_data(ctx->xch, domid, (xc_psr_cat_type)type, + + xc_type = libxl__psr_cbm_type_to_libxc_psr_cat_type(type); + if (xc_psr_cat_set_domain_data(ctx->xch, domid, xc_type, socketid, cbm)) { libxl__psr_cat_log_err_msg(gc, errno); rc = ERROR_FAIL; @@ -329,8 +339,9 @@ int libxl_psr_cat_get_cbm(libxl_ctx *ctx, uint32_t domid, { GC_INIT(ctx); int rc = 0; + xc_psr_cat_type xc_type = libxl__psr_cbm_type_to_libxc_psr_cat_type(type); - if (xc_psr_cat_get_domain_data(ctx->xch, domid, (xc_psr_cat_type)type, + if (xc_psr_cat_get_domain_data(ctx->xch, domid, xc_type, target, cbm_r)) { libxl__psr_cat_log_err_msg(gc, errno); rc = ERROR_FAIL; -- generated by git-patchbot for /home/xen/git/xen.git#master _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |