• Al Viro's avatar
    [PATCH] jffs2: fix symlink error handling · 2fb1e308
    Al Viro authored
    The current calling conventions for ->follow_link() are already fairly
    complex.
    
    What we have is
    	1) you can return -error; then you must release nameidata yourself
    	   and ->put_link() will _not_ be called.
    	2) you can do nd_set_link(nd, ERR_PTR(-error)) and return 0
    	3) you can do nd_set_link(nd, path) and return 0
    	4) you can return 0 (after having moved nameidata yourself)
    
    jffs2 follow_link() is broken - it has an exit where it returns
    -EIO and leaks nameidata.
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    2fb1e308
symlink.c 1.83 KB