Messages in this thread | | | Date | Mon, 3 Nov 2008 18:22:45 +0100 | From | Jens Axboe <> | Subject | Re: [PATCH][v3] blktrace: conversion to tracepoints |
| |
On Mon, Nov 03 2008, Arnaldo Carvalho de Melo wrote: > Em Thu, Oct 30, 2008 at 12:11:45PM +0100, Jens Axboe escreveu: > > On Thu, Oct 30 2008, Arnaldo Carvalho de Melo wrote: > > > Yes, I tested it, run 'btrace /dev/sda' several times, while doing a > > > 45 GB backup using rsync over NFS, etc. So it should have exercised the > > > tracepoints use and repeated registrater/unregister cycles. > > > > Awesome, just wanted to know what level of testing you had done (from > > "none" to "doesn't crash" to "actually works"), so thanks for that. > > Jens, > > Now I'm working on the marker glue code for systemtap to use > these tracepoints and I noticed that one important piece of information > is not available unless one first uses blk_trace_ioctl to fill in > request_queue->blk_trace, that is request_queue->blk_trace->dev, i.e. > the device associated with the request_queue. > > Is there a way to, from the request_queue, get the dev? I guess > not, as if there would be you wouldn't have added it to struct > blk_trace... > > Would it be sane to add get struct block_device->bd_dev dev_t > info into struct request_queue at sd_probe time or most probably at some > more suitable routine in the device/disk registration sequence of > events?
You can't do that, the queue is nothing more than a transport. There's no sane way to map from a queue to a device, since it's not given that there will be a 1:1 mapping even. So no go there, sorry.
> I am certainly missing lots of connections here, there are many > objects and relationships among these objects that may make the > association of a block_device with a request_queue not to be fixed all > the time, thus requiring the struct blk_trace ->dev field to be set up > at ioctl time, but I'm just trying to figure out how to remove the > requirement of a setup routine for the tracepoints to know what is the > dev_t associated with the request_queue they are getting as a parameter. > > Best Regards, > > - Arnaldo > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/
-- Jens Axboe
| |