Re: [PATCH 3/6] libdrm: fix the Android 64bit build

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 29/01/15 19:00, Stéphane Marchesin wrote:
> On Thu, Jan 29, 2015 at 10:47 AM, Emil Velikov <emil.l.velikov@xxxxxxxxx> wrote:
>> With 64bit bionic mmap now handles 64bit offset, thus we no longer
>> need the __mmap2 trick.
>>
>> Fix from Chih-Wei Huang, over at the google forums.
>>
>> Cc: Chih-Wei Huang <cwhuang@xxxxxxxxxxxxxxx>
>> Signed-off-by: Emil Velikov <emil.l.velikov@xxxxxxxxx>
>> ---
>>  libdrm.h | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/libdrm.h b/libdrm.h
>> index acfada5..6c3cd59 100644
>> --- a/libdrm.h
>> +++ b/libdrm.h
>> @@ -45,7 +45,7 @@
>>
>>  #include <sys/mman.h>
>>
>> -#if defined(ANDROID)
>> +#if defined(ANDROID) && !defined(__LP64__)
>>  #include <errno.h> /* for EINVAL */
>>
>>  extern void *__mmap2(void *, size_t, int, int, int, size_t);
> 
> It seems like you're be better off just using mmap64 instead of __mpap2?
> 
I was thinking about that but decided against it due to:

 - For 64bit platforms - mmap64 maps directly to mmap [1].

 - For other platforms (kitkat at least) mmap64 does a costly (according
to the man page) syscall (don't recall the name).

 - Some systems may be lacking mmap64.

Quite a noobie on the topic so I might be completely wrong :)

Thanks
Emil

[1]
https://android.googlesource.com/platform/bionic.git/+/38fcbbb35a40c46e96b4df10d670d1c132910854%5E2%5E!/

_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel





[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux