View Issue Details

IDProjectCategoryView StatusLast Update
0000216AlmaLinux-9python3public2022-05-23 22:34
Reportergdlr Assigned Toalukoshko  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Platforms390xOSalmalinuxOS Version9
Summary0000216: PYTHONPATH error prevents anaconda from starting
DescriptionI tried installing Almalinux 9 beta on qemu-s390x. From both the minimal iso and the boot iso, a failure occurs when anaconda is started and it is not possible to continue. It appears that the PYTHONPATH contains an error, '/usr/lib64python3.9' instead of '/usr/lib64/python3.9' (see below, Additional Information).

By switching to a shell and setting PYTHONPATH correctly (or symlinking '/usr/lib64/python3.9' to '/usr/lib64python3.9'), it is possible to start anaconda and finish the installation.
Steps To ReproduceStart the installation under qemu-s390x, using a command such as:
qemu-system-s390x \
    -machine s390-ccw-virtio \
    -device virtio-rng \
    -cpu max,zpci=on \
    -m 4096 -smp 2 \
    -serial mon:stdio -display none \
    -boot menu=on \
    -net nic,macaddr=52:54:00:12:34:56,model=virtio \
    -net tap,ifname=tap0,script=no,downscript=no \
    -device virtio-blk-ccw,id=dev-disk0,drive=disk0 \
    -drive id=disk0,file=dasd/almalinux.qcow2,if=none \
    -device virtio-scsi \
    -device scsi-cd,drive=c1,bootindex=1 \
    -drive file=AlmaLinux-9.0-beta-1-s390x-minimal.iso,format=raw,if=none,id=c1
After some processing, the error is triggered when anaconda is invoked.

Additional Information[ OK ] Reached target Basic System.
Starting Anaconda NetworkManager configuration...
Starting pre-anaconda logging service...
Starting Hold until boot process finishes up...
Starting Terminate Plymouth Boot Screen...
Starting System Logging Service...
Starting OpenSSH ecdsa Server Key Generation...
Starting OpenSSH ed25519 Server Key Generation...
Starting OpenSSH rsa Server Key Generation...
Starting User Login Management...
[ OK ] Finished Anaconda NetworkManager configuration.
[ OK ] Finished Hold until boot process finishes up.
[ OK ] Finished Terminate Plymouth Boot Screen.

Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Python path configuration:
PYTHONHOME = (not set)
PYTHONPATH = (not set)
program name = '/usr/bin/python3'
isolated = 0
environment = 1
user site = 1
import site = 1
sys._base_executable = '/usr/bin/python3'
sys.base_prefix = '/usr'
sys.base_exec_prefix = '/usr'
sys.platlibdir = 'lib64'
sys.executable = '/usr/bin/python3'
sys.prefix = '/usr'
sys.exec_prefix = '/usr'
sys.path = [
'/usr/lib64/python39.zip',
'/usr/lib64python3.9',
'/usr/lib64/lib-dynload',
]
Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encodin
Python runtime state: core initialized
ModuleNotFoundError: No module named 'encodings'

Current thread 0x000003ff9f7f6720 (most recent call first):
<no Python frame>

Pane is dead (status 1, Wed Apr 20 20:17:21 2022)

[anaconda]1:main* 2:shell 3:log 4:storage-log >Switch tab: Alt+Tab | Help: F1

Tagsanaconda, python, s390x

Activities

alukoshko

2022-04-22 08:44

administrator   ~0000539

Hello. Looks like it's upstream bug: https://bugzilla.redhat.com/show_bug.cgi?id=2073195

alukoshko

2022-04-22 14:42

administrator   ~0000542

Could you please also try current CentOS Stream 9 iso?

gdlr

2022-04-22 15:30

reporter   ~0000543

The Centos Stream 9 latest s390x boot iso gets exactly the same error, as shown above with the lib64python3.9 missing slash.

churchyard

2022-04-30 11:20

reporter   ~0000551

On what operating system do you run qemu-s390x? Is it Fedora or RHEL or something else entirely? What version?

gdlr

2022-04-30 12:16

reporter   ~0000552

Qemu 6.2.0 on Gentoo amd64. I have several other s390x guests (Fedora, Debian, Gentoo, ...) that run ok on that stack, but I'll do some experimenting to see if this issue occurs on other versions of Qemu / underlying platform.

gdlr

2022-05-01 16:45

reporter   ~0000553

I upgraded to Qemu 7.0.0 and retried the install. It all worked fine, no problems with PYTHONPATH so anaconda started normally.

I think this is because Almalinux 9 s390x binaries are compiled with -march z14 (see perl -V output), but versions of Qemu less than 7.0 emulate a z13 model 2975 CPU. From version 7.0, qemu s390x emulates a z15 model 8561.

So the answer is that Almalinux 9 s390x requires a minimal CPU level of z14, and therefore Qemu version at least 7.0.0 if running under that emulator. As far as I am concerned, this is satisfactory and you may close this case as solved. Thanks.

churchyard

2022-05-05 12:16

reporter   ~0000557

It appears this is a qemu 6.2 bug -- we were able to reproduce with Fedora 34 Python which is not built with -march z14.

See https://bugzilla.redhat.com/show_bug.cgi?id=2080519#c14

churchyard

2022-05-05 22:27

reporter   ~0000559

We have also identified a fix and fixed qemu 6.2 in Fedora 36.

Issue History

Date Modified Username Field Change
2022-04-21 14:18 gdlr New Issue
2022-04-21 14:18 gdlr Tag Attached: anaconda
2022-04-21 14:18 gdlr Tag Attached: python
2022-04-21 14:18 gdlr Tag Attached: s390x
2022-04-22 08:44 alukoshko Note Added: 0000539
2022-04-22 14:42 alukoshko Note Added: 0000542
2022-04-22 15:30 gdlr Note Added: 0000543
2022-04-30 11:20 churchyard Note Added: 0000551
2022-04-30 12:16 gdlr Note Added: 0000552
2022-05-01 16:45 gdlr Note Added: 0000553
2022-05-05 12:16 churchyard Note Added: 0000557
2022-05-05 22:27 churchyard Note Added: 0000559
2022-05-23 22:34 alukoshko Assigned To => alukoshko
2022-05-23 22:34 alukoshko Status new => closed
2022-05-23 22:34 alukoshko Resolution open => fixed