[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] xl: Make the devid attribute manually settable for nics
This permits to have control over the devid attribute when attaching new nics. It may become useful if one has its own nic indexing somewhere else than xl/xenstore. Signed-off-by: Fatih Acar <fatih.acar@xxxxxxxxx> Signed-off-by: Nikita Kozlov <nikita.kozlov@xxxxxxxxx> Signed-off-by: Vincent Legout <vincent.legout@xxxxxxxxx> Signed-off-by: Baptiste Daroussin <baptiste.daroussin@xxxxxxxxx> --- docs/man/xl-network-configuration.markdown.5 | 5 +++++ tools/libxl/xl_cmdimpl.c | 28 +++++++++++++++------------- 2 files changed, 20 insertions(+), 13 deletions(-) diff --git a/docs/man/xl-network-configuration.markdown.5 b/docs/man/xl-network-configuration.markdown.5 index 3c439d4..84c2645 100644 --- a/docs/man/xl-network-configuration.markdown.5 +++ b/docs/man/xl-network-configuration.markdown.5 @@ -162,6 +162,11 @@ For example: NOTE: The actual underlying limits of rate limiting are dependent on the underlying netback implementation. +### devid + +Specifies the devid manually instead of letting xl choose the lowest index available. + +NOTE: This should not be set unless you have a reason to. [oui]: http://en.wikipedia.org/wiki/Organizationally_Unique_Identifier [net]: http://wiki.xen.org/wiki/HostConfiguration/Networking diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c index 7e8a8ae..98ac8ad 100644 --- a/tools/libxl/xl_cmdimpl.c +++ b/tools/libxl/xl_cmdimpl.c @@ -993,6 +993,19 @@ static void parse_vcpu_affinity(libxl_domain_build_info *b_info, } } +static unsigned long parse_ulong(const char *str) +{ + char *endptr; + unsigned long val; + + val = strtoul(str, &endptr, 10); + if (endptr == str || val == ULONG_MAX) { + fprintf(stderr, "xl: failed to convert \"%s\" to number\n", str); + exit(EXIT_FAILURE); + } + return val; +} + static void replace_string(char **str, const char *val) { free(*str); @@ -1061,6 +1074,8 @@ static int parse_nic_config(libxl_device_nic *nic, XLU_Config **config, char *to replace_string(&nic->coloft_forwarddev, oparg); } else if (MATCH_OPTION("accel", token, oparg)) { fprintf(stderr, "the accel parameter for vifs is currently not supported\n"); + } else if (MATCH_OPTION("devid", token, oparg)) { + nic->devid = parse_ulong(oparg); } else { fprintf(stderr, "unrecognized argument `%s'\n", token); return 1; @@ -1068,19 +1083,6 @@ static int parse_nic_config(libxl_device_nic *nic, XLU_Config **config, char *to return 0; } -static unsigned long parse_ulong(const char *str) -{ - char *endptr; - unsigned long val; - - val = strtoul(str, &endptr, 10); - if (endptr == str || val == ULONG_MAX) { - fprintf(stderr, "xl: failed to convert \"%s\" to number\n", str); - exit(EXIT_FAILURE); - } - return val; -} - static void parse_vnuma_config(const XLU_Config *config, libxl_domain_build_info *b_info) { -- 2.7.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |