summaryrefslogtreecommitdiffstats
path: root/usr.sbin/diskinfo
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2003-04-09 14:25:04 +0000
committerphk <phk@FreeBSD.org>2003-04-09 14:25:04 +0000
commit8523701a3e515117dbba55c729515c29fb063230 (patch)
treed2aa6fd0dd9469bdc05ea0e7e2f1ab7c59d8a815 /usr.sbin/diskinfo
parent4a8ff05f172879c1dab840bcd64ff6f7fb211d99 (diff)
downloadFreeBSD-src-8523701a3e515117dbba55c729515c29fb063230.zip
FreeBSD-src-8523701a3e515117dbba55c729515c29fb063230.tar.gz
I forgot a rather crucial cast when I made this sectorsize agnostic.
Tune iteration counts a bit.
Diffstat (limited to 'usr.sbin/diskinfo')
-rw-r--r--usr.sbin/diskinfo/diskinfo.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/usr.sbin/diskinfo/diskinfo.c b/usr.sbin/diskinfo/diskinfo.c
index 0db8756..45837f6 100644
--- a/usr.sbin/diskinfo/diskinfo.c
+++ b/usr.sbin/diskinfo/diskinfo.c
@@ -135,7 +135,7 @@ rdsect(int fd, u_int blockno, u_int sectorsize)
{
int error;
- lseek(fd, blockno * sectorsize, SEEK_SET);
+ lseek(fd, (off_t)blockno * sectorsize, SEEK_SET);
error = read(fd, sector, sectorsize);
if (error != sectorsize)
err(1, "read error or disk too small for test.");
@@ -201,13 +201,13 @@ speeddisk(const char *name, int fd, off_t mediasize, u_int sectorsize)
printf("Seek times:\n");
printf("\tFull stroke:\t");
b0 = 0;
- b1 = sectorcount - 1 - 125 * 16384;
+ b1 = sectorcount - 1 - 16384;
T0();
for (i = 0; i < 125; i++) {
rdsect(fd, b0, sectorsize);
b0 += 16384;
rdsect(fd, b1, sectorsize);
- b1 += 16384;
+ b1 -= 16384;
}
TN(250);
@@ -237,38 +237,38 @@ speeddisk(const char *name, int fd, off_t mediasize, u_int sectorsize)
printf("\tShort forward:\t");
b0 = sectorcount / 2;
T0();
- for (i = 0; i < 1000; i++) {
+ for (i = 0; i < 400; i++) {
rdsect(fd, b0, sectorsize);
b0 += 16384;
}
- TN(1000);
+ TN(400);
printf("\tShort backward:\t");
b0 = sectorcount / 2;
T0();
- for (i = 0; i < 1000; i++) {
+ for (i = 0; i < 400; i++) {
rdsect(fd, b0, sectorsize);
b0 -= 16384;
}
- TN(1000);
+ TN(400);
printf("\tSeq outer:\t");
b0 = 0;
T0();
- for (i = 0; i < 20480; i++) {
+ for (i = 0; i < 2048; i++) {
rdsect(fd, b0, sectorsize);
b0++;
}
- TN(20480);
+ TN(2048);
printf("\tSeq inner:\t");
- b0 = sectorcount - 20480 - 1;
+ b0 = sectorcount - 2048 - 1;
T0();
- for (i = 0; i < 20480; i++) {
+ for (i = 0; i < 2048; i++) {
rdsect(fd, b0, sectorsize);
b0++;
}
- TN(20480);
+ TN(2048);
printf("Transfer rates:\n");
printf("\toutside: ");
OpenPOWER on IntegriCloud