Comment 0 for bug 1765660

Revision history for this message
bugproxy (bugproxy) wrote :

== Comment: #0 - PAVITHRA R. PRAKASH <> - 2018-03-29 01:14:47 ==
---Problem Description---

Ubuntu 18.04: "ipcs" command fails with error "invalid structure member offset" in crash prompt.

---Environment--

System Name : ltc-briggs2
Model/Type : P8
Platform : BML

---Uname output---

root@ltc-briggs2:~# uname -a
Linux ltc-briggs2 4.15.0-13-generic #14-Ubuntu SMP Sat Mar 17 13:43:15 UTC 2018 ppc64le ppc64le ppc64le GNU/Linux

---Steps to reproduce--

1. Configure kdump.
2. Trigger crash
3. run crash on captured dump

---Logs----

root@ltc-briggs2:~# dpkg -l|grep makedumpfile
ii makedumpfile 1:1.6.3-1 ppc64el VMcore extraction tool
root@ltc-briggs2:~# dpkg -l|grep crash
ii apport 2.20.9-0ubuntu1 all automatically generate crash reports for debugging
ii crash 7.2.1-1 ppc64el kernel debugging utility, allowing gdb like syntax
ii kdump-tools 1:1.6.3-1 ppc64el scripts and tools for automating kdump (Linux crash dumps)
ii python3-apport 2.20.9-0ubuntu1 all Python 3 library for Apport crash report handling
root@ltc-briggs2:~# dpkg -l|grep kexec
ii kexec-tools 1:2.0.16-1ubuntu1 ppc64el tools to support fast kexec reboots
root@ltc-briggs2:~#

.0-13-generic dump.201803272257 03272257# crash /usr/lib/debug/boot/vmlinux-4.15.

crash 7.2.1
Copyright (C) 2002-2017 Red Hat, Inc.
Copyright (C) 2004, 2005, 2006, 2010 IBM Corporation
Copyright (C) 1999-2006 Hewlett-Packard Co
Copyright (C) 2005, 2006, 2011, 2012 Fujitsu Limited
Copyright (C) 2006, 2007 VA Linux Systems Japan K.K.
Copyright (C) 2005, 2011 NEC Corporation
Copyright (C) 1999, 2002, 2007 Silicon Graphics, Inc.
Copyright (C) 1999, 2000, 2001, 2002 Mission Critical Linux, Inc.
This program is free software, covered by the GNU General Public License,
and you are welcome to change it and/or distribute copies of it under
certain conditions. Enter "help copying" to see the conditions.
This program has absolutely no warranty. Enter "help warranty" for details.

GNU gdb (GDB) 7.6
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "powerpc64le-unknown-linux-gnu"...

      KERNEL: /usr/lib/debug/boot/vmlinux-4.15.0-13-generic
    DUMPFILE: dump.201803272257 [PARTIAL DUMP]
        CPUS: 160
        DATE: Tue Mar 27 22:56:58 2018
      UPTIME: 00:04:07
LOAD AVERAGE: 1.06, 0.53, 0.20
       TASKS: 1734
    NODENAME: ltc-briggs2
     RELEASE: 4.15.0-13-generic
     VERSION: #14-Ubuntu SMP Sat Mar 17 13:43:15 UTC 2018
     MACHINE: ppc64le (2926 Mhz)
      MEMORY: 512 GB
       PANIC: "sysrq: SysRq : Trigger a crash"
         PID: 7420
     COMMAND: "bash"
        TASK: c000003e56c7c600 [THREAD_INFO: c000003e56cb0000]
         CPU: 41
       STATE: TASK_RUNNING (SYSRQ)

crash> ?

* files mach repeat timer
alias foreach mod runq tree
ascii fuser mount search union
bt gdb net set vm
btop help p sig vtop
dev ipcs ps struct waitq
dis irq pte swap whatis
eval kmem ptob sym wr
exit list ptov sys q
extend log rd task

crash version: 7.2.1 gdb version: 7.6
For help on any command above, enter "help <command>".
For help on input options, enter "help input".
For help on output options, enter "help output".

crash> ipcs
SHMID_KERNEL KEY SHMID UID PERMS BYTES NATTCH STATUS

ipcs: invalid structure member offset: idr_top
      FILE: ipcs.c LINE: 628 FUNCTION: idr_find()

[/usr/bin/crash] error trace: 70374748930 => 703747482d8 => 703746e8e98 => 703745b1488

ipcs: invalid structure member offset: idr_top
      FILE: ipcs.c LINE: 628 FUNCTION: idr_find()

crash> q

== Comment: #3 - PAVITHRA R. PRAKASH <> - 2018-04-09 00:36:52 ==
(In reply to comment #1)
> Hi Pavithra,
>
> Have you checked in older kernel versions, whether "ipcs" command
> was working ...I think, it is because there were too many changes
> to kernel's IPC code over several kernel versions..possibly crash tool
> don't have the updated changes w.r.t new kernel IPC code
>
> also please check if following "options" are not working:
> >>>
> char *help_ipcs[] = {
> "ipcs",
> "System V IPC facilities",
> "[-smMq] [-n pid|task] [id | addr]",
>
> " This command provides information on the System V IPC facilities. With
> no",
> " arguments, the command will display kernel usage of all three
> factilities.",
> " ",
> " -s show semaphore arrays.",
> " -m show shared memory segments.",
> " -M show shared memory segments with additional details.",
> " -q show message queues.",
> " id show the data associated with this resource ID.",
> " addr show the data associated with this virtual address of a",
> " shmid_kernel, sem_array or msq_queue.",
> "",
> " For kernels supporting namespaces, the -n option may be used to",
> " display the IPC facilities with respect to the namespace of a",
> " specified task:\n",
> " -n pid a process PID.",
> " -n task a hexadecimal task_struct pointer.",
> >>>
>
> Thanks!!

Issue is observed even with old kernel.

      KERNEL: /usr/lib/debug/boot/vmlinux-4.15.0-12-generic
    DUMPFILE: dump.201804090031 [PARTIAL DUMP]
        CPUS: 160
        DATE: Mon Apr 9 00:30:53 2018
      UPTIME: 00:04:24
LOAD AVERAGE: 2.75, 1.56, 0.64
       TASKS: 1738
    NODENAME: ltc-briggs2
     RELEASE: 4.15.0-12-generic
     VERSION: #13-Ubuntu SMP Wed Mar 7 21:37:03 UTC 2018
     MACHINE: ppc64le (2926 Mhz)
      MEMORY: 512 GB
       PANIC: "sysrq: SysRq : Trigger a crash"
         PID: 6995
     COMMAND: "bash"
        TASK: c000003f70dcfd00 [THREAD_INFO: c000003f70e78000]
         CPU: 64
       STATE: TASK_RUNNING (SYSRQ)

crash> ipcs
SHMID_KERNEL KEY SHMID UID PERMS BYTES NATTCH STATUS

ipcs: invalid structure member offset: idr_top
      FILE: ipcs.c LINE: 628 FUNCTION: idr_find()

[/usr/bin/crash] error trace: 198c7e38930 => 198c7e382d8 => 198c7dd8e98 => 198c7ca1488

ipcs: invalid structure member offset: idr_top
      FILE: ipcs.c LINE: 628 FUNCTION: idr_find()

crash>

---------------------------------------------------------------------------------------------------------------------------------

crash> ipcs
SHMID_KERNEL KEY SHMID UID PERMS BYTES NATTCH STATUS

ipcs: invalid structure member offset: idr_top
      FILE: ipcs.c LINE: 628 FUNCTION: idr_find()

[/usr/bin/crash] error trace: 69b16c28930 => 69b16c282d8 => 69b16bc8e98 => 69b16a91488

ipcs: invalid structure member offset: idr_top
      FILE: ipcs.c LINE: 628 FUNCTION: idr_find()

crash> ipcs -s
SEM_ARRAY KEY SEMID UID PERMS NSEMS

ipcs: invalid structure member offset: idr_top
      FILE: ipcs.c LINE: 628 FUNCTION: idr_find()

[/usr/bin/crash] error trace: 69b16c2ace0 => 69b16c282d8 => 69b16bc8e98 => 69b16a91488

ipcs: invalid structure member offset: idr_top
      FILE: ipcs.c LINE: 628 FUNCTION: idr_find()

crash> ipcs -m
SHMID_KERNEL KEY SHMID UID PERMS BYTES NATTCH STATUS

ipcs: invalid structure member offset: idr_top
      FILE: ipcs.c LINE: 628 FUNCTION: idr_find()

[/usr/bin/crash] error trace: 69b16c28930 => 69b16c282d8 => 69b16bc8e98 => 69b16a91488

ipcs: invalid structure member offset: idr_top
      FILE: ipcs.c LINE: 628 FUNCTION: idr_find()

crash> ipcs -M

ipcs: invalid structure member offset: idr_top
      FILE: ipcs.c LINE: 628 FUNCTION: idr_find()

[/usr/bin/crash] error trace: 69b16c28930 => 69b16c282d8 => 69b16bc8e98 => 69b16a91488

ipcs: invalid structure member offset: idr_top
      FILE: ipcs.c LINE: 628 FUNCTION: idr_find()

crash> ipcs -q
MSG_QUEUE KEY MSQID UID PERMS USED-BYTES MESSAGES
(none allocated)