Bug #40284
openkclient: evaluate/fix/add lazio support in the kernel
0%
Description
ceph-fuse now supports lazyio [2, #20598] but I don't believe we ever checked what needed to be done for the kernel client.
Also, I got a question from Dan @ CERN about how lazyio interacts with the page cache (or for ceph-fuse, the osdc cache). In particular, if a client 1 reads some file blocks and another client 2 updates those blocks, how does client 1 expire its page cache? Does it need to reopen the file? It seems we're missing the lazyio_propagate/lazyio_synchronize interfaces to resolve this which do exist in the Client userspace library [1], but untested (#40283).
Targeting v15.0.0 just so this ticket is visible in searches.
[1] http://www.pdsw.org/pdsw09/resources/pdsw-pnfsmpiio-hildebrand-public.pdf
[2] https://github.com/ceph/ceph/pull/22450
Updated by Patrick Donnelly almost 5 years ago
- Related to Bug #40283: qa: add testing for lazyio added
Updated by Patrick Donnelly over 3 years ago
- Blocked by Feature #41796: fs/ceph: add lazyio propagate/synchronize support added
Updated by Patrick Donnelly almost 3 years ago
Discussing for Quincy: Jeff is against keeping this in the kernel -- we are not really using it and it's probably incompatible with ceph-fuse. Jeff says the feature is dead in the kernel because it's not really implemented.