[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#336577: linux-kernel-headers: <linux/sem.h> broken on mips, mipsel



Daniel Jacobowitz <drow@false.org> writes:

> On Mon, Oct 31, 2005 at 10:45:55AM +0100, Matej Vela wrote:
>> Including <linux/sem.h> results in the following error on mips and mipsel:
[...]
>
> Why are you using this header from userspace?  In general it's the
> wrong choice.
>
> The only advantage over the userspace header is that it provides union
> semun; but POSIX is quite clear that it is the application's
> responsibility to provide that type.

For SEMVMX.  And you're right, sysconf(_SC_SEM_VALUE_MAX) would be a
better choice, but it isn't implemented...  Another solution would be
to call semctl(..., SEM_INFO, arg) and use arg.__buf->semvmx, but that
seemed unportable and inelegant (given that, as you note, the caller
must also define union semun).

If the fix is non-trivial, feel free to downgrade this to wishlist,
and I'll change dctc and dcgui to use _POSIX_SEM_VALUE_MAX.

Thanks,

Matej



Reply to: