[PATCH] drm_handle_t type

Dave Airlie airlied at gmail.com
Tue Apr 13 20:46:38 PDT 2010


On Wed, Apr 14, 2010 at 1:32 PM, Robert Noland <rnoland at 2hip.net> wrote:
> On Wed, 2010-04-14 at 00:19 +0100, Matthew W. S. Bell wrote:
>> On Sun, 2010-04-11 at 09:10 -0500, Robert Noland wrote:
>> > On Sat, 2010-04-10 at 19:30 +0100, Matthew W. S. Bell wrote:
>> > > On Mon, 2010-04-05 at 17:46 +1000, Dave Airlie wrote:
>> > > > Its probably not documented well anywhere, though I think the handles are
>> > > > 32-bit is written down somewhere.
>> > >
>> > > Ah sorry, I missed some.
>> >
>> > drm_handle_t is correct here...
>>
>> No, drm_handle_t can be of a different size to void *; converting
>> between integers and pointers of different sizes causes a warning. To
>> eliminate the warning, the value first needs to be passed between
>> uintptr_t and void *, which are of the same size, and then converted to
>> drm_handle_t. The last part is implicit; the drm_handle_t casts are
>> irrelevant/useless.
>
> My point being that the casts to drm_handle_t are correct.  Feel free to
> fix linux' define for drm_handle_t.
>

Weird the drm is defined on Linux and is considered the standard, and
uint32_t is considered correct handle sizing on Linux.

I'm not sure why FreeBSD didn't change to 32-bit handles at the same
time, I think nobody wanted to break stuff by accident at the time,
assuming FreeBSD maintainers would take care of it.

Dave.


More information about the dri-devel mailing list