* [PATCH] ACPI: Use fwnode_init() to set up fwnode
@ 2020-12-11 20:26 Saravana Kannan
2020-12-11 20:53 ` Rafael J. Wysocki
0 siblings, 1 reply; 3+ messages in thread
From: Saravana Kannan @ 2020-12-11 20:26 UTC (permalink / raw)
To: Rafael J. Wysocki, Len Brown, Rob Herring, Greg Kroah-Hartman,
Saravana Kannan
Cc: Qian Cai, Robin Murphy, Marc Zyngier, kernel-team, linux-acpi,
linux-kernel
Commit 01bb86b380a3 ("driver core: Add fwnode_init()") was supposed to
fix up all instances of fwnode creation to use fwnode_init(). But looks
like this instance was missed. This causes a NULL pointer dereference
during device_add() [1]. So, fix it.
[ 60.792324][ T1] Call trace:
[ 60.795495][ T1] device_add+0xf60/0x16b0
__fw_devlink_link_to_consumers at drivers/base/core.c:1583
(inlined by) fw_devlink_link_device at drivers/base/core.c:1726
(inlined by) device_add at drivers/base/core.c:3088
[ 60.799813][ T1] platform_device_add+0x274/0x628
[ 60.804833][ T1] acpi_iort_init+0x9d8/0xc50
[ 60.809415][ T1] acpi_init+0x45c/0x4e8
[ 60.813556][ T1] do_one_initcall+0x170/0xb70
[ 60.818224][ T1] kernel_init_freeable+0x6a8/0x734
[ 60.823332][ T1] kernel_init+0x18/0x12c
[ 60.827566][ T1] ret_from_fork+0x10/0x1c
[ 60.838756][ T1] ---[ end trace fa5c8ce17a226d83 ]---
[1] - https://lore.kernel.org/linux-arm-kernel/02e7047071f0b54b046ac472adeeb3fafabc643c.camel@redhat.com/
Fixes: 01bb86b380a3 ("driver core: Add fwnode_init()")
Reported-by: Qian Cai <qcai@redhat.com>
Suggested-by: Robin Murphy <robin.murphy@arm.com>
Tested-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Saravana Kannan <saravanak@google.com>
---
Greg,
Can you please pull this into driver-core-next since the commit that
causes this is only present in driver-core-next?
-Saravana
include/linux/acpi.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/acpi.h b/include/linux/acpi.h
index 39263c6b52e1..2630c2e953f7 100644
--- a/include/linux/acpi.h
+++ b/include/linux/acpi.h
@@ -55,7 +55,7 @@ static inline struct fwnode_handle *acpi_alloc_fwnode_static(void)
if (!fwnode)
return NULL;
- fwnode->ops = &acpi_static_fwnode_ops;
+ fwnode_init(fwnode, &acpi_static_fwnode_ops);
return fwnode;
}
--
2.29.2.576.ga3fc446d84-goog
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] ACPI: Use fwnode_init() to set up fwnode
2020-12-11 20:26 [PATCH] ACPI: Use fwnode_init() to set up fwnode Saravana Kannan
@ 2020-12-11 20:53 ` Rafael J. Wysocki
2020-12-12 11:41 ` Greg Kroah-Hartman
0 siblings, 1 reply; 3+ messages in thread
From: Rafael J. Wysocki @ 2020-12-11 20:53 UTC (permalink / raw)
To: Saravana Kannan, Greg Kroah-Hartman
Cc: Len Brown, Rob Herring, Qian Cai, Robin Murphy, Marc Zyngier,
kernel-team, linux-acpi, linux-kernel
On Friday, December 11, 2020 9:26:29 PM CET Saravana Kannan wrote:
> Commit 01bb86b380a3 ("driver core: Add fwnode_init()") was supposed to
> fix up all instances of fwnode creation to use fwnode_init(). But looks
> like this instance was missed. This causes a NULL pointer dereference
> during device_add() [1]. So, fix it.
>
> [ 60.792324][ T1] Call trace:
> [ 60.795495][ T1] device_add+0xf60/0x16b0
> __fw_devlink_link_to_consumers at drivers/base/core.c:1583
> (inlined by) fw_devlink_link_device at drivers/base/core.c:1726
> (inlined by) device_add at drivers/base/core.c:3088
> [ 60.799813][ T1] platform_device_add+0x274/0x628
> [ 60.804833][ T1] acpi_iort_init+0x9d8/0xc50
> [ 60.809415][ T1] acpi_init+0x45c/0x4e8
> [ 60.813556][ T1] do_one_initcall+0x170/0xb70
> [ 60.818224][ T1] kernel_init_freeable+0x6a8/0x734
> [ 60.823332][ T1] kernel_init+0x18/0x12c
> [ 60.827566][ T1] ret_from_fork+0x10/0x1c
> [ 60.838756][ T1] ---[ end trace fa5c8ce17a226d83 ]---
>
> [1] - https://lore.kernel.org/linux-arm-kernel/02e7047071f0b54b046ac472adeeb3fafabc643c.camel@redhat.com/
> Fixes: 01bb86b380a3 ("driver core: Add fwnode_init()")
> Reported-by: Qian Cai <qcai@redhat.com>
> Suggested-by: Robin Murphy <robin.murphy@arm.com>
> Tested-by: Marc Zyngier <maz@kernel.org>
> Signed-off-by: Saravana Kannan <saravanak@google.com>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> ---
> Greg,
>
> Can you please pull this into driver-core-next since the commit that
> causes this is only present in driver-core-next?
>
> -Saravana
>
> include/linux/acpi.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/linux/acpi.h b/include/linux/acpi.h
> index 39263c6b52e1..2630c2e953f7 100644
> --- a/include/linux/acpi.h
> +++ b/include/linux/acpi.h
> @@ -55,7 +55,7 @@ static inline struct fwnode_handle *acpi_alloc_fwnode_static(void)
> if (!fwnode)
> return NULL;
>
> - fwnode->ops = &acpi_static_fwnode_ops;
> + fwnode_init(fwnode, &acpi_static_fwnode_ops);
>
> return fwnode;
> }
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] ACPI: Use fwnode_init() to set up fwnode
2020-12-11 20:53 ` Rafael J. Wysocki
@ 2020-12-12 11:41 ` Greg Kroah-Hartman
0 siblings, 0 replies; 3+ messages in thread
From: Greg Kroah-Hartman @ 2020-12-12 11:41 UTC (permalink / raw)
To: Rafael J. Wysocki
Cc: Saravana Kannan, Len Brown, Rob Herring, Qian Cai, Robin Murphy,
Marc Zyngier, kernel-team, linux-acpi, linux-kernel
On Fri, Dec 11, 2020 at 09:53:09PM +0100, Rafael J. Wysocki wrote:
> On Friday, December 11, 2020 9:26:29 PM CET Saravana Kannan wrote:
> > Commit 01bb86b380a3 ("driver core: Add fwnode_init()") was supposed to
> > fix up all instances of fwnode creation to use fwnode_init(). But looks
> > like this instance was missed. This causes a NULL pointer dereference
> > during device_add() [1]. So, fix it.
> >
> > [ 60.792324][ T1] Call trace:
> > [ 60.795495][ T1] device_add+0xf60/0x16b0
> > __fw_devlink_link_to_consumers at drivers/base/core.c:1583
> > (inlined by) fw_devlink_link_device at drivers/base/core.c:1726
> > (inlined by) device_add at drivers/base/core.c:3088
> > [ 60.799813][ T1] platform_device_add+0x274/0x628
> > [ 60.804833][ T1] acpi_iort_init+0x9d8/0xc50
> > [ 60.809415][ T1] acpi_init+0x45c/0x4e8
> > [ 60.813556][ T1] do_one_initcall+0x170/0xb70
> > [ 60.818224][ T1] kernel_init_freeable+0x6a8/0x734
> > [ 60.823332][ T1] kernel_init+0x18/0x12c
> > [ 60.827566][ T1] ret_from_fork+0x10/0x1c
> > [ 60.838756][ T1] ---[ end trace fa5c8ce17a226d83 ]---
> >
> > [1] - https://lore.kernel.org/linux-arm-kernel/02e7047071f0b54b046ac472adeeb3fafabc643c.camel@redhat.com/
> > Fixes: 01bb86b380a3 ("driver core: Add fwnode_init()")
> > Reported-by: Qian Cai <qcai@redhat.com>
> > Suggested-by: Robin Murphy <robin.murphy@arm.com>
> > Tested-by: Marc Zyngier <maz@kernel.org>
> > Signed-off-by: Saravana Kannan <saravanak@google.com>
>
> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Now queued up, thanks.
greg k-h
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-12-12 11:42 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-11 20:26 [PATCH] ACPI: Use fwnode_init() to set up fwnode Saravana Kannan
2020-12-11 20:53 ` Rafael J. Wysocki
2020-12-12 11:41 ` Greg Kroah-Hartman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).