From: Juergen Gross Date: Wed, 23 Aug 2017 17:36:00 +0000 (+0200) Subject: xen/drivers/passthrough/vtd/dmar.c: let custom parameter parsing routines return... X-Git-Tag: archive/raspbian/4.11.1-1+rpi1~1^2~66^2~1571 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=59ec885db962688d4b35217e11a48daf95ce4989;p=xen.git xen/drivers/passthrough/vtd/dmar.c: let custom parameter parsing routines return errno Modify the custom parameter parsing routines in: xen/drivers/passthrough/vtd/dmar.c to indicate whether the parameter value was parsed successfully. Signed-off-by: Juergen Gross Acked-by: Wei Liu Acked-by: Kevin Tian --- diff --git a/xen/drivers/passthrough/vtd/dmar.c b/xen/drivers/passthrough/vtd/dmar.c index 82040ddc05..dd122da730 100644 --- a/xen/drivers/passthrough/vtd/dmar.c +++ b/xen/drivers/passthrough/vtd/dmar.c @@ -1090,7 +1090,7 @@ int intel_iommu_get_reserved_device_memory(iommu_grdm_t *func, void *ctxt) * If a segment is specified for other than the first device, and it does not * match the one specified for the first one, an error will be reported. */ -static void __init parse_rmrr_param(const char *str) +static int __init parse_rmrr_param(const char *str) { const char *s = str, *cur, *stmp; unsigned int seg, bus, dev, func, dev_count; @@ -1143,5 +1143,7 @@ static void __init parse_rmrr_param(const char *str) nr_rmrr++; } while ( *s++ == ';' && nr_rmrr < MAX_USER_RMRR ); + + return *s ? -EINVAL : 0; } custom_param("rmrr", parse_rmrr_param);