From: Ingo Schwarze Subject: Re: Missing errno # 71 in man errno To: Angelo Rossi Cc: tech@openbsd.org, jsg@openbsd.org Date: Tue, 15 Jul 2025 20:34:52 +0200 Hello Angelo and Jonathan, Angelo Rossi wrote on Tue, Jul 15, 2025 at 05:44:19PM +0200: > In OpenBSD 7.7 the manual page for errno does not report the error 71: > EREMOTE --- 71 --- Too many levels of remote in path. Unless i'm misreading the code of our system, the only driver generating that particular error number is inteldrm(4), and even there my impression is it was only added in February 2025 by jsg@, and only in sys/dev/pci/drm/i915/display/intel_fb_bo.c. The C library does not generate this error number. My impression is this error number can only get set as a result of ioctl(2) against an inteldrm(4) device. In that region, i think we have have significantly worse documentation gaps: The inteldrm(4) manual doesn't even mention at all that inteldrm(4) supports ioctl(2), and it does not list which ioctls it supports, even though that is what driver manual pages are supposed to do when the driver supports driver-specific ioctls. After ioctls are documented, one can then add an ERRORS section describing under which conditions the device-specific ioctls fail. I'm not opposed to adding EREMOTE to errno(2), but as long as the command "man -k Er=EREMOTE" would return only a single page, errno(2), the benefit for users would seem quite limited to me, in particular with respect to an error message as cryptic as "Too many levels of remote in path" - what is a user supposed to learn from that message as long as they cannot even figure out that it's related to trying to configure a framebuffer for inteldrm(4), which seems perfectly obscure to me given the wording of the error message? Jonathan, what do you think should be done here? Ingo