Bug#462154: mdadm --monitor --scan segfaults

Jonathan McDowell noodles at earth.li
Tue Jan 22 21:59:07 UTC 2008


Package: mdadm
Version: 2.6.4-1
Severity: important

| pot:~# mdadm --monitor --scan
| Segmentation fault

Building from the source package and running under GDB:

| (gdb) set args --monitor --scan
| (gdb) run
| Starting program: /home/noodles/mdadm/mdadm-2.6.4/mdadm --monitor --scan
|
| Program received signal SIGSEGV, Segmentation fault.
| 0x0805c019 in Monitor (devlist=0x0, mailaddr=0x8075268 "root", alert_cmd=0x0, 
|     period=60, daemonise=0, scan=1, oneshot=0, dosyslog=0, test=0, pidfile=0x0)
|     at Monitor.c:406
| 406                                         (strcmp(mse->level, "raid0")!=0 &&

| (gdb) bt
| #0  0x0805c019 in Monitor (devlist=0x0, mailaddr=0x8075268 "root", 
|     alert_cmd=0x0, period=60, daemonise=0, scan=1, oneshot=0, dosyslog=0, 
|     test=0, pidfile=0x0) at Monitor.c:406
| #1  0x0804b325 in main (argc=3, argv=0xbfcfb2a4) at mdadm.c:1306

| (gdb) print mse->level
| $1 = 0x0

| (gdb) print mse->dev
| $2 = 0x8076f50 "md1"

Looks like it isn't coping with the "active(auto-read-only)" ? md1 is
used for swap.

-- Package-specific info:
--- mount output
/dev/md0 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
procbususb on /proc/bus/usb type usbfs (rw)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
/dev/mapper/newvg-var on /var type ext3 (rw)
/dev/mapper/newvg-usr on /usr type ext3 (rw)
/dev/mapper/newvg-tmp on /tmp type ext3 (rw)
/dev/mapper/newvg-home on /home type ext3 (rw)
/dev/mapper/newvg-space on /mnt/space type ext3 (rw)
/dev/sda4 on /mnt/scratch type ext3 (rw)

--- mdadm.conf
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

# by default, scan all partitions (/proc/partitions) for MD superblocks.
# alternatively, specify devices to scan, using wildcards if desired.
DEVICE /dev/sda* /dev/sdb*

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR root


--- /proc/mdstat:
Personalities : [raid1] 
md2 : active raid1 sda3[0] sdb3[2]
      154071314 blocks super 1.1 [2/2] [UU]
      
md1 : active(auto-read-only) raid1 sdb2[0] sda2[1]
      1759040 blocks [2/2] [UU]
      
md0 : active raid1 sdb1[0] sda1[1]
      401536 blocks [2/2] [UU]
      
unused devices: <none>

--- /proc/partitions:
major minor  #blocks  name

   8     0  244198584 sda
   8     1     401624 sda1
   8     2    1759117 sda2
   8     3  154071382 sda3
   8     4   87963907 sda4
   8    16  156290904 sdb
   8    17     409626 sdb1
   8    18    1767150 sdb2
   8    19  154111545 sdb3
   9     0     401536 md0
   9     1    1759040 md1
   9     2  154071314 md2
 253     0   31457280 dm-0
 253     1    2097152 dm-1
 253     2   10485760 dm-2
 253     3   10485760 dm-3
 253     4   99545088 dm-4

--- initrd.img-2.6.24-rc8:
17841 blocks
lib/modules/2.6.24-rc8/kernel/drivers/md/md-mod.ko
lib/modules/2.6.24-rc8/kernel/drivers/md/dm-mod.ko
lib/modules/2.6.24-rc8/kernel/drivers/md/raid456.ko
lib/modules/2.6.24-rc8/kernel/drivers/md/raid1.ko
lib/modules/2.6.24-rc8/kernel/drivers/md/dm-snapshot.ko
lib/modules/2.6.24-rc8/kernel/drivers/md/dm-mirror.ko
scripts/local-top/mdadm
sbin/mdadm
etc/mdadm
etc/mdadm/mdadm.conf

--- /proc/modules:
dm_mirror 18944 0 - Live 0xf8875000
dm_snapshot 14624 0 - Live 0xf884e000
dm_mod 46720 13 dm_mirror,dm_snapshot, Live 0xf889d000
raid1 19328 3 - Live 0xf8848000
md_mod 67668 4 raid1, Live 0xf888b000

--- /var/log/syslog:
Jan 16 19:48:58 pot kernel: md: raid1 personality registered for level 1
Jan 16 19:48:58 pot kernel: md: md0 stopped.
Jan 16 19:48:58 pot kernel: md: bind<sda1>
Jan 16 19:48:58 pot kernel: md: bind<sdb1>
Jan 16 19:48:58 pot kernel: md: md1 stopped.
Jan 16 19:48:58 pot kernel: md: bind<sda2>
Jan 16 19:48:58 pot kernel: md: bind<sdb2>
Jan 16 19:48:58 pot kernel: md: md2 stopped.
Jan 16 19:48:58 pot kernel: md: bind<sdb3>
Jan 16 19:48:58 pot kernel: md: bind<sda3>
Jan 16 19:49:11 pot mdadm: NewArray event detected on md device /dev/md2
Jan 16 20:18:27 pot mdadm: NewArray event detected on md device /dev/md2
Jan 17 19:54:51 pot kernel: md: raid1 personality registered for level 1
Jan 17 19:54:51 pot kernel: md: md0 stopped.
Jan 17 19:54:51 pot kernel: md: bind<sda1>
Jan 17 19:54:51 pot kernel: md: bind<sdb1>
Jan 17 19:54:51 pot kernel: md: md1 stopped.
Jan 17 19:54:51 pot kernel: md: bind<sda2>
Jan 17 19:54:51 pot kernel: md: bind<sdb2>
Jan 17 19:54:51 pot kernel: md: md2 stopped.
Jan 17 19:54:51 pot kernel: md: bind<sdb3>
Jan 17 19:54:51 pot kernel: md: bind<sda3>
Jan 17 19:55:10 pot mdadm: NewArray event detected on md device /dev/md2
Jan 18 17:57:43 pot kernel: md: raid1 personality registered for level 1
Jan 18 17:57:43 pot kernel: md: md0 stopped.
Jan 18 17:57:43 pot kernel: md: bind<sda1>
Jan 18 17:57:43 pot kernel: md: bind<sdb1>
Jan 18 17:57:43 pot kernel: md: md1 stopped.
Jan 18 17:57:43 pot kernel: md: bind<sda2>
Jan 18 17:57:43 pot kernel: md: bind<sdb2>
Jan 18 17:57:43 pot kernel: md: md2 stopped.
Jan 18 17:57:43 pot kernel: md: bind<sdb3>
Jan 18 17:57:43 pot kernel: md: bind<sda3>
Jan 18 17:57:57 pot mdadm: NewArray event detected on md device /dev/md2
Jan 18 18:51:42 pot kernel: md: raid1 personality registered for level 1
Jan 18 18:51:42 pot kernel: md: md0 stopped.
Jan 18 18:51:42 pot kernel: md: bind<sda1>
Jan 18 18:51:42 pot kernel: md: bind<sdb1>
Jan 18 18:51:42 pot kernel: md: md1 stopped.
Jan 18 18:51:42 pot kernel: md: bind<sda2>
Jan 18 18:51:42 pot kernel: md: bind<sdb2>
Jan 18 18:51:42 pot kernel: md: md2 stopped.
Jan 18 18:51:42 pot kernel: md: bind<sdb3>
Jan 18 18:51:42 pot kernel: md: bind<sda3>
Jan 18 18:51:54 pot mdadm: NewArray event detected on md device /dev/md2
Jan 20 18:37:25 pot kernel: md: raid1 personality registered for level 1
Jan 20 18:37:25 pot kernel: md: md0 stopped.
Jan 20 18:37:25 pot kernel: md: bind<sda1>
Jan 20 18:37:25 pot kernel: md: bind<sdb1>
Jan 20 18:37:25 pot kernel: md: md1 stopped.
Jan 20 18:37:25 pot kernel: md: bind<sda2>
Jan 20 18:37:25 pot kernel: md: bind<sdb2>
Jan 20 18:37:25 pot kernel: md: md2 stopped.
Jan 20 18:37:25 pot kernel: md: bind<sdb3>
Jan 20 18:37:25 pot kernel: md: bind<sda3>
Jan 20 18:39:08 pot mdadm: NewArray event detected on md device /dev/md2
Jan 20 19:03:58 pot kernel: md: raid1 personality registered for level 1
Jan 20 19:03:58 pot kernel: md: md0 stopped.
Jan 20 19:03:58 pot kernel: md: bind<sda1>
Jan 20 19:03:58 pot kernel: md: bind<sdb1>
Jan 20 19:03:58 pot kernel: md: md1 stopped.
Jan 20 19:03:58 pot kernel: md: bind<sda2>
Jan 20 19:03:58 pot kernel: md: bind<sdb2>
Jan 20 19:03:58 pot kernel: md: md2 stopped.
Jan 20 19:03:58 pot kernel: md: bind<sdb3>
Jan 20 19:03:58 pot kernel: md: bind<sda3>
Jan 20 19:04:12 pot mdadm: NewArray event detected on md device /dev/md2
Jan 21 20:19:34 pot kernel: md: raid1 personality registered for level 1
Jan 21 20:19:34 pot kernel: md: md0 stopped.
Jan 21 20:19:34 pot kernel: md: bind<sda1>
Jan 21 20:19:34 pot kernel: md: bind<sdb1>
Jan 21 20:19:34 pot kernel: md: md1 stopped.
Jan 21 20:19:34 pot kernel: md: bind<sda2>
Jan 21 20:19:34 pot kernel: md: bind<sdb2>
Jan 21 20:19:34 pot kernel: md: md2 stopped.
Jan 21 20:19:34 pot kernel: md: bind<sdb3>
Jan 21 20:19:34 pot kernel: md: bind<sda3>
Jan 21 20:19:48 pot mdadm: NewArray event detected on md device /dev/md2
Jan 22 19:47:38 pot kernel: md: raid1 personality registered for level 1
Jan 22 19:47:38 pot kernel: md: md0 stopped.
Jan 22 19:47:38 pot kernel: md: bind<sda1>
Jan 22 19:47:38 pot kernel: md: bind<sdb1>
Jan 22 19:47:38 pot kernel: md: md1 stopped.
Jan 22 19:47:38 pot kernel: md: bind<sda2>
Jan 22 19:47:38 pot kernel: md: bind<sdb2>
Jan 22 19:47:38 pot kernel: md: md2 stopped.
Jan 22 19:47:38 pot kernel: md: bind<sdb3>
Jan 22 19:47:38 pot kernel: md: bind<sda3>
Jan 22 19:47:54 pot mdadm: NewArray event detected on md device /dev/md2

--- volume detail:

--- /proc/cmdline
root=/dev/md0 ro 

--- grub:
kernel		/boot/vmlinuz-2.6.24-rc8 root=/dev/md0 ro 
kernel		/boot/vmlinuz-2.6.24-rc8 root=/dev/md0 ro single
kernel		/boot/vmlinuz-2.6.24-rc6 root=/dev/md0 ro 
kernel		/boot/vmlinuz-2.6.24-rc6 root=/dev/md0 ro single
kernel		/boot/vmlinuz-2.6.24-rc3 root=/dev/md0 ro 
kernel		/boot/vmlinuz-2.6.24-rc3 root=/dev/md0 ro single
kernel		/boot/vmlinuz-2.6.22.6 root=/dev/md0 ro 
kernel		/boot/vmlinuz-2.6.22.6 root=/dev/md0 ro single
kernel		/boot/vmlinuz-2.6.22-3-686 root=/dev/md0 ro 
kernel		/boot/vmlinuz-2.6.22-3-686 root=/dev/md0 ro single
kernel		/boot/vmlinuz-2.6.22 root=/dev/md0 ro 
kernel		/boot/vmlinuz-2.6.22 root=/dev/md0 ro single


-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)

Kernel: Linux 2.6.24-rc8 (PREEMPT)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages mdadm depends on:
ii  debconf                       1.5.18     Debian configuration management sy
ii  libc6                         2.7-6      GNU C Library: Shared libraries
ii  lsb-base                      3.1-24     Linux Standard Base 3.1 init scrip
ii  makedev                       2.3.1-84   creates device files in /dev
ii  udev                          0.114-2    /dev/ and hotplug management daemo

Versions of packages mdadm recommends:
ii  exim4-daemon-light [mail-tra 4.68-2      lightweight Exim MTA (v4) daemon
ii  module-init-tools            3.3-pre11-4 tools for managing Linux kernel mo

-- debconf information:
  mdadm/autostart: true
* mdadm/initrdstart: all
  mdadm/initrdstart_notinconf: false
  mdadm/initrdstart_msg_errexist:
  mdadm/initrdstart_msg_intro:
  mdadm/initrdstart_msg_errblock:
* mdadm/start_daemon: true
* mdadm/mail_to: root
  mdadm/initrdstart_msg_errmd:
  mdadm/initrdstart_msg_errconf:
* mdadm/autocheck: true





More information about the pkg-mdadm-devel mailing list