On Mon, Dec 9, 2024, at 19:58, Elizabeth Figura wrote: > == Previous versions == > > No changes were made from v5 other than rebasing on top of the 6.13-rc1 > char-misc-next tree. > > I would like to repeat a question from the last round of review, though. Two > changes were suggested related to API design, which I did not make because the > APIs in question were already released in upstream Linux. However, the driver is > also completely nonfunctional and hidden behind BROKEN, so would this be > acceptable anyway? The changes in question are: If it was impossible to use the driver, there is no regression. I feel the entire point of marking it as broken was to be able to add that type of change. > * rename NTSYNC_IOC_SEM_POST to NTSYNC_IOC_SEM_RELEASE (matching the NT > terminology instead of POSIX), No objections my me on either name. > * change object creation ioctls to return the fds directly in the return value > instead of through the args struct. I would also still appreciate a > clarification on the advice in [1], which is why I didn't do this in the first > place. > > [1] https://docs.kernel.org/driver-api/ioctl.html#return-code The git log tells me that I have written that, but I don't remember why I put that in, maybe someone else suggested it. My feeling right now is that returning a file descriptor number as a small positive integer from the ioctl() return code makes sense. On the other hand, returning pointers, negative signed integers or large (> 32bit) 'unsigned long' values can cause a number of issues, so I would avoid all those the same way we discourage passing those integers as a literal 'arg' into ioctl() instead of going through a pointer. So either way, this looks good to me. I also looked through the series again to double-check that you avoid the usual common problems we list in Documentation/driver-api/ioctl.rst, and I found this is all fine. So with or without the two changes you listed: Acked-by: Arnd Bergmann <arnd@xxxxxxxx> Arnd