lkml.org 
[lkml]   [2023]   [May]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH v20 13/32] ceph: Provide a splice-read stub
From

On 5/19/23 17:24, David Howells wrote:
> Xiubo Li <xiubli@redhat.com> wrote:
>
>>> + ret = ceph_get_caps(in, CEPH_CAP_FILE_RD, want, -1, &got);
>>> + if (ret < 0) {
>>> + ceph_end_io_read(inode);
>>> + return ret;
>>> + }
>>> +
>>> + if ((got & (CEPH_CAP_FILE_CACHE | CEPH_CAP_FILE_LAZYIO)) == 0) {
>>> + dout("splice_read/sync %p %llx.%llx %llu~%zu got cap refs on %s\n",
>>> + inode, ceph_vinop(inode), *ppos, len,
>>> + ceph_cap_string(got));
>>> +
>>> + ceph_end_io_read(inode);
>>> + return direct_splice_read(in, ppos, pipe, len, flags);
>> Shouldn't we release cap ref before returning here ?
> Ummm... Even if we got no caps?

No, at least we have got the 'need' caps: CEPH_CAP_FILE_RD once here.

I saw you have updated this and will check it.

Thanks

- Xiubo

>
> David
>

\
 
 \ /
  Last update: 2023-05-22 03:55    [W:0.109 / U:0.688 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site