Hello community, here is the log from the commit of package bonnie for openSUSE:Factory checked in at 2012-03-09 21:21:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/bonnie (Old) and /work/SRC/openSUSE:Factory/.bonnie.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "bonnie", Maintainer is "[email protected]" Changes: -------- --- /work/SRC/openSUSE:Factory/bonnie/bonnie.changes 2011-09-23 01:52:43.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.bonnie.new/bonnie.changes 2012-03-09 21:21:59.000000000 +0100 @@ -1,0 +2,5 @@ +Thu Mar 1 16:48:56 CET 2012 - [email protected] + +- Update to 1.5: Minor changes. + +------------------------------------------------------------------- Old: ---- bonnie-1.4.dif bonnie-1.4.tar.bz2 New: ---- bonnie-1.5.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ bonnie.spec ++++++ --- /var/tmp/diff_new_pack.V5VZgm/_old 2012-03-09 21:22:01.000000000 +0100 +++ /var/tmp/diff_new_pack.V5VZgm/_new 2012-03-09 21:22:01.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package bonnie # -# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -22,11 +22,10 @@ License: GPL-2.0+ Group: System/Benchmark Summary: File System Benchmark -Version: 1.4 +Version: 1.5 Release: 476 Source0: %{name}-%{version}.tar.bz2 Source1: ctcstools.tar.bz2 -Patch0: bonnie-1.4.dif #Patch: %{name}-%{version}.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build #BuildRequires: linux-kernel-headers - fails on SLES-10-SP2 @@ -49,7 +48,6 @@ %prep %setup -n bonnie -a1 -%patch0 -p1 %build make CC=gcc CFLAGS="$RPM_OPT_FLAGS" %{?_smp_mflags} ++++++ bonnie-1.4.tar.bz2 -> bonnie-1.5.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bonnie/Bonnie.c new/bonnie/Bonnie.c --- old/bonnie/Bonnie.c 2002-04-04 14:59:46.000000000 +0200 +++ new/bonnie/Bonnie.c 2012-02-04 15:27:50.000000000 +0100 @@ -2,6 +2,10 @@ * This is a file system benchmark which attempts to study bottlenecks - * it is named 'Bonnie' after Bonnie Raitt, who knows how to use one. * + * TODO: Reproducable random numbers + * Modified, 03/10/21, Kurt Garloff <[email protected]> + * Patch from Christian Kirsch (ix) to support MacOS X: Define PAGE_MASK. + * * Modified, 02/04/04, Kurt Garloff <[email protected]> * Compile fix (Direct_IO related) for non-Linux platforms * Use small chunks (16k) in seek test to reproduce pre-1.3 results. @@ -39,7 +43,7 @@ * * COPYRIGHT NOTICE: * Copyright (c) Tim Bray, 1990-1996. - * Copyright (c) Kurt Garloff, 1999-2002. + * Copyright (c) Kurt Garloff <[email protected]>, 1999-2012. * * Everybody is hereby granted rights to use, copy, and modify this program, * provided only that this copyright notice and the disclaimer below @@ -55,15 +59,17 @@ * or consequential damage, loss, costs or fees or expenses of any * nature or kind. */ -/* $Id: Bonnie.c,v 1.6 2002/04/04 12:59:46 garloff Exp $ */ +/* $Id: Bonnie.c,v 1.3 2012/02/04 14:27:50 garloff Exp $ */ #include <unistd.h> #include <stdio.h> #include <errno.h> #include <fcntl.h> +#include <string.h> #include <sys/types.h> +#include <time.h> #include <sys/time.h> -#include <string.h> +#include <sys/ioctl.h> #if defined(SysV) #include <limits.h> #include <sys/times.h> @@ -79,7 +85,7 @@ #ifdef __linux__ /* for o_direct */ -#include <asm/page.h> +#include <linux/fs.h> #endif #ifdef unix @@ -101,13 +107,13 @@ #define UpdateSeek (10) //#define SeekProcCount (3) unsigned SeekProcCount = 3; -#define Chunk (1<<20) -#define SmallChunk (8192) -#define SeekChunk (16384) +#define Chunk (1UL<<20) +#define SmallChunk (8192UL) +#define SeekChunk (16384UL) #if defined(__linux__) //# include <asm/fcntl.h> -# if !defined(O_DIRECT) && (defined(__alpha__) || defined(__i386__)) +# if !defined(O_DIRECT) && (defined(__alpha__) || defined(__i386__) || defined(__x86_64__)) # define O_DIRECT 040000 /* direct disk access */ # endif # ifdef O_DIRECT @@ -121,27 +127,29 @@ Putc, ReWrite, FastWrite, Getc, FastRead, Lseek, TestCount } tests_t; -static double cpu_so_far(); +static double cpu_so_far(void); static void doseek(off_t where, int fd, int update); static void get_delta_t(tests_t test); static void io_error(char * message); static void newfile(char * name, int * fd, FILE * * stream, int create, int volcnt, int o_dio); -static void delfiles (); +static void delfiles(void); #ifdef unix -static void breakhandler (int); +static void breakhandler(int); #endif +static inline void flshbf(void); #if defined(SysV) /* System V wrappers for randomizers */ -static long random(); -static void srandom(int seed); +static long random(void); +static void srandom(int); #endif -static void report(char * machine, off_t size, int volumes); -static void write_html(char * machine, off_t size, int volumes); -static double time_so_far(); -static void timestamp(); -static void usage(); +static void report(char *, off_t, int); +static void write_html(char *, off_t, int); +static double time_so_far(void); +static void timestamp(void); +static void usage(void); +static char * cpupc (const unsigned int); /* * Housekeeping variables to build up timestamps for the tests; @@ -155,7 +163,7 @@ static double last_cpustamp = 0.0; /* for computing delta-t */ static double last_timestamp = 0.0; /* for computing delta-t */ -static const char * version = "1.4"; +static const char * version = "1.5"; #define MAXVOLUMES 512 @@ -163,7 +171,7 @@ int volumes = 1; /* number of volumes to work on */ char dosync = 0; char useunlock = 0; -char doflshbf = 0; +char *flshbfdev = 0; #ifdef SUPPORT_DIO char o_direct = 0; #else @@ -191,19 +199,26 @@ int seek_feedback[2]; char *seek_tickets; double seeker_report[3]; + double seek_tm, read_bw; off_t size; - int memsz; + long unsigned memsz; FILE * stream[MAXVOLUMES]; int volcnt; register off_t words; +#ifdef _SC_PAGESIZE + size_t page_size = (size_t) sysconf (_SC_PAGESIZE); +#else + size_t page_size = 16384; +#endif - __buf = malloc(Chunk + ~PAGE_MASK); + __buf = malloc(Chunk + page_size-1); if (!__buf) { - fprintf(stderr, "unable to malloc %d bytes\n", Chunk + ~PAGE_MASK); + fprintf(stderr, "unable to malloc %lu bytes\n", Chunk + (unsigned)page_size-1); exit(1) ; } - buf = (int *)((unsigned long)(__buf + ~PAGE_MASK) & PAGE_MASK); + buf = (int *)((unsigned long)(__buf + page_size-1) & ~(page_size-1)); + //printf("Buffer at %p (from %p)\n", buf, __buf); basetime = (int) time((time_t *) NULL); size = 100; @@ -225,6 +240,10 @@ strncpy (machine, argv[next][2]? &argv[next][2]: argv[++next], 63); else if (memcmp(argv[next], "-p", 2) == 0) SeekProcCount = atol(argv[next][2]? &argv[next][2]: argv[++next]); +#ifdef __linux__ + else if (memcmp(argv[next], "-Y", 2) == 0) + flshbfdev = argv[next][2]? argv[next]+2: argv[++next]; +#endif else if (memcmp(argv[next], "-S", 2) == 0) Seeks = atol(argv[next][2]? &argv[next][2]: argv[++next]); else notyetparsed = 1; @@ -232,10 +251,6 @@ if (notyetparsed) { if (memcmp(argv[next], "-y", 2) == 0) dosync = 1; -#if 0 //def __linux__ - else if (memcmp(argv[next], "-Y", 2) == 0) - doflshbf = 1; -#endif #if defined(__GLIBC__) && __GLIBC__ >= 2 else if (memcmp(argv[next], "-u", 2) == 0) useunlock = 1; @@ -260,15 +275,21 @@ #if defined(_SC_PHYS_PAGES) memsz = sysconf (_SC_PHYS_PAGES); - memsz *= sysconf (_SC_PAGESIZE); - if (1024*1024*size <= memsz) + memsz *= sysconf (_SC_PAGESIZE)/1024; + /* printf("RAM: %lu MiB, File: %lu MiB\n", memsz/1024, size); */ + if (1024*size <= memsz) { - fprintf (stderr, "Bonnie: Warning: You have %iMB RAM, but you test with only %iMB datasize!\n", - memsz/(1024*1024), size); - fprintf (stderr, "Bonnie: This might yield unrealistically good results,\n"); - fprintf (stderr, "Bonnie: for reading and seeking%s.\n", - (dosync? "": " and writing")); + fprintf (stderr, "Bonnie: Warning: You have %luMiB RAM, but you test with only %uMiB datasize!\n", + memsz/1024, (unsigned)size); + fprintf (stderr, "Bonnie: This might yield unrealistically good results,\n"); + fprintf (stderr, "Bonnie: for reading and seeking%s%s.\n", + (dosync? "": " and writing"), (o_direct? " for char I/O (putc/getc)": "")); + } +#else +# ifdef __GNUC__ +# warn Memorz size can not be determined +# endif #endif /* sanity check - 32-bit machines can't handle more than 2047 Mb */ if (sizeof(off_t) <= 4 && size > 2047) @@ -282,7 +303,7 @@ /* sanity check on number of volumes */ if ((volumes > MAXVOLUMES)||(volumes < 1)) { - fprintf(stderr, "Volume count (%d) > %u or < 1, cannot work\n",volumes,MAXVOLUMES); + fprintf(stderr, "Volume count (%i) > %i or < 1, cannot work\n", volumes, MAXVOLUMES); } sync (); @@ -295,6 +316,8 @@ if (o_direct) fprintf(stderr, "Using O_DIRECT for block based I/O\n"); sleep (1); sync (); + if (flshbfdev) + flshbf(); /* Install signal handlers */ #ifdef unix @@ -343,7 +366,9 @@ io_error("fclose after putc"); } get_delta_t(Putc); - fprintf(stderr, "done: %6d kB/s %5.1f %%CPU\n", + if (flshbfdev) + flshbf(); + fprintf(stderr, "done: %6d kiB/s %5.1f %%CPU\n", (int) (((double) size * (double) volumes) / (delta[(int) Putc][Elapsed] * 1024.0)), delta[(int) Putc][CPU] / delta[(int) Putc][Elapsed] * 100.0); @@ -380,7 +405,9 @@ io_error("close after rewrite"); } get_delta_t(ReWrite); - fprintf(stderr, " done: %6d kB/s %5.1f %%CPU\n", + if (flshbfdev) + flshbf(); + fprintf(stderr, " done: %6d kiB/s %5.1f %%CPU\n", (int) (((double) size * (double) volumes) / (delta[(int) ReWrite][Elapsed] * 1024.0)), delta[(int) ReWrite][CPU] / delta[(int) ReWrite][Elapsed] * 100.0); @@ -407,7 +434,9 @@ io_error("close after fast write"); } get_delta_t(FastWrite); - fprintf(stderr, " done: %6d kB/s %5.1f %%CPU\n", + if (flshbfdev) + flshbf(); + fprintf(stderr, " done: %6d kiB/s %5.1f %%CPU\n", (int) (((double) size * (double) volumes) / (delta[(int) FastWrite][Elapsed] * 1024.0)), delta[(int) FastWrite][CPU] / delta[(int) FastWrite][Elapsed] * 100.0); @@ -454,7 +483,9 @@ if (fclose(stream[volcnt]) == -1) io_error("fclose after getc"); get_delta_t(Getc); - fprintf(stderr, "done: %6d kB/s %5.1f %%CPU\n", + if (flshbfdev) + flshbf(); + fprintf(stderr, "done: %6d kiB/s %5.1f %%CPU\n", (int) (((double) size * (double) volumes) / (delta[(int) Getc][Elapsed] * 1024.0)), delta[(int) Getc][CPU] / delta[(int) Getc][Elapsed] * 100.0); @@ -482,7 +513,9 @@ if (close(fd[volcnt]) == -1) io_error("close after read"); get_delta_t(FastRead); - fprintf(stderr, " done: %6d kB/s %5.1f %%CPU\n", + if (flshbfdev) + flshbf(); + fprintf(stderr, " done: %6d kiB/s %5.1f %%CPU\n", (int) (((double) size * (double) volumes) / (delta[(int) FastRead][Elapsed] * 1024.0)), delta[(int) FastRead][CPU] / delta[(int) FastRead][Elapsed] * 100.0); @@ -609,6 +642,19 @@ fprintf(stderr, "done..."); } /* for each child */ delta[(int) Lseek][Elapsed] = last_stop - first_start; + read_bw = ((double) size * (double) volumes) / + (delta[(int) FastRead][Elapsed]); + seek_tm = (double)(last_stop-first_start) / (double)Seeks + - (SeekChunk*Seeks > size? + (double)size/(read_bw * Seeks) : + (double)SeekChunk / read_bw); + /* + fprintf(stderr, "\n%i seeks: %.2fms, time for %i*%iB reads: %.2fms", + Seeks, (last_stop-first_start)*1000.0, Seeks, SeekChunk, + 1000.0*(Seeks*SeekChunk) / read_bw); + */ + fprintf(stderr, "\nEstimated seek time: raw %.3fms, eff %.3fms\n", + 1000.0*(last_stop-first_start)/(double)Seeks, seek_tm*1000.0); fprintf(stderr, "\n"); if (html) @@ -622,9 +668,9 @@ } #define FLTBUFS 8 -char fltidx = 0; +unsigned char fltidx = 0; char fltbuf[8][FLTBUFS]; -char * cpupc (const int idx) +char * cpupc (const unsigned int idx) { double p = 100.0 * (double)delta[idx][CPU] / (double)delta[idx][Elapsed]; fltidx++; fltidx %= FLTBUFS; @@ -670,23 +716,23 @@ printf(" "); if (o_direct && useunlock) printf( - "-CharUnlk- -DIOBlock- -DRewrite- -CharUnlk- -DIOBlock- --%02ik (%02i)-\n", + "-CharUnlk- -DIOBlock- -DRewrite- -CharUnlk- -DIOBlock- --%02uk (%02u)-\n", (Seeks+500)/1000, SeekProcCount); else if (o_direct && !useunlock) printf( - "-Per Char- -DIOBlock- -DRewrite- -Per Char- -DIOBlock- --%02ik (%02i)-\n", + "-Per Char- -DIOBlock- -DRewrite- -Per Char- -DIOBlock- --%02uk (%02u)-\n", (Seeks+500)/1000, SeekProcCount); else if (!o_direct && useunlock) printf( - "-CharUnlk- --Block--- -Rewrite-- -CharUnlk- --Block--- --%02ik (%02i)-\n", + "-CharUnlk- --Block--- -Rewrite-- -CharUnlk- --Block--- --%02uk (%02u)-\n", (Seeks+500)/1000, SeekProcCount); else if (!o_direct && !useunlock) printf( - "-Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --%02ik (%02i)-\n", + "-Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --%02uk (%02u)-\n", (Seeks+500)/1000, SeekProcCount); printf("Machine MB "); - printf("K/sec %%CPU K/sec %%CPU K/sec %%CPU K/sec %%CPU K/sec "); + printf("kiB/s %%CPU kiB/s %%CPU kiB/s %%CPU kiB/s %%CPU kiB/s "); printf("%%CPU /sec %%CPU\n"); printf("%-6.6s %d*%4ld ", machine, volumes, size / (1024 * 1024)); @@ -746,12 +792,14 @@ fprintf(stderr, "bonnie [-d scratch-dir] [-s size-in-Mb] [-v number-of-volumes] [-html]\n" " [-m machine-label] [-p number-of-seekers] [-S seeks] [-y (=fsync)]\n" - " [-u (=unlocked)]"); + " [-u (=unlocked)]" #ifdef SUPPORT_DIO - fprintf (stderr, " [-o_direct]\n"); -#else - fprintf (stderr, "\n"); -#endif + " [-o_direct]" +#endif +#ifdef __linux__ + " [-Y blkdev (=flsbuf)]" +#endif + "\n"); exit(1); } @@ -763,8 +811,7 @@ } static void -get_delta_t(test) - tests_t test; +get_delta_t(tests_t test) { int which = (int) test; @@ -818,7 +865,7 @@ } static void -delfiles () +delfiles() { int volcnt; for(volcnt = 0; volcnt < volumes; volcnt++) @@ -835,7 +882,7 @@ { char buf[SmallChunk]; - delfiles (); + delfiles(); sprintf(buf, "Bonnie: drastic I/O error (%s)", message); perror(buf); exit(1); @@ -845,9 +892,9 @@ static void breakhandler (int sig) { - signal (sig, SIG_DFL); - delfiles (); - raise (sig); + signal(sig, SIG_DFL); + delfiles(); + raise(sig); } #endif @@ -908,3 +955,21 @@ } #endif + +static void +flshbf() +{ +#ifdef __linux__ + int fd, err; + fd = open (flshbfdev, O_RDONLY); + if (!fd) + fprintf (stderr, "bonnie: Could not open %s for flushing\n", + flshbfdev); + err = ioctl (fd, BLKFLSBUF, 0); + if (err) + fprintf (stderr, "bonnie: Could not BLKFLSBUF %s: %i\n", + flshbfdev, err); + close (fd); +#endif +} + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bonnie/Makefile new/bonnie/Makefile --- old/bonnie/Makefile 2002-02-20 19:22:55.000000000 +0100 +++ new/bonnie/Makefile 2009-08-03 13:20:05.000000000 +0200 @@ -1,7 +1,7 @@ # Bonnie Makefile # For Linux use -O2 -CFLAGS = -O2 $(SYSFLAGS) +CFLAGS = -O2 -Wall $(SYSFLAGS) #CFLAGS = -O $(SYSFLAGS) #CC = cc @@ -23,9 +23,11 @@ # Added 99/07/20, <[email protected]> install: Bonnie install -d $(DESTDIR)$(PREFIX)/bin - install -s -m 0755 -o root -g root Bonnie $(DESTDIR)$(PREFIX)/bin/bonnie + #install -s -m 0755 -o root -g root Bonnie $(DESTDIR)$(PREFIX)/bin/bonnie + install -m 0755 Bonnie $(DESTDIR)$(PREFIX)/bin/bonnie install -d $(DESTDIR)$(MANDIR)/man1 - install -m 0644 -o man -g root bonnie.1 $(DESTDIR)$(MANDIR)/man1/bonnie.1 + #install -m 0644 -o man -g root bonnie.1 $(DESTDIR)$(MANDIR)/man1/bonnie.1 + install -m 0644 bonnie.1 $(DESTDIR)$(MANDIR)/man1/bonnie.1 gzip -9f $(DESTDIR)$(MANDIR)/man1/bonnie.1 clean: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bonnie/README new/bonnie/README --- old/bonnie/README 2002-04-04 15:07:40.000000000 +0200 +++ new/bonnie/README 2012-02-04 15:06:23.000000000 +0100 @@ -5,7 +5,7 @@ it. As nobody could be found (I did not try very hard that time, I have to admit), I just looked out for the latest bonnie versions, applied the bigbonnie patches that I also found out there. I put everything together -and implemented the changes I had in mind: +and implemented the changes I had in mind: * breakhandler that deletes the test files created in case bonnie gets interrupted * output a warning if the test file size is smaller than the amount of @@ -19,7 +19,7 @@ I hope I didn't break portability. I did try to use the correct #ifdefs to allow for compilation on different systems. Unfortunately, I could only test -onLinux and DEC OSF 4. +on Linux and DEC OSF 4. I called the result bonnie-1.2 and put it on my web site http://www.garloff.de/kurt/linux/bonnie/ @@ -37,4 +37,7 @@ IO) and fixes the seek numbers again. (They were much too low for Bonnie-1.3, as large chunks were read on every seek operation.) - Kurt Garloff <[email protected]>, 4/2002. +Bonnie-1.5 has some cleanups, some output improvements and the warning that +testfile is smaller than RAM size works again for large machines. + + Kurt Garloff <[email protected]>, 2/2012. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bonnie/bonnie.1 new/bonnie/bonnie.1 --- old/bonnie/bonnie.1 2000-09-08 21:16:42.000000000 +0200 +++ new/bonnie/bonnie.1 2012-02-04 15:20:22.000000000 +0100 @@ -68,19 +68,26 @@ .RI "[-d\ scratch-dir]" .RI "[-html]" .RI "[-m\ machine-label]" -.RI "[-s\ size-in-Mb]" +.RI "[-s\ size-in-MiB]" +.RI "[-v\ nor-of-volumes]" .RI "[-S\ no-of-seeks]" .RI "[-p\ no-of-seekers]" .RI "[-y]" +.RI "[-u]" +.RI "[-o_direct]" +.RI "[-Y blkdev]" .SH "OPTIONS" .PP -d scratch-dir : Write scratch file in named directory (default: ".") -html : Generate HTML output -m machine-label : use <machine-label> to label report - -s size-in-Mb : how many Mb to use for testing (default: 100) + -s size-in-MiB : how many MiB to use for testing (default: 100) + -v no-of-volumes : how many test files (volumes) to use -S no-of-seeks : how many seeks should be done -p no-of-seekers : how many processes should be spawned for seeking -y : fsync() after each operation + -o_direct : bypass kernel pagecache by using O_DIRECT + -Y blkdev : flush buffer cache after each test .\"------- .SH "DESCRIPTION" .\"------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bonnie/bonnie.spec new/bonnie/bonnie.spec --- old/bonnie/bonnie.spec 2000-09-08 21:16:42.000000000 +0200 +++ new/bonnie/bonnie.spec 2012-02-04 15:11:27.000000000 +0100 @@ -1,69 +1,133 @@ # -# spec file for package bonnie (Version 1.2) -# -# Copyright (c) 2000 SuSE GmbH Nuernberg, Germany. -# -# please send bugfixes or comments to [email protected]. -# - -# neededforbuild -# usedforbuild aaa_base aaa_dir autoconf automake base bash bindutil binutils bison bzip compress cpio cracklib devs diff ext2fs file fileutil find flex gawk gcc gdbm gettext gpm gppshare groff gzip kbd less libc libtool libz lx_suse make mktemp modules ncurses net_tool netcfg nkita nkitb nssv1 pam patch perl pgp ps rcs rpm sendmail sh_utils shadow shlibs strace syslogd sysvinit texinfo textutil timezone unzip util vim xdevel xf86 xshared - -Vendor: SuSE GmbH, Nuernberg, Germany -Distribution: SuSE Linux 7.0 -Name: bonnie -Release: 0 -Packager: [email protected] - -Copyright: Freely distributable (Artistic) -Group: Utilities/System -Autoreqprov: on -Summary: File System Benchmark -Version: 1.2 -Source: %{name}-%{version}.tar.bz2 -#Patch: bonnie.dif -BuildRoot: /var/tmp/%{name}-buildroot +# spec file for package bonnie (Version 1.5) +# +# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + +# norootforbuild + + +Name: bonnie +Url: http://www.garloff.de/kurt/linux/bonnie/ +License: GPL v2 or later +Group: System/Benchmark +AutoReqProv: on +Summary: File System Benchmark +Version: 1.5 +Release: 1 +Source0: %{name}-%{version}.tar.bz2 +Source1: ctcstools.tar.bz2 +#Patch: %{name}-%{version}.diff +BuildRoot: %{_tmppath}/%{name}-%{version}-build +#BuildRequires: linux-kernel-headers - fails on SLES-10-SP2 +#BuildRequires: kernel-source %description -Bonnie is a popular performance benchmark that targets various aspects -of Unix filesystems and the underlying devices. +Bonnie is a popular performance benchmark that targets various aspects +of Unix file systems. + -SuSE series: ap Authors: -------- -Tim Bray <[email protected]> -Kurt Garloff <[email protected]> + Tim Bray <[email protected]> + Kurt Garloff <[email protected]> + +#%package ctcs2-glue +#License: GPL v2 or later +#Summary: File System Benchmark +#Group: System/Benchmark +#Requires: bonnie ctcs2 >= 0.1.1 +##BuildArchitectures: noarch +# +#%description ctcs2-glue +#Bonnie is a popular performance benchmark that targets various aspects +#of Unix file systems. +# +# +# +#Authors: +#-------- +# Tim Bray <[email protected]> +# Kurt Garloff <[email protected]> %prep -%setup -n bonnie -#%patch -p1 +%setup -n bonnie -a1 %build make CC=gcc CFLAGS="$RPM_OPT_FLAGS" %install make install DESTDIR=$RPM_BUILD_ROOT MANDIR=%{_mandir} -%{?suse_check} +#cd ctcstools +#mkdir -p $RPM_BUILD_ROOT/usr/share/qa/bonnie/tcf +#mkdir -p $RPM_BUILD_ROOT/usr/share/qa/tcf +#mkdir -p $RPM_BUILD_ROOT/usr/lib/ctcs2/tools +#install -m 744 do_bonnie $RPM_BUILD_ROOT/usr/share/qa/bonnie/ +#install -m 644 *.tcf $RPM_BUILD_ROOT/usr/share/qa/bonnie/tcf/ +#for A in *.tcf; do ln -s ../../../../usr/share/qa/bonnie/tcf/$A $RPM_BUILD_ROOT/usr/share/qa/tcf/; done +#install -m 744 bonnie-run $RPM_BUILD_ROOT/usr/lib/ctcs2/tools/ %files +%defattr(-, root, root) %doc bonnie.doc README /usr/bin/bonnie -/usr/share/man/man1/bonnie.1.gz +%{_mandir}/man1/bonnie.1* -%changelog -n bonnie -* Wed Aug 30 2000 - [email protected] +#%files ctcs2-glue +#%defattr(-, root, root) +#/usr/share/qa +#/usr/lib/ctcs2 + +%changelog +* Fri Feb 3 2012 [email protected] +- Version 1.5: Minor fixes +* Fri Sep 26 2008 [email protected] +- added subpackage for CTCS2 integration +* Sat Apr 26 2008 [email protected] +- remove unused header file +* Mon May 22 2006 [email protected] +- Don't build as root. +- Don't strip binaries. +* Fri May 19 2006 [email protected] +- fix build on ppc64 (define PAGE_MASK if not done) +* Wed Jan 25 2006 [email protected] +- converted neededforbuild to BuildRequires +* Thu Apr 04 2002 [email protected] +- Version-1.4: + * Fix seek benchmark: 1.3 read too large chunks (1MB instead + of 16k) after every seek, resulting in too low seek numbers. + bug #15642 +* Sun Feb 24 2002 [email protected] +- Compile fix for archs not supporting O_DIRECT (typo) +- Use O_DIRECT from fcntl.h if present. +* Wed Feb 20 2002 [email protected] +- Update to bonnie-1.3: + * Fixed HTML output (thanks to Rupert Kolb for notfying/patch) + * Optionally use O_DIRECT (patch by Chris Mason / Andrea Arc.) +* Wed Aug 30 2000 [email protected] - Update to 1.2: * New option -u for getc_/putc_unlocked. - * Fixed CPU percentage reports if equal or in excess of 100%. + * Fixed CPU percentage reports if equal or in excess of 100%%. * Machine name defaults to hostname now. - Use BuildRoot. -* Sun Feb 13 2000 - [email protected] +* Mon Feb 14 2000 [email protected] - Moved manpage to /usr/share/man - new options -y, -S, -p - Add warning if test-size smaller memsize -* Mon Sep 13 1999 - [email protected] +* Mon Sep 13 1999 [email protected] - ran old prepare_spec on spec file to switch to new prepare_spec. -* Tue Jul 20 1999 - [email protected] +* Tue Jul 20 1999 [email protected] - Initial check in of Big Bonnie. - Added breakhandler to remove temporary files. -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
