Re: rbd-nbd not resizing even after kernel tweaks

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I'll give it a try locally and see if I can figure it out. Note that
this commit [1] also dropped the call to "bd_set_size" within
"nbd_size_update", which seems suspicious to me at initial glance.

[1] https://github.com/torvalds/linux/commit/29eaadc0364943b6352e8994158febcb699c9f9b#diff-bc9273bcb259fef182ae607a1d06a142L180

On Wed, Apr 11, 2018 at 11:09 AM, Alex Gorbachev <ag@xxxxxxxxxxxxxxxxxxx> wrote:
>> On Wed, Apr 11, 2018 at 10:27 AM, Alex Gorbachev <ag@xxxxxxxxxxxxxxxxxxx> wrote:
>>> On Wed, Apr 11, 2018 at 2:43 AM, Mykola Golub <to.my.trociny@xxxxxxxxx> wrote:
>>>> On Tue, Apr 10, 2018 at 11:14:58PM -0400, Alex Gorbachev wrote:
>>>>
>>>>> So Josef fixed the one issue that enables e.g. lsblk and sysfs size to
>>>>> reflect the correct siz on change.  However, partptobe and parted
>>>>> still do not detect the change, complete unmap and remap of rbd-nbd
>>>>> device and remount of the filesystem is required.
>>>>
>>>> Does your rbd-nbd include this fix [1], targeted for v12.2.3?
>>>>
>>>> [1] http://tracker.ceph.com/issues/22172
>>>
>>> It should, the rbd-nbd version is 12.2.4
>>>
>>> root@lumd1:~# rbd-nbd -v
>>> ceph version 12.2.4 (52085d5249a80c5f5121a76d6288429f35e4e77b) luminous (stable)
>>> _______________________________________________
>
> On Wed, Apr 11, 2018 at 10:39 AM, Jason Dillaman <jdillama@xxxxxxxxxx> wrote:
>> Do you have a preliminary patch that we can test against?
>> Jason
>
> Hi Jason,
>
> This is the one Josef did, which fixes detection of the new size via
> sysfs (lsblk eetc.), but parted still requires complete unmapping and
> remapping of the NBD device to detect the change.
>
> I built a kernel with this patch based on 4.14.24, and also tested
> with the latest mainline 4.16.1 - same behavior.
>
> cc: stable@xxxxxxxxxxxxxxx
> Fixes: 639812a ("nbd: don't set the device size until we're connected")
> Signed-off-by: Josef Bacik <jbacik@xxxxxx>
> ---
>  drivers/block/nbd.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c
> index 86258b00a1d4..7106b98a35fb 100644
> --- a/drivers/block/nbd.c
> +++ b/drivers/block/nbd.c
> @@ -243,6 +243,8 @@ static void nbd_size_set(struct nbd_device *nbd,
> loff_t blocksize,
>         struct nbd_config *config = nbd->config;
>         config->blksize = blocksize;
>         config->bytesize = blocksize * nr_blocks;
> +       if (nbd->task_recv != NULL)
> +               nbd_size_update(nbd);
>  }
>
>  static void nbd_complete_rq(struct request *req)
>
> Regards,
> Alex



-- 
Jason
_______________________________________________
ceph-users mailing list
ceph-users@xxxxxxxxxxxxxx
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com



[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux