Messages in this thread Patch in this message | | | Date | Thu, 02 Apr 2009 10:17:26 +0800 | From | Li Zefan <> | Subject | [PATCH] blktrace: fix pdu_len when tracing packet command requests |
| |
This bug has been here since 2.6.26.
=======
Since commit d7e3c3249ef23b4617393c69fe464765b4ff1645 ("block: add large command support"), struct request->cmd has been changed from unsinged char cmd[BLK_MAX_CDB] to unsigned char *cmd.
Signed-off-by: Li Zefan <lizf@cn.fujitsu.com> --- kernel/trace/blktrace.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c index fd1ff49..bafb8d3 100644 --- a/kernel/trace/blktrace.c +++ b/kernel/trace/blktrace.c @@ -642,7 +642,7 @@ static void blk_add_trace_rq(struct request_queue *q, struct request *rq, if (blk_pc_request(rq)) { what |= BLK_TC_ACT(BLK_TC_PC); __blk_add_trace(bt, 0, rq->data_len, rw, what, rq->errors, - sizeof(rq->cmd), rq->cmd); + max_t(int, rq->cmd_len, BLK_MAX_CDB), rq->cmd); } else { what |= BLK_TC_ACT(BLK_TC_FS); __blk_add_trace(bt, rq->hard_sector, rq->hard_nr_sectors << 9, -- 1.5.4.rc3
| |