[sheepdog] [PATCH v4] sheepdog: selectable object size support

Liu Yuan namei.unix at gmail.com
Fri Feb 6 03:18:29 CET 2015


On Wed, Feb 04, 2015 at 01:54:19PM +0900, Teruaki Ishizaki wrote:
> (2015/02/02 15:52), Liu Yuan wrote:
> >On Tue, Jan 27, 2015 at 05:35:27PM +0900, Teruaki Ishizaki wrote:
> >>Previously, qemu block driver of sheepdog used hard-coded VDI object size.
> >>This patch enables users to handle "block_size_shift" value for
> >>calculating VDI object size.
> >>
> >>When you start qemu, you don't need to specify additional command option.
> >>
> >>But when you create the VDI which doesn't have default object size
> >>with qemu-img command, you specify block_size_shift option.
> >>
> >>If you want to create a VDI of 8MB(1 << 23) object size,
> >>you need to specify following command option.
> >>
> >>  # qemu-img create -o block_size_shift=23 sheepdog:test1 100M
> >
> >Is it possible to make this option more user friendly? such as
> >
> >  $ qemu-img create -o object_size=8M sheepdog:test 1G
> 
> At first, I thought that the object_size was user friendly.
> But, Sheepdog has already the value of block_size_shift
> in the inode layout that means like object_size.
> 
> 'object_size' doesn't always fit right in 'block_size_shift'.
> On the other hands, 'block_size_shift' always fit right in
> 'object_size'.
> 
> I think that existing layout shouldn't be changed easily and
> it seems that it is difficult for users to specify
> the object_size value that fit right in 'block_size_shift'.
 
I don't think we need to change the layout. block_size_shift is what QEMU talks
to sheep, and QEMU options is what users talks to QEMU. We can convert the user
friendly object size into block_size_shift internally in the driver before
sending it tosheep daemon, no?

Thanks
Yuan



More information about the sheepdog mailing list