mirror of https://github.com/torvalds/linux.git
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: 1dc5df133b ("Drivers: hv: vmbus: Get the IRQ number from DeviceTree")
Cc: stable@kernel.org
Signed-off-by: Naman Jain <namjain@linux.microsoft.com>
Reviewed-by: Roman Kisel <romank@linux.microsoft.com>
Link: https://lore.kernel.org/r/20250707084322.1763-1-namjain@linux.microsoft.com
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Message-ID: <20250707084322.1763-1-namjain@linux.microsoft.com>
This commit is contained in:
parent
0d86a8d65c
commit
b0871aa0f8
|
|
@ -2509,7 +2509,7 @@ static int vmbus_acpi_add(struct platform_device *pdev)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
#ifndef HYPERVISOR_CALLBACK_VECTOR
|
||||||
static int vmbus_set_irq(struct platform_device *pdev)
|
static int vmbus_set_irq(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
struct irq_data *data;
|
struct irq_data *data;
|
||||||
|
|
@ -2534,6 +2534,7 @@ static int vmbus_set_irq(struct platform_device *pdev)
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static int vmbus_device_add(struct platform_device *pdev)
|
static int vmbus_device_add(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
|
|
@ -2549,11 +2550,11 @@ static int vmbus_device_add(struct platform_device *pdev)
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
if (!__is_defined(HYPERVISOR_CALLBACK_VECTOR))
|
#ifndef HYPERVISOR_CALLBACK_VECTOR
|
||||||
ret = vmbus_set_irq(pdev);
|
ret = vmbus_set_irq(pdev);
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
#endif
|
||||||
for_each_of_range(&parser, &range) {
|
for_each_of_range(&parser, &range) {
|
||||||
struct resource *res;
|
struct resource *res;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue