Re: ports/ia64: klibc-utils in Sid should use static binaries

Frank Scheiner <[email protected]>
Newsgroups gmane.linux.debian.ports.ia64
Message-ID <[email protected]>
Dear Adrian, Ben,

as a follow-up to [1], I'm using klibc-utils with my patch since shortly 
before submitting the merge request ("Build static tools for ia64 again" 
([2])) but rebuilt it yesterday with a checkout of the current state of 
the master branch of kernel-team/klibc ([3]) as source folder instead of 
the original one of the current source of the klibc-utils package.

[1]: https://lists.debian.org/debian-ia64/2018/06/msg00000.html

[2]: https://salsa.debian.org/kernel-team/klibc/merge_requests/1

[3]: 
https://salsa.debian.org/kernel-team/klibc/tree/417eafe62fc13011bf024ded9eef1b3b16c372cd

After installing the package (package changes further below), I can 
successfully use e.g. the `cat` tool of klibc-utils 2.0.4-12, which 
didn't work with 2.0.4-11 (see [1]). And of course the tools of 
klibc-utils 2.0.4-12 - specifically `ipconfig` - also work during OS 
startup.

```
root@rx2800-i2:~# dpkg -i klibc-utils_2.0.4-12_ia64.deb
(Reading database ... 82973 files and directories currently installed.)
Preparing to unpack klibc-utils_2.0.4-12_ia64.deb ...
Unpacking klibc-utils (2.0.4-12) over (2.0.4-12) ...
Setting up klibc-utils (2.0.4-12) ...

root@rx2800-i2:~# dpkg -l klibc-utils
Desired=Unknown/Install/Remove/Purge/Hold
| 
Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                Version 
Architecture           Description
+++-===================================-======================-======================-============================================================================
ii  klibc-utils                         2.0.4-12               ia64 
              small utilities built with klibc for early boot

root@rx2800-i2:~# cd /usr/lib/klibc/bin/

root@rx2800-i2:/usr/lib/klibc/bin# file cat
cat: ELF 64-bit LSB executable, IA-64, version 1 (SYSV), statically 
linked, stripped

root@rx2800-i2:/usr/lib/klibc/bin# ./cat /proc/cpuinfo
processor  : 0
vendor     : GenuineIntel
arch       : IA-64
family     : 32
model      : 2
model name : Intel(R)  Itanium(R)  Processor 9320
revision   : 4
archrev    : 0
features   : branchlong, 16-byte atomic ops, 0x8
cpu number : 0
cpu regs   : 4
cpu MHz    : 1329.945
itc MHz    : 797.967420
BogoMIPS   : 2920.44
siblings   : 8
physical id: 0
core id    : 0
thread id  : 0
[...]

root@rx2800-i2:~# update-initramfs -k 4.14.52-gentoo -c
update-initramfs: Generating /boot/initrd.img-4.14.52-gentoo

root@rx2800-i2:~# echo $?
0

root@rx2800-i2:~# reboot

Broadcast message from root@rx2800-i2 (pts/0) (Sat Jul 14 13:50:36 2018):

The system is going down for reboot NOW!

[...]

Booting Core LAN Port 1
Performing a non-directed lanboot...
..

Client MAC Address: 00 23 7D 11 22 33


LAN Configuration:
      Client MAC Address     : 00 23 7D 11 22 33
      Client IP Address      : 172.16.2.123
      Subnet Mask            : 255.255.0.0
      Gateway IP Address     : 172.16.0.1
      Boot Server IP Address : 172.16.0.2
      DHCP Server IP Address : 172.16.0.1

Boot File Name: /AC10027B
Boot File Size: 378664

Optional Data: NONE

ELILO v3.14 for EFI/IA-64
..
Uncompressing Linux... done
Loading file AC10027B.initrd.img...done
Linux version 4.14.52-gentoo (root@rx2620) (gcc version 7.3.0 (Gentoo 
7.3.0-r3 p1.4)) #1 SMP Tue Jul 10 21:49:25 CEST 2018
[...]
Loading, please wait...
starting version 238
[...]
Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/nfs-top ... 
done.
Begin: RRPC: Registered named UNIX socket transport module.
unning /scripts/RPC: Registered udp transport module.
nfs-premount ...RPC: Registered tcp transport module.
  done.
RPC: Registered tcp NFSv4.1 backchannel transport module.
IP-Config: enp8s0f0 hardware address 00:23:7d:11:22:33 mtu 1500 DHCP
IP-Config: no response after 2 secs - giving up
IP-Config: enp8s0f0 hardware address 00:23:7d:11:22:33 mtu 1500 DHCP
igb 0000:08:00.0 enp8s0f0: igb: enp8s0f0 NIC Link is Up 1000 Mbps Full 
Duplex, Flow Control: RX/TX
ipconfig(1484): unaligned access to 0x60000fffffe6746f, 
ip=0x4000000000006141
ipconfig(1484): unaligned access to 0x60000fffffe6746f, 
ip=0x4000000000006141
IP-Config: enp8s0f0 guessed broadcast address 172.16.255.255
IP-Config: enp8s0f0 complete (dhcp from 172.16.0.1):
  address: 172.16.2.123     broadcast: 172.16.255.255   netmask: 
255.255.0.0
  gateway: 172.16.0.1       dns0     : 172.16.0.1       dns1   : 0.0.0.0 

  host   : rx2800-i2
  domain : domain.tld
  rootserver: 172.16.0.2 rootpath: 172.16.0.2:/srv/nfs/rx2800-i2/root
  filename  : /AC10027B
done.
Begin: Running /scripts/nfs-bottom ... done.
Begin: Running /scripts/init-bottom ... done.
INIT: version 2.88 booting
[...]
Debian GNU/Linux buster/sid rx2800-i2 ttyS1

rx2800-i2 login:
```

Also works with systemd:
```
[...]
systemd[1]: systemd 239 running in system mode. (+PAM +AUDIT +SELINUX 
+IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS 
+ACL +XZ +LZ4 -SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 
default-hierarchy=hybrid)
systemd[1]: Detected architecture ia64.

Welcome to Debian GNU/Linux buster/sid!

systemd[1]: Set hostname to <rx2800-i2>.
[...]
Debian GNU/Linux buster/sid rx2800-i2 ttyS1

rx2800-i2 login:
```


****

klibc_2.0.4-12_ia64.changes:
```
Format: 1.8
Date: Sun, 11 Mar 2018 18:10:13 +0000
Source: klibc
Binary: libklibc-dev libklibc klibc-utils
Architecture: ia64
Version: 2.0.4-12
Distribution: UNRELEASED
Urgency: medium
Maintainer: maximilian attems <[email protected]>
Changed-By: Ben Hutchings <[email protected]>
Description:
  klibc-utils - small utilities built with klibc for early boot
  libklibc   - minimal libc subset for use with initramfs
  libklibc-dev - kernel headers used during the build of klibc
Changes:
  klibc (2.0.4-12) UNRELEASED; urgency=medium
  .
    [ Ben Hutchings ]
    * debian/control: Point Vcs URLs to Salsa
  .
    [ Frank Scheiner ]
    * [klibc] ia64: Build static tools (again)
Checksums-Sha1:
  0f3ac7a4f580d081f903e586181c2abfe9dcbefe 178148 
klibc-utils_2.0.4-12_ia64.deb
  5a82463652ab79575ac55453e4adf37be5fdc51a 4853 
klibc_2.0.4-12_ia64.buildinfo
  c52a80d7f2eee9db254350d9b09d1e1e9c9cf7ac 154396 
libklibc-dev_2.0.4-12_ia64.deb
  68b3b96b7d5919f4f36ebb0e6f6f5f03d28371b7 74680 libklibc_2.0.4-12_ia64.deb
Checksums-Sha256:
  d509e14ae0cbd3adecbcb50973423f03c35d21e2f3150768e67502c2ddf96c9d 
178148 klibc-utils_2.0.4-12_ia64.deb
  7c876d5bfa09a28d6e0f85380211637c34e91a4c1b77095e8f2e28e27b1bc8d7 4853 
klibc_2.0.4-12_ia64.buildinfo
  0c1f58ef38cd3d2cc269c51a958d7011fc8d97868c9daad8f6e4791323caa0b1 
154396 libklibc-dev_2.0.4-12_ia64.deb
  74209b8fca0e999824b9b4f77f6aab134537305e8f65dddb21c97a6157523054 74680 
libklibc_2.0.4-12_ia64.deb
Files:
  733c3efb105d717b75bd2dd49f63b725 178148 libs optional 
klibc-utils_2.0.4-12_ia64.deb
  df01a0035b1d948e569e6aec1caaacc9 4853 libs optional 
klibc_2.0.4-12_ia64.buildinfo
  bdc798d3b96ca0e931042c1e376f9f48 154396 libdevel optional 
libklibc-dev_2.0.4-12_ia64.deb
  a122d02d87aeec467f2bcf3d084ff7b6 74680 libs optional 
libklibc_2.0.4-12_ia64.deb
```
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.