AMerge tag 'netfs-fixes-20221115' of git://git.kernel.org/pub/scm/linux/kernel/git...
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 15 Nov 2022 22:56:23 +0000 (14:56 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 15 Nov 2022 22:56:23 +0000 (14:56 -0800)
commit59d0d52c30d4991ac4b329f049cc37118e00f5b0
tree255a538cf6b539c7f9d20b5e4d1a16dd9ae60ba7
parent81e7cfa3a9eb4ba6993a9c71772fdab21bc5d870
parent5e51c627c5acbcf82bb552e17533a79d2a6a2600
AMerge tag 'netfs-fixes-20221115' of git://git./linux/kernel/git/dhowells/linux-fs

Pull netfx fixes from David Howells:
 "Two fixes, affecting the functions that iterates over the pagecache
  unmarking or unlocking pages after an op is complete:

   - xas_for_each() loops must call xas_retry() first thing and
     immediately do a "continue" in the case that the extracted value is
     a special value that indicates that the walk raced with a
     modification. Fix the unlock and unmark loops to do this.

   - The maths in the unlock loop is dodgy as it could, theoretically,
     at some point in the future end up with a starting file pointer
     that is in the middle of a folio. This will cause a subtraction to
     go negative - but the number is unsigned. Fix the maths to use
     absolute file positions instead of relative page indices"

* tag 'netfs-fixes-20221115' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
  netfs: Fix dodgy maths
  netfs: Fix missing xas_retry() calls in xarray iteration