Bug 164250

Summary: lvm2 randomly segfaults during startup.
Product: [Fedora] Fedora Reporter: Gilboa Davara <gilboad>
Component: lvm2Assignee: Alasdair Kergon <agk>
Status: CLOSED NEXTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: medium    
Version: 4   
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-08-08 19:52:05 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Gilboa Davara 2005-07-26 09:01:47 UTC
Description of problem:
When I reboot my workstation (which uses an lvm2 over software RAID5 setup),
lvm2 randomly segfaults, causing a root partition mount failure and in-turn a
kernel panic (attempt to kill init).
Sadly enough, while I copied the segfault error code (by hand), I doubt that
it'll prove to be too useful. Please let me know how I can supply further debug
information.


Version-Release number of selected component (if applicable):
lvm2-2.01.08-2.1
kernel-2.6.12-1.1398_FC4smp (Also verfied with older versions).


How reproducible:
Random.


Steps to Reproduce:
1. Reboot machine. (reboot -f seems to reproduce it better.)
2. LVM2 segfaults.


Actual results:
"
(Copied it by hand... hope I didn't screw anything...)
lvm[568]: segfaults at 0000000000000000 rip 00000000004001a8 rsp 0007ffffffcd2790
error 6.
ERROR: /bin/lvm2 exited normally with value 0! (pid 568)
"

After wards the sysinit tried to mount the root partition (and fails), tries to
open console (fails again) and tries dup'ing the different std handles (fails
yet again). When all fails, init dies and the kernel panics.


Expected results:
Normal boot.


Additional info:
Hardware configuration:
------------------------------------------------------------------
Tyan Thunder K8WE, BIOS v1.01.
2 x Opteron 248 (Revision E)
4 x 512MB PC3200 ECC/REG.
Gigabyte FX6800GT PCI-E card.
Adaptec 29160/66Mhz SCSI controller.
3 x 36GB 10K U160 SCSI drives.
550w PP&C PSU.


Software RAID configuration.
------------------------------------------------------------------
[root@gilboa-home-dev gilboa]# cat /proc/mdstat
Personalities : [raid1] [raid5]
md1 : active raid5 sdc2[2] sdb2[1] sda2[0]
      70974976 blocks level 5, 256k chunk, algorithm 2 [3/3] [UUU]

md0 : active raid1 sdc1[2] sdb1[1] sda1[0]
      200704 blocks [3/3] [UUU]

unused devices: <none>


Partition configuration:
------------------------------------------------------------------
[root@gilboa-home-dev gilboa]# cat /etc/fstab
# This file is edited by fstab-sync - see 'man fstab-sync' for details
/dev/VolMD1/LogFC4      /                       ext3    defaults        1 1
/dev/md0                /boot                   ext3    noauto,defaults 1 2
/dev/devpts             /dev/pts                devpts  gid=5,mode=620  0 0
/dev/shm                /dev/shm                tmpfs   defaults        0 0
/dev/VolMD1/LogHome     /home                   ext3    defaults        1 2
/dev/VolMD1/LogFC3      /mnt/FC3                ext3    defaults        1 2
/dev/VolMD1/LogWork     /mnt/Work               ext3    defaults        1 2
/dev/proc               /proc                   proc    defaults        0 0
/dev/sys                /sys                    sysfs   defaults        0 0
/dev/VolMD1/LogGames    /usr/games              ext3    defaults        1 2
/dev/VolMD1/LogVar      /var                    ext3    defaults        1 2
/dev/VolMD1/LogSwap     swap                    swap    defaults        0 0
/dev/VolMD1/LogDrives   /usr/drives             ext3    defaults        1 2
/dev/hda                /media/cdrecorder       auto   
pamconsole,exec,noauto,managed 0 0


LVM configuration:
------------------------------------------------------------------
[root@gilboa-home-dev gilboa]# pvdisplay
  --- Physical volume ---
  PV Name               /dev/md1
  VG Name               VolMD1
  PV Size               67.66 GB / not usable 0
  Allocatable           yes
  PE Size (KByte)       32768
  Total PE              2165
  Free PE               162
  Allocated PE          2003
  PV UUID               2UG5Rc-pBxS-oeMb-LsuL-56uA-N1Mw-OFCshP

[root@gilboa-home-dev gilboa]# lvdisplay
  --- Logical volume ---
  LV Name                /dev/VolMD1/LogFC4
  VG Name                VolMD1
  LV UUID                CoZY2c-bwbr-yxPi-gbrU-oo89-ONKo-zsisMi
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                12.00 GB
  Current LE             384
  Segments               1
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:0

  --- Logical volume ---
  LV Name                /dev/VolMD1/LogHome
  VG Name                VolMD1
  LV UUID                KbjKfq-pFDB-4Xd2-5DX3-2StB-R8sO-BznfIh
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                2.91 GB
  Current LE             93
  Segments               1
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:1

  --- Logical volume ---
  LV Name                /dev/VolMD1/LogFC3
  VG Name                VolMD1
  LV UUID                XiI6pm-soZj-B0XG-82Vn-LlMp-8psP-juw6WN
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                8.00 GB
  Current LE             256
  Segments               1
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:2

  --- Logical volume ---
  LV Name                /dev/VolMD1/LogWork
  VG Name                VolMD1
  LV UUID                mdZddX-BE3K-RMMD-e82h-dVLM-AVka-efIdRe
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                2.00 GB
  Current LE             64
  Segments               1
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:3

  --- Logical volume ---
  LV Name                /dev/VolMD1/LogGames
  VG Name                VolMD1
  LV UUID                qk5Y5F-EMFl-Y58e-4XoG-jWG8-jthC-8gDZK2
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                25.00 GB
  Current LE             800
  Segments               1
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:4

  --- Logical volume ---
  LV Name                /dev/VolMD1/LogVar
  VG Name                VolMD1
  LV UUID                Iz9gjY-PDQx-F7Ho-YJei-wghW-I5Em-MhfjF8
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                992.00 MB
  Current LE             31
  Segments               1
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:5

  --- Logical volume ---
  LV Name                /dev/VolMD1/LogSwap
  VG Name                VolMD1
  LV UUID                346f1R-yBEo-NyBm-uprR-0cl0-1sYy-I5AeW2
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                3.91 GB
  Current LE             125
  Segments               1
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:6

  --- Logical volume ---
  LV Name                /dev/VolMD1/LogDrives
  VG Name                VolMD1
  LV UUID                UYkuJB-xhua-6h42-nGsU-OeD8-QeHi-WoTszE
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                7.81 GB
  Current LE             250
  Segments               2
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:7

Comment 1 Alasdair Kergon 2005-08-08 19:50:34 UTC
I suspect a kernel bug ('bio->bi_idx = bio_src->bi_idx'
missing from bio_clone in fs/bio.c) found and fixed upstream in 2.6.13-rc4.