Hi Christian! Yes, it is. Android-x86 4.0-r1 dos'nt fill right a value fild of the structture drm_radeon_info_t: high bits are a random value. But I wrote a compat function for this ioctl which clears this bits only for 32-bit applications. This patch is against a 3.10 kernel.
2014-09-15 15:54 GMT+04:00, Christian König deathsimple@vodafone.de:
Am 15.09.2014 um 12:09 schrieb Sergey Korshunoff:
Android-x86 4.0-r1 (32 bit) have problems with x86_64 kernel when he trying to use a radeon kms. The following change correct a problem:
drivers/gpu/drm/radeon_kms.c (function radeon_info_ioctl):
- value_ptr = (uint32_t *)((unsigned long)info->value);
- value_ptr = (uint32_t *)((unsigned)info->value);
Looks like a userspace data in android running under x86_64 is located above 4 Gb. I don't think so. But after this change android run fine.
That's most likely a bug on the userspace side, caused by the upper 32bits of info->value not initialized properly.
The kernel patch you show above will most likely just break 64bit userspace.
Regards, Christian.
dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel