All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Mason <clm@fb.com>
To: Anand Jain <Anand.Jain@oracle.com>
Cc: Sam Thursfield <sam.thursfield@codethink.co.uk>,
	<linux-btrfs@vger.kernel.org>, <baserock-dev@baserock.org>
Subject: Re: Unable to mount multiple subvolumes of a single disk
Date: Wed, 17 Sep 2014 09:21:25 -0400	[thread overview]
Message-ID: <54198AD5.1080606@fb.com> (raw)
In-Reply-To: <541958A2.1030204@oracle.com>



On 09/17/2014 05:47 AM, Anand Jain wrote:
> 
> Hi Chris,
> 
> 
>>> -------
>>> diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
>>> index e9676a4..1224b61 100644
>>> --- a/fs/btrfs/volumes.c
>>> +++ b/fs/btrfs/volumes.c
>>> @@ -533,7 +533,7 @@ static noinline int device_list_add(const char
>>> *path,
>>>                   * the btrfs dev scan cli, after FS has been mounted.
>>>                   */
>>>                  if (fs_devices->opened) {
>>> -                       return -EBUSY;
>>> +                       goto out;
>>>                  } else {
>>>                          /*
>>>                           * That is if the FS is _not_ mounted and if
>>> you
>>> @@ -566,6 +566,7 @@ static noinline int device_list_add(const char
>>> *path,
>>>          if (!fs_devices->opened)
>>>                  device->generation = found_transid;
>>>
>>> +out:
>>>          *fs_devices_ret = fs_devices;
>>>
>>>          return ret;
>>
>> Anand, are you planning on sending a full patch out for this?  One
>> concern
>> I have is that after the device_list_add call:
>>
>>
>>      if (!ret && fs_devices_ret)
>>              (*fs_devices_ret)->total_devices = total_devices;
>>
>> We should only be doing this from the newest super, not blindly
>> overwriting.
>> But that's a merge window fix.  For now I just want to deal with the
>> regression,
>> and your patch above looks good.
>>
>> Thanks for jumping on this one.
> 
> 
>  Sorry for the trouble.
>  yes, I will be sending a full patch. I am finding too difficult
>  to revive the function btrfs_scan_one_device() which is predominately
>  to handle device scan and list_update _before_ any mount. Further
>  to the concern which you mention above, there is Ioctl
>  BTRFS_IOC_DEV_READY also using this function, which absolutely should
>  not have any intention to update the device list, but it does ..
>  theoretically. And I note that this ioctl is used by systemd as well.
>  So the fix is getting a bit complicated. I am attempting.

No problem, the original patch looked right to me too.  We're getting
closer to rc6, I think at this point I'll revert the original patch
until the next merge window.  Then we can step back and nail down
exactly what is going on.

-chris


  reply	other threads:[~2014-09-17 13:21 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-15 15:13 Unable to mount multiple subvolumes of a single disk Sam Thursfield
2014-09-15 15:54 ` Chris Mason
2014-09-15 16:09   ` Anand Jain
2014-09-15 17:13     ` Sam Thursfield
2014-09-15 17:21       ` Anand Jain
2014-09-15 17:42         ` Anand Jain
2014-09-16  7:46           ` Paul Sherwood
2014-09-16 21:08           ` Stefan G. Weichinger
2014-09-16 21:53             ` Anand Jain
2014-09-17  4:41               ` Anand Jain
2014-09-15 20:38         ` xavier.gnata
2014-09-16 13:23     ` Chris Mason
2014-09-17  9:47       ` Anand Jain
2014-09-17 13:21         ` Chris Mason [this message]
2014-09-22 12:04           ` Stefan G. Weichinger
2014-09-15 16:42 ` Anand Jain
2014-09-15 17:15   ` Sam Thursfield

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=54198AD5.1080606@fb.com \
    --to=clm@fb.com \
    --cc=Anand.Jain@oracle.com \
    --cc=baserock-dev@baserock.org \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=sam.thursfield@codethink.co.uk \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.