* [Qemu-devel] regression: target/ppc: convert VSX logical operations to vector operations broke X for ppc64le guest
@ 2019-02-26 22:25 Andrew Randrianasulu
2019-02-28 5:06 ` Mark Cave-Ayland
0 siblings, 1 reply; 7+ messages in thread
From: Andrew Randrianasulu @ 2019-02-26 22:25 UTC (permalink / raw)
To: qemu-devel
Hello.
I bisected this problem with fonts (and multicolored vertical stripes) in qemu
git (ppc64-softmmu)
guest@slax:/dev/shm/qemu$ git bisect good
7b8fe477e12b164dda97f79e27b55b805d90384f is the first bad commit
commit 7b8fe477e12b164dda97f79e27b55b805d90384f
Author: Richard Henderson <richard.henderson@linaro.org>
Date: Fri Feb 15 10:00:46 2019 +0000
target/ppc: convert VSX logical operations to vector operations
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Message-Id: <20190215100058.20015-6-mark.cave-ayland@ilande.co.uk>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
:040000 040000 da3024ad2c9dfc3b7170516a8b321ef8c5d5bdf8
a0257b9f5880ecc8e7001a59ccaa10407084623f M target
guest@slax:/dev/shm/qemu$ git bisect log
git bisect start
# good: [32a1a94dd324d33578dca1dc96d7896a0244d768] Update version for v3.1.0
release
git bisect good 32a1a94dd324d33578dca1dc96d7896a0244d768
# bad: [86c7e2f4a93322a76afea5ee6806a83420d1dfea] Merge remote-tracking
branch 'remotes/berrange/tags/authz-core-pull-request' into staging
git bisect bad 86c7e2f4a93322a76afea5ee6806a83420d1dfea
# good: [95ebd99dcd37b8574426c876502bfcc7c299584b] target/arm: Decode PAuth
within disas_data_proc_1src
git bisect good 95ebd99dcd37b8574426c876502bfcc7c299584b
# good: [268dfefa690b2bdee1f8c5090d2343871cf3467c] hw/microblaze/Makefile.objs:
Create configs for petalogix and xilinx boards
git bisect good 268dfefa690b2bdee1f8c5090d2343871cf3467c
# good: [f5117fd28552fe3fe32ef0495582b1caaef7a28d] hw/mips_cpc: kick a VP when
putting it into Run statewq
git bisect good f5117fd28552fe3fe32ef0495582b1caaef7a28d
# bad: [2e68b8620637a4ee8c79b5724144b726af1e261b] Merge remote-tracking
branch 'remotes/dgibson/tags/ppc-for-4.0-20190219' into staging
git bisect bad 2e68b8620637a4ee8c79b5724144b726af1e261b
# good: [4c668f4a3d684ec133a52d936314379f6edd672e] target/ppc: Remove some #if
0'ed code
git bisect good 4c668f4a3d684ec133a52d936314379f6edd672e
# bad: [9b5b74da0a07a89ef71c7f7da0b36560a3bac521] target/ppc: Split out VSCR_SAT
to a vector field
git bisect bad 9b5b74da0a07a89ef71c7f7da0b36560a3bac521
# good: [444d6ca301d97de141a502851940943b09a9ebee] spapr/irq: Use the "simple"
ICS class for KVM
git bisect good 444d6ca301d97de141a502851940943b09a9ebee
# bad: [9bb0048ec6f8f3bcc144b2c5769d9301e824f946] target/ppc: convert xxspltw to
vector operations
git bisect bad 9bb0048ec6f8f3bcc144b2c5769d9301e824f946
# good: [471ff3d0257135b938d0a5f2181f22cd753d50de] target/ppc: convert
vspltis[bhw] to use vector operations
git bisect good 471ff3d0257135b938d0a5f2181f22cd753d50de
# bad: [7b8fe477e12b164dda97f79e27b55b805d90384f] target/ppc: convert VSX
logical operations to vector operations
git bisect bad 7b8fe477e12b164dda97f79e27b55b805d90384f
# good: [0f6a6d5db853c0cbe438c1831c70710bfb6530ee] target/ppc: convert
vsplt[bhw] to use vector operations
git bisect good 0f6a6d5db853c0cbe438c1831c70710bfb6530ee
# first bad commit: [7b8fe477e12b164dda97f79e27b55b805d90384f] target/ppc:
convert VSX logical operations to vector operations
guest@slax:/dev/shm/qemu$
configure line:
setarch i686 ./configure --target-list=ppc64-softmmu
launch line:
ppc64-softmmu/qemu-system-ppc64 -display
sdl,gl=on -hda /mnt/sdb1/PPC-img/alpine_disk.img
where alpine_disk.img is HDD installed Alpine 3.7 for ppc64le with xfce4
desktop.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] regression: target/ppc: convert VSX logical operations to vector operations broke X for ppc64le guest
2019-02-26 22:25 [Qemu-devel] regression: target/ppc: convert VSX logical operations to vector operations broke X for ppc64le guest Andrew Randrianasulu
@ 2019-02-28 5:06 ` Mark Cave-Ayland
2019-02-28 8:39 ` Andrew Randrianasulu
0 siblings, 1 reply; 7+ messages in thread
From: Mark Cave-Ayland @ 2019-02-28 5:06 UTC (permalink / raw)
To: Andrew Randrianasulu, qemu-devel, qemu-ppc@nongnu.org
Cc: Richard Henderson, David Gibson
On 26/02/2019 22:25, Andrew Randrianasulu wrote:
(adding qemu-ppc, Richard and David - please make sure you add the relevant
maintainer on bug reports, as otherwise due to the high volume of mails to the list
it's very easy to miss things)
> Hello.
>
> I bisected this problem with fonts (and multicolored vertical stripes) in qemu
> git (ppc64-softmmu)
>
> guest@slax:/dev/shm/qemu$ git bisect good
> 7b8fe477e12b164dda97f79e27b55b805d90384f is the first bad commit
> commit 7b8fe477e12b164dda97f79e27b55b805d90384f
> Author: Richard Henderson <richard.henderson@linaro.org>
> Date: Fri Feb 15 10:00:46 2019 +0000
>
> target/ppc: convert VSX logical operations to vector operations
>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> Acked-by: David Gibson <david@gibson.dropbear.id.au>
> Message-Id: <20190215100058.20015-6-mark.cave-ayland@ilande.co.uk>
> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
>
> :040000 040000 da3024ad2c9dfc3b7170516a8b321ef8c5d5bdf8
> a0257b9f5880ecc8e7001a59ccaa10407084623f M target
>
>
> guest@slax:/dev/shm/qemu$ git bisect log
> git bisect start
> # good: [32a1a94dd324d33578dca1dc96d7896a0244d768] Update version for v3.1.0
> release
> git bisect good 32a1a94dd324d33578dca1dc96d7896a0244d768
> # bad: [86c7e2f4a93322a76afea5ee6806a83420d1dfea] Merge remote-tracking
> branch 'remotes/berrange/tags/authz-core-pull-request' into staging
> git bisect bad 86c7e2f4a93322a76afea5ee6806a83420d1dfea
> # good: [95ebd99dcd37b8574426c876502bfcc7c299584b] target/arm: Decode PAuth
> within disas_data_proc_1src
> git bisect good 95ebd99dcd37b8574426c876502bfcc7c299584b
> # good: [268dfefa690b2bdee1f8c5090d2343871cf3467c] hw/microblaze/Makefile.objs:
> Create configs for petalogix and xilinx boards
> git bisect good 268dfefa690b2bdee1f8c5090d2343871cf3467c
> # good: [f5117fd28552fe3fe32ef0495582b1caaef7a28d] hw/mips_cpc: kick a VP when
> putting it into Run statewq
> git bisect good f5117fd28552fe3fe32ef0495582b1caaef7a28d
> # bad: [2e68b8620637a4ee8c79b5724144b726af1e261b] Merge remote-tracking
> branch 'remotes/dgibson/tags/ppc-for-4.0-20190219' into staging
> git bisect bad 2e68b8620637a4ee8c79b5724144b726af1e261b
> # good: [4c668f4a3d684ec133a52d936314379f6edd672e] target/ppc: Remove some #if
> 0'ed code
> git bisect good 4c668f4a3d684ec133a52d936314379f6edd672e
> # bad: [9b5b74da0a07a89ef71c7f7da0b36560a3bac521] target/ppc: Split out VSCR_SAT
> to a vector field
> git bisect bad 9b5b74da0a07a89ef71c7f7da0b36560a3bac521
> # good: [444d6ca301d97de141a502851940943b09a9ebee] spapr/irq: Use the "simple"
> ICS class for KVM
> git bisect good 444d6ca301d97de141a502851940943b09a9ebee
> # bad: [9bb0048ec6f8f3bcc144b2c5769d9301e824f946] target/ppc: convert xxspltw to
> vector operations
> git bisect bad 9bb0048ec6f8f3bcc144b2c5769d9301e824f946
> # good: [471ff3d0257135b938d0a5f2181f22cd753d50de] target/ppc: convert
> vspltis[bhw] to use vector operations
> git bisect good 471ff3d0257135b938d0a5f2181f22cd753d50de
> # bad: [7b8fe477e12b164dda97f79e27b55b805d90384f] target/ppc: convert VSX
> logical operations to vector operations
> git bisect bad 7b8fe477e12b164dda97f79e27b55b805d90384f
> # good: [0f6a6d5db853c0cbe438c1831c70710bfb6530ee] target/ppc: convert
> vsplt[bhw] to use vector operations
> git bisect good 0f6a6d5db853c0cbe438c1831c70710bfb6530ee
> # first bad commit: [7b8fe477e12b164dda97f79e27b55b805d90384f] target/ppc:
> convert VSX logical operations to vector operations
> guest@slax:/dev/shm/qemu$
>
> configure line:
> setarch i686 ./configure --target-list=ppc64-softmmu
>
> launch line:
> ppc64-softmmu/qemu-system-ppc64 -display
> sdl,gl=on -hda /mnt/sdb1/PPC-img/alpine_disk.img
>
> where alpine_disk.img is HDD installed Alpine 3.7 for ppc64le with xfce4
> desktop.
AFAICT the vector instructions converted here are independent of endian, so I can't
see why this patch on its own would have any effect.
Maybe it could be because the "setarch i686" part forces use of some lesser-used
32-bit paths in the vector code - is this required? And do you see the same issue on
a x86_64 build?
ATB,
Mark.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] regression: target/ppc: convert VSX logical operations to vector operations broke X for ppc64le guest
2019-02-28 5:06 ` Mark Cave-Ayland
@ 2019-02-28 8:39 ` Andrew Randrianasulu
2019-02-28 16:59 ` Mark Cave-Ayland
0 siblings, 1 reply; 7+ messages in thread
From: Andrew Randrianasulu @ 2019-02-28 8:39 UTC (permalink / raw)
To: Mark Cave-Ayland
Cc: qemu-devel, qemu-ppc@nongnu.org, Richard Henderson, David Gibson
В сообщении от Thursday 28 February 2019 08:06:45 Mark Cave-Ayland написал(а):
> On 26/02/2019 22:25, Andrew Randrianasulu wrote:
>
> (adding qemu-ppc, Richard and David - please make sure you add the relevant
> maintainer on bug reports, as otherwise due to the high volume of mails to
> the list it's very easy to miss things)
ok
>
> > Hello.
> >
> > I bisected this problem with fonts (and multicolored vertical stripes) in
> > qemu git (ppc64-softmmu)
> >
> > guest@slax:/dev/shm/qemu$ git bisect good
> > 7b8fe477e12b164dda97f79e27b55b805d90384f is the first bad commit
> > commit 7b8fe477e12b164dda97f79e27b55b805d90384f
> > Author: Richard Henderson <richard.henderson@linaro.org>
> > Date: Fri Feb 15 10:00:46 2019 +0000
> >
> > target/ppc: convert VSX logical operations to vector operations
> >
> > Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> > Acked-by: David Gibson <david@gibson.dropbear.id.au>
> > Message-Id: <20190215100058.20015-6-mark.cave-ayland@ilande.co.uk>
> > Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
> >
> > :040000 040000 da3024ad2c9dfc3b7170516a8b321ef8c5d5bdf8
> >
> > a0257b9f5880ecc8e7001a59ccaa10407084623f M target
> >
> >
> > guest@slax:/dev/shm/qemu$ git bisect log
> > git bisect start
> > # good: [32a1a94dd324d33578dca1dc96d7896a0244d768] Update version for
> > v3.1.0 release
> > git bisect good 32a1a94dd324d33578dca1dc96d7896a0244d768
> > # bad: [86c7e2f4a93322a76afea5ee6806a83420d1dfea] Merge remote-tracking
> > branch 'remotes/berrange/tags/authz-core-pull-request' into staging
> > git bisect bad 86c7e2f4a93322a76afea5ee6806a83420d1dfea
> > # good: [95ebd99dcd37b8574426c876502bfcc7c299584b] target/arm: Decode
> > PAuth within disas_data_proc_1src
> > git bisect good 95ebd99dcd37b8574426c876502bfcc7c299584b
> > # good: [268dfefa690b2bdee1f8c5090d2343871cf3467c]
> > hw/microblaze/Makefile.objs: Create configs for petalogix and xilinx
> > boards
> > git bisect good 268dfefa690b2bdee1f8c5090d2343871cf3467c
> > # good: [f5117fd28552fe3fe32ef0495582b1caaef7a28d] hw/mips_cpc: kick a VP
> > when putting it into Run statewq
> > git bisect good f5117fd28552fe3fe32ef0495582b1caaef7a28d
> > # bad: [2e68b8620637a4ee8c79b5724144b726af1e261b] Merge remote-tracking
> > branch 'remotes/dgibson/tags/ppc-for-4.0-20190219' into staging
> > git bisect bad 2e68b8620637a4ee8c79b5724144b726af1e261b
> > # good: [4c668f4a3d684ec133a52d936314379f6edd672e] target/ppc: Remove
> > some #if 0'ed code
> > git bisect good 4c668f4a3d684ec133a52d936314379f6edd672e
> > # bad: [9b5b74da0a07a89ef71c7f7da0b36560a3bac521] target/ppc: Split out
> > VSCR_SAT to a vector field
> > git bisect bad 9b5b74da0a07a89ef71c7f7da0b36560a3bac521
> > # good: [444d6ca301d97de141a502851940943b09a9ebee] spapr/irq: Use the
> > "simple" ICS class for KVM
> > git bisect good 444d6ca301d97de141a502851940943b09a9ebee
> > # bad: [9bb0048ec6f8f3bcc144b2c5769d9301e824f946] target/ppc: convert
> > xxspltw to vector operations
> > git bisect bad 9bb0048ec6f8f3bcc144b2c5769d9301e824f946
> > # good: [471ff3d0257135b938d0a5f2181f22cd753d50de] target/ppc: convert
> > vspltis[bhw] to use vector operations
> > git bisect good 471ff3d0257135b938d0a5f2181f22cd753d50de
> > # bad: [7b8fe477e12b164dda97f79e27b55b805d90384f] target/ppc: convert VSX
> > logical operations to vector operations
> > git bisect bad 7b8fe477e12b164dda97f79e27b55b805d90384f
> > # good: [0f6a6d5db853c0cbe438c1831c70710bfb6530ee] target/ppc: convert
> > vsplt[bhw] to use vector operations
> > git bisect good 0f6a6d5db853c0cbe438c1831c70710bfb6530ee
> > # first bad commit: [7b8fe477e12b164dda97f79e27b55b805d90384f]
> > target/ppc: convert VSX logical operations to vector operations
> > guest@slax:/dev/shm/qemu$
> >
> > configure line:
> > setarch i686 ./configure --target-list=ppc64-softmmu
> >
> > launch line:
> > ppc64-softmmu/qemu-system-ppc64 -display
> > sdl,gl=on -hda /mnt/sdb1/PPC-img/alpine_disk.img
> >
> > where alpine_disk.img is HDD installed Alpine 3.7 for ppc64le with xfce4
> > desktop.
>
> AFAICT the vector instructions converted here are independent of endian, so
> I can't see why this patch on its own would have any effect.
>
> Maybe it could be because the "setarch i686" part forces use of some
> lesser-used 32-bit paths in the vector code - is this required? And do you
> see the same issue on a x86_64 build?
I use 32-bit Slackware userland with x86_64 kerenl - so setarch prevent most of
configures from detecting my arch wrongly.
Yes, bug was and is present with qemu compiled for x86_64 (inside chroot).
I initially discovered it there, and after dropping -O3 and even march=native,
and even disabling avx2 via configure switch - moved to bisect.
https://lists.gnu.org/archive/html/qemu-devel/2019-02/msg06414.html
>
>
> ATB,
>
> Mark.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] regression: target/ppc: convert VSX logical operations to vector operations broke X for ppc64le guest
2019-02-28 8:39 ` Andrew Randrianasulu
@ 2019-02-28 16:59 ` Mark Cave-Ayland
2019-03-06 16:42 ` [Qemu-devel] [Qemu-ppc] " Laurent Vivier
0 siblings, 1 reply; 7+ messages in thread
From: Mark Cave-Ayland @ 2019-02-28 16:59 UTC (permalink / raw)
To: Andrew Randrianasulu
Cc: Richard Henderson, qemu-ppc@nongnu.org, qemu-devel, David Gibson
On 28/02/2019 08:39, Andrew Randrianasulu wrote:
>>> configure line:
>>> setarch i686 ./configure --target-list=ppc64-softmmu
>>>
>>> launch line:
>>> ppc64-softmmu/qemu-system-ppc64 -display
>>> sdl,gl=on -hda /mnt/sdb1/PPC-img/alpine_disk.img
>>>
>>> where alpine_disk.img is HDD installed Alpine 3.7 for ppc64le with xfce4
>>> desktop.
>>
>> AFAICT the vector instructions converted here are independent of endian, so
>> I can't see why this patch on its own would have any effect.
>>
>> Maybe it could be because the "setarch i686" part forces use of some
>> lesser-used 32-bit paths in the vector code - is this required? And do you
>> see the same issue on a x86_64 build?
>
> I use 32-bit Slackware userland with x86_64 kerenl - so setarch prevent most of
> configures from detecting my arch wrongly.
>
> Yes, bug was and is present with qemu compiled for x86_64 (inside chroot).
> I initially discovered it there, and after dropping -O3 and even march=native,
> and even disabling avx2 via configure switch - moved to bisect.
>
> https://lists.gnu.org/archive/html/qemu-devel/2019-02/msg06414.html
Can you upload your alpine_disk.img somewhere and then email me the link off-list?
I'll see if I can take a look when I get a spare moment.
ATB,
Mark.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [Qemu-ppc] regression: target/ppc: convert VSX logical operations to vector operations broke X for ppc64le guest
2019-02-28 16:59 ` Mark Cave-Ayland
@ 2019-03-06 16:42 ` Laurent Vivier
2019-03-06 16:47 ` Mark Cave-Ayland
0 siblings, 1 reply; 7+ messages in thread
From: Laurent Vivier @ 2019-03-06 16:42 UTC (permalink / raw)
To: Mark Cave-Ayland, Andrew Randrianasulu
Cc: qemu-ppc@nongnu.org, Richard Henderson, qemu-devel, David Gibson
On 28/02/2019 17:59, Mark Cave-Ayland wrote:
> On 28/02/2019 08:39, Andrew Randrianasulu wrote:
>
>>>> configure line:
>>>> setarch i686 ./configure --target-list=ppc64-softmmu
>>>>
>>>> launch line:
>>>> ppc64-softmmu/qemu-system-ppc64 -display
>>>> sdl,gl=on -hda /mnt/sdb1/PPC-img/alpine_disk.img
>>>>
>>>> where alpine_disk.img is HDD installed Alpine 3.7 for ppc64le with xfce4
>>>> desktop.
>>>
>>> AFAICT the vector instructions converted here are independent of endian, so
>>> I can't see why this patch on its own would have any effect.
>>>
>>> Maybe it could be because the "setarch i686" part forces use of some
>>> lesser-used 32-bit paths in the vector code - is this required? And do you
>>> see the same issue on a x86_64 build?
>>
>> I use 32-bit Slackware userland with x86_64 kerenl - so setarch prevent most of
>> configures from detecting my arch wrongly.
>>
>> Yes, bug was and is present with qemu compiled for x86_64 (inside chroot).
>> I initially discovered it there, and after dropping -O3 and even march=native,
>> and even disabling avx2 via configure switch - moved to bisect.
>>
>> https://lists.gnu.org/archive/html/qemu-devel/2019-02/msg06414.html
>
> Can you upload your alpine_disk.img somewhere and then email me the link off-list?
> I'll see if I can take a look when I get a spare moment.
I've also bisected to this commit for a problem with qemu-pp64le.
commit 7b8fe477e12b164dda97f79e27b55b805d90384f
Author: Richard Henderson <richard.henderson@linaro.org>
Date: Fri Feb 15 10:00:46 2019 +0000
target/ppc: convert VSX logical operations to vector operations
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Message-Id: <20190215100058.20015-6-mark.cave-ayland@ilande.co.uk>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
debian stretch ppc64el fails to build the well known hello.c example:
# $ cat /tmp/hello.c
#include <stdio.h>
int main(void)
{
printf("Hello World!\n");
return 0;
}
# cc -o /tmp/hello /tmp/hello.c
In file included from <command-line>:0:0:
/usr/include/stdc-predef.h:26:2: error: unknown type name '_STDC_'
explicitly includes a system header. GCC knows the name of this
^ ~~~~
/usr/include/stdc-predef.h:28:1: error: expected '=', ',', ';', 'asm' or
'__attribute__' before '_STDC_PREDEF_H'
^
/usr/include/stdc-predef.h:42:2: error: missing terminating ' character
#endif
^~~~~
...
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [Qemu-ppc] regression: target/ppc: convert VSX logical operations to vector operations broke X for ppc64le guest
2019-03-06 16:42 ` [Qemu-devel] [Qemu-ppc] " Laurent Vivier
@ 2019-03-06 16:47 ` Mark Cave-Ayland
2019-03-06 17:15 ` Laurent Vivier
0 siblings, 1 reply; 7+ messages in thread
From: Mark Cave-Ayland @ 2019-03-06 16:47 UTC (permalink / raw)
To: Laurent Vivier, Andrew Randrianasulu
Cc: Richard Henderson, qemu-ppc@nongnu.org, qemu-devel, David Gibson
On 06/03/2019 16:42, Laurent Vivier wrote:
> On 28/02/2019 17:59, Mark Cave-Ayland wrote:
>> On 28/02/2019 08:39, Andrew Randrianasulu wrote:
>>
>>>>> configure line:
>>>>> setarch i686 ./configure --target-list=ppc64-softmmu
>>>>>
>>>>> launch line:
>>>>> ppc64-softmmu/qemu-system-ppc64 -display
>>>>> sdl,gl=on -hda /mnt/sdb1/PPC-img/alpine_disk.img
>>>>>
>>>>> where alpine_disk.img is HDD installed Alpine 3.7 for ppc64le with xfce4
>>>>> desktop.
>>>>
>>>> AFAICT the vector instructions converted here are independent of endian, so
>>>> I can't see why this patch on its own would have any effect.
>>>>
>>>> Maybe it could be because the "setarch i686" part forces use of some
>>>> lesser-used 32-bit paths in the vector code - is this required? And do you
>>>> see the same issue on a x86_64 build?
>>>
>>> I use 32-bit Slackware userland with x86_64 kerenl - so setarch prevent most of
>>> configures from detecting my arch wrongly.
>>>
>>> Yes, bug was and is present with qemu compiled for x86_64 (inside chroot).
>>> I initially discovered it there, and after dropping -O3 and even march=native,
>>> and even disabling avx2 via configure switch - moved to bisect.
>>>
>>> https://lists.gnu.org/archive/html/qemu-devel/2019-02/msg06414.html
>>
>> Can you upload your alpine_disk.img somewhere and then email me the link off-list?
>> I'll see if I can take a look when I get a spare moment.
>
> I've also bisected to this commit for a problem with qemu-pp64le.
>
> commit 7b8fe477e12b164dda97f79e27b55b805d90384f
> Author: Richard Henderson <richard.henderson@linaro.org>
> Date: Fri Feb 15 10:00:46 2019 +0000
>
> target/ppc: convert VSX logical operations to vector operations
>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> Acked-by: David Gibson <david@gibson.dropbear.id.au>
> Message-Id: <20190215100058.20015-6-mark.cave-ayland@ilande.co.uk>
> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
>
>
> debian stretch ppc64el fails to build the well known hello.c example:
> # $ cat /tmp/hello.c
> #include <stdio.h>
> int main(void)
> {
> printf("Hello World!\n");
> return 0;
> }
> # cc -o /tmp/hello /tmp/hello.c
> In file included from <command-line>:0:0:
> /usr/include/stdc-predef.h:26:2: error: unknown type name '_STDC_'
> explicitly includes a system header. GCC knows the name of this
> ^ ~~~~
> /usr/include/stdc-predef.h:28:1: error: expected '=', ',', ';', 'asm' or
> '__attribute__' before '_STDC_PREDEF_H'
>
> ^
> /usr/include/stdc-predef.h:42:2: error: missing terminating ' character
> #endif
> ^~~~~
> ...
Hi Laurent,
This should be fixed by the patchset at
https://lists.gnu.org/archive/html/qemu-devel/2019-03/msg00473.html - can you test
and confirm that it also works for you?
I'm currently in the process of working on a v2 to address Richard's comments,
hopefully I will be able to send it through later this evening or tomorrow.
ATB,
Mark.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [Qemu-ppc] regression: target/ppc: convert VSX logical operations to vector operations broke X for ppc64le guest
2019-03-06 16:47 ` Mark Cave-Ayland
@ 2019-03-06 17:15 ` Laurent Vivier
0 siblings, 0 replies; 7+ messages in thread
From: Laurent Vivier @ 2019-03-06 17:15 UTC (permalink / raw)
To: Mark Cave-Ayland, Andrew Randrianasulu
Cc: Richard Henderson, qemu-ppc@nongnu.org, qemu-devel, David Gibson
On 06/03/2019 17:47, Mark Cave-Ayland wrote:
> On 06/03/2019 16:42, Laurent Vivier wrote:
>
>> On 28/02/2019 17:59, Mark Cave-Ayland wrote:
>>> On 28/02/2019 08:39, Andrew Randrianasulu wrote:
>>>
>>>>>> configure line:
>>>>>> setarch i686 ./configure --target-list=ppc64-softmmu
>>>>>>
>>>>>> launch line:
>>>>>> ppc64-softmmu/qemu-system-ppc64 -display
>>>>>> sdl,gl=on -hda /mnt/sdb1/PPC-img/alpine_disk.img
>>>>>>
>>>>>> where alpine_disk.img is HDD installed Alpine 3.7 for ppc64le with xfce4
>>>>>> desktop.
>>>>>
>>>>> AFAICT the vector instructions converted here are independent of endian, so
>>>>> I can't see why this patch on its own would have any effect.
>>>>>
>>>>> Maybe it could be because the "setarch i686" part forces use of some
>>>>> lesser-used 32-bit paths in the vector code - is this required? And do you
>>>>> see the same issue on a x86_64 build?
>>>>
>>>> I use 32-bit Slackware userland with x86_64 kerenl - so setarch prevent most of
>>>> configures from detecting my arch wrongly.
>>>>
>>>> Yes, bug was and is present with qemu compiled for x86_64 (inside chroot).
>>>> I initially discovered it there, and after dropping -O3 and even march=native,
>>>> and even disabling avx2 via configure switch - moved to bisect.
>>>>
>>>> https://lists.gnu.org/archive/html/qemu-devel/2019-02/msg06414.html
>>>
>>> Can you upload your alpine_disk.img somewhere and then email me the link off-list?
>>> I'll see if I can take a look when I get a spare moment.
>>
>> I've also bisected to this commit for a problem with qemu-pp64le.
>>
>> commit 7b8fe477e12b164dda97f79e27b55b805d90384f
>> Author: Richard Henderson <richard.henderson@linaro.org>
>> Date: Fri Feb 15 10:00:46 2019 +0000
>>
>> target/ppc: convert VSX logical operations to vector operations
>>
>> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
>> Acked-by: David Gibson <david@gibson.dropbear.id.au>
>> Message-Id: <20190215100058.20015-6-mark.cave-ayland@ilande.co.uk>
>> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
>>
>>
>> debian stretch ppc64el fails to build the well known hello.c example:
>> # $ cat /tmp/hello.c
>> #include <stdio.h>
>> int main(void)
>> {
>> printf("Hello World!\n");
>> return 0;
>> }
>> # cc -o /tmp/hello /tmp/hello.c
>> In file included from <command-line>:0:0:
>> /usr/include/stdc-predef.h:26:2: error: unknown type name '_STDC_'
>> explicitly includes a system header. GCC knows the name of this
>> ^ ~~~~
>> /usr/include/stdc-predef.h:28:1: error: expected '=', ',', ';', 'asm' or
>> '__attribute__' before '_STDC_PREDEF_H'
>>
>> ^
>> /usr/include/stdc-predef.h:42:2: error: missing terminating ' character
>> #endif
>> ^~~~~
>> ...
>
> Hi Laurent,
>
> This should be fixed by the patchset at
> https://lists.gnu.org/archive/html/qemu-devel/2019-03/msg00473.html - can you test
> and confirm that it also works for you?
>
> I'm currently in the process of working on a v2 to address Richard's comments,
> hopefully I will be able to send it through later this evening or tomorrow.
Thank you Mark.
yes, this series fixes the problem for me too.
Thanks,
Laurent
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2019-03-06 17:15 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-02-26 22:25 [Qemu-devel] regression: target/ppc: convert VSX logical operations to vector operations broke X for ppc64le guest Andrew Randrianasulu
2019-02-28 5:06 ` Mark Cave-Ayland
2019-02-28 8:39 ` Andrew Randrianasulu
2019-02-28 16:59 ` Mark Cave-Ayland
2019-03-06 16:42 ` [Qemu-devel] [Qemu-ppc] " Laurent Vivier
2019-03-06 16:47 ` Mark Cave-Ayland
2019-03-06 17:15 ` Laurent Vivier
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).