[PATCH 2/3] Initial port to PowerPC 64 Little Endian systems Verified

Timothy Pearson tpearson at raptorengineering.com
Tue Feb 26 16:19:07 CST 2019

> From: "André Hentschel" <nerv at dawncrow.de>
> To: "Timothy Pearson" <tpearson at raptorengineering.com>, "wine-devel" <wine-devel at winehq.org>
> Sent: Tuesday, February 26, 2019 12:48:33 PM
> Subject: Re: [PATCH 2/3] Initial port to PowerPC 64 Little Endian systems Verified

> Hi,
> Some notes on this patch:
> * Please split it, see my ARM or even better my ARM64 patches for it: [1],
> especially [2] (6 years ago, WHAT???)
> * git complains about white-space issues when applying, those need to be fixed
> * I needed to add support in the wine tools for powerpc64le, because my
> toolchain was named that way
> * I had a quick try with qemu user space emulation and directly ran into the
> assertion in signal_ppc64.c:signal_alloc_thread(): assert( sizeof(TEB) <=
> min_size );
> * A very minor one: For easier searching for commits a constant platform naming
> helps, I tried to include "ARM64" in all related patch subjects, maybe PPC64
> fits here well

Thanks for the feedback and links.  I'll start working on a v2.

What did you need to edit for powerpc64le?  I can throw that in as another patch in the series.

qemu user space emulation is not great.  My first guess would be page size -- most POWER systems use 64k pages, x86 machines only use 4k pages.  I've run into similar problems the other way (trying to run x86 apps via user space emulation) on 64k POWER hosts.  POWER does technically support 4k pages, but 4k kernels get a lot less testing and aren't the main focus here, at least initially.  Higher priority is adding the missing exception handling code.

More information about the wine-devel mailing list