[RFC] Raising the UBI version

Boris Brezillon boris.brezillon at free-electrons.com
Wed Jun 22 07:13:04 PDT 2016


On Wed, 22 Jun 2016 16:05:17 +0200
Richard Weinberger <richard at nod.at> wrote:

> Am 22.06.2016 um 16:01 schrieb Boris Brezillon:
> > On Wed, 22 Jun 2016 15:54:34 +0200
> > Richard Weinberger <richard at nod.at> wrote:
> >   
> >> Am 22.06.2016 um 14:43 schrieb Boris Brezillon:  
> >>> Why do we need to hardcode /sys/class/ubi/version to 1? We just need to
> >>> update the mtd-utils to support version 2. Am I missing something?    
> >>
> >> We don't want to break existing userspace.
> >> Why should ubimkvol or ubiattach fail on a system with SLC NAND and
> >> CONFIG_MTD_UBI_CONSOLIDATE=y?  
> > 
> > But version won't be set to 2 in this case. If it's an SLC NAND we
> > don't need to use UBI version 2, do we.  
> 
> /sys/class/ubi/version is the version of the UBI implementation,
> not the version of the attached UBI image.
> It will the here as soon you load the UBI module.

Do we have /sys/class/ubi/ubiX/version for the UBI image version?
This is still unclear to me why we need to version the
user-space/kernel-space ABI, since it's supposed to be backward
compatible, so adding new features requires adding new ioctls and
keeping the old ones in a working state.

What is /sys/class/ubi/version actually encoding? Isn't it encoding the
fact that a specific UBI implementation is supporting all UBI on-flash
formats up to format version X (that was my understanding)?



More information about the linux-mtd mailing list