blktrace on my block device
Quoted 10 lines · Gangadhar Mylapuram
Hi,
As for my understanding I no need to handle (BLKRESTART, BLKTRACESTOP, BLKTRACESETUP ..) in my device ioctl handling. It is block l/O layer which intercepts the
statistics and does the job.But for my device (not sda or hda), blktrace only show the Q events. It is not showing even C (completed) events. Do I need to add the support in my device ioctl handling code?
These trace pointers are only recorded if they are met.
So I guess the reason is that your device implements your own make_request_fn(So you can see 'Q' event) and no other trace point is met at all.
Thanks,
Tao
Hi,
As for my understanding I no need to handle (BLKRESTART, BLKTRACESTOP, BLKTRACESETUP ..) in my device ioctl handling. It is block l/O layer which intercepts the
statistics and does the job.
But for my device (not sda or hda), blktrace only show the Q events. It is not showing even C (completed) events. Do I need to add the support in my device ioctl handling code?
Thanks,
Gangadhar
Thanks. yes, that is the reason. I just found that our block driver is not using request queue because our device is flash memory.
-Gangadhar
Quoted 19 lines · Tao Ma
Quoted 10 lines · Gangadhar Mylapuram
Hi,
As for my understanding I no need to handle (BLKRESTART, BLKTRACESTOP, BLKTRACESETUP ..) in my device ioctl handling. It is block l/O layer which intercepts the
statistics and does the job.But for my device (not sda or hda), blktrace only show the Q events. It is not showing even C (completed) events. Do I need to add the support in my device ioctl handling code?
These trace pointers are only recorded if they are met.
So I guess the reason is that your device implements your ownmake_request_fn(So you can see 'Q' event)and no other trace point is met at all.Thanks,
Tao