• J
    cifs: fix flags handling in cifs_posix_open · 608712fe
    Jeff Layton 提交于
    The way flags are passed and converted for cifs_posix_open is rather
    non-sensical. Some callers call cifs_posix_convert_flags on the flags
    before they pass them to cifs_posix_open, whereas some don't. Two flag
    conversion steps is just confusing though.
    
    Change the function instead to clearly expect input in f_flags format,
    and fix the callers to pass that in. Then, have cifs_posix_open call
    cifs_convert_posix_flags to do the conversion. Move cifs_posix_open to
    file.c as well so we can keep cifs_convert_posix_flags as a static
    function.
    
    Fix it also to not ignore O_CREAT, O_EXCL and O_TRUNC, and instead have
    cifs_reopen_file mask those bits off before calling cifs_posix_open.
    Signed-off-by: NJeff Layton <jlayton@redhat.com>
    Reviewed-by: NSuresh Jayaraman <sjayaraman@suse.de>
    Signed-off-by: NSteve French <sfrench@us.ibm.com>
    608712fe
file.c 64.4 KB