(2014/07/02 10:37), Anand Jain wrote: > when we add a new disk to the mounted btrfs we don't record it > as of now, disk add is a critical change of btrfs configuration, > it must be recorded in the syslog to help offline investigations > of customer problems when reported. > > Signed-off-by: Anand Jain <[email protected]> > Reviewed-by: David Sterba <[email protected]>
Reviewed-by: Satoru Takeuchi <[email protected]> Tested-by: Satoru Takeuchi <[email protected]> test result: 3.16-rc3: failed 3.16-rc3 with this patch: success =============================================================================== #!/bin/sh TEST_DEV1=/dev/vdb TEST_DEV2=/dev/vdc TEST_MNT=/home/sat/mnt umount $TEST_MNT mkfs.btrfs -f $TEST_DEV1 dmesg >dmesg.old mount $TEST_DEV1 $TEST_MNT btrfs dev add -f $TEST_DEV2 $TEST_MNT if [ $? -ne 0 ] ; then echo "[ERROR] failed to btrfs dev add." >&2 exit 1 fi btrfs dev del $TEST_DEV2 $TEST_MNT if [ $? -ne 0 ] ; then echo "[ERROR] failed to btrfs dev delete" >&2 exit 1 fi dmesg >dmesg.new diff dmesg.old dmesg.new | grep '^>' >dmesg.diff RET=0 TEST_DEV1_BASE=$(basename $TEST_DEV1) if grep -q "BTRFS info (device $TEST_DEV1_BASE): device added $TEST_DEV2" dmesg.diff ; then echo "[PASS] btrfs device add is logged." >&2 else echo "[FAIL] btrfs device add is not logged." >&2 RET=1 fi if grep -q "BTRFS info (device $TEST_DEV1_BASE): device deleted $TEST_DEV2" dmesg.diff ; then echo "[PASS] btrfs device delete is logged." >&2 else echo "[FAIL] btrfs device delete is not logged." >&2 RET=1 fi rm dmesg.{new,old,diff} umount $TEST_MNT exit $RET =============================================================================== Thanks, Satoru > --- > v2: Accepts David's review comment, thanks > > fs/btrfs/ioctl.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c > index 86d5474..4e10259 100644 > --- a/fs/btrfs/ioctl.c > +++ b/fs/btrfs/ioctl.c > @@ -2488,6 +2488,10 @@ static long btrfs_ioctl_add_dev(struct btrfs_root > *root, void __user *arg) > vol_args->name[BTRFS_PATH_NAME_MAX] = '\0'; > ret = btrfs_init_new_device(root, vol_args->name); > > + if (!ret) > + btrfs_info(root->fs_info, "device added %s", > + vol_args->name); > + > kfree(vol_args); > out: > mutex_unlock(&root->fs_info->volume_mutex); > -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
