From ad940a43b0d84d77f198d7cf6079809065ba8568 Mon Sep 17 00:00:00 2001 From: Yoshihiro Takahashi Date: Wed, 27 Oct 1999 12:40:20 +0000 Subject: Fix potential panic by illegal increment of wfdnlun. Submitted by: chi@bd.mbn.or.jp (Chiharu Shibata) Reviewed by: Junichi Satoh (the original author) --- sys/i386/isa/wfd.c | 5 +++-- sys/pc98/pc98/wfd.c | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) (limited to 'sys') diff --git a/sys/i386/isa/wfd.c b/sys/i386/isa/wfd.c index 4a19d7914610..045d1d86892f 100644 --- a/sys/i386/isa/wfd.c +++ b/sys/i386/isa/wfd.c @@ -192,7 +192,7 @@ wfdattach (struct atapi *ata, int unit, struct atapi_params *ap, int debug) bufq_init(&t->buf_queue); t->ata = ata; t->unit = unit; - lun = t->lun = wfdnlun++; + lun = t->lun = wfdnlun; t->param = ap; t->flags = F_MEDIA_CHANGED; t->refcnt = 0; @@ -251,10 +251,11 @@ wfdattach (struct atapi *ata, int unit, struct atapi_params *ap, int debug) * Export the drive to the devstat interface. */ devstat_add_entry(&t->device_stats, "wfd", - wfdnlun, t->cap.sector_size, + t->lun, t->cap.sector_size, DEVSTAT_NO_ORDERED_TAGS, DEVSTAT_TYPE_FLOPPY | DEVSTAT_TYPE_IF_IDE, DEVSTAT_PRIORITY_WFD); + wfdnlun++; return (1); } diff --git a/sys/pc98/pc98/wfd.c b/sys/pc98/pc98/wfd.c index 4a19d7914610..045d1d86892f 100644 --- a/sys/pc98/pc98/wfd.c +++ b/sys/pc98/pc98/wfd.c @@ -192,7 +192,7 @@ wfdattach (struct atapi *ata, int unit, struct atapi_params *ap, int debug) bufq_init(&t->buf_queue); t->ata = ata; t->unit = unit; - lun = t->lun = wfdnlun++; + lun = t->lun = wfdnlun; t->param = ap; t->flags = F_MEDIA_CHANGED; t->refcnt = 0; @@ -251,10 +251,11 @@ wfdattach (struct atapi *ata, int unit, struct atapi_params *ap, int debug) * Export the drive to the devstat interface. */ devstat_add_entry(&t->device_stats, "wfd", - wfdnlun, t->cap.sector_size, + t->lun, t->cap.sector_size, DEVSTAT_NO_ORDERED_TAGS, DEVSTAT_TYPE_FLOPPY | DEVSTAT_TYPE_IF_IDE, DEVSTAT_PRIORITY_WFD); + wfdnlun++; return (1); } -- cgit v1.3