Bug 149498

Summary: Kernel oops when resizing lvm snapshot
Product: [openSUSE] SUSE LINUX 10.0 Reporter: Ralf Müller <ralf>
Component: KernelAssignee: E-mail List <kernel-maintainers>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Major    
Priority: P5 - None    
Version: Final   
Target Milestone: ---   
Hardware: Other   
OS: SuSE Linux 10.0   
Whiteboard:
Found By: Customer Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Ralf Müller 2006-02-09 14:06:21 UTC
After the following sequence of commands I got the attached kernel oops:
("lvmtest" is an existing LV in VG "system")

xentest:/usr/src # uname -a
Linux xentest 2.6.13-15.7-xen #1 SMP Tue Nov 29 14:32:29 UTC 2005 i686 i686 i386 GNU/Linux
xentest:/usr/src # modprobe dm-mod
xentest:/usr/src # modprobe dm-snapshot
xentest:/usr/src # lvcreate -L 50M -s -n lvmtest-snap1 /dev/system/lvmtest
  Rounding up size to full physical extent 52.00 MB
  Logical volume "lvmtest-snap1" created
xentest:/usr/src # lvresize -L +50M /dev/system/lvmtest-snap1
  Rounding up size to full physical extent 52.00 MB
  Extending logical volume lvmtest-snap1 to 104.00 MB
  Logical volume lvmtest-snap1 successfully resized
xentest:/usr/src # lvcreate -L 50M -s -n lvmtest-snap2 /dev/system/lvmtest
  Rounding up size to full physical extent 52.00 MB
  Logical volume "lvmtest-snap2" created
xentest:/usr/src # lvresize -L +50M /dev/system/lvmtest-snap2
  Rounding up size to full physical extent 52.00 MB
  Extending logical volume lvmtest-snap2 to 104.00 MB
  device-mapper ioctl cmd 9 failed: Cannot allocate memory
  Couldn't load device 'system-lvmtest--snap1'.
  Problem reactivating lvmtest-snap2

