Date: Sun, 2 Mar 2014 18:19:49 +0000 (UTC) From: Alexander Motin <mav@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r346787 - in head/benchmarks/raidtest: . files Message-ID: <201403021819.s22IJn95099908@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: mav (src committer) Date: Sun Mar 2 18:19:48 2014 New Revision: 346787 URL: http://svnweb.freebsd.org/changeset/ports/346787 QAT: https://qat.redports.org/buildarchive/r346787/ Log: Fix integer type overflow, limiting test range to first 4GB of the media. Reviewed by: pjd Modified: head/benchmarks/raidtest/Makefile head/benchmarks/raidtest/files/raidtest.c Modified: head/benchmarks/raidtest/Makefile ============================================================================== --- head/benchmarks/raidtest/Makefile Sun Mar 2 18:18:19 2014 (r346786) +++ head/benchmarks/raidtest/Makefile Sun Mar 2 18:19:48 2014 (r346787) @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= raidtest -PORTVERSION= 1.2 +PORTVERSION= 1.3 CATEGORIES= benchmarks MASTER_SITES= # none DISTFILES= # none Modified: head/benchmarks/raidtest/files/raidtest.c ============================================================================== --- head/benchmarks/raidtest/files/raidtest.c Sun Mar 2 18:18:19 2014 (r346786) +++ head/benchmarks/raidtest/files/raidtest.c Sun Mar 2 18:19:48 2014 (r346787) @@ -113,8 +113,8 @@ write_ioreq(int fd, struct ioreq *iorq) static void raidtest_genfile(int argc, char *argv[]) { - uintmax_t i, nreqs, mediasize, nsectors, nbytes, nrreqs, nwreqs; - unsigned secsize, maxsec; + uintmax_t i, nreqs, mediasize, nsectors, nbytes, nrreqs, nwreqs, maxsec; + unsigned secsize; const char *file = NULL; struct ioreq iorq; int ch, fd, flags, rdonly, wronly; @@ -189,7 +189,8 @@ raidtest_genfile(int argc, char *argv[]) iorq.iorq_length = gen_size(secsize); /* Generate I/O request offset. */ maxsec = nsectors - (iorq.iorq_length / secsize); - iorq.iorq_offset = (arc4random() % maxsec) * secsize; + iorq.iorq_offset = ((((uintmax_t)arc4random() << 32) | + arc4random()) % maxsec) * secsize; /* Generate I/O request type. */ if (rdonly) iorq.iorq_type = IO_TYPE_READ;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201403021819.s22IJn95099908>