[btrfs] cp -r --reflink triggers kernel bug

Bug #891158 reported by Alexander Ponyatykh
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Triaged
Medium
Unassigned

Bug Description

I have btrs partition created with mkfs.btrfs v0.19.
/dev/sdb2 on /media/stripe type btrfs (rw,relatime,compress=lzo)
$ btrfs filesystem show
Label: 'stripe' uuid: 981757e7-85b8-40d5-8d19-558370339855
        Total devices 1 FS bytes used 62.84GB
        devid 1 size 196.00GB used 65.54GB path /dev/sdb2

Btrfs Btrfs v0.19

When I try to copy any non-empty directory with 'cp -a --reflink', cp crashes with segmentation fault, and I see following lines in the syslog:
Nov 16 18:22:09 gurren kernel: [ 189.233479] kernel BUG at /build/buildd/linux-3.0.0/fs/btrfs/delayed-inode.c:1693!
Nov 16 18:22:09 gurren kernel: [ 189.233482] invalid opcode: 0000 [#1] SMP
Nov 16 18:22:09 gurren kernel: [ 189.233485] CPU 1
Nov 16 18:22:09 gurren kernel: [ 189.233487] Modules linked in: isofs udf vmnet vsock vmci vmmon ah4 xfrm4_mode_transport deflate ctr twofish_generic twofish_x86_64 twofish_common camellia serpent blowfish cast5 des_generic xcbc rmd160 sha512_generic crypto_null af_key parport_pc ppdev binfmt_misc nfsd nfs lockd fscache auth_rpcgss nfs_acl sunrpc dm_crypt snd_hda_codec_hdmi snd_hda_codec_analog snd_hda_intel snd_hda_codec snd_hwdep snd_pcm snd_seq_midi snd_rawmidi snd_seq_midi_event nvidia(P) joydev snd_seq snd_timer snd_seq_device snd soundcore snd_page_alloc shpchp psmouse serio_raw w83627ehf hwmon_vid coretemp usbserial firewire_sbp2 lp parport btrfs zlib_deflate libcrc32c vesafb usbhid hid aacraid firewire_ohci pata_marvell ahci libahci firewire_core crc_itu_t sky2 skge
Nov 16 18:22:09 gurren kernel: [ 189.233540]
Nov 16 18:22:09 gurren kernel: [ 189.233542] Pid: 3694, comm: cp Tainted: P 3.0.0-12-generic #20-Ubuntu System manufacturer P5Q-E/P5Q-E
Nov 16 18:22:09 gurren kernel: [ 189.233548] RIP: 0010:[<ffffffffa013df10>] [<ffffffffa013df10>] btrfs_delayed_update_inode+0x120/0x130 [btrfs]
Nov 16 18:22:09 gurren kernel: [ 189.233568] RSP: 0018:ffff8801d008dc58 EFLAGS: 00010286
Nov 16 18:22:09 gurren kernel: [ 189.233570] RAX: 00000000ffffffe4 RBX: ffff8801c3650000 RCX: 0000000000018000
Nov 16 18:22:09 gurren kernel: [ 189.233573] RDX: 0000000000000033 RSI: 0000000000018000 RDI: ffff880201da41d0
Nov 16 18:22:09 gurren kernel: [ 189.233576] RBP: ffff8801d008dc98 R08: ffffe8ffffc84660 R09: ffff8801c34b42f8
Nov 16 18:22:09 gurren kernel: [ 189.233578] R10: 0000000000000000 R11: ffff8801c3609000 R12: ffff8801c3650048
Nov 16 18:22:09 gurren kernel: [ 189.233580] R13: ffff8801c3710588 R14: ffff8801c3609000 R15: ffff88021e13b800
Nov 16 18:22:09 gurren kernel: [ 189.233583] FS: 00007f5ec60147c0(0000) GS:ffff88022fc80000(0000) knlGS:0000000000000000
Nov 16 18:22:09 gurren kernel: [ 189.233586] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
Nov 16 18:22:09 gurren kernel: [ 189.233588] CR2: 0000000000639078 CR3: 00000001cbe93000 CR4: 00000000000006e0
Nov 16 18:22:09 gurren kernel: [ 189.233591] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
Nov 16 18:22:09 gurren kernel: [ 189.233593] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Nov 16 18:22:09 gurren kernel: [ 189.233596] Process cp (pid: 3694, threadinfo ffff8801d008c000, task ffff8801bce35c80)
Nov 16 18:22:09 gurren kernel: [ 189.233598] Stack:
Nov 16 18:22:09 gurren kernel: [ 189.233600] 0000000000000001 0000000000018000 000000000002ea95 ffff8801c36e8600
Nov 16 18:22:09 gurren kernel: [ 189.233604] ffff8801c3710588 ffff8801c3609000 ffff8801ff49b1b0 0000000000000000
Nov 16 18:22:09 gurren kernel: [ 189.233608] ffff8801d008dce8 ffffffffa00fa8a3 ffff8801ff44c198 0000000000000000
Nov 16 18:22:09 gurren kernel: [ 189.233613] Call Trace:
Nov 16 18:22:09 gurren kernel: [ 189.233629] [<ffffffffa00fa8a3>] btrfs_update_inode+0x53/0x170 [btrfs]
Nov 16 18:22:09 gurren kernel: [ 189.233644] [<ffffffffa01217d0>] btrfs_ioctl_clone+0x8b0/0xc00 [btrfs]
Nov 16 18:22:09 gurren kernel: [ 189.233659] [<ffffffffa0125008>] btrfs_ioctl+0x218/0x660 [btrfs]
Nov 16 18:22:09 gurren kernel: [ 189.233664] [<ffffffff8117923a>] file_ioctl+0x4a/0x120
Nov 16 18:22:09 gurren kernel: [ 189.233667] [<ffffffff8117964b>] do_vfs_ioctl+0x33b/0x340
Nov 16 18:22:09 gurren kernel: [ 189.233671] [<ffffffff8116c25a>] ? sys_newfstat+0x2a/0x40
Nov 16 18:22:09 gurren kernel: [ 189.233674] [<ffffffff811796e1>] sys_ioctl+0x91/0xa0
Nov 16 18:22:09 gurren kernel: [ 189.233679] [<ffffffff815f22c2>] system_call_fastpath+0x16/0x1b
Nov 16 18:22:09 gurren kernel: [ 189.233681] Code: 00 03 00 00 8d 0c 49 48 89 ca 48 89 4d c8 e8 e8 3a fa ff 85 c0 48 8b 4d c8 75 10 48 89 4b 08 e9 40 ff ff ff 0f 1f 80 00 00 00 00 <0f> 0b 66 66 66 66 66 2e 0f 1f 84 00 00 00 00 00 55 48 89 e5 53
Nov 16 18:22:09 gurren kernel: [ 189.233715] RIP [<ffffffffa013df10>] btrfs_delayed_update_inode+0x120/0x130 [btrfs]
Nov 16 18:22:09 gurren kernel: [ 189.233729] RSP <ffff8801d008dc58>
Nov 16 18:22:09 gurren kernel: [ 189.233732] ---[ end trace 03e4441b5f32b830 ]---

ProblemType: Bug
DistroRelease: Ubuntu 11.10
Package: linux-image-3.0.0-12-generic 3.0.0-12.20
ProcVersionSignature: Ubuntu 3.0.0-12.20-generic 3.0.4
Uname: Linux 3.0.0-12-generic x86_64
NonfreeKernelModules: nvidia
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.24.
ApportVersion: 1.23-0ubuntu4
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: ranma 2992 F.... pulseaudio
CRDA: Error: [Errno 2] Нет такого файла или каталога
Card0.Amixer.info:
 Card hw:0 'Intel'/'HDA Intel at 0xfbff8000 irq 45'
   Mixer name : 'Analog Devices AD1989B'
   Components : 'HDA:11d4989b,10438311,00100300'
   Controls : 47
   Simple ctrls : 26
Card1.Amixer.info:
 Card hw:1 'NVidia'/'HDA NVidia at 0xfe5fc000 irq 17'
   Mixer name : 'Nvidia GPU 12 HDMI/DP'
   Components : 'HDA:10de0012,10de0101,00100100'
   Controls : 18
   Simple ctrls : 6
Date: Wed Nov 16 18:25:21 2011
HibernationDevice: RESUME=UUID=869540bb-d1e1-4202-9bce-58fc6cac40b7
MachineType: System manufacturer P5Q-E
ProcEnviron:
 SHELL=/bin/bash
 PATH=(custom, user)
 LANG=ru_RU.utf8
 LANGUAGE=ru_RU:ru:en_GB:en
ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-3.0.0-12-generic root=UUID=39f97f1d-566c-45a4-a45a-41d6964e7de2 ro acpi_enforce_resources=lax quiet splash vt.handoff=7
RelatedPackageVersions:
 linux-restricted-modules-3.0.0-12-generic N/A
 linux-backports-modules-3.0.0-12-generic N/A
 linux-firmware 1.60
RfKill:

SourcePackage: linux
UpgradeStatus: Upgraded to oneiric on 2011-10-15 (31 days ago)
WpaSupplicantLog:

dmi.bios.date: 04/06/2009
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 2101
dmi.board.asset.tag: To Be Filled By O.E.M.
dmi.board.name: P5Q-E
dmi.board.vendor: ASUSTeK Computer INC.
dmi.board.version: Rev 1.xx
dmi.chassis.asset.tag: Asset-1234567890
dmi.chassis.type: 3
dmi.chassis.vendor: Chassis Manufacture
dmi.chassis.version: Chassis Version
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr2101:bd04/06/2009:svnSystemmanufacturer:pnP5Q-E:pvrSystemVersion:rvnASUSTeKComputerINC.:rnP5Q-E:rvrRev1.xx:cvnChassisManufacture:ct3:cvrChassisVersion:
dmi.product.name: P5Q-E
dmi.product.version: System Version
dmi.sys.vendor: System manufacturer

Revision history for this message
Alexander Ponyatykh (lazyranma) wrote :
Brad Figg (brad-figg)
Changed in linux (Ubuntu):
status: New → Confirmed
Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

Would it be possible for you to test the latest upstream kernel? It will allow additional upstream developers to examine the issue. Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . If possible, please test the latest v3.2-rcN kernel (Not a kernel in the daily directory). Once you've tested the upstream kernel, please remove the 'needs-upstream-testing' tag(Only that one tag, please leave the others). This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the 'needs-upstream-testing' text.

If this bug is fixed by the mainline kernel, please add the following tag 'kernel-fixed-upstream-KERNEL-VERSION'. For example, if kernel version 3.2-rc1 fixed and issue, the tag would be: 'kernel-fixed-upstream-v3.2-rc1'.

If the mainline kernel does not fix this bug, please add the tag: 'kernel-bug-exists-upstream'.

If you are unable to test the mainline kernel, for example it will not boot, please add the tag: 'kernel-unable-to-test-upstream'. If you believe this bug does not require upstream testing, please add the tag: 'kernel-upstream-testing-not-needed'.

Thanks in advance.

tags: added: needs-upstream-testing
Revision history for this message
Alexander Ponyatykh (lazyranma) wrote :

I've tested 3.2-rc1 and 3.2-rc2, both don't have this bug.
After that i was able to reproduce it again on 3.0.0-12 (to make sure that it is not dependent on filesystem state).

tags: added: kernel-fixed-upstream-v3.2-rc1
removed: needs-upstream-testing oneiric
tags: added: oneiric
Changed in linux (Ubuntu):
importance: Undecided → Medium
status: Confirmed → Triaged
penalvch (penalvch)
summary: - cp -r --reflink triggers kernel bug
+ [btrfs] cp -r --reflink triggers kernel bug
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.