2024-09-05T09:02:54.004Z | <Shachar Sharon> Hi, commit `b4e39f3ecc` ("libcephfs: Add nonblocking readv/writev I/O interface") introduced `ceph_ll_nonblocking_readv_writev` API in libcephfs. We want to start integrating this new API into samba-to-chepfs bridge (following the footsteps of nfs-ganesha), and I was wondering why didn't we change the libcephfs version number when adding this new interface? Does it have any known issues/limitations? |
2024-09-05T10:41:35.760Z | <Dhairya Parmar> hey @Shachar Sharon, the non-blocking i/o paths required some fixes (mostly merged) which might be reason. |
2024-09-05T10:42:34.669Z | <Dhairya Parmar> Also, just fyi, nfs-ganesha isn't making use of the async calls since they faced some memory bottleneck with their (nfs-ganesha) threads. |
2024-09-05T10:43:20.042Z | <Dhairya Parmar> There is also a zero-copy interface currently wip <https://github.com/ceph/ceph/pull/58228/commits> |
2024-09-05T10:43:37.260Z | <Dhairya Parmar> There is also a zero-copy interface (for both sync/async) currently wip <https://github.com/ceph/ceph/pull/58228/commits> |
2024-09-05T10:45:02.442Z | <Dhairya Parmar> Also, just fyi, nfs-ganesha isn't making use of the async calls as far i know (for now) since they faced some memory bottleneck with their (nfs-ganesha) threads. |
2024-09-05T10:47:00.225Z | <Dhairya Parmar> > Does it have any known issues/limitations?
just one <https://github.com/ceph/ceph/pull/58564> but it ain't that of a problem (production clusters are hard to hit that limit in one call) |
2024-09-05T10:47:20.950Z | <Dhairya Parmar> > Does it have any known issues/limitations?
just one <https://github.com/ceph/ceph/pull/58564> but it ain't that of a problem (production clusters are hard to hit that limit in a single call) |
2024-09-05T10:52:06.453Z | <Dhairya Parmar> > Does it have any known issues/limitations?
just one as of now <https://github.com/ceph/ceph/pull/58564> but it ain't that of a problem (production clusters are hard to hit that limit in a single call) |
2024-09-05T10:57:56.556Z | <Shachar Sharon> @Dhairya Parmar Many thanks for this info. As far as I can tell from reading nfs-ganesha code, both async and zero-copy I/O code are under `#if` and `#ifdef` and we would do the same on Samba side. Having also a new version number to libcephfs would make things a bit more explicit IMHO. |
2024-09-05T11:02:50.284Z | <Dhairya Parmar> Yeah, now since the code is quite stable, it's high time. |
2024-09-05T11:08:26.271Z | <Dhairya Parmar> tagging @Venky Shankar @Patrick Donnelly @gregsfortytwo |
2024-09-05T13:53:23.447Z | <gregsfortytwo> No new version because we are super bad about incrementing those when changes happen in libcephfs or librados. Definitely worth a minor version bump for that |