Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit be1403b9 authored by Wei Yongjun's avatar Wei Yongjun Committed by Konrad Rzeszutek Wilk
Browse files

xen/evtchn_fifo: fix error return code in evtchn_fifo_setup()



Fix to return -ENOMEM from the error handling case instead of
0 (overwrited to 0 by the HYPERVISOR_event_channel_op call),
otherwise the error condition cann't be reflected from the
return value.

Signed-off-by: default avatarWei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Reviewed-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
parent 89b9e08f
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -109,7 +109,7 @@ static int evtchn_fifo_setup(struct irq_info *info)
{
	unsigned port = info->evtchn;
	unsigned new_array_pages;
	int ret = -ENOMEM;
	int ret;

	new_array_pages = port / EVENT_WORDS_PER_PAGE + 1;

@@ -124,8 +124,10 @@ static int evtchn_fifo_setup(struct irq_info *info)
		array_page = event_array[event_array_pages];
		if (!array_page) {
			array_page = (void *)__get_free_page(GFP_KERNEL);
			if (array_page == NULL)
			if (array_page == NULL) {
				ret = -ENOMEM;
				goto error;
			}
			event_array[event_array_pages] = array_page;
		}