On 2/15/24 23:13, Christoph Hellwig wrote:
On Thu, Feb 15, 2024 at 12:47:39PM -0800, Bart Van Assche wrote:
The following patch accidentally removed the code for delivering
completions for cancelled reads and writes to user space: "[PATCH 04/33]
aio: remove retry-based AIO"
(https://lore.kernel.org/all/1363883754-27966-5-git-send-email-koverstreet@xxxxxxxxxx/)
Umm, that was more than 10 years ago. What code do you have that
is this old, and only noticed that it needs the completions now?
USB cancellation is being used and still works. It's only the completions
that are missing.
This patch was submitted less than two years ago and fixes a bug in the adb
daemon: "adbd: Dequeue pending USB write requests upon receiving CNXN"
(https://android.googlesource.com/platform/packages/modules/adb/+/4dd4da41e6b004fa0d49575ac87e8db877f3a116).
My questions about that patch are as follows (I have not yet found an adbd
expert who can help me with answering these questions):
* Are the io_cancel() calls racy? If the io_cancel() calls are delayed, will
this break the fix for the bug described in the patch description?
* Should the reported bug perhaps be fixed by improving the adb protocol,
e.g. by including a session ID in the adb protocol header?
Thanks,
Bart.