summaryrefslogtreecommitdiff
path: root/audio/oss
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2008-01-14 20:35:18 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2008-01-14 20:35:18 +0000
commit9c5a2e14c4645b97916dfbe9be14c10934f107d8 (patch)
treec66753f5db20c4957457b2b31d2e3ca04d29df3e /audio/oss
parent- Update to 20080114 (diff)
Attempt device_unbusy(9) before detaching it.
Notes
Notes: svn path=/head/; revision=205662
Diffstat (limited to 'audio/oss')
-rw-r--r--audio/oss/files/patch-setup-FreeBSD-oss-build-bsdpci.inc11
-rw-r--r--audio/oss/files/patch-setup-FreeBSD-oss-build-bsdvirtual.inc11
2 files changed, 22 insertions, 0 deletions
diff --git a/audio/oss/files/patch-setup-FreeBSD-oss-build-bsdpci.inc b/audio/oss/files/patch-setup-FreeBSD-oss-build-bsdpci.inc
new file mode 100644
index 000000000000..9be10a483fe3
--- /dev/null
+++ b/audio/oss/files/patch-setup-FreeBSD-oss-build-bsdpci.inc
@@ -0,0 +1,11 @@
+--- setup/FreeBSD/oss/build/bsdpci.inc.orig 2007-12-19 14:56:18.000000000 -0500
++++ setup/FreeBSD/oss/build/bsdpci.inc 2008-01-14 14:38:15.000000000 -0500
+@@ -92,6 +92,8 @@
+ osdev = device_list[i];
+ if (osdev->dip == dev)
+ {
++ if (device_get_state(dev) == DS_BUSY)
++ device_unbusy(dev);
+ if (!DRIVER_DETACH (osdev))
+ {
+ printf (DRIVER_NICK ": Unloading busy device\n");
diff --git a/audio/oss/files/patch-setup-FreeBSD-oss-build-bsdvirtual.inc b/audio/oss/files/patch-setup-FreeBSD-oss-build-bsdvirtual.inc
new file mode 100644
index 000000000000..54c885e9bb59
--- /dev/null
+++ b/audio/oss/files/patch-setup-FreeBSD-oss-build-bsdvirtual.inc
@@ -0,0 +1,11 @@
+--- setup/FreeBSD/oss/build/bsdvirtual.inc.orig 2007-12-19 14:56:18.000000000 -0500
++++ setup/FreeBSD/oss/build/bsdvirtual.inc 2008-01-14 14:09:02.000000000 -0500
+@@ -34,6 +34,8 @@
+ {
+ osdev = device_list[i];
+
++ if (osdev->dip != NULL && device_get_state(osdev->dip) == DS_BUSY)
++ device_unbusy(osdev->dip);
+ if (!DRIVER_DETACH (osdev))
+ {
+ printf (DRIVER_NICK ": Unloading busy device\n");