Oops in /var/log/messages:
Feb  9 15:03:36 xentest kernel: lvresize: page allocation failure. order:0, mode:0xd0
Feb  9 15:03:36 xentest kernel:  [<c01516fb>] __alloc_pages+0x3eb/0x480
Feb  9 15:03:36 xentest kernel:  [<c78ceb97>] alloc_pl+0x27/0x40 [dm_mod]
Feb  9 15:03:36 xentest kernel:  [<c78ced05>] client_alloc_pages+0x25/0x70 [dm_mod]
Feb  9 15:03:36 xentest kernel:  [<c78cf86c>] kcopyd_client_create+0x7c/0xf0 [dm_mod]
Feb  9 15:03:36 xentest kernel:  [<c7da38ea>] snapshot_ctr+0x32a/0x3a0 [dm_snapshot]
Feb  9 15:03:36 xentest kernel:  [<c78ca575>] realloc_argv+0x65/0x90 [dm_mod]
Feb  9 15:03:36 xentest kernel:  [<c78ca810>] dm_table_add_target+0x130/0x1d0 [dm_mod]
Feb  9 15:03:36 xentest kernel:  [<c78cd2f0>] populate_table+0x80/0xf0 [dm_mod]
Feb  9 15:03:36 xentest kernel:  [<c78cd360>] table_load+0x0/0x160 [dm_mod]
Feb  9 15:03:36 xentest kernel:  [<c78cd3b3>] table_load+0x53/0x160 [dm_mod]
Feb  9 15:03:36 xentest kernel:  [<c78cdef7>] ctl_ioctl+0xe7/0x130 [dm_mod]
Feb  9 15:03:36 xentest kernel:  [<c013a9d0>] autoremove_wake_function+0x0/0x50
Feb  9 15:03:36 xentest kernel:  [<c01848ea>] do_ioctl+0x8a/0xa0
Feb  9 15:03:36 xentest kernel:  [<c0184ab0>] vfs_ioctl+0x60/0x210
Feb  9 15:03:36 xentest kernel:  [<c0170602>] vfs_read+0x102/0x190
Feb  9 15:03:36 xentest kernel:  [<c0184caa>] sys_ioctl+0x4a/0xa0
Feb  9 15:03:36 xentest kernel:  [<c0109ce9>] syscall_call+0x7/0xb
Feb  9 15:03:36 xentest kernel: Mem-info:
Feb  9 15:03:36 xentest kernel: DMA per-cpu:
Feb  9 15:03:36 xentest kernel: cpu 0 hot: low 30, high 90, batch 15 used:0
Feb  9 15:03:36 xentest kernel: cpu 0 cold: low 0, high 30, batch 15 used:15
Feb  9 15:03:36 xentest kernel: Normal per-cpu: empty
Feb  9 15:03:36 xentest kernel: HighMem per-cpu: empty
Feb  9 15:03:36 xentest kernel: Free pages:           0kB (0kB HighMem)
Feb  9 15:03:36 xentest kernel: Active:10112 inactive:7609 dirty:60 writeback:0 unstable:0 free:0 slab:3101 mapped:8902 pagetables:132
Feb  9 15:03:36 xentest kernel: DMA free:0kB min:1312kB low:1640kB high:1968kB active:40448kB inactive:30436kB present:108192kB pages_scanned:0 all_unreclaimable? no
Feb  9 15:03:36 xentest kernel: lowmem_reserve[]: 0 0 0
Feb  9 15:03:36 xentest kernel: Normal free:0kB min:0kB low:0kB high:0kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
Feb  9 15:03:36 xentest kernel: lowmem_reserve[]: 0 0 0
Feb  9 15:03:36 xentest kernel: HighMem free:0kB min:128kB low:160kB high:192kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no
Feb  9 15:03:36 xentest kernel: lowmem_reserve[]: 0 0 0
Feb  9 15:03:36 xentest kernel: DMA: 0*4kB 0*8kB 0*16kB 0*32kB 0*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 0kB
Feb  9 15:03:36 xentest kernel: Normal: empty
Feb  9 15:03:36 xentest kernel: HighMem: empty
Feb  9 15:03:36 xentest kernel: Swap cache: add 829, delete 829, find 0/0, race 0+0
Feb  9 15:03:36 xentest kernel: Free swap  = 1045252kB
Feb  9 15:03:36 xentest kernel: Total swap = 1048568kB
Feb  9 15:03:36 xentest kernel: Free swap:       1045252kB
Feb  9 15:03:36 xentest kernel: 27048 pages of RAM
Feb  9 15:03:36 xentest kernel: 0 pages of HIGHMEM
Feb  9 15:03:36 xentest kernel: 1635 reserved pages
Feb  9 15:03:36 xentest kernel: 15031 pages shared
Feb  9 15:03:36 xentest kernel: 0 pages swap cached
Feb  9 15:03:36 xentest kernel: 60 pages dirty
Feb  9 15:03:36 xentest kernel: 0 pages writeback
Feb  9 15:03:36 xentest kernel: 8902 pages mapped
Feb  9 15:03:36 xentest kernel: 3101 pages slab
Feb  9 15:03:36 xentest kernel: 132 pages pagetables
Feb  9 15:03:36 xentest kernel: device-mapper: Could not create kcopyd client
Feb  9 15:03:36 xentest kernel: device-mapper: error adding target to table
Comment 1 Ralf Müller 2006-02-09 15:40:46 UTC
This problem seems to be fixed in vanilla 2.6.15.3
Comment 2 Greg Kroah-Hartman 2006-02-09 23:01:25 UTC
So it's fixed in the 10.1 beta kernel releases?
Comment 3 Ralf Müller 2006-02-13 09:51:16 UTC
Actually I don't know - which one is the current? I don't upgrade the system to 10.1 until it is released. I can temporarily switch to other kernels on this machine but the base system must be in sync with another production machine. Can you give me a link to the current 10.1 beta kernel source? Is it: http://ftp.opensuse.org/pub/opensuse/distribution/SL-OSS-factory/inst-source/suse/src/kernel-source-2.6.16_rc2_git5-3.src.rpm
Comment 4 Chris L Mason 2006-03-20 00:56:50 UTC
That source rpm is valid, although we've tracked mainline a little farther now.  If this was fixed in 2.6.15.3, we should have the fix as well.  I'll close this for now, please do reopen if you're still having problems.
Comment 5 Ralf Müller 2006-03-20 09:13:58 UTC
So this will not be fixed for 10.0? I had hoped that bugfixing is done at least for the last stable release - 10.1 maybe a nice thing to have but it is not ready yet. I just feel a bit uncomfortable when I see that 10.0 is discontinued while 10.1 is not there ...

Or is this the wrong place to report such bugs - is there a suse.com place that is more appropriate for bugs in stable products?