On Sun, Feb 3, 2013 at 1:19 PM, Radek Machulka <radek.machu...@gmail.com> wrote: > Hi guys, > > my computer suddenly failed to boot. It seams that it is unable to mount > /home which is btrfs. Here are the messages I get during the boot (the > relevant part; hopefully): > > Feb 02 13:59:58 Edge kernel: kernel BUG at fs/btrfs/extent-tree.c:6185! > Feb 02 13:59:58 Edge kernel: invalid opcode: 0000 [#1] PREEMPT SMP > Feb 02 13:59:58 Edge kernel: Modules linked in: joydev coretemp kvm_intel > kvm arc4 ghash_clmulni_intel aesni_intel aes_x86_64 ablk_helper snd_hda_cod > Feb 02 13:59:58 Edge kernel: CPU 1 > Feb 02 13:59:58 Edge systemd[1]: home.mount mount process exited, > code=killed status=11 > Feb 02 13:59:58 Edge kernel: Pid: 314, comm: mount Tainted: G C > 3.7.5-1-ARCH #1 LENOVO 129886G/129886G > Feb 02 13:59:58 Edge kernel: RIP: 0010:[<ffffffffa024e0a7>] > [<ffffffffa024e0a7>] btrfs_alloc_logged_file_extent+0x1c7/0x1e0 [btrfs] > Feb 02 13:59:58 Edge kernel: RSP: 0018:ffff880138b53758 EFLAGS: 00010286 > Feb 02 13:59:58 Edge kernel: RAX: 00000000fffffff5 RBX: ffff880135bc4200 > RCX: 000000000001a7c0 > Feb 02 13:59:58 Edge kernel: RDX: ffffea0004dea100 RSI: 0000000000000002 > RDI: ffff880138bdd840 > Feb 02 13:59:58 Edge kernel: RBP: ffff880138b537d8 R08: ffff880138b53fd8 > R09: ffff880134ace400 > Feb 02 13:59:58 Edge kernel: R10: ffffffffa029aa6c R11: ffff880138b53fd8 > R12: ffff880138b538a3 > Feb 02 13:59:58 Edge kernel: R13: 0000000000000000 R14: 000000017f8f1000 > R15: ffff8801388b6000 > Feb 02 13:59:58 Edge kernel: FS: 00007f9c55f20780(0000) > GS:ffff88013fa40000(0000) knlGS:0000000000000000 > Feb 02 13:59:58 Edge kernel: CS: 0010 DS: 0000 ES: 0000 CR0: > 0000000080050033 > Feb 02 13:59:58 Edge kernel: CR2: 000000000161ceb0 CR3: 0000000138b5c000 > CR4: 00000000000407e0 > Feb 02 13:59:58 Edge kernel: DR0: 0000000000000000 DR1: 0000000000000000 > DR2: 0000000000000000 > Feb 02 13:59:58 Edge systemd[1]: Failed to mount /home. > Feb 02 13:59:58 Edge systemd-journal[345]: Allowing runtime journal files to > grow to 193.5M. > Feb 02 13:59:58 Edge kernel: Process mount (pid: 314, threadinfo > ffff880138b52000, task ffff880134bcc920) > Feb 02 13:59:58 Edge kernel: Stack: > Feb 02 13:59:58 Edge kernel: 0000000000000001 0000000000008000 > ffff880138b53788 ffffffffa023a1ea > Feb 02 13:59:58 Edge kernel: 0000000000614000 0000000000000430 > 0000000000000005 ffff880137a81000 > Feb 02 13:59:58 Edge kernel: 0000000000008000 00ff88013788a560 > a8000000017f8f10 ffff8801388b6000 > Feb 02 13:59:58 Edge kernel: Call Trace: > Feb 02 13:59:58 Edge kernel: [<ffffffffa023a1ea>] ? > btrfs_free_path+0x2a/0x40 [btrfs] > Feb 02 13:59:58 Edge kernel: [<ffffffffa0293990>] > replay_one_extent+0x620/0x690 [btrfs] > Feb 02 13:59:58 Edge kernel: [<ffffffffa0292fc8>] ? > add_inode_ref+0x638/0x9e0 [btrfs] > Feb 02 13:59:58 Edge kernel: [<ffffffffa026e940>] ? > btrfs_destroy_inode+0x1c0/0x2e0 [btrfs] > Feb 02 13:59:58 Edge kernel: [<ffffffffa0294a1b>] > replay_one_buffer+0x2db/0x3a0 [btrfs] > Feb 02 13:59:58 Edge kernel: [<ffffffffa027c9bd>] ? > alloc_extent_buffer+0x9d/0x490 [btrfs] > Feb 02 13:59:58 Edge kernel: [<ffffffffa02913e2>] > walk_down_log_tree+0x212/0x400 [btrfs] > Feb 02 13:59:58 Edge kernel: [<ffffffffa029166d>] walk_log_tree+0x9d/0x1f0 > [btrfs] > Feb 02 13:59:58 Edge kernel: [<ffffffffa02979eb>] > btrfs_recover_log_trees+0x21b/0x3a0 [btrfs] > Feb 02 13:59:58 Edge kernel: [<ffffffffa0294740>] ? > replay_one_dir_item+0xf0/0xf0 [btrfs] > Feb 02 13:59:58 Edge kernel: [<ffffffffa025d9d7>] open_ctree+0x1587/0x1ba0 > [btrfs] > Feb 02 13:59:58 Edge kernel: [<ffffffff81255091>] ? disk_name+0x61/0xc0 > Feb 02 13:59:58 Edge kernel: [<ffffffffa0236ae3>] btrfs_mount+0x633/0x770 > [btrfs] > Feb 02 13:59:58 Edge kernel: [<ffffffff81165f60>] ? > alloc_pages_current+0xb0/0x120 > Feb 02 13:59:58 Edge kernel: [<ffffffff81188163>] mount_fs+0x43/0x1b0 > Feb 02 13:59:58 Edge kernel: [<ffffffff811a2974>] vfs_kern_mount+0x74/0x110 > Feb 02 13:59:58 Edge kernel: [<ffffffff811a2ed4>] do_kern_mount+0x54/0x110 > Feb 02 13:59:58 Edge kernel: [<ffffffff811a4b55>] do_mount+0x315/0x8e0 > Feb 02 13:59:58 Edge kernel: [<ffffffff811a46aa>] ? > copy_mount_options+0x3a/0x180 > Feb 02 13:59:58 Edge kernel: [<ffffffff811a51ae>] sys_mount+0x8e/0xe0 > Feb 02 13:59:58 Edge kernel: [<ffffffff814c111d>] > system_call_fastpath+0x1a/0x1f > Feb 02 13:59:58 Edge kernel: Code: 0b 0f 1f 00 48 8d bb 80 00 00 00 e8 c4 68 > ff ff 85 c0 74 1d 48 8b 55 c0 4c 89 f6 48 89 df e8 01 c8 04 00 85 c0 0f 84 > 29 ff ff ff <0f> 0b 0f 0b 0f 0b 0f 0b 0f 0b 66 66 66 66 66 66 2e 0f 1f 84 00 > Feb 02 13:59:58 Edge kernel: RIP [<ffffffffa024e0a7>] > btrfs_alloc_logged_file_extent+0x1c7/0x1e0 [btrfs] > Feb 02 13:59:58 Edge kernel: RSP <ffff880138b53758> > Feb 02 13:59:58 Edge kernel: ---[ end trace 03c331f97cd8632d ]--- > > > I was however able to save my data with btrfs-restore command (it boots into > some systemd emergency shell or I can use recovery cd). I tried to mount it > manually and after no success (the mount command does not end) mount it with > -o recovery option, but it does not do anything nether (well the command is > 'running' for hours without any output until I turn the pc off, so I do not > know > wheather it is recovering something or not). So before doing any btrfsck > --repair or btrfs-zero-log (which are pretty much all commands for > 'repairing' btrfs I founded over the net) I would like to ask for some help > or advices. > > Anyway here are some information about disc space: > > root@sysresccd /root % btrfs fi show /dev/sda7 > Label: 'home' uuid: 04c96e2f-36b1-4dd2-9ab2-c35a355f54fe > Total devices 1 FS bytes used 123.87GB > devid 1 size 158.02GB used 158.02GB path /dev/sda7 > > Any help would be highly appreciated. > Thanks > Radek > -- > To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in > the body of a message to majord...@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html
The relevant source is: 6182 if (!caching_ctl) { 6183 BUG_ON(!block_group_cache_done(block_group)); 6184 ret = btrfs_remove_free_space(block_group, start, num_bytes); 6185 BUG_ON(ret); /* -ENOMEM */ 6186 } else { 6187 mutex_lock(&caching_ctl->mutex); Is there any warning preceding the BUG? RAX seems to be -11 (-EAGAIN). All exit paths from btrfs_remove_free_space that could cause it to return -EAGAIN should also trigger WARN_ONs there. -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html