Module Name: src
Committed By: riastradh
Date: Mon Dec 20 19:56:42 UTC 2021
Modified Files:
src/sys/dev/ieee1394: firewire.c
Log Message:
ieee1394: Need kernel lock around config_found.
To generate a diff of this commit:
cvs rdiff -u -r1.53 -r1.54 src/sys/dev/ieee1394/firewire.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/ieee1394/firewire.c
diff -u src/sys/dev/ieee1394/firewire.c:1.53 src/sys/dev/ieee1394/firewire.c:1.54
--- src/sys/dev/ieee1394/firewire.c:1.53 Mon Oct 4 20:48:05 2021
+++ src/sys/dev/ieee1394/firewire.c Mon Dec 20 19:56:42 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: firewire.c,v 1.53 2021/10/04 20:48:05 andvar Exp $ */
+/* $NetBSD: firewire.c,v 1.54 2021/12/20 19:56:42 riastradh Exp $ */
/*-
* Copyright (c) 2003 Hidetoshi Shimokawa
* Copyright (c) 1998-2002 Katsushi Kobayashi and Hidetoshi Shimokawa
@@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: firewire.c,v 1.53 2021/10/04 20:48:05 andvar Exp $");
+__KERNEL_RCSID(0, "$NetBSD: firewire.c,v 1.54 2021/12/20 19:56:42 riastradh Exp $");
#include <sys/param.h>
#include <sys/bus.h>
@@ -2041,9 +2041,11 @@ fw_attach_dev(struct firewire_comm *fc)
fwa.name = fw_get_devclass(fwdev);
fwa.fwdev = fwdev;
+ KERNEL_LOCK(1, NULL);
fwdev->dev = config_found(sc->dev, &fwa, firewire_print,
CFARGS(.submatch = config_stdsubmatch,
.locators = locs));
+ KERNEL_UNLOCK_ONE(NULL);
if (fwdev->dev == NULL) {
free(devlist, M_DEVBUF);
break;