the kernel rdb does not support it, you need to use qemu. On Mon, May 12, 2014 at 8:00 PM, lijian <blacker1981 at 163.com> wrote: > Hi, > > I want to create a block image using the rbd cli and followng the rule: > stripe-unit * stripe-count = 2^order, > Take for example: > rbd create --pool rbd --size 20480 --order 21 --image-format 2 --stripe-unit > 1048576 --stripe-count 2 image1 > > But when I try to map to a block device then raise a message: rbd: add > failed: (22) Invalid argument > check the linux kernel(Linux nodeclient 3.11.0-12-generic #19-Ubuntu SMP Wed > Oct 9 16:20:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux) log > dmesg | grep rbd > rbd: image image1: unsupported stripe unit (got 1048576 want 2097152) > I guess the rbd kernel does not support the 'fancy striping', after I read > the kernel code rbd.c > ---------------------------------------------------------------------------------------------------------------------- > if (stripe_unit != obj_size) { > rbd_warn(rbd_dev, "unsupported stripe unit " > "(got %llu want %llu)", > stripe_unit, obj_size); > return -EINVAL; > } > stripe_count = ceph_decode_64(&p); > if (stripe_count != 1) { > rbd_warn(rbd_dev, "unsupported stripe count " > "(got %llu want 1)", stripe_count); > return -EINVAL; > } > ----------------------------------------------------------------------------------------------------------------- > > So how to enable/test the 'fancy striping' features, please help! > > Best Regards, > Jian LI > > > > > _______________________________________________ > ceph-users mailing list > ceph-users at lists.ceph.com > http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com >