[18.10 FEAT] SMC-Direct

Bug #1786902 reported by bugproxy
18
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ubuntu on IBM z Systems
Fix Released
High
Canonical Kernel Team
linux (Ubuntu)
Fix Released
Medium
Seth Forshee

Bug Description

Provide support for next generation HiperSockets.
SMC-local (Shared Memory Communications -- local) provides a new architecture for high performance networking within a CEC. Buffers in the HSA can be shared between LPARs and will be used for communication.
A new socket family will be used to eliminate TCP overhead. Integration with existing tooling through TCP handshaking.
A preload library can be used to enable applications to use the new socket family transparently

Backport from kernel 4.19 will be attached.

For SMC enabling following kernel config has to be set
CONFIG_HAVE_PNETID.

With this setting an additoiponal modul need to be build : pnet.ko

@canonical kernel team:
please cherrypick:
Here you go - sorry for the delay!
In sequence, from oldest to latest:

ddb457c6993babbcdd41fca638b870d2a2fc3941
be6a3f38ff2a2bfd2e591fdc566940a0d4d9428c
0afff91c6f5ecef27715ea71e34dc2baacba1060
c6ba7c9ba43de1b57e9a53946e7ff988554c84ed
1619f770589a183af56f248de261534b255122de
c758dfddc1b5b1c9b8c64e5e4bb9bf24b74f4a59
be244f28d22f77d939ba2b973c102ad2b49d3496
413498440e30bfe381ac99dfc31628a3d8d4382a
4b1b7d3b30a6d32ac1a1dcede284e76ef8a8542d
c601171d7a60b5b09d7c2fe0579953323a80744e
bac6de7b637018f4caacfdf2b4ad8c8749de7420
00e5fb263f9f5f2af60754b79b7dcec0d5e88154
144ce4b9b5a788953b5373162a1921267497fb38
48bf5231771c7e3961c8326353b6027b1bed6eb5
12c36dcfd6f48ece2fce4dc8e6ce68224d005d37
2e3bbe46b4a18d16314dab0c0efdba0c079a5ed0
947541f36c561b5e0ca639ffc450a8c5221de467
7005ada68d1774d7c1109deaba0c2cd8e46f5091
603cc1498455cf57f5ca4483b600efb37ea2c56c
0d18a0cb4b1585d9e5a3b300d5df9ed866561ffb
dd979b4df817e9976f18fb6f9d134d6bc4a3c317
0d86caff06363151df21603eb1f4e3207ea91bd2

CVE References

bugproxy (bugproxy)
tags: added: architecture-s39064 bugnameltc-167251 severity-high targetmilestone-inin1810
Changed in ubuntu:
assignee: nobody → Skipper Bug Screeners (skipper-screen-team)
affects: ubuntu → linux (Ubuntu)
Changed in ubuntu-z-systems:
assignee: nobody → Canonical Kernel Team (canonical-kernel-team)
importance: Undecided → High
status: New → Triaged
Revision history for this message
Dimitri John Ledkov (xnox) wrote :

Awaiting commit ids or a backport onto v4.18

Changed in linux (Ubuntu):
status: New → Incomplete
Frank Heimes (fheimes)
Changed in ubuntu-z-systems:
status: Triaged → Incomplete
Revision history for this message
bugproxy (bugproxy) wrote : Comment bridged from LTC Bugzilla

------- Comment From <email address hidden> 2018-08-22 16:41 EDT-------
Here you go - sorry for the delay!
In sequence, from oldest to latest:

