On Wed, Aug 01, 2012 at 09:48:15PM +0200, Olivier Bonvalet wrote:
> I have some trouble with a btrfs filesystem.
> As you can see in logs, there is lines which are from btrfs (I
> supposed), then some warnings at fs/btrfs/extent-tree.c, and finally a
> "kernel BUG" at fs/btrfs/extent-tree.c:5038.

Did you really see this BUG ? It comes from some unused and disabled code:

5036 #ifdef BTRFS_COMPAT_EXTENT_TREE_V0
5037         if (item_size < sizeof(*ei)) {
5038                 BUG_ON(found_extent || extent_slot != path->slots[0]);
^^^^

5039                 ret = convert_extent_item_v0(trans, extent_root, path,
5040                                              owner_objectid, 0);
5041                 if (ret < 0)
5042                         goto abort;
5043
5044                 btrfs_release_path(path);
5045                 path->leave_spinning = 1;
5046
5047                 key.objectid = bytenr;
5048                 key.type = BTRFS_EXTENT_ITEM_KEY;
5049                 key.offset = num_bytes;
5050
5051                 ret = btrfs_search_slot(trans, extent_root, &key, path,
5052                                         -1, 1);
5053                 if (ret) {
5054                         printk(KERN_ERR "umm, got %d back from search"
5055                                ", was looking for %llu\n", ret,
5056                                (unsigned long long)bytenr);
5057                         btrfs_print_leaf(extent_root, path->nodes[0]);
5058                 }
5059                 if (ret < 0)
5060                         goto abort;
5061                 extent_slot = path->slots[0];
5062                 leaf = path->nodes[0];
5063                 item_size = btrfs_item_size_nr(leaf, extent_slot);
5064         }
5065 #endif


david
--
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

Reply via email to