linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Anand Jain <Anand.Jain@oracle.com>
To: Shilong Wang <wangshilong1991@gmail.com>
Cc: linux-btrfs <linux-btrfs@vger.kernel.org>,
	Wang Shilong <wangsl.fnst@cn.fujitsu.com>
Subject: Re: [PATCH] btrfs: ioctl BTRFS_IOC_FS_INFO and BTRFS_IOC_DEV_INFO miss-matched with slots
Date: Fri, 16 May 2014 23:13:00 +0800	[thread overview]
Message-ID: <53762AFC.6050102@oracle.com> (raw)
In-Reply-To: <CAP9B-Q=rxYAtoyKp899+8w+8u-OighEm2KRjuvKPyn3uXWWuwA@mail.gmail.com>



On 16/05/14 22:40, Shilong Wang wrote:
> 2014-05-16 22:06 GMT+08:00 Anand Jain <anand.jain@oracle.com>:
>> BTRFS_IOC_FS_INFO return num_devices which does not include seed disks,
>> BTRFS_IOC_DEV_INFO fetches seed disk when probed. So in this case hits
>> the btrfs-progs bug:
>>              get_fs_info()
>>              ::
>>                      BUG_ON(ndevs >= fi_args->num_devices);
>> which is very easy to hit by using btrfs filesystem show.
>>
>> This patch will make BTRFS_IOC_DEV_INFO ioctl to provide disks only
>> of the FSID being probed (seed disks are under different FSID).
>>
>> which means when seed is still not deleted from the sprout the btrfs
>> filesystem show command will show disks them under their
>> respective FSIDs
>
> Just a quick comment:
>
> Newly created filesystem is based on existed seeding filesystem.
> Though they have different fsid, newly created filesystem devices
> should include seed devices, from seed device filesytem, they can not
> see newly created filesystem devices! No?
>
> Will the follow patch change the above behavior?

  Yes, as the dev info list does not contain the seed disk
  so is the btrfs fi show output. Do you think its better
  to show seed and sprout "disks together" ? other way is
  indicate the seed fsid against the added disk until
  seed is deleted.

Thanks. Anand

> Thanks,
> Wang
>>
>> Signed-off-by: Anand Jain <anand.jain@oracle.com>
>> ---
>>   fs/btrfs/ioctl.c |    3 ++-
>>   1 files changed, 2 insertions(+), 1 deletions(-)
>>
>> diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
>> index ff27c08..902d279 100644
>> --- a/fs/btrfs/ioctl.c
>> +++ b/fs/btrfs/ioctl.c
>> @@ -2584,7 +2584,8 @@ static long btrfs_ioctl_dev_info(struct btrfs_root *root, void __user *arg)
>>                  s_uuid = di_args->uuid;
>>
>>          mutex_lock(&fs_devices->device_list_mutex);
>> -       dev = btrfs_find_device(root->fs_info, di_args->devid, s_uuid, NULL);
>> +       dev = btrfs_find_device(root->fs_info, di_args->devid, s_uuid,
>> +                               fs_devices->fsid);
>>
>>          if (!dev) {
>>                  ret = -ENODEV;
>> --
>> 1.7.1
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> --
> To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>

  reply	other threads:[~2014-05-16 15:15 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-16 14:06 [PATCH] btrfs: ioctl BTRFS_IOC_FS_INFO and BTRFS_IOC_DEV_INFO miss-matched with slots Anand Jain
2014-05-16 14:40 ` Shilong Wang
2014-05-16 15:13   ` Anand Jain [this message]
2014-05-16 15:23     ` Shilong Wang
  -- strict thread matches above, loose matches on Subject: below --
2014-08-16  3:08 [PATCH] make 'btrfs filesystem show' to work when seeding Anand Jain
2014-08-16  3:08 ` [PATCH] btrfs: ioctl BTRFS_IOC_FS_INFO and BTRFS_IOC_DEV_INFO miss-matched with slots Anand Jain

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53762AFC.6050102@oracle.com \
    --to=anand.jain@oracle.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=wangshilong1991@gmail.com \
    --cc=wangsl.fnst@cn.fujitsu.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).