ddb457c6993babbcdd41fca638b870d2a2fc3941
be6a3f38ff2a2bfd2e591fdc566940a0d4d9428c
0afff91c6f5ecef27715ea71e34dc2baacba1060
c6ba7c9ba43de1b57e9a53946e7ff988554c84ed
1619f770589a183af56f248de261534b255122de
c758dfddc1b5b1c9b8c64e5e4bb9bf24b74f4a59
be244f28d22f77d939ba2b973c102ad2b49d3496
413498440e30bfe381ac99dfc31628a3d8d4382a
4b1b7d3b30a6d32ac1a1dcede284e76ef8a8542d
c601171d7a60b5b09d7c2fe0579953323a80744e
bac6de7b637018f4caacfdf2b4ad8c8749de7420
00e5fb263f9f5f2af60754b79b7dcec0d5e88154
144ce4b9b5a788953b5373162a1921267497fb38
48bf5231771c7e3961c8326353b6027b1bed6eb5
12c36dcfd6f48ece2fce4dc8e6ce68224d005d37
2e3bbe46b4a18d16314dab0c0efdba0c079a5ed0
947541f36c561b5e0ca639ffc450a8c5221de467
7005ada68d1774d7c1109deaba0c2cd8e46f5091
603cc1498455cf57f5ca4483b600efb37ea2c56c
0d18a0cb4b1585d9e5a3b300d5df9ed866561ffb
dd979b4df817e9976f18fb6f9d134d6bc4a3c317
0d86caff06363151df21603eb1f4e3207ea91bd2

Changed in ubuntu-z-systems:
status: Incomplete → Triaged
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
status: Confirmed → New
Revision history for this message
Dimitri John Ledkov (xnox) wrote :

All commits listed apply cleanly, apart from a couple where git (at least for me) gets confused about too many deletions. Forwarding to kernel team for consideration into unstable tree.

information type: Private → Public
description: updated
Changed in linux (Ubuntu):
assignee: Skipper Bug Screeners (skipper-screen-team) → Canonical Kernel Team (canonical-kernel-team)
Frank Heimes (fheimes)
tags: added: kernel-da-key
Revision history for this message
Seth Forshee (sforshee) wrote :

These do not apply cleanly for me. I don't see git getting confused about deletions, rather I see that we have two or more branches which have merged and have conflicting changes, which doesn't make for easy cherry picks. I'll try to resolve this, but in the mean time I have a couple of questions.

When I do 'git log v4.18..master net/smc' using Linus' master at the moment (050cdc6c9501abcd64720b8cc3e7941efee9547d) and compare to the list here, I notice a couple of things. First there's one commit that is missing (ignoring merges):

e82f2e31f559 net/smc: optimize consumer cursor updates

Should this also be cherry picked or is it unnecessary?

The second thing I see is a couple of commits following the ones requested here (ignoring merges):

92f4e77c8591 Revert "net/smc: Replace ib_query_gid with rdma_get_gid_attr"
b4c296f9c964 RDMA/smc: Replace ib_query_gid with rdma_get_gid_attr

Are these also wanted?

Revision history for this message
Seth Forshee (sforshee) wrote :

If I omit ddb457c6993b "net/smc: Replace ib_query_gid with rdma_get_gid_attr" all the rest of the commits listed in comment #2 cherry pick cleanly. That commit is later reverted, though intermediate changes make it not a direct revert, but that does make think we can probably just omit it. If I do that I'm left with a net/smc that basically only differs from Linus' master in that it's lacking b4c296f9c964 "RDMA/smc: Replace ib_query_gid with rdma_get_gid_attr" (aside from an include missing in a couple of files). Does this sound like a reasonable approach?

Revision history for this message
bugproxy (bugproxy) wrote :

------- Comment From <email address hidden> 2018-08-29 04:23 EDT-------
Absolutely - Thanks!

Revision history for this message
Seth Forshee (sforshee) wrote :

Applied the list provided, excluding ddb457c6993babbcdd41fca638b870d2a2fc3941, to our unstable (4.18) branch for cosmic. I'm not applying this to 4.17 as I expect the next kernel we upload for cosmic to be based on 4.18.

Changed in linux (Ubuntu):
assignee: Canonical Kernel Team (canonical-kernel-team) → Seth Forshee (sforshee)
importance: Undecided → Medium
status: New → Fix Committed
Frank Heimes (fheimes)
Changed in ubuntu-z-systems:
status: Triaged → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (29.0 KiB)

This bug was fixed in the package linux - 4.18.0-8.9

