On Sun, Jun 11, 2023 at 10:47 PM Amir Goldstein <amir73il@xxxxxxxxx> wrote: > > Miklos, > > Third attempt with the eye towards simplifying d_real() interface. > > Like v2, most of the vfs code should remain unaffected by this > expect for the special fsnotify case that we wanted to fix. > FYI, I've made some changes based on feedback on v3 from Christoph and Christian: - Rename struct file_fake to backing_file - Rename helpers to open_backing_file(), backing_file_real_path() - Rename FMODE_FAKE_PATH to FMODE_BACKING - Separate flag from FMODE_NOACCOUNT - inline the non-backing branch of f_real_path() Pushed to: https://github.com/amir73il/linux/commits/ovl_fake_path Will wait for your feedback before posting v4. Thanks, Amir. > > Changes since v2: > - Restore the file_fake container (Miklos) > - Re-arrange the v1 helpers (Christian) > > Changes since v1: > - Drop the file_fake container > - Leave f_path fake and special case only fsnotify > > Amir Goldstein (2): > fs: use fake_file container for internal files with fake f_path > ovl: enable fsnotify events on underlying real files > > fs/cachefiles/namei.c | 2 +- > fs/file_table.c | 91 +++++++++++++++++++++++++++++++++------- > fs/internal.h | 5 ++- > fs/namei.c | 16 +++---- > fs/open.c | 28 ++++++++----- > fs/overlayfs/file.c | 6 +-- > include/linux/fs.h | 15 ++++--- > include/linux/fsnotify.h | 3 +- > 8 files changed, 121 insertions(+), 45 deletions(-) > > -- > 2.34.1 >