Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Nov 2015 10:35:43 +0200
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Hans Petter Selasky <hps@selasky.org>
Cc:        cem@FreeBSD.org, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r290711 - head/sys/ofed/drivers/infiniband/core
Message-ID:  <20151113083543.GV2257@kib.kiev.ua>
In-Reply-To: <56459CEE.4090007@selasky.org>
References:  <201511121012.tACACKTI075143@repo.freebsd.org> <CAG6CVpWKsa3SwX27JpxBeQDikeDWJXyUGWG8sS=9DvzbML9xcA@mail.gmail.com> <56459CEE.4090007@selasky.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Nov 13, 2015 at 09:18:54AM +0100, Hans Petter Selasky wrote:
> Hi,
> 
> On 11/12/15 18:17, Conrad Meyer wrote:
> > These should cast through (u)intptr_t rather than unsigned long.
> >
> 
> This is Linux code, and they use "unsigned long" for pointer casts 
> everywhere, trying to not break their style.
> 
> BTW: I added to linux_compat.c:
> 
> CTASSERT(sizeof(unsigned long) == sizeof(uintptr_t));
> 
> And it survived my "tinderbox" build and I was surprised!

FreeBSD (at least currently) runs on two kinds of ABIs: ILP32 and LP64.
ILP32 means that sizeof(int) == sizeof(long) == sizeof(void *) == 4.
For LP64, sizeof(long) == sizeof(void *) == 8, while sizeof(int) == 4.
We do not support anything else.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20151113083543.GV2257>