Hello Pino, As the contributor of the patch being discussed, can I please get your opinion on this bug report?
Thanks On 26 May 2011 04:44, Andrew Deason <[email protected]> wrote: > k_hasafs is currently broken, due to patch 043_hurd_ioctl introduced in > 1.4.0-4 to fix #483281. That patch changes the definition of > VIOC_SYSCALL_PROC in this hunk: > > -#define VIOC_SYSCALL_PROC _IOW('C', 1, void *) > +#ifdef __GNU__ > +#define _IOT_procdata _IOT(_IOTS(long), 5, 0, 0, 0, 0) > +#endif > +#define VIOC_SYSCALL_PROC _IOW('C', 1, struct procdata) > > This changes the ioctl command number we use to an incorrect one, so > k_hasafs() always returns false, even if an AFS client is running. I > have no idea what GNU hurd uses _IOT_* for, but since _IOT_procdata > includes the name of a structure, I expect that this will FTBFS on hurd > again if the third _IOW argument is just reverted to void*. > > I don't know if the GNU hurd folks have an opinion on the "proper" > solution here, but here are a couple of options that I think will work: > > - Define a structure that only has one 'void*' in it, and pass that in > instead of struct procdata. (And define _IOT_whatever instead of > _IOT_procdata > > - Don't build kafs on hurd, or just always return 0 for k_hasafs or > something, since I'm not aware of any AFS kernel clients that run on > hurd. In particular, trying to calculate the ioctl number on hurd > doesn't make a lot of sense, since there's never any kernel module on > hurd to match it to. There's no "correct" number. > -- Brian May <[email protected]>

