summaryrefslogtreecommitdiff
path: root/blktrace_api.h
diff options
context:
space:
mode:
authorJens Axboe <axboe@suse.de>2005-09-16 10:10:50 +0200
committerJens Axboe <axboe@suse.de>2005-09-16 10:10:50 +0200
commit3639a11e5e8bbe00662076a3d5161c26621b4947 (patch)
tree8a8bf3d1e30e804e88a3bd0d0a5e98daa6437d52 /blktrace_api.h
parent6d1b96577170e2dd26493a58b430d93a06e0fcf9 (diff)
downloadblktrace-3639a11e5e8bbe00662076a3d5161c26621b4947.tar.gz
blktrace-3639a11e5e8bbe00662076a3d5161c26621b4947.tar.bz2
[PATCH] Improve unplug logging
Extend it to capture whether this was an io based unplug (eg someone doing a wait_on_page() or similar), or of it was a timeout based event). The logging code also forget to turn the unplug payload into on-wire big endian and the parsing pdu offset was wrong.
Diffstat (limited to 'blktrace_api.h')
-rw-r--r--blktrace_api.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/blktrace_api.h b/blktrace_api.h
index c716d66..a1eb4c8 100644
--- a/blktrace_api.h
+++ b/blktrace_api.h
@@ -37,7 +37,9 @@ enum {
__BLK_TA_ISSUE, /* sent to driver */
__BLK_TA_COMPLETE, /* completed by driver */
__BLK_TA_PLUG, /* queue was plugged */
- __BLK_TA_UNPLUG, /* queue was unplugged */
+ __BLK_TA_UNPLUG_IO, /* queue was unplugged by io */
+ __BLK_TA_UNPLUG_TIMER, /* queue was unplugged by timer */
+ __BLK_TA_IOSCHED, /* some io scheduler defined action */
};
/*
@@ -52,7 +54,8 @@ enum {
#define BLK_TA_ISSUE (__BLK_TA_ISSUE | BLK_TC_ACT(BLK_TC_ISSUE))
#define BLK_TA_COMPLETE (__BLK_TA_COMPLETE| BLK_TC_ACT(BLK_TC_COMPLETE))
#define BLK_TA_PLUG (__BLK_TA_PLUG | BLK_TC_ACT(BLK_TC_QUEUE))
-#define BLK_TA_UNPLUG (__BLK_TA_UNPLUG | BLK_TC_ACT(BLK_TC_QUEUE))
+#define BLK_TA_UNPLUG_IO (__BLK_TA_UNPLUG_IO | BLK_TC_ACT(BLK_TC_QUEUE))
+#define BLK_TA_UNPLUG_TIMER (__BLK_TA_UNPLUG_TIMER | BLK_TC_ACT(BLK_TC_QUEUE))
#define BLK_IO_TRACE_MAGIC 0x65617400
#define BLK_IO_TRACE_VERSION 0x05