[Devel] [PATCH RHEL8 COMMIT] rdma/i40iw: Hide high-order-allocation warning in

Konstantin Khorenko khorenko at virtuozzo.com
Mon Jun 7 15:54:02 MSK 2021


The commit is pushed to "branch-rh8-4.18.0-240.1.1.vz8.5.x-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git
after rh8-4.18.0-240.1.1.vz8.5.35
------>
commit 30cd3e55810786c074fde7efd6a4872e28a17339
Author: Valeriy Vdovin <valeriy.vdovin at virtuozzo.com>
Date:   Mon Jun 7 15:54:02 2021 +0300

    rdma/i40iw: Hide high-order-allocation warning in
    
    i40iw_save_msix_info()
    Date: Tue,  1 Jun 2021 20:20:08 +0300
    Message-Id: <20210601172008.2916208-1-valeriy.vdovin at virtuozzo.com>
    
    From: Konstantin Khorenko <khorenko at virtuozzo.com>
    
    rdma/i40iw: hide high-order-allocation warning in i40iw_save_msix_info()
    
    Size of struct i40iw_msix_vector was increased in RHEL7.7 kernels
    due to ML commit 43731753c4b7 ("RDMA/i40iw: Avoid panic when reading back the
    IRQ affinity hint").
    It triggers high-order-allocation warning in i40iw_save_msix_info().
    
    The patch disables this warning.
    
    https://pmc.acronis.com/browse/VSTOR-27273
    Signed-off-by: Vasily Averin <vvs at virtuozzo.com>
    
    (cherry-picked from vz7 commit 42463cc52c94 ("rdma/i40iw: hide
    high-order-allocation warning in i40iw_save_msix_info()"))
    
    https://jira.sw.ru/browse/PSBM-127848
    Signed-off-by: Valeriy Vdovin <valeriy.vdovin at virtuozzo.com>
    
    +++
    We use a special flag for supressing high order pages
    allocation - __GFP_ORDER_NOWARN, so use it instead of
    generic __GFP_NOWARN.
    
    mFixes: f2d4fc9469f8 ("rdma/i40iw: hide high-order-allocation
    warning in i40iw_save_msix_info()")
    
    https://pmc.acronis.com/browse/VSTOR-27273
    
    Signed-off-by: Konstantin Khorenko <khorenko at virtuozzo.com>
    
    (cherry-picked from vz7 commit 8c57235f8493 ("rdma/i40iw: use proper GFP flag
    for hiding high-order-allocation warning"))
    
    v2: - Merged with one more commit with the same line changed
---
 drivers/infiniband/hw/i40iw/i40iw_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/infiniband/hw/i40iw/i40iw_main.c b/drivers/infiniband/hw/i40iw/i40iw_main.c
index 9c96ece5e7f3..db292c595c03 100644
--- a/drivers/infiniband/hw/i40iw/i40iw_main.c
+++ b/drivers/infiniband/hw/i40iw/i40iw_main.c
@@ -1437,7 +1437,7 @@ static enum i40iw_status_code i40iw_save_msix_info(struct i40iw_device *iwdev,
 	size = sizeof(struct i40iw_msix_vector) * iwdev->msix_count;
 	size += sizeof(struct i40e_qvlist_info);
 	size +=  sizeof(struct i40e_qv_info) * iwdev->msix_count - 1;
-	iwdev->iw_msixtbl = kzalloc(size, GFP_KERNEL);
+	iwdev->iw_msixtbl = kzalloc(size, GFP_KERNEL | __GFP_ORDER_NOWARN);
 
 	if (!iwdev->iw_msixtbl)
 		return I40IW_ERR_NO_MEMORY;


More information about the Devel mailing list