#800112 "Unsupported socketcall: 20" when using apt-get under s390 chroot

Package:
apt
Source:
apt
Description:
commandline package manager
Submitter:
Date:
2015-12-02 13:54:03 UTC
Severity:
normal
#800112#5
Date:
2015-09-26 23:21:28 UTC
From:
To:
X-Debbugs-CC: mjt@tls.msk.ru

**********

# chroot debian-s390x/
debian-s390:/# apt-get update
0% [Working]Unsupported socketcall: 20
0% [Working]Unsupported socketcall: 20
Get:1 http://httpredir.debian.org unstable InRelease [236 kB]
Get:2 http://httpredir.debian.org unstable/main Translation-en/DiffIndex [926 B]
Get:3 http://httpredir.debian.org unstable/main s390x Packages [7,305 kB]
Get:4 http://httpredir.debian.org unstable/main Translation-en [5,087 kB]
...

**********

# apt-cache show apt
Package: apt
Version: 1.0.10.2
Installed-Size: 3392
Maintainer: APT Development Team <deity@lists.debian.org>
Architecture: s390x
Replaces: manpages-it (<< 2.80-4~), manpages-pl (<< 20060617-3~),
openjdk-6-jdk (<< 6b24-1.11-0ubuntu1~), sun-java5-jdk (>> 0),
sun-java6-jdk (>> 0)
Depends: libapt-pkg4.16 (>= 1.0.10.2), libc6 (>= 2.15), libgcc1 (>=
1:4.1.1), libstdc++6 (>= 5.2), debian-archive-keyring, gnupg
Suggests: aptitude | synaptic | wajig, dpkg-dev (>= 1.17.2), apt-doc, python-apt
Conflicts: python-apt (<< 0.7.93.2~)
Breaks: manpages-it (<< 2.80-4~), manpages-pl (<< 20060617-3~),
openjdk-6-jdk (<< 6b24-1.11-0ubuntu1~), sun-java5-jdk (>> 0),
sun-java6-jdk (>> 0)
Description-en: commandline package manager
 This package provides commandline tools for searching and
 managing as well as querying information about packages
 as a low-level access to all features of the libapt-pkg library.
 ...
Section: admin
Priority: important
Filename: pool/main/a/apt/apt_1.0.10.2_s390x.deb
Size: 1070118
MD5sum: c95eccdcdd92002224d927d9404636ba
SHA1: 1ced953fd2a4ec6cbd8b4415ef514892101dfa0d
SHA256: c405d105286811db1c6127d8d6a0c8ce9778378e582812ab61031ab701c542a8

#800112#10
Date:
2015-09-26 23:26:53 UTC
From:
To:

#800112#13
Date:
2015-09-28 19:12:30 UTC
From:
To:
Control: reassign -1 apt 1.0.10.2
#800112#24
Date:
2015-09-28 20:58:37 UTC
From:
To:
I assume we are talking about a foreign chroot setup with qemu rather
than real hardware as I can't see such output in the buildlogs on real
hardware, but some searching suggests that it happens in emulation.
(In which case: which qemu setup and in which version?)

May I further assume that appart from this message everything behaves as
expected as you didn't mention anything failing in particular?

Is this a new problem or did you just notice it now as I don't remember
anything in particular changing recently in terms of sockets, so I would
expect it to effect 'all' versions.


It would be nice if you could provide a complete set of steps to
reproduce this, preferably starting with the setup of the chroot itself.


Best regards

David Kalnischkies

#800112#29
Date:
2015-09-28 21:20:01 UTC
From:
To:
On Mon, Sep 28, 2015 at 4:58 PM, David Kalnischkies <david@kalnischkies.de> wrote:

Hi David.

Yes, its a chroot as described in https://wiki.debian.org/X32Port. Its
not real hardware.

Yes, it seems to behave as expected.

Its not new; rather, its been around for a while.

OK, will do. I have some notes on it cribbed away somewhere. Give me a
few hours to dig them up.

Jeff

#800112#34
Date:
2015-09-28 21:23:33 UTC
From:
To:
My bad... I crossed my wires here. I cited X32, but it was a mistake.

You are correct, though. it is a QEMU Chroot.

Jeff

#800112#39
Date:
2015-10-03 06:47:33 UTC
From:
To:
Hi David,

Sorry about the late reply. I just got back on testing that utilizes
the Debian QEMU chroot's.

Also note that this might be better assigned to qemu-user static (my
apologies if it was mis-classified):

    $ sudo update-binfmts --display
    ...
      interpreter = /usr/bin/qemu-s390x-static
      ...
      package = qemu-user-static

This is the three second tour from https://wiki.debian.org/QemuUserEmulation.

From the Host:

    $ sudo apt-get install qemu binfmt-support qemu-user-static debootstrap

    $ su -
    # qemu-debootstrap --arch=s390x --keyring
/usr/share/keyrings/debian-archive-keyring.gpg \
    --variant=buildd --exclude=debfoster unstable debian-s390x
http://ftp.debian.org/debian

Once the host is configured, then:

    // From host
    $ su -
    # chroot debian-s390x
    // Now in guest
    # apt-get locales
    # dpkg-reconfigure locales
    # apt-get install build-essential subversion git emacs-nox

Finally:

    // From guest
    # apt-get update
    0% [Working]Unsupported socketcall: 20
    0% [Working]Unsupported socketcall: 20
    Hit http://httpredir.debian.org unstable InRelease

Jeff

#800112#44
Date:
2015-12-02 13:46:45 UTC
From:
To:
Hi Jeff!

Interestingly, we're seeing the same warning on qemu-m68k [1], more
specifically in Laurent Vivier's fork which adds full m68k support
to qemu which normally supports the reduced ColdFire instruction
set only:

Download source files with APT
──────────────────────────────

Reading package lists...
Building dependency tree...
Reading state information...
Unsupported socketcall: 20
NOTICE: 'dracut' packaging is maintained in the 'Git' version control
system at:
git://anonscm.debian.org/collab-maint/dracut.git
Need to get 265 kB of source archives.
Get:1 ftp://ftp.debian.org/debian/ unstable/main dracut 044+3-1 (dsc)
[2074 B]
Get:2 ftp://ftp.debian.org/debian/ unstable/main dracut 044+3-1 (tar)
[253 kB]
Get:3 ftp://ftp.debian.org/debian/ unstable/main dracut 044+3-1 (diff)
[9512 B]
Fetched 265 kB in 1s (225 kB/s)
Download complete and in download only mode

Have you made any progress yet in debugging this issue? I have checked
some recent s390x buildd logs and they don't seem to show the warning
anymore.

Cheers,
Adrian