Messages in this thread Patch in this message | | | Date | Tue, 1 Aug 2006 17:47:03 +0400 | From | Alexey Dobriyan <> | Subject | [PATCH] ifdef blktrace debugging fields |
| |
On Tue, Aug 01, 2006 at 09:44:36AM +0200, Jens Axboe wrote: > Certainly. If Alexey adds the blkdev.h bit as well, we can go ahead with > it.
Done. Originally I looked at slab size of task_struct and still recovering.
[PATCH] ifdef blktrace debugging fields
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> ---
block/ll_rw_blk.c | 4 ++-- include/linux/blkdev.h | 4 ++-- include/linux/sched.h | 3 ++- kernel/fork.c | 2 ++ 4 files changed, 8 insertions(+), 5 deletions(-)
--- a/block/ll_rw_blk.c +++ b/block/ll_rw_blk.c @@ -1779,10 +1779,10 @@ static void blk_release_queue(struct kob if (q->queue_tags) __blk_queue_free_tags(q); - +#ifdef CONFIG_BLK_DEV_IO_TRACE if (q->blk_trace) blk_trace_shutdown(q); - +#endif kmem_cache_free(requestq_cachep, q); } --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h @@ -417,9 +417,9 @@ struct request_queue unsigned int sg_timeout; unsigned int sg_reserved_size; int node; - +#ifdef CONFIG_BLK_DEV_IO_TRACE struct blk_trace *blk_trace; - +#endif /* * reserved for flush operations */ --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -784,8 +784,9 @@ #endif struct prio_array *array; unsigned short ioprio; +#ifdef CONFIG_BLK_DEV_IO_TRACE unsigned int btrace_seq; - +#endif unsigned long sleep_avg; unsigned long long timestamp, last_ran; unsigned long long sched_time; /* sched_clock time spent running */ --- a/kernel/fork.c +++ b/kernel/fork.c @@ -177,7 +177,9 @@ static struct task_struct *dup_task_stru /* One for us, one for whoever does the "release_task()" (usually parent) */ atomic_set(&tsk->usage,2); atomic_set(&tsk->fs_excl, 0); +#ifdef CONFIG_BLK_DEV_IO_TRACE tsk->btrace_seq = 0; +#endif tsk->splice_pipe = NULL; return tsk; } - 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/
| |