ACK: [SRU][F][PATCH v2 0/1] Hipersocket page allocation failure on Ubuntu 20.04 based SSC environments (LP: 1959529)

Stefan Bader stefan.bader at canonical.com
Tue Feb 15 08:48:03 UTC 2022


On 10.02.22 16:44, Krzysztof Kozlowski wrote:
> BugLink: https://bugs.launchpad.net/bugs/1959529
> 
> Changes since v1
> 1. Take over Frank Heimes' SRU.
> 2. First hunk: add __GFP_MEMALLOC flag.
> 3. Tested by IBM (see last comments in BugLink).
> 
> 
> SRU Justification:
> 
> [Impact]
> 
> * On IBM IDAA environments (SSC) hipersocket page allocation failures can occur
>    on Ubuntu Server 20.04 based SSC
>    (and presumably on regular LPAR installation, too)
> 
> * This happens on kernel 5.4.0-73-generic, probably on all 5.4 kernels.
> 
> * Error messages like the following can be found at the logs:
>    "kworker/u760:28: page allocation failure"
> 
> * The IBM LTC Networking team has identified that this is caused by the missing
>    upstream commit: 714c9108851743bb718fbc1bfb81290f12a53854.
> 
> * This commit got upstream accepted with v5.7, but is not included in 5.4.
> 
> [Fix]
> 
> * upstream (since v5.7):
>    714c9108851743bb718fbc1bfb81290f12a53854 714c91088517 "s390/qeth: use memory reserves to back RX buffers"
>    https://launchpadlibrarian.net/583947110/0001-s390-qeth-use-memory-reserves-to-back-RX-buffers_backport.patch
> 
> * The upstream commit does not apply cleanly on focal master-next by just
>    cherry-picking it, due to different driver code and context,
>    hence the need of the backport.
> 
> [Test Case]
> 
> * An IBM Z or LinuxONE III SSC environment is needed that is attached to a
>    Hipersocket (virtual network) and with that one or more (Hipersocket-based)
>    qeth device.
> 
> * LPAR needs to run Ubuntu Server 20.04 with kernel 5.4.
> 
> * Now drive heavy network traffic over this (Hipersocket-based) qeth device,
>    e.g. using stress-ng.
> 
> * Monitor the logs for:
>    "kworker/u760:28: page allocation failure: order:0, mode:0xa20(GFP_ATOMIC),
>     nodemask=(null),cpuset=/,mems_allowed=0"
> * Due to the special environment, test and verification is done by IBM.
> 
> [Regression Potential / What can go wrong]
> 
> * The patch changes only two lines in the qeth buffer pool code.
>    they are therefore quite traceable.
> 
> * The page allocation is changed by calling alloc_page differently.
>    The second change is the adjustment of the pointer due to the above.
> 
> * If the new way of allocation is errorneous, it will either be identified
>    at compile time or at verification of this bug.
> 
> * Because of that a test kernel was build at PPA:
>    https://launchpad.net/~fheimes/+archive/ubuntu/lp1959529
>    to identify any build/compile issues.
> 
> * Since the original upstream commit is already in kernel v5.7,
>    is was already tested to some extend in groovy and all newer releases.
> 
> * This patch changes s390x-specific qeth driver code only in:
>    drivers/s390/net/qeth_core_main.c
> 
> [Other]
> 
> * All Ubuntu releases of groovy newer have this patch/commit included,
>    hence this SRU is for focal only.
> 
> 
> Julian Wiedmann (1):
>    s390/qeth: use memory reserves to back RX buffers
> 
>   drivers/s390/net/qeth_core_main.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 

Acked-by: Stefan Bader <stefan.bader at canonical.com>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20220215/2d79c2c2/attachment.sig>


More information about the kernel-team mailing list