Note: This is a resend due to my prior messages being word-wrapped accidentally. Apologies for the duplicates! --------------------------------------------------------------------------
With increasing interest in non-x86 architectures (e.g. ARM64, POWER8), there is a growing desire to execute legacy x86 applications that cannot be recompiled on these new architectures. This series enables 3D multimedia applications (e.g. games) to function correctly on an emulated x86_64 host in user mode. It resolves several issues noted within the x86_64 user mode, and adds 3D ioctls for Intel and AMD graphics. Furthermore, it adds ALSA sound ioctls. NOTE: The initial DRM ioctl patch was taken from the qemu mailing list: https://lists.nongnu.org/archive/html/qemu-devel/2014-09/msg02405.html Aaditya Chandrasekhar Azad (1): This patch adds initial user-virtualization support for the DRM (type 'd') IOCTLs in linux. With it and a corresponding architecture chroot (say aarch64), I am able to successfully run a few 2D and 3D applications with native graphics acceleration. Some notes/caveats are: Timothy Pearson (6): Add initial x86_64 signal handlers QEMU does not currently support host pages that are larger than guest pages, likely due to glibc using fixed mmap requests. Pass select() arguments directly to do_select() on x86 platforms TIOCGPTN and related terminal control ioctls were not converted to the guest ioctl format on x86_64 targets. Convert these ioctls to enable terminal functionality on x86_64 guests. Add radeon DRM interface ioctls Add ALSA ioctls linux-user/ioctls.h | 252 ++++++++++ linux-user/signal.c | 302 ++++++++++- linux-user/syscall.c | 48 +- linux-user/syscall_defs.h | 255 ++++++++++ linux-user/syscall_types.h | 1131 ++++++++++++++++++++++++++++++++++++++++++ linux-user/x86_64/termbits.h | 12 +- 6 files changed, 1984 insertions(+), 16 deletions(-) -- 2.1.4