svn commit: r290613 - head/sys/compat/linuxkpi/common/include/linux

Bruce Evans brde at optusnet.com.au
Tue Nov 10 16:35:40 UTC 2015


On Tue, 10 Nov 2015, Hans Petter Selasky wrote:

> On 11/09/15 22:17, Bruce Evans wrote:
>> ...
>> This shouldn't compile either.
>
>>  static int
>> -sysctl_root_handler_locked(struct sysctl_oid *oid, void *arg1, intptr_t 
>> arg2,
>> +sysctl_root_handler_locked(struct sysctl_oid *oid, void *arg1, intmax_t 
>> arg2,
>>      struct sysctl_req *req, struct rm_priotracker *tracker)
>
> Given that the second argument is sometimes used for pointers, maybe we 
> should keep it intptr_t. Or add a compile time assert that sizeof(intmax) >= 
> sizeof(intptr_t) which I think doesn't hold?

Then it wouldn't be large enough to hold int64_t on i386 or intmax_t on
all arches.  intmax_t is already not large enough to hold uintmax_t.

intmax_t can hold more than intptr_t, but its size and rank may be smaller.
See another reply.

Bruce


More information about the svn-src-head mailing list