git: c3518147ceb3 - main - LinuxKPI: fix pci device devres initialisation

Bjoern A. Zeeb bz at FreeBSD.org
Fri Jun 18 21:49:09 UTC 2021


The branch main has been updated by bz:

URL: https://cgit.FreeBSD.org/src/commit/?id=c3518147ceb301b01763c3754697731a24410565

commit c3518147ceb301b01763c3754697731a24410565
Author:     Bjoern A. Zeeb <bz at FreeBSD.org>
AuthorDate: 2021-06-07 17:26:14 +0000
Commit:     Bjoern A. Zeeb <bz at FreeBSD.org>
CommitDate: 2021-06-18 21:20:09 +0000

    LinuxKPI: fix pci device devres initialisation
    
    Given we are manually setting up the "device" in PCI in some cases,
    we need to initialise the list and lock for device devres here as well
    as otherwise we will panic on the uninitialised lock.
    
    Sponsored by:   The FreeBSD Foundation
    MFC after:      5 days
    Reviewed by:    hselasky
    Differential Revision: https://reviews.freebsd.org/D30681
---
 sys/compat/linuxkpi/common/src/linux_pci.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/sys/compat/linuxkpi/common/src/linux_pci.c b/sys/compat/linuxkpi/common/src/linux_pci.c
index 030951175a42..9738f9e6f51a 100644
--- a/sys/compat/linuxkpi/common/src/linux_pci.c
+++ b/sys/compat/linuxkpi/common/src/linux_pci.c
@@ -235,6 +235,8 @@ lkpifill_pci_dev(device_t dev, struct pci_dev *pdev)
 	kobject_set_name(&pdev->dev.kobj, device_get_nameunit(dev));
 	kobject_add(&pdev->dev.kobj, &linux_root_device.kobj,
 	    kobject_name(&pdev->dev.kobj));
+	spin_lock_init(&pdev->dev.devres_lock);
+	INIT_LIST_HEAD(&pdev->dev.devres_head);
 }
 
 static void


More information about the dev-commits-src-all mailing list