[PATCH 13/13] ubifs: update implementation from u-boot v2016.03

Sascha Hauer s.hauer at pengutronix.de
Wed Jul 20 23:30:47 PDT 2016


Hi Renaud,

On Tue, Jul 19, 2016 at 12:41:49PM +0100, Renaud Barbier wrote:
> I just tested the v2016.07 version.
> 
> I noticed that the readlink function returns an empty variable and found
> that symlink that used to appear as:
> OWBOOT> / ls -l /mnt/
> lrwxrwxrwx              7 active -> primary
> drwxr-xr-x            472 primary
> 
> now appears as:
> 
> OWBOOT> / ls -l /mnt/
> drwxr-xr-x            472 active
> drwxr-xr-x            472 primary
> 
> It is due the ubifs_findfile function resolving the symlink as when the
> code under "if ((inode->i_mode & S_IFMT) == S_IFLNK) {" is commented
> out, the link is resolved by the ubifs_readlink entry point.

U-Boot does not have link support, so the UBIFS code from U-Boot
resolves the links itself. It seems we should just remove the symlink
handling code leaked in from U-Boot.

> 
> In another hand, it looks like ubifs_readlink does not deal with symlink
> recursion.

Hm not sure. Where should symlink recursion be handled? Shouldn't this
be done in the barebox file layer rather than in each filesystem? Not
that barebox has sylink recursion implemented, but if we do we should
fo it in the right place.

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list