lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <2092f2db-d847-dd78-1690-359ed9bb7f14@gmail.com> Date: Fri, 21 Oct 2022 12:20:57 +0100 From: Pavel Begunkov <asml.silence@...il.com> To: Stefan Metzmacher <metze@...ba.org>, io-uring <io-uring@...r.kernel.org>, Jens Axboe <axboe@...nel.dk> Cc: Jakub Kicinski <kuba@...nel.org>, netdev <netdev@...r.kernel.org>, Dylan Yudaken <dylany@...com> Subject: Re: IORING_SEND_NOTIF_USER_DATA (was Re: IORING_CQE_F_COPIED) On 10/21/22 10:45, Stefan Metzmacher wrote: > Am 21.10.22 um 11:27 schrieb Pavel Begunkov: >> On 10/21/22 09:32, Stefan Metzmacher wrote: >>> Hi Pavel, >>> >>>>>>> Experimenting with this stuff lets me wish to have a way to >>>>>>> have a different 'user_data' field for the notif cqe, >>>>>>> maybe based on a IORING_RECVSEND_ flag, it may make my life >>>>>>> easier and would avoid some complexity in userspace... >>>>>>> As I need to handle retry on short writes even with MSG_WAITALL >>>>>>> as EINTR and other errors could cause them. >>>>>>> >>>>>>> What do you think? >>>>> >>>>> Any comment on this? >>>>> >>>>> IORING_SEND_NOTIF_USER_DATA could let us use >>>>> notif->cqe.user_data = sqe->addr3; >>>> >>>> I'd rather not use the last available u64, tbh, that was the >>>> reason for not adding a second user_data in the first place. >>> >>> As far as I can see io_send_zc_prep has this: >>> >>> if (unlikely(READ_ONCE(sqe->__pad2[0]) || READ_ONCE(sqe->addr3))) >>> return -EINVAL; >>> >>> both are u64... >> >> Hah, true, completely forgot about that one > > So would a commit like below be fine for you? > > Do you have anything in mind for SEND[MSG]_ZC that could possibly use > another u64 in future? It'll most likely be taken in the future, some features are planned some I can imagine. The question is how necessary this one is and/or how much simpler it would make it considering that CQEs are ordered and apps still need to check for F_MORE. It shouldn't even require refcounting. Can you elaborate on the simplifying userspace part? -- Pavel Begunkov
Powered by blists - more mailing lists