[PATCH 3/3] mm, pmem, xfs: Introduce MF_MEM_REMOVE for unbind

2022-09-02 Thread Shiyang Ruan
This patch is inspired by Dan's "mm, dax, pmem: Introduce dev_pagemap_failure()"[1]. With the help of dax_holder and ->notify_failure() mechanism, the pmem driver is able to ask filesystem (or mapped device) on it to unmap all files in use and notify processes who are using those files. Call trac

[PATCH v8 0/3] mm, pmem, xfs: Introduce MF_MEM_REMOVE for unbind

2022-09-02 Thread Shiyang Ruan
Changes since v7: 1. Add P1 to fix calculation mistake 2. Add P2 to move drop_pagecache_sb() to super.c for xfs to use 3. P3: Add invalidate all mappings after sync. 4. P3: Set offset&len to be start&length of device when it is to be removed. 5. Rebase on 6.0-rc3 + Darrick's patch[1] + Da

[PATCH 2/3] fs: move drop_pagecache_sb() for others to use

2022-09-02 Thread Shiyang Ruan
xfs_notify_failure requires a method to invalidate all mappings. drop_pagecache_sb() can do this but it is a static function and only build with CONFIG_SYSCTL. Now, move it to super.c and make it available for others. Signed-off-by: Shiyang Ruan --- fs/drop_caches.c | 33 -

[PATCH 1/3] xfs: fix the calculation of length and end

2022-09-02 Thread Shiyang Ruan
The end should be start + length - 1. Also fix the calculation of the length when seeking for intersection of notify range and device. Signed-off-by: Shiyang Ruan --- fs/xfs/xfs_notify_failure.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/fs/xfs/xfs_notify_failur