Re: [PATCH 11/11] fs: Remove aops->writepage

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Mar 17, 2025 at 03:22:30AM +0000, Matthew Wilcox wrote:
> On Sun, Mar 16, 2025 at 06:08:52PM -0700, Fan Ni wrote:
> > On Fri, Mar 07, 2025 at 01:54:11PM +0000, Matthew Wilcox (Oracle) wrote:
> > > All callers and implementations are now removed, so remove the operation
> > > and update the documentation to match.
> > > 
> > > Signed-off-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx>
> > > ---
> > 
> > Hi Matthew,
> > 
> > Tried to apply the remaining patches in the patchest (Patch 5-11)  which
> > have not picked up by linux-next. It seems we have more to cleanup.
> > 
> > For example, I hit the following issue when try to compile
> > ----------------------------------------------------------------
> > drivers/gpu/drm/ttm/ttm_backup.c: In function ‘ttm_backup_backup_page’:
> > drivers/gpu/drm/ttm/ttm_backup.c:139:39: error: ‘const struct address_space_operations’ has no member named ‘writepage’; did you mean ‘writepages’?
> >   139 |                 ret = mapping->a_ops->writepage(folio_file_page(to_folio, idx), &wbc);
> 
> Looks like that was added to linux-next after I completed the removal of
> ->writepage.  Thomas, what's going on here?

This patch fixes the compilation problem.  But I don't understand why
it's messing with the reclaim flag.  Thomas, can you explain?

+++ b/drivers/gpu/drm/ttm/ttm_backup.c
@@ -136,13 +136,13 @@ ttm_backup_backup_page(struct ttm_backup *backup, struct page *page,
                        .for_reclaim = 1,
                };
                folio_set_reclaim(to_folio);
-               ret = mapping->a_ops->writepage(folio_file_page(to_folio, idx), &wbc);
+               ret = shmem_writeout(to_folio, &wbc);
                if (!folio_test_writeback(to_folio))
                        folio_clear_reclaim(to_folio);
                /*
-                * If writepage succeeds, it unlocks the folio.
-                * writepage() errors are otherwise dropped, since writepage()
-                * is only best effort here.
+                * If writeout succeeds, it unlocks the folio.  errors
+                * are otherwise dropped, since writeout is only best
+                * effort here.
                 */
                if (ret)
                        folio_unlock(to_folio);





[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux