Mitigate deadlock situation pending a more complete solution.

This commit is contained in:
Poul-Henning Kamp 2003-03-21 22:05:33 +00:00
parent 7f18da65a4
commit 7da1ebfd74
2 changed files with 7 additions and 2 deletions

View file

@ -53,6 +53,7 @@
#include <sys/lock.h>
#include <sys/mutex.h>
#include <geom/geom.h>
#include <geom/geom_int.h>
static struct mtx g_disk_done_mtx;
@ -252,7 +253,8 @@ g_disk_start(struct bio *bp)
break;
else if (!strcmp(bp->bio_attribute, "GEOM::kerneldump"))
g_disk_kerneldump(bp, dp);
else if ((dp->d_ioctl != NULL) &&
else if ((g_debugflags & G_F_DISKIOCTL) &&
(dp->d_ioctl != NULL) &&
!strcmp(bp->bio_attribute, "GEOM::ioctl") &&
bp->bio_length == sizeof *gio) {
gio = (struct g_ioctl *)bp->bio_data;

View file

@ -46,9 +46,12 @@ extern int g_debugflags;
* 1 G_T_TOPOLOGY
* 2 G_T_BIO
* 4 G_T_ACCESS
* 8 enable sanity checks
* 8 Enable sanity checks
* 16 Allow footshooting on rank#1 providers
* 32 G_T_DETAILS
*/
#define G_F_DISKIOCTL 64
/*
* Various internal actions are tracked by tagging g_event[s] onto