[Skiboot] [PATCH 0/4] libflash/blocklevel erase features

Cyril Bur cyril.bur at au1.ibm.com
Thu Apr 20 10:44:37 AEST 2017


On Fri, 2017-04-07 at 15:56 +1000, Stewart Smith wrote:
> Cyril Bur <cyril.bur at au1.ibm.com> writes:
> > Currently libflash/blocklevel erase functionality checks to see if the
> > erase region is aligned to the erase mask of the backend. If the
> > condition isn't met blocklevel will refuse to allow the erase, this is
> > by design as backends provide no sanity guarantee here - although most
> > will likely just fail aswell.
> > 
> > Until recently this hasn't been a problem as backends have always
> > supplied 4K erase blocks and the FFS structures which are most
> > commonly modified are 4k aligned.
> > 
> > Recently BMC kernel MTD backends have been exposing 64K erase blocks
> > which had not gone well with the 4K aligned FFS partitions. This has
> > resulted in pflash being unable to flash specific partitions or the
> > gard tool being unable to clear records. Various bugs have been filed
> > on the matter - some which I can't link and most which I don't even
> > have access to myself.
> > 
> > Introducing blocklevel_smart_erase(), essentially just deals with with
> > the rmw problem of having to erase more than what will be written. The
> > great news is that this series comes with tests!
> 
> Thanks, series merged to master as of
> 47a4831befa13e8fa4da0529a233415e5a43ac5f.
> 
> We probably have to poke all the distros to upgrade gard to be current
> as of skiboot 5.5.0 now though. I tihnk that's doable by filing bugs in
> the right place inside IBM.

Unfortunately with my holidays coming up this may have to wait till
June - happy to poke people when I get back. Also, this series exposed
an issue with old kernels so we shouldn't update tools for them until
"libflash/file: Only use 64bit MTD erase ioctl() when needed" is
merged.

> 



More information about the Skiboot mailing list