[U-Boot] [Regression][ext4] Regression at EXT4 filesystem code

Ionut Nicu ioan.nicu.ext at nsn.com
Mon Feb 24 17:42:59 CET 2014


Hi,

On 24.02.2014 16:13, ext Lukasz Majewski wrote:
> Dear All,
> 
> In the newest master u-boot 
> (SHA1: 1674df60d17e0e72396c961d5390bb62b184ad95)
> 
> I've found a regression with writing to EXT4 file system:
> 
> Writing uImage to ext4 partition - created with Debian's
> mkfs.ext4 /dev/sdd2 (size 58M)
> 
> dfu-util -R -a2 -D arch/arm/boot/uImage
> uImage size - 4.8 MiB
> 
> GADGET DRIVER: usb_dnl_dfu
> USB PHY0 Enable
> #Extent Error
> ext4fs_devread read outside partition 4294967294
> Extent Error
> 

Ugh ... It's pretty stupid, but my patch is completely ignoring the write path.
The error occurs because in read_allocated_block() I'm trying to use the extent
cache, but this extent cache is only built in ext4fs_read_file().

> 
> After reverting following patch:
> 
> Commit: "ext4fs: Add ext4 extent cache for read operations"
> SHA1: fc0fc50f38a4d7d0554558076a79dfe8b0d78cd5
> 
> I am able to store files on the ext4 partition:	
> 
> USB PHY0 Enable
> #File System is consistent
> file found deleting
> update journal finished
> File System is consistent
> update journal finished
> 
> DFU complete CRC32: 0x3875a108
> DOWNLOAD ... OK
> Ctrl+C to exit ...
> resetting ...
> 
> 
> Any ideas how to fix it?
> 

I guess the best solution for the moment is to revert the patch and I'll try to 
come up with an updated version which doesn't break the write functionality.

Sorry about this.

Regards,
Ionut


More information about the U-Boot mailing list