From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from twin.jikos.cz ([89.185.236.188]:46203 "EHLO twin.jikos.cz" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755615Ab2JJRDS (ORCPT ); Wed, 10 Oct 2012 13:03:18 -0400 Date: Wed, 10 Oct 2012 18:28:42 +0200 From: David Sterba To: zwu.kernel@gmail.com Cc: linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org, linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, linuxram@linux.vnet.ibm.com, viro@zeniv.linux.org.uk, david@fromorbit.com, dave@jikos.cz, tytso@mit.edu, cmm@us.ibm.com, Zhi Yong Wu Subject: Re: [RFC v3 01/13] btrfs: add one new mount option '-o hot_track' Message-ID: <20121010162842.GZ4405@twin.jikos.cz> Reply-To: dave@jikos.cz References: <1349863655-29320-1-git-send-email-zwu.kernel@gmail.com> <1349863655-29320-2-git-send-email-zwu.kernel@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: <1349863655-29320-2-git-send-email-zwu.kernel@gmail.com> Sender: linux-btrfs-owner@vger.kernel.org List-ID: Hi, On Wed, Oct 10, 2012 at 06:07:23PM +0800, zwu.kernel@gmail.com wrote: > --- a/fs/btrfs/ctree.h > +++ b/fs/btrfs/ctree.h > @@ -1726,6 +1726,7 @@ struct btrfs_ioctl_defrag_range_args { > #define BTRFS_MOUNT_CHECK_INTEGRITY (1 << 20) > #define BTRFS_MOUNT_CHECK_INTEGRITY_INCLUDING_EXTENT_DATA (1 << 21) > #define BTRFS_MOUNT_PANIC_ON_FATAL_ERROR (1 << 22) > +#define BTRFS_MOUNT_HOT_TRACK (1 << 23) Please don't forget to add new options to btrfs_show_options(), otherwise we can't tell what filesystems have hot tracking enabled. > --- a/fs/btrfs/super.c > +++ b/fs/btrfs/super.c > @@ -303,7 +304,7 @@ enum { > Opt_notreelog, Opt_ratio, Opt_flushoncommit, Opt_discard, > Opt_space_cache, Opt_clear_cache, Opt_user_subvol_rm_allowed, > Opt_enospc_debug, Opt_subvolrootid, Opt_defrag, Opt_inode_cache, > - Opt_no_space_cache, Opt_recovery, Opt_skip_balance, > + Opt_no_space_cache, Opt_recovery, Opt_skip_balance, Opt_hot_track, Please add the new option to the end. > Opt_check_integrity, Opt_check_integrity_including_extent_data, > Opt_check_integrity_print_mask, Opt_fatal_errors, > Opt_err, > @@ -342,6 +343,7 @@ static match_table_t tokens = { > {Opt_no_space_cache, "nospace_cache"}, > {Opt_recovery, "recovery"}, > {Opt_skip_balance, "skip_balance"}, > + {Opt_hot_track, "hot_track"}, (also this one) > {Opt_check_integrity, "check_int"}, > {Opt_check_integrity_including_extent_data, "check_int_data"}, > {Opt_check_integrity_print_mask, "check_int_print_mask=%d"}, > @@ -553,6 +555,9 @@ int btrfs_parse_options(struct btrfs_root *root, char *options) > case Opt_skip_balance: > btrfs_set_opt(info->mount_opt, SKIP_BALANCE); > break; > + case Opt_hot_track: It's a common patter in the surrounding code that a message is printed when enabling options, but the vfs prints its own, so I'm not sure if it's needed here as well. Just thinking, leave it as it is now. > + btrfs_set_opt(info->mount_opt, HOT_TRACK); > + break; > #ifdef CONFIG_BTRFS_FS_CHECK_INTEGRITY > case Opt_check_integrity_including_extent_data: > printk(KERN_INFO "btrfs: enabling check integrity" david