From c6f9f229c57f48ff521c6901d6cc48c2474f8d67 Mon Sep 17 00:00:00 2001 From: Stanislav Brabec Date: Wed, 27 Jan 2016 21:37:29 +0100 Subject: libmount: code re-indentation For easier review, the fix of libmount comes in two patches: PATCH 1/2: libmount: run btrfs subvol checks for "subvolid" option PATCH 2/2: code re-indentation No code change is present in this patch. Signed-off-by: Stanislav Brabec --- libmount/src/tab.c | 87 +++++++++++++++++++++++++++--------------------------- 1 file changed, 44 insertions(+), 43 deletions(-) (limited to 'libmount/src/tab.c') diff --git a/libmount/src/tab.c b/libmount/src/tab.c index 71dfbf5e7..845ec6c72 100644 --- a/libmount/src/tab.c +++ b/libmount/src/tab.c @@ -1326,50 +1326,51 @@ struct libmnt_fs *mnt_table_get_fs_root(struct libmnt_table *tb, DBG(BTRFS, ul_debug("lookup for FS root")); if (mnt_fs_get_option(fs, "subvolid", &vol, &volsz)) { - if (mnt_fs_get_option(fs, "subvol", &vol, &volsz)) { - /* If fstab entry does not contain "subvol", we have to - * check, whether btrfs has default subvolume defined. - */ - uint64_t default_id; - char *target; - struct libmnt_fs *f; - char default_id_str[sizeof(stringify_value(UINT64_MAX))]; - - default_id = btrfs_get_default_subvol_id(mnt_fs_get_target(fs)); - if (default_id == UINT64_MAX) - goto dflt; - - /* Volume has default subvolume. Check if it matches to - * the one in mountinfo. - * - * Only kernel >= 4.2 reports subvolid. On older - * kernels, there is no reasonable way to detect which - * subvolume was mounted. - */ - target = mnt_resolve_spec(mnt_fs_get_target(fs), tb->cache); - if (!target) - goto err; - - snprintf(default_id_str, sizeof(default_id_str), "%llu", - (unsigned long long int) default_id); - - DBG(BTRFS, ul_debug("target=%s default subvolid=%s", target, default_id_str)); - f = mnt_table_find_target_with_option(tb, target, - "subvolid", default_id_str, - MNT_ITER_BACKWARD); - if (!tb->cache) - free(target); - if (!f) - goto dflt; + if (mnt_fs_get_option(fs, "subvol", &vol, &volsz)) { + /* If fstab entry does not contain "subvol", we + * have to check, whether btrfs has default + * subvolume defined. + */ + uint64_t default_id; + char *target; + struct libmnt_fs *f; + char default_id_str[sizeof(stringify_value(UINT64_MAX))]; + + default_id = btrfs_get_default_subvol_id(mnt_fs_get_target(fs)); + if (default_id == UINT64_MAX) + goto dflt; + + /* Volume has default subvolume. Check if it + * matches to the one in mountinfo. + * + * Only kernel >= 4.2 reports subvolid. On older + * kernels, there is no reasonable way to detect + * which subvolume was mounted. + */ + target = mnt_resolve_spec(mnt_fs_get_target(fs), tb->cache); + if (!target) + goto err; - /* Instead of set of BACKREF queries constructing - * subvol path, use the one in mountinfo. Kernel does - * the evaluation for us. */ - DBG(BTRFS, ul_debug("setting FS root: btrfs default subvolid = %s", default_id_str)); - if (mnt_fs_get_option(f, "subvol", &vol, &volsz)) - goto dflt; - } else - DBG(BTRFS, ul_debug("setting FS root: btrfs subvol")); + snprintf(default_id_str, sizeof(default_id_str), "%llu", + (unsigned long long int) default_id); + + DBG(BTRFS, ul_debug("target=%s default subvolid=%s", target, default_id_str)); + f = mnt_table_find_target_with_option(tb, target, + "subvolid", default_id_str, + MNT_ITER_BACKWARD); + if (!tb->cache) + free(target); + if (!f) + goto dflt; + + /* Instead of set of BACKREF queries constructing + * subvol path, use the one in mountinfo. Kernel + * does the evaluation for us. */ + DBG(BTRFS, ul_debug("setting FS root: btrfs default subvolid = %s", default_id_str)); + if (mnt_fs_get_option(f, "subvol", &vol, &volsz)) + goto dflt; + } else + DBG(BTRFS, ul_debug("setting FS root: btrfs subvol")); } else { char *target; struct libmnt_fs *f; -- cgit v1.2.3-55-g7522