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.