On Tue, Jul 30, 2024 at 01:15:48AM GMT, viro@xxxxxxxxxx wrote: > From: Al Viro <viro@xxxxxxxxxxxxxxxxxx> > > For any changes of struct fd representation we need to > turn existing accesses to fields into calls of wrappers. > Accesses to struct fd::flags are very few (3 in linux/file.h, > 1 in net/socket.c, 3 in fs/overlayfs/file.c and 3 more in > explicit initializers). > Those can be dealt with in the commit converting to > new layout; accesses to struct fd::file are too many for that. > This commit converts (almost) all of f.file to > fd_file(f). It's not entirely mechanical ('file' is used as > a member name more than just in struct fd) and it does not > even attempt to distinguish the uses in pointer context from > those in boolean context; the latter will be eventually turned > into a separate helper (fd_empty()). > > NOTE: mass conversion to fd_empty(), tempting as it > might be, is a bad idea; better do that piecewise in commit > that convert from fdget...() to CLASS(...). > > [conflicts in fs/fhandle.c, kernel/bpf/syscall.c, mm/memcontrol.c > caught by git; fs/stat.c one got caught by git grep] > [fs/xattr.c conflict] > > Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx> > --- Reviewed-by: Christian Brauner <brauner@xxxxxxxxxx>