[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH RFC] x86/irq: Fix maybe uninitalised issue in map_domain_pirq()
When compiling at -O3, GCC 7.2 reports: irq.c: In function 'map_domain_pirq': irq.c:1271:20: error: 'info' may be used uninitialized in this function [-Werror=maybe-uninitialized] pirq->arch.irq = irq; ~~~~~~~~~~~~~~~^~~~~ irq.c:1917:18: note: 'info' was declared here struct pirq *info; ^~~~ This is a real issue, and is caused by different error style confusion in prepare_domain_irq_pirq(). A positive return value from radix_tree_insert() will take the early error path, and report success to map_domain_pirq(). Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> --- CC: Jan Beulich <JBeulich@xxxxxxxx> I don't think this is the right change to make, but initialising note to NULL is definitely the wrong thing to do. Thoughts? --- xen/arch/x86/irq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c index 87ef2e8..b613733 100644 --- a/xen/arch/x86/irq.c +++ b/xen/arch/x86/irq.c @@ -1249,7 +1249,7 @@ static int prepare_domain_irq_pirq(struct domain *d, int irq, int pirq, radix_tree_int_to_ptr(0)); struct pirq *info; - if ( err && err != -EEXIST ) + if ( err < 0 && err != -EEXIST ) return err; info = pirq_get_info(d, pirq); if ( !info ) -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |