diff options
author | Wei Liu <wei.liu2@citrix.com> | 2013-01-31 09:46:56 -0500 |
---|---|---|
committer | Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> | 2013-02-06 10:32:45 -0500 |
commit | 68ba45ff389295ddccbb976b8881de7c46140e00 (patch) | |
tree | 9abf172e611c5e1729f273bcb3ae6e4ec2cb484a /drivers/xen | |
parent | 51ac8893a7a51b196501164e645583bf78138699 (diff) |
xen: fix error handling path if xen_allocate_irq_dynamic fails
It is possible that the call to xen_allocate_irq_dynamic() returns negative
number other than -1.
Reviewed-by: David Vrabel <david.vrabel@citrix.com>
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Diffstat (limited to 'drivers/xen')
-rw-r--r-- | drivers/xen/events.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/xen/events.c b/drivers/xen/events.c index 0be4df39e953..74d77dfa5f63 100644 --- a/drivers/xen/events.c +++ b/drivers/xen/events.c | |||
@@ -840,7 +840,7 @@ int bind_evtchn_to_irq(unsigned int evtchn) | |||
840 | 840 | ||
841 | if (irq == -1) { | 841 | if (irq == -1) { |
842 | irq = xen_allocate_irq_dynamic(); | 842 | irq = xen_allocate_irq_dynamic(); |
843 | if (irq == -1) | 843 | if (irq < 0) |
844 | goto out; | 844 | goto out; |
845 | 845 | ||
846 | irq_set_chip_and_handler_name(irq, &xen_dynamic_chip, | 846 | irq_set_chip_and_handler_name(irq, &xen_dynamic_chip, |
@@ -944,7 +944,7 @@ int bind_virq_to_irq(unsigned int virq, unsigned int cpu) | |||
944 | 944 | ||
945 | if (irq == -1) { | 945 | if (irq == -1) { |
946 | irq = xen_allocate_irq_dynamic(); | 946 | irq = xen_allocate_irq_dynamic(); |
947 | if (irq == -1) | 947 | if (irq < 0) |
948 | goto out; | 948 | goto out; |
949 | 949 | ||
950 | irq_set_chip_and_handler_name(irq, &xen_percpu_chip, | 950 | irq_set_chip_and_handler_name(irq, &xen_percpu_chip, |