diff options
author | ken <ken@FreeBSD.org> | 1999-12-08 04:45:23 +0000 |
---|---|---|
committer | ken <ken@FreeBSD.org> | 1999-12-08 04:45:23 +0000 |
commit | 235e74ef14545e7100cec4fa645aff076da52816 (patch) | |
tree | 32b247bb1e4d2829469cabf6d97c96992ec8612b /sys | |
parent | 9ad09710679f41c5f78e53b1fa6541b8251a0867 (diff) | |
download | FreeBSD-src-235e74ef14545e7100cec4fa645aff076da52816.zip FreeBSD-src-235e74ef14545e7100cec4fa645aff076da52816.tar.gz |
Revamp the devstat priority system. All disks now have the same priority.
The same goes for CD drivers and tape drivers. In systems with mixed IDE
and SCSI, devices in the same priority class will be sorted in attach
order.
Also, the 'CCD' priority is now the 'ARRAY' priority, and a number of
drivers have been modified to use that priority.
This includes the necessary changes to all drivers, except the ATA drivers.
Soren will modify those separately.
This does not include and does not require any change in the devstat
version number, since no known userland applications use the priority
enumerations.
Reviewed by: msmith, sos, phk, jlemon, mjacob, bde
Diffstat (limited to 'sys')
-rw-r--r-- | sys/cam/scsi/scsi_da.c | 2 | ||||
-rw-r--r-- | sys/cam/scsi/scsi_sa.c | 2 | ||||
-rw-r--r-- | sys/contrib/dev/fla/fla.c | 3 | ||||
-rw-r--r-- | sys/dev/amr/amr_disk.c | 4 | ||||
-rw-r--r-- | sys/dev/ccd/ccd.c | 4 | ||||
-rw-r--r-- | sys/dev/ida/ida_disk.c | 3 | ||||
-rw-r--r-- | sys/dev/mlx/mlx_disk.c | 4 | ||||
-rw-r--r-- | sys/geom/geom_ccd.c | 4 | ||||
-rw-r--r-- | sys/i386/isa/atapi-cd.c | 4 | ||||
-rw-r--r-- | sys/i386/isa/wd.c | 2 | ||||
-rw-r--r-- | sys/i386/isa/wd_cd.c | 4 | ||||
-rw-r--r-- | sys/pc98/pc98/wd.c | 2 | ||||
-rw-r--r-- | sys/pc98/pc98/wd_cd.c | 4 | ||||
-rw-r--r-- | sys/sys/devicestat.h | 9 |
14 files changed, 25 insertions, 26 deletions
diff --git a/sys/cam/scsi/scsi_da.c b/sys/cam/scsi/scsi_da.c index 5c420ba..470832f 100644 --- a/sys/cam/scsi/scsi_da.c +++ b/sys/cam/scsi/scsi_da.c @@ -961,7 +961,7 @@ daregister(struct cam_periph *periph, void *arg) periph->unit_number, 0, DEVSTAT_BS_UNAVAILABLE, cgd->pd_type | DEVSTAT_TYPE_IF_SCSI, - DEVSTAT_PRIORITY_DA); + DEVSTAT_PRIORITY_DISK); /* * Register this media as a disk diff --git a/sys/cam/scsi/scsi_sa.c b/sys/cam/scsi/scsi_sa.c index 20736b9..85aa2d3 100644 --- a/sys/cam/scsi/scsi_sa.c +++ b/sys/cam/scsi/scsi_sa.c @@ -1398,7 +1398,7 @@ saregister(struct cam_periph *periph, void *arg) */ devstat_add_entry(&softc->device_stats, "sa", periph->unit_number, 0, DEVSTAT_BS_UNAVAILABLE, cgd->pd_type | DEVSTAT_TYPE_IF_SCSI, - DEVSTAT_PRIORITY_SA); + DEVSTAT_PRIORITY_TAPE); softc->devs.ctl_dev = make_dev(&sa_cdevsw, SAMINOR(SA_CTLDEV, periph->unit_number, 0, SA_ATYPE_R), UID_ROOT, GID_OPERATOR, diff --git a/sys/contrib/dev/fla/fla.c b/sys/contrib/dev/fla/fla.c index 9de44ee..0f91842 100644 --- a/sys/contrib/dev/fla/fla.c +++ b/sys/contrib/dev/fla/fla.c @@ -326,7 +326,8 @@ flaattach (device_t dev) devstat_add_entry(&softc[unit].stats, "fla", unit, DEV_BSIZE, DEVSTAT_NO_ORDERED_TAGS, - DEVSTAT_TYPE_DIRECT | DEVSTAT_TYPE_IF_OTHER, 0x190); + DEVSTAT_TYPE_DIRECT | DEVSTAT_TYPE_IF_OTHER, + DEVSTAT_PRIORITY_DISK); sc->dev = disk_create(unit, &sc->disk, 0, &fla_cdevsw, &fladisk_cdevsw); sc->dev->si_drv1 = sc; diff --git a/sys/dev/amr/amr_disk.c b/sys/dev/amr/amr_disk.c index 54d1213..e9c0567 100644 --- a/sys/dev/amr/amr_disk.c +++ b/sys/dev/amr/amr_disk.c @@ -288,8 +288,8 @@ amrd_attach(device_t dev) devstat_add_entry(&sc->amrd_stats, "amrd", sc->amrd_unit, AMR_BLKSIZE, DEVSTAT_NO_ORDERED_TAGS, - DEVSTAT_TYPE_DIRECT | DEVSTAT_TYPE_IF_OTHER, - DEVSTAT_PRIORITY_DA); + DEVSTAT_TYPE_STORARRAY | DEVSTAT_TYPE_IF_OTHER, + DEVSTAT_PRIORITY_ARRAY); disk_create(sc->amrd_unit, &sc->amrd_disk, 0, &amrd_cdevsw, &amrddisk_cdevsw); disks_registered++; diff --git a/sys/dev/ccd/ccd.c b/sys/dev/ccd/ccd.c index fcca237..7f14c78 100644 --- a/sys/dev/ccd/ccd.c +++ b/sys/dev/ccd/ccd.c @@ -543,8 +543,8 @@ ccdinit(ccd, cpaths, p) */ devstat_add_entry(&cs->device_stats, "ccd", ccd->ccd_unit, ccg->ccg_secsize, DEVSTAT_ALL_SUPPORTED, - DEVSTAT_TYPE_ASC0 |DEVSTAT_TYPE_IF_OTHER, - DEVSTAT_PRIORITY_CCD); + DEVSTAT_TYPE_STORARRAY |DEVSTAT_TYPE_IF_OTHER, + DEVSTAT_PRIORITY_ARRAY); cs->sc_flags |= CCDF_INITED; cs->sc_cflags = ccd->ccd_flags; /* So we can find out later... */ diff --git a/sys/dev/ida/ida_disk.c b/sys/dev/ida/ida_disk.c index 294b85b..5b996d4 100644 --- a/sys/dev/ida/ida_disk.c +++ b/sys/dev/ida/ida_disk.c @@ -312,7 +312,8 @@ idattach(device_t dev) devstat_add_entry(&drv->stats, "id", drv->unit, drv->secsize, DEVSTAT_NO_ORDERED_TAGS, - DEVSTAT_TYPE_DIRECT | DEVSTAT_TYPE_IF_OTHER, DEVSTAT_PRIORITY_DA); + DEVSTAT_TYPE_STORARRAY| DEVSTAT_TYPE_IF_OTHER, + DEVSTAT_PRIORITY_ARRAY); return (0); } diff --git a/sys/dev/mlx/mlx_disk.c b/sys/dev/mlx/mlx_disk.c index ab0da60..26bbfae 100644 --- a/sys/dev/mlx/mlx_disk.c +++ b/sys/dev/mlx/mlx_disk.c @@ -273,8 +273,8 @@ mlxd_attach(device_t dev) devstat_add_entry(&sc->mlxd_stats, "mlxd", sc->mlxd_unit, MLX_BLKSIZE, DEVSTAT_NO_ORDERED_TAGS, - DEVSTAT_TYPE_DIRECT | DEVSTAT_TYPE_IF_OTHER, - DEVSTAT_PRIORITY_DA); + DEVSTAT_TYPE_STORARRAY | DEVSTAT_TYPE_IF_OTHER, + DEVSTAT_PRIORITY_ARRAY); dsk = disk_create(sc->mlxd_unit, &sc->mlxd_disk, 0, &mlxd_cdevsw, &mlxddisk_cdevsw); disks_registered++; diff --git a/sys/geom/geom_ccd.c b/sys/geom/geom_ccd.c index fcca237..7f14c78 100644 --- a/sys/geom/geom_ccd.c +++ b/sys/geom/geom_ccd.c @@ -543,8 +543,8 @@ ccdinit(ccd, cpaths, p) */ devstat_add_entry(&cs->device_stats, "ccd", ccd->ccd_unit, ccg->ccg_secsize, DEVSTAT_ALL_SUPPORTED, - DEVSTAT_TYPE_ASC0 |DEVSTAT_TYPE_IF_OTHER, - DEVSTAT_PRIORITY_CCD); + DEVSTAT_TYPE_STORARRAY |DEVSTAT_TYPE_IF_OTHER, + DEVSTAT_PRIORITY_ARRAY); cs->sc_flags |= CCDF_INITED; cs->sc_cflags = ccd->ccd_flags; /* So we can find out later... */ diff --git a/sys/i386/isa/atapi-cd.c b/sys/i386/isa/atapi-cd.c index a494a6c..898af01 100644 --- a/sys/i386/isa/atapi-cd.c +++ b/sys/i386/isa/atapi-cd.c @@ -251,14 +251,14 @@ acdattach(struct atapi *ata, int unit, struct atapi_params *ap, int debug) devstat_add_entry(cdp->device_stats, string, tmpcdp->lun, DEV_BSIZE, DEVSTAT_NO_ORDERED_TAGS, DEVSTAT_TYPE_CDROM | DEVSTAT_TYPE_IF_IDE, - DEVSTAT_PRIORITY_WCD); + DEVSTAT_PRIORITY_CD); } else { acdnlun++; devstat_add_entry(cdp->device_stats, "wcd", cdp->lun, DEV_BSIZE, DEVSTAT_NO_ORDERED_TAGS, DEVSTAT_TYPE_CDROM | DEVSTAT_TYPE_IF_IDE, - DEVSTAT_PRIORITY_WCD); + DEVSTAT_PRIORITY_CD); } return 1; } diff --git a/sys/i386/isa/wd.c b/sys/i386/isa/wd.c index 4df6595..f5b27fb 100644 --- a/sys/i386/isa/wd.c +++ b/sys/i386/isa/wd.c @@ -522,7 +522,7 @@ wdattach(struct isa_device *dvp) DEVSTAT_NO_ORDERED_TAGS, DEVSTAT_TYPE_DIRECT | DEVSTAT_TYPE_IF_IDE, - DEVSTAT_PRIORITY_WD); + DEVSTAT_PRIORITY_DISK); } else { free(du, M_TEMP); diff --git a/sys/i386/isa/wd_cd.c b/sys/i386/isa/wd_cd.c index a494a6c..898af01 100644 --- a/sys/i386/isa/wd_cd.c +++ b/sys/i386/isa/wd_cd.c @@ -251,14 +251,14 @@ acdattach(struct atapi *ata, int unit, struct atapi_params *ap, int debug) devstat_add_entry(cdp->device_stats, string, tmpcdp->lun, DEV_BSIZE, DEVSTAT_NO_ORDERED_TAGS, DEVSTAT_TYPE_CDROM | DEVSTAT_TYPE_IF_IDE, - DEVSTAT_PRIORITY_WCD); + DEVSTAT_PRIORITY_CD); } else { acdnlun++; devstat_add_entry(cdp->device_stats, "wcd", cdp->lun, DEV_BSIZE, DEVSTAT_NO_ORDERED_TAGS, DEVSTAT_TYPE_CDROM | DEVSTAT_TYPE_IF_IDE, - DEVSTAT_PRIORITY_WCD); + DEVSTAT_PRIORITY_CD); } return 1; } diff --git a/sys/pc98/pc98/wd.c b/sys/pc98/pc98/wd.c index aa9d0c7..de272df 100644 --- a/sys/pc98/pc98/wd.c +++ b/sys/pc98/pc98/wd.c @@ -610,7 +610,7 @@ wdattach(struct isa_device *dvp) DEVSTAT_NO_ORDERED_TAGS, DEVSTAT_TYPE_DIRECT | DEVSTAT_TYPE_IF_IDE, - DEVSTAT_PRIORITY_WD); + DEVSTAT_PRIORITY_DISK); } else { free(du, M_TEMP); diff --git a/sys/pc98/pc98/wd_cd.c b/sys/pc98/pc98/wd_cd.c index a494a6c..898af01 100644 --- a/sys/pc98/pc98/wd_cd.c +++ b/sys/pc98/pc98/wd_cd.c @@ -251,14 +251,14 @@ acdattach(struct atapi *ata, int unit, struct atapi_params *ap, int debug) devstat_add_entry(cdp->device_stats, string, tmpcdp->lun, DEV_BSIZE, DEVSTAT_NO_ORDERED_TAGS, DEVSTAT_TYPE_CDROM | DEVSTAT_TYPE_IF_IDE, - DEVSTAT_PRIORITY_WCD); + DEVSTAT_PRIORITY_CD); } else { acdnlun++; devstat_add_entry(cdp->device_stats, "wcd", cdp->lun, DEV_BSIZE, DEVSTAT_NO_ORDERED_TAGS, DEVSTAT_TYPE_CDROM | DEVSTAT_TYPE_IF_IDE, - DEVSTAT_PRIORITY_WCD); + DEVSTAT_PRIORITY_CD); } return 1; } diff --git a/sys/sys/devicestat.h b/sys/sys/devicestat.h index 771dc06..1e17d51 100644 --- a/sys/sys/devicestat.h +++ b/sys/sys/devicestat.h @@ -79,13 +79,10 @@ typedef enum { DEVSTAT_PRIORITY_PASS = 0x030, DEVSTAT_PRIORITY_FD = 0x040, DEVSTAT_PRIORITY_WFD = 0x050, - DEVSTAT_PRIORITY_SA = 0x060, - DEVSTAT_PRIORITY_OCD = 0x070, - DEVSTAT_PRIORITY_WCD = 0x080, + DEVSTAT_PRIORITY_TAPE = 0x060, DEVSTAT_PRIORITY_CD = 0x090, - DEVSTAT_PRIORITY_WD = 0x100, - DEVSTAT_PRIORITY_DA = 0x110, - DEVSTAT_PRIORITY_CCD = 0x120, + DEVSTAT_PRIORITY_DISK = 0x110, + DEVSTAT_PRIORITY_ARRAY = 0x120, DEVSTAT_PRIORITY_MAX = 0xfff } devstat_priority; |