Description
In the Linux kernel, the following vulnerability has been resolved: cifs: use cifs_invalidate_cache() in cifs_do_truncate() for O_TRUNC cifs_do_truncate() is invoked from cifs_open() without i_rwsem, so it cannot use cifs_resize_file_locked() to perform a proper fscache cookie resize. Instead, add cifs_invalidate_cache() after cifs_setsize(). cifs_invalidate_cache() calls fscache_invalidate(), which works without holding i_rwsem: it unconditionally increments inval_counter and sets FSCACHE_COOKIE_NO_DATA_TO_READ, ensuring that stale cached data is not served once the cookie is later activated by fscache_use_cookie(). Truncation to zero leaves no valid cached data, making invalidation the correct semantic here.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
efbcecdecefc26fa062c0e8210533ccad7d6bd4a to < 8b9b10fe5b8b492b27b9f4546742ea541a650213affectedfa724e235cfdb0fb0bb427d0f9dfe864ae27403e to < 81fc3868a7f726980ff845c1d0d271051e5f0f45affectedfa724e235cfdb0fb0bb427d0f9dfe864ae27403e to < 364b183230586a62660a7280c1eb20138338eeb5affected6838bcac954487cc0a3c8a4ee1b3a3a30e244dc9affected75640976cf474eb41682a13f2dbe9534ac26ca50affected3513f3931c579ba2a715784c6dedc59e0d9282eeaffected6.18.44 to < 6.18.50affected6.12.105 to < 6.13affected7.1.8 to < 7.2affected
Linux Linux
Default version status: affected
7.2affected0 to < 7.2unaffected6.18.50 to ≤ 6.18.*unaffected7.2.4 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected