[Crash-utility] A possible "dev -d" fix for newer kernels
Dave Anderson
anderson at redhat.com
Wed Mar 27 16:24:38 UTC 2013
----- Original Message -----
>
> I noticed that on newer kernels, the "dev -d" command is failing.
> Seems like the 'rq' field in the request_queue structure is now
> called 'root_rl'.
Hi John,
Right -- that issue was reported here a few weeks ago:
[Crash-utility] [PATH] crash: Fix "dev -d" for recent kernels
https://www.redhat.com/archives/crash-utility/2013-March/msg00076.html
I've got the fix queued for crash-6.1.5, which I hope to release
today or tomorrow.
Thanks,
Dave
>
> The little change in the patch below seems to fix this problem,
> at least for me on i686 & x86_64. (I was using crash 6.1.4.)
>
>
> crash> dev -d
> MAJOR GENDISK NAME REQUEST QUEUE TOTAL ASYNC
> SYNC DRV
>
> dev: invalid structure member offset: request_queue_rq
> FILE: dev.c LINE: 3807 FUNCTION: get_diskio_1()
>
> [/sbin/crash] error trace: 45dd17 => 4d6432 => 4d5eba => 4ff0fd
>
> 4ff0fd: OFFSET_verify+189
> 4d5eba: get_diskio_1+58
> 4d6432: display_all_diskio+1090
> 45dd17: exec_command+919
>
> dev: invalid structure member offset: request_queue_rq
> FILE: dev.c LINE: 3807 FUNCTION: get_diskio_1()
>
>
> Index: b/dev.c
> ===================================================================
> --- a/dev.c
> +++ b/dev.c
> @@ -4051,6 +4051,9 @@ void diskio_init(void)
> MEMBER_OFFSET_INIT(request_queue_in_flight, "request_queue",
> "in_flight");
> MEMBER_OFFSET_INIT(request_queue_rq, "request_queue", "rq");
> + if (INVALID_MEMBER(request_queue_rq))
> + MEMBER_OFFSET_INIT(request_queue_rq,
> + "request_queue", "root_rl");
> MEMBER_OFFSET_INIT(subsys_private_klist_devices, "subsys_private",
> "klist_devices");
> MEMBER_OFFSET_INIT(subsystem_kset, "subsystem", "kset");
>
> --
> Crash-utility mailing list
> Crash-utility at redhat.com
> https://www.redhat.com/mailman/listinfo/crash-utility
>
More information about the Crash-utility
mailing list