Re: [PATCH v5 16/20] scripts/gdb: Add internal helper andconvenience function for per-cpu lookup

From: Borislav Petkov
Date: Tue Jan 29 2013 - 09:12:12 EST


On Tue, Jan 29, 2013 at 02:56:56PM +0100, Jan Kiszka wrote:
> Let me guess: You are dumping a weird QEMU/KVM CPU, right?

Nah, I actually have the silicon! :-)

Joking, of course. I wish. I'm booting the guest with -cpu phenom (it
has been like that since forever in my boot-kernel-in-kvm script) but
the host is Intel.

If I do this on an AMD host, all is ok:

(gdb) p $lx_per_cpu("cpu_info").x86_vendor_id
$1 = "AuthenticAMD\000\000\000"
(gdb) p $lx_per_cpu("cpu_info").x86_model_id
$2 = "AMD Phenom(tm) 9550 Quad-Core Processor", '\000' <repeats 24 times>
(gdb)

[ â ]

> >> +class PerCpu(gdb.Function):
> >> + __doc__ = "Return per-cpu variable.\n" \
> >> + "\n" \
> >> + "$lx_per_cpu(\"VAR\"[, CPU]): Return the per-cpu variable called VAR for the\n" \
> >> + "given CPU number. If CPU is omitted, the CPU of the current context is used.\n" \
> >> + "Note that VAR has to be quoted as string."
> >
> >
> > Ok, seriously now:
> >
> > apropos shows the "Return per-cpu... " line above. Have you found out
> > which gdb command shows the rest? help and info both say "Undefined
> > command".
>
> help function lx_...
>
> It took me a while to find this, too.

Maybe worth documenting it then at the end of gdb-kernel-debugging.txt?

--
Regards/Gruss,
Boris.

Sent from a fat crate under my desk. Formatting is fine.
--
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/