S390: glibc does not use direct socket-syscalls, but the multiplexer-socket-syscall.

Bug #1562004 reported by bugproxy
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
glibc (Ubuntu)
Won't Fix
Wishlist
Adam Conrad

Bug Description

== Comment: #0 - Stefan Liebler <email address hidden> - 2016-03-24 11:16:16 ==
Hi,

the glibc socket functions, like connect(), bind(), socket(), ... do currently use svc 102
(multiplexer-socket-syscall: see /usr/include/s390x-linux-gnu/asm/unistd.h:
#define __NR_socketcall 102)

The direct socketsyscalls are also available for s390 since kernel 4.3:
#define __NR_connect 362
#define __NR_bind 361
#define __NR_socket 359
...

The kernel in my used ubuntu alpha is 4.4.0-15 and the glibc 2.23.
This glibc release can use these direct socket-syscalls,
if glibc is configured with "--enable-kernel=4.3.0".
Or even better, use the kernel-level, which will be used in the first release for s390.

Here is the kernel commit:
"s390: wire up separate socketcalls system calls"
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=977108f89c989b1eeb5c8d938e1e71913391eb5f

and the glibc commit:
"S390: Call direct system calls for socket operations."
https://sourceware.org/git/?p=glibc.git;a=commit;h=016495b818cb61df7d0d10e6db54074271b3e3a5

bugproxy (bugproxy)
tags: added: architecture-s39064 bugnameltc-139627 severity-high targetmilestone-inin1604
Changed in ubuntu:
assignee: nobody → Skipper Bug Screeners (skipper-screen-team)
Gary Gaydos (gmgaydos)
affects: ubuntu → linux (Ubuntu)
dann frazier (dannf)
Changed in linux (Ubuntu):
assignee: Skipper Bug Screeners (skipper-screen-team) → Dimitri John Ledkov (xnox)
affects: linux (Ubuntu) → glibc (Ubuntu)
Revision history for this message
Dimitri John Ledkov (xnox) wrote :

Assigning to glibc maintainer

Changed in glibc (Ubuntu):
assignee: Dimitri John Ledkov (xnox) → Adam Conrad (adconrad)
Changed in glibc (Ubuntu):
importance: Undecided → Wishlist
Revision history for this message
Dimitri John Ledkov (xnox) wrote :

Hello,

4.3.0 minimal kernel ABI is too high for Ubuntu. And specifically for the Ubuntu 16.04 LTS release.

Specifically this will prevent executing Ubuntu on foreign kernels. For example it will be impossible to run Ubuntu buildd chroots on stable Debian releases; it will be impossible to run Ubuntu docker containers on e.g. IBM z/KVM distribution; this will prevent LXD from running on multiple current stable host platforms. For these reasons, this request is out of scope for 16.04 as it will limit availability and usability of 16.04 LTS. Minimal kernel ABIs are re-visited early each cycle, and take into consideration wide variety of usecases, currently supported hardware, and supported users both with Ubuntu alone and the wider Linux community.

Regards,

Dimitri.

Changed in glibc (Ubuntu):
milestone: none → ubuntu-16.04
status: New → Won't Fix
Revision history for this message
bugproxy (bugproxy) wrote : Comment bridged from LTC Bugzilla

------- Comment From <email address hidden> 2016-04-19 04:21 EDT-------
IBM: will set the new Target to Ubuntu 18.04 soon

bugproxy (bugproxy)
tags: added: targetmilestone-inin1804
removed: targetmilestone-inin1604
Mathew Hodson (mhodson)
Changed in glibc (Ubuntu):
milestone: ubuntu-16.04 → none
Revision history for this message
bugproxy (bugproxy) wrote :

------- Comment From <email address hidden> 2016-07-04 09:11 EDT-------
Will be closed. Canonical will not implement this fix within 16.x nor in 18.x.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.