On Mon, 2022-03-14 at 10:22 +0800, Xiubo Li wrote: > On 3/9/22 8:33 PM, Jeff Layton wrote: > > Signed-off-by: Jeff Layton <jlayton@xxxxxxxxxx> > > --- > > fs/ceph/addr.c | 2 +- > > fs/ceph/file.c | 4 ++-- > > 2 files changed, 3 insertions(+), 3 deletions(-) > > > > diff --git a/fs/ceph/addr.c b/fs/ceph/addr.c > > index 752c421c9922..f42440d7102b 100644 > > --- a/fs/ceph/addr.c > > +++ b/fs/ceph/addr.c > > @@ -317,7 +317,7 @@ static void ceph_netfs_issue_op(struct netfs_read_subrequest *subreq) > > return; > > > > req = ceph_osdc_new_request(&fsc->client->osdc, &ci->i_layout, vino, subreq->start, &len, > > - 0, 1, CEPH_OSD_OP_READ, > > + 0, 1, CEPH_OSD_OP_SPARSE_READ, > > For this possibly should we add one option to disable it ? Just in case > we need to debug the fscrypt or something else when we hit the > read/write related issue ? > > Yeah, it's probably a reasonable thing to add. I had that at one point in development and dropped it. Let me see if I can resurrect that before I post a v2. > > > CEPH_OSD_FLAG_READ | fsc->client->osdc.client->options->read_from_replica, > > NULL, ci->i_truncate_seq, ci->i_truncate_size, false); > > if (IS_ERR(req)) { > > diff --git a/fs/ceph/file.c b/fs/ceph/file.c > > index feb75eb1cd82..d1956a20c627 100644 > > --- a/fs/ceph/file.c > > +++ b/fs/ceph/file.c > > @@ -934,7 +934,7 @@ static ssize_t ceph_sync_read(struct kiocb *iocb, struct iov_iter *to, > > > > req = ceph_osdc_new_request(osdc, &ci->i_layout, > > ci->i_vino, off, &len, 0, 1, > > - CEPH_OSD_OP_READ, CEPH_OSD_FLAG_READ, > > + CEPH_OSD_OP_SPARSE_READ, CEPH_OSD_FLAG_READ, > > NULL, ci->i_truncate_seq, > > ci->i_truncate_size, false); > > if (IS_ERR(req)) { > > @@ -1291,7 +1291,7 @@ ceph_direct_read_write(struct kiocb *iocb, struct iov_iter *iter, > > vino, pos, &size, 0, > > 1, > > write ? CEPH_OSD_OP_WRITE : > > - CEPH_OSD_OP_READ, > > + CEPH_OSD_OP_SPARSE_READ, > > flags, snapc, > > ci->i_truncate_seq, > > ci->i_truncate_size, > -- Jeff Layton <jlayton@xxxxxxxxxx>