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@xxxxxxxxxxx>: > 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@xxxxxxxxxxxxxxxxxxxxx >> http://lists.freedesktop.org/mailman/listinfo/dri-devel > >
Attachment:
12-radeon-info-compat.patch
Description: Binary data
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel