Commit b0871aa0 authored by Naman Jain's avatar Naman Jain Committed by Wei Liu
Browse files

Drivers: hv: Fix the check for HYPERVISOR_CALLBACK_VECTOR



__is_defined(HYPERVISOR_CALLBACK_VECTOR) would return 1, only if
HYPERVISOR_CALLBACK_VECTOR macro is defined as 1. However its value is
0xf3 and this leads to __is_defined() returning 0. The expectation
was to just check whether this MACRO is defined or not and get 1 if
it's defined. Replace __is_defined with #ifdef blocks instead to
fix it.

Fixes: 1dc5df13 ("Drivers: hv: vmbus: Get the IRQ number from DeviceTree")
Cc: stable@kernel.org
Signed-off-by: default avatarNaman Jain <namjain@linux.microsoft.com>
Reviewed-by: default avatarRoman Kisel <romank@linux.microsoft.com>
Link: https://lore.kernel.org/r/20250707084322.1763-1-namjain@linux.microsoft.com


Signed-off-by: default avatarWei Liu <wei.liu@kernel.org>
Message-ID: <20250707084322.1763-1-namjain@linux.microsoft.com>
parent 0d86a8d6
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -2509,7 +2509,7 @@ static int vmbus_acpi_add(struct platform_device *pdev)
	return 0;
}
#endif

#ifndef HYPERVISOR_CALLBACK_VECTOR
static int vmbus_set_irq(struct platform_device *pdev)
{
	struct irq_data *data;
@@ -2534,6 +2534,7 @@ static int vmbus_set_irq(struct platform_device *pdev)

	return 0;
}
#endif

static int vmbus_device_add(struct platform_device *pdev)
{
@@ -2549,11 +2550,11 @@ static int vmbus_device_add(struct platform_device *pdev)
	if (ret)
		return ret;

	if (!__is_defined(HYPERVISOR_CALLBACK_VECTOR))
#ifndef HYPERVISOR_CALLBACK_VECTOR
	ret = vmbus_set_irq(pdev);
	if (ret)
		return ret;

#endif
	for_each_of_range(&parser, &range) {
		struct resource *res;