[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH] tools: ROUNDUP() related adjustments
For one xc_private.h needlessly repeats xen-tools/libs.h's definition. And then there are two suspicious uses (resulting from the inconsistency with the respective 2nd parameter of DIV_ROUNDUP()): While the one in tools/console/daemon/io.c - as per the code comment - intentionally uses 8 as the second argument (meaning to align to a multiple of 256), the one in alloc_magic_pages_hvm() pretty certainly does not: There the goal is to align to a uint64_t boundary, for the following module struct to end up aligned. Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> --- xg_dom_x86.c's HVM guest command line handling has further oddities: The command line gets copied twice, yet in only one case enforcing the MAX_GUEST_CMDLINE upper bound on the length. The length calculation also doesn't take this bound into account, despite the assumption that all of start info fits into a single page. A terminating nul character gets forced in place in only one of the two cases, too. --- a/tools/libs/ctrl/xc_private.h +++ b/tools/libs/ctrl/xc_private.h @@ -63,8 +63,6 @@ struct iovec { #include <sys/uio.h> #endif -#define ROUNDUP(_x,_w) (((unsigned long)(_x)+(1UL<<(_w))-1) & ~((1UL<<(_w))-1)) - #define DECLARE_DOMCTL struct xen_domctl domctl #define DECLARE_SYSCTL struct xen_sysctl sysctl #define DECLARE_PHYSDEV_OP struct physdev_op physdev_op --- a/tools/libs/guest/xg_dom_x86.c +++ b/tools/libs/guest/xg_dom_x86.c @@ -678,7 +678,7 @@ static int alloc_magic_pages_hvm(struct { if ( dom->cmdline ) { - dom->cmdline_size = ROUNDUP(strlen(dom->cmdline) + 1, 8); + dom->cmdline_size = ROUNDUP(strlen(dom->cmdline) + 1, 3); start_info_size += dom->cmdline_size; } }
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |