[Crash-utility] crash-4.0-2.30 broken on 2.6.17-rc6-mm2 ?
Badari Pulavarty
pbadari at us.ibm.com
Fri Jun 16 22:37:10 UTC 2006
Dave Anderson wrote:
> Jun'ichi Nomura wrote:
>
>> Hi,
>>
>> Dave Anderson wrote:
>> >> static inline struct new_utsname *utsname(void)
>> >> {
>> >> return ¤t->nsproxy->uts_ns->name;
>> >> }
>> >>
>> >>
>> > Ok, thanks...
>> >
>> > Well, at a minimum we'll have to skip the
>> > verify_namelist() stage, or perhaps call it later,
>> > some time after:
>> >
>> > (1) task_init() is complete, and
>> > (2) the required new_utsname fields get filled in from
>> > following the trail above, perhaps from the first
>> > idle task?
>> >
>> > Unless there's some other way we can access it.
>>
>> I think you can get it from init_uts_ns.name,
>> where 'name' is struct new_utsname.
>>
>> init/version.c:
>> struct uts_namespace init_uts_ns = {
>> .kref = {
>> .refcount = ATOMIC_INIT(2),
>> },
>> .name = {
>> .sysname = UTS_SYSNAME,
>> .nodename = UTS_NODENAME,
>> .release = UTS_RELEASE,
>> .version = UTS_VERSION,
>> .machine = UTS_MACHINE,
>> .domainname = UTS_DOMAINNAME,
>> },
>> };
>>
>> Thanks,
>> --
>> Jun'ichi Nomura, NEC Solutions (America), Inc.
>>
> Yep, thanks Nic, I was just looking at the kernel patch, and
> it looks simple enough.
>
> Badari, since this is read PRE_GDB, can you try something
> like this:
>
> $ diff kernel.c.orig kernel.c
> 120,122c120,130
> < readmem(symbol_value("system_utsname"), KVADDR,
> &kt->utsname,
> < sizeof(struct new_utsname), "system_utsname",
> < FAULT_ON_ERROR);
> ---
> > if (symbol_exists("system_utsname"))
> > readmem(symbol_value("system_utsname"),
> KVADDR, &kt->utsname,
> > sizeof(struct new_utsname),
> "system_utsname",
> > RETURN_ON_ERROR);
> > else if (symbol_exists("init_uts_ns"))
> > readmem(symbol_value("init_uts_ns") + sizeof(int),
> > KVADDR, &kt->utsname, sizeof(struct
> new_utsname),
> > "init_uts_ns", RETURN_ON_ERROR);
> > else
> > error(INFO, "cannot access utsname
> information\n\n");
> >
> $
>
> Thanks,
> Dave
>
Sorry for not replying earlier. I did the same thing earlier and it
works fine with the fix.
I guess we can wait till the kernel changes make it in.
Thanks,
Badari
More information about the Crash-utility
mailing list