Consolidate the code to unlock the page in f2fs_write_single_data_page
instead of leaving it to the callers for the AOP_WRITEPAGE_ACTIVATE case.
Replace AOP_WRITEPAGE_ACTIVATE with a positive return of 1 as this case
now doesn't match the historic ->writepage special return code that is
on it's way out now that ->writepage has been removed.

Signed-off-by: Christoph Hellwig <h...@lst.de>
---
 fs/f2fs/compress.c | 3 +--
 fs/f2fs/data.c     | 8 +++-----
 2 files changed, 4 insertions(+), 7 deletions(-)

diff --git a/fs/f2fs/compress.c b/fs/f2fs/compress.c
index e016b0f96313..1e62fdffda07 100644
--- a/fs/f2fs/compress.c
+++ b/fs/f2fs/compress.c
@@ -1565,8 +1565,7 @@ static int f2fs_write_raw_pages(struct compress_ctx *cc,
                                                NULL, NULL, wbc, io_type,
                                                compr_blocks, false);
                if (ret) {
-                       if (ret == AOP_WRITEPAGE_ACTIVATE) {
-                               folio_unlock(folio);
+                       if (ret == 1) {
                                ret = 0;
                        } else if (ret == -EAGAIN) {
                                ret = 0;
diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
index 160c7b39d967..8d8018083c31 100644
--- a/fs/f2fs/data.c
+++ b/fs/f2fs/data.c
@@ -2917,9 +2917,9 @@ int f2fs_write_single_data_page(struct folio *folio, int 
*submitted,
         * file_write_and_wait_range() will see EIO error, which is critical
         * to return value of fsync() followed by atomic_write failure to user.
         */
-       if (!err)
-               return AOP_WRITEPAGE_ACTIVATE;
        folio_unlock(folio);
+       if (!err)
+               return 1;
        return err;
 }
 
@@ -3133,8 +3133,6 @@ static int f2fs_write_cache_pages(struct address_space 
*mapping,
                        ret = f2fs_write_single_data_page(folio,
                                        &submitted, &bio, &last_block,
                                        wbc, io_type, 0, true);
-                       if (ret == AOP_WRITEPAGE_ACTIVATE)
-                               folio_unlock(folio);
 #ifdef CONFIG_F2FS_FS_COMPRESSION
 result:
 #endif
@@ -3146,7 +3144,7 @@ static int f2fs_write_cache_pages(struct address_space 
*mapping,
                                 * keep nr_to_write, since vfs uses this to
                                 * get # of written pages.
                                 */
-                               if (ret == AOP_WRITEPAGE_ACTIVATE) {
+                               if (ret == 1) {
                                        ret = 0;
                                        goto next;
                                } else if (ret == -EAGAIN) {
-- 
2.47.2



_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to