svn commit: r317809 - head/share/man/man7

Bruce Evans brde at optusnet.com.au
Fri May 5 16:32:35 UTC 2017


On Fri, 5 May 2017, Ed Maste wrote:

> On 5 May 2017 at 10:31, Konstantin Belousov <kostikbel at gmail.com> wrote:
>> On Fri, May 05, 2017 at 11:39:23PM +1000, Bruce Evans wrote:
>>>
>>> Change "size" to "representation" if you want to allow for more than the
>>> size changing.
>> I suggest you to negotiate a formulation with brooks@, who provided the
>> existing note.
>
> If it's really undesirable to mention pointer integrity here, I think
> the main point can still be made with a phrase like Bruce proposed
> (but I think it's fine as it exists now).

No one except Cheri developers would know the Cheri meaning of "integrity
mechanism".

"Representation" is a general term that is fuzzy enough to work here.
The representation can be almost anything, so using this term reduces
the statement to a warning that it should not be assumed that pointers
have the same [binary] representation as unsigned long, although the
previous paragraph says that they [currently] do.

> What about "In order to maximize compatibility with future changes in
> pointer size or representation, manipulation..."?

Or just remove the statement that pointers have the same representation
as unsigned long, so that FreeBSD gurantees nothing more than the C
standard for pointers, or emphasize this.

> Very briefly (to give some context), in CheriBSD and the CHERI CPU
> pointers are 128 or 256 bits wide, and have a base address, length,
> permissions, and other fields. Thus the size differs from existing
> standard integer types, and a pointer's representation and even the
> essence of what a pointer is differs from pointers in existing FreeBSD
> architectures.

How does it restore the extra information when converting back from
intptr_t?

Bruce


More information about the svn-src-all mailing list