Re: New Benchmark tools, lookie looky........

From: Malcolm Beattie (mbeattie@sable.ox.ac.uk)
Date: Tue Oct 17 2000 - 12:04:32 EST


Larry McVoy writes:
> On Tue, Oct 17, 2000 at 09:21:00AM -0700, Andre Hedrick wrote:
> > Expand 'traces' ... O-SCOPE analyizer?
>
> Insert a ring buffer into the disk sort entry point. Add a userland process
> which reads this ring buffer and gets the actual requests in the actual order
> they are sent to the drive[s]. Then take that data and write a simulator into
> which you can plug in different algs. I have all this crud for SunOS if you
> want it, including elevator.c, hacksaw.c, and inorder.c.

I wrote a lightweight kernel->userland ring buffer device for Linux
called bufflink and a block-request logger that uses it called
reqlog. reqlog writes a structure
    struct reqlog {
            unsigned int major;
            unsigned int minor;
            unsigned long sector;
            long nr_sectors;
    };
to the ring buffer when an ioctl is done to enable logging. The
current patch isn't quite what you were suggesting since it does
roughly

     add_request() {
        ...
        elevator_queue(req, tmp, latency, dev, current_request);
    + if (bl_reqlog && enable_reqlog) {
    + ...
    + bufflink_append(bl_reqlog, (unsigned char *)&rl, sizeof rl);
    + }

        if (queue_new_request)
                (dev->request_fn)();
     }
but it would be easy to write the record (instead or as well)
before the elevator_queue(). The patches are available from
    http://users.ox.ac.uk/~mbeattie/linux-kernel.html

--Malcolm

-- 
Malcolm Beattie <mbeattie@sable.ox.ac.uk>
Unix Systems Programmer
Oxford University Computing Services
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Oct 23 2000 - 21:00:11 EST