diff options
author | le <le@FreeBSD.org> | 2006-01-06 18:03:17 +0000 |
---|---|---|
committer | le <le@FreeBSD.org> | 2006-01-06 18:03:17 +0000 |
commit | c29a43240c8e60c8620feab9604ed1036fe72652 (patch) | |
tree | b499a803262a1bbcd6030349917a5b979313f588 /sys/geom/vinum/geom_vinum_var.h | |
parent | 42cfa2cc9eb59ddbe448a8b539720b20fb70fad9 (diff) | |
download | FreeBSD-src-c29a43240c8e60c8620feab9604ed1036fe72652.zip FreeBSD-src-c29a43240c8e60c8620feab9604ed1036fe72652.tar.gz |
Get rid of the gv_bioq hack in most parts of the I/O path and
use the standard bioq structures.
Diffstat (limited to 'sys/geom/vinum/geom_vinum_var.h')
-rw-r--r-- | sys/geom/vinum/geom_vinum_var.h | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/sys/geom/vinum/geom_vinum_var.h b/sys/geom/vinum/geom_vinum_var.h index 3de2b44..8f746f0 100644 --- a/sys/geom/vinum/geom_vinum_var.h +++ b/sys/geom/vinum/geom_vinum_var.h @@ -198,7 +198,11 @@ struct gv_drive { LIST_HEAD(,gv_sd) subdisks; /* Subdisks on this drive. */ LIST_ENTRY(gv_drive) drive; /* Entry in the vinum config. */ - TAILQ_HEAD(,gv_bioq) bqueue; /* BIO queue of this drive. */ +#ifdef _KERNEL + struct bio_queue_head *bqueue; /* BIO queue of this drive. */ +#else + char *padding; +#endif struct mtx bqueue_mtx; /* Mtx. to protect the queue. */ struct g_geom *geom; /* The geom of this drive. */ @@ -277,8 +281,12 @@ struct gv_plex { off_t synced; /* Count of synced bytes. */ struct mtx bqueue_mtx; /* Lock for the BIO queue. */ - TAILQ_HEAD(,gv_bioq) bqueue; /* BIO queue. */ - TAILQ_HEAD(,gv_bioq) wqueue; /* Waiting BIO queue. */ +#ifdef _KERNEL + struct bio_queue_head *bqueue; /* BIO queue. */ + struct bio_queue_head *wqueue; /* Waiting BIO queue. */ +#else + char *bpad, *wpad; +#endif TAILQ_HEAD(,gv_raid5_packet) packets; /* RAID5 sub-requests. */ LIST_HEAD(,gv_sd) subdisks; /* List of attached subdisks. */ @@ -307,7 +315,11 @@ struct gv_volume { #define GV_VOL_THREAD_DEAD 0x04 /* The thread has died. */ struct mtx bqueue_mtx; /* Lock for the BIO queue. */ - TAILQ_HEAD(,gv_bioq) bqueue; /* BIO queue. */ +#ifdef _KERNEL + struct bio_queue_head *bqueue; /* BIO queue. */ +#else + char *padding; +#endif LIST_HEAD(,gv_plex) plexes; /* List of attached plexes. */ LIST_ENTRY(gv_volume) volume; /* Entry in vinum config. */ |