NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: port-i386/44581: MacBook1,1 won't resume after suspend
The following reply was made to PR port-i386/44581; it has been noted by GNATS.
From: Taylor R Campbell <campbell+netbsd%mumble.net@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc:
Subject: Re: port-i386/44581: MacBook1,1 won't resume after suspend
Date: Wed, 16 Feb 2011 20:27:58 +0000
Also, in order to test rescanning pci3 and reattaching fwohci0, I had
to apply the following patch to fix a config panic induced by a
trivial race condition in firewire.c. (fw_bus_probe_thread may call
config_pending_decr before control has reached firewireattach's call
to config_pending_incr, causing a panic.)
Index: firewire.c
===================================================================
RCS file: /cvsroot/src/sys/dev/ieee1394/firewire.c,v
retrieving revision 1.38
diff -c -r1.38 firewire.c
--- firewire.c 7 Sep 2010 07:26:54 -0000 1.38
+++ firewire.c 16 Feb 2011 20:26:36 -0000
@@ -257,10 +257,10 @@
callout_schedule(&fc->timeout_callout, hz);
/* create thread */
+ config_pending_incr();
if (kthread_create(PRI_NONE, KTHREAD_MPSAFE, NULL, fw_bus_probe_thread,
fc, &fc->probe_thread, "fw%dprobe", device_unit(fc->bdev)))
aprint_error_dev(self, "kthread_create failed\n");
- config_pending_incr();
devlist = malloc(sizeof(struct firewire_dev_list), M_DEVBUF, M_NOWAIT);
if (devlist == NULL) {
Home |
Main Index |
Thread Index |
Old Index