---------------
linux (4.18.0-8.9) cosmic; urgency=medium

  * linux: 4.18.0-8.9 -proposed tracker (LP: #1791663)

  * Cosmic update to v4.18.7 stable release (LP: #1791660)
    - rcu: Make expedited GPs handle CPU 0 being offline
    - net: 6lowpan: fix reserved space for single frames
    - net: mac802154: tx: expand tailroom if necessary
    - 9p/net: Fix zero-copy path in the 9p virtio transport
    - spi: davinci: fix a NULL pointer dereference
    - spi: pxa2xx: Add support for Intel Ice Lake
    - spi: spi-fsl-dspi: Fix imprecise abort on VF500 during probe
    - spi: cadence: Change usleep_range() to udelay(), for atomic context
    - mmc: block: Fix unsupported parallel dispatch of requests
    - mmc: renesas_sdhi_internal_dmac: mask DMAC interrupts
    - mmc: renesas_sdhi_internal_dmac: fix #define RST_RESERVED_BITS
    - readahead: stricter check for bdi io_pages
    - block: fix infinite loop if the device loses discard capability
    - block: blk_init_allocated_queue() set q->fq as NULL in the fail case
    - block: really disable runtime-pm for blk-mq
    - blkcg: Introduce blkg_root_lookup()
    - block: Introduce blk_exit_queue()
    - block: Ensure that a request queue is dissociated from the cgroup controller
    - apparmor: fix bad debug check in apparmor_secid_to_secctx()
    - dma-buf: Move BUG_ON from _add_shared_fence to _add_shared_inplace
    - libertas: fix suspend and resume for SDIO connected cards
    - media: Revert "[media] tvp5150: fix pad format frame height"
    - mailbox: xgene-slimpro: Fix potential NULL pointer dereference
    - Replace magic for trusting the secondary keyring with #define
    - Fix kexec forbidding kernels signed with keys in the secondary keyring to
      boot
    - powerpc/fadump: handle crash memory ranges array index overflow
    - powerpc/64s: Fix page table fragment refcount race vs speculative references
    - powerpc/pseries: Fix endianness while restoring of r3 in MCE handler.
    - powerpc/pkeys: Give all threads control of their key permissions
    - powerpc/pkeys: Deny read/write/execute by default
    - powerpc/pkeys: key allocation/deallocation must not change pkey registers
    - powerpc/pkeys: Save the pkey registers before fork
    - powerpc/pkeys: Fix calculation of total pkeys.
    - powerpc/pkeys: Preallocate execute-only key
    - powerpc/nohash: fix pte_access_permitted()
    - powerpc64/ftrace: Include ftrace.h needed for enable/disable calls
    - powerpc/powernv/pci: Work around races in PCI bridge enabling
    - cxl: Fix wrong comparison in cxl_adapter_context_get()
    - IB/mlx5: Honor cnt_set_id_valid flag instead of set_id
    - IB/mlx5: Fix leaking stack memory to userspace
    - IB/srpt: Fix srpt_cm_req_recv() error path (1/2)
    - IB/srpt: Fix srpt_cm_req_recv() error path (2/2)
    - IB/srpt: Support HCAs with more than two ports
    - overflow.h: Add arithmetic shift helper
    - RDMA/mlx5: Fix shift overflow in mlx5_ib_create_wq
    - ib_srpt: Fix a use-after-free in srpt_close_ch()
    - ib_srpt: Fix a use-after-free in __srpt_close_all_ch()
    - RDMA/rxe: Set wqe->status correctly if an unexpected...

Changed in linux (Ubuntu):
status: Fix Committed → Fix Released
Changed in ubuntu-z-systems:
status: Fix Committed → Fix Released
Revision history for this message
Brad Figg (brad-figg) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-bionic' to 'verification-done-bionic'. If the problem still exists, change the tag 'verification-needed-bionic' to 'verification-failed-bionic'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-bionic
bugproxy (bugproxy)
tags: added: verification-done-bionic
removed: verification-needed-bionic
Revision history for this message
bugproxy (bugproxy) wrote :

------- Comment From <email address hidden> 2018-10-18 04:49 EDT-------
IBM Bugzilla status-> closed. Fix Released in Cosmic. For integration into 18.04 a new Feature will be opened...

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.