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.40
------>
commit 099af25b620dd7306bb7d0f603233683c7cc7d42
Author: Konstantin Khorenko <khore...@virtuozzo.com>
Date:   Fri Jun 11 15:08:00 2021 +0300

    net/drivers/i40e: suppress high order allocation warning
    
    If we use RDMA over Intel X722 NICs we get complains about 3rd order
    allocation in i40e_setup_tx_descriptors().
    
      bi_size = sizeof(struct i40e_tx_buffer) * tx_ring->count;
    
    sizeof(struct i40e_tx_buffer) == 40 bytes and
    tx_ring->count can easily be I40E_DEFAULT_NUM_DESCRIPTORS == 512,
    so total allocation size is 20480 bytes.
    
    tx_ring is used for DMA, so we cannot switch to kvmalloc() here,
    allocation happens on interface UP and on some parameters
    change via ethtool, so it's not an often case,
    so let's just suppress the warning here.
    
    https://pmc.acronis.com/browse/VSTOR-18622
    
    Signed-off-by: Konstantin Khorenko <khore...@virtuozzo.com>
    
    ++++++++++++
    net/drivers/i40e: suppress high order allocation warning - addon
    
    Fixes: 483f8f01c553 ("net/drivers/i40e: suppress high order allocation
    warning")
    
    Signed-off-by: Konstantin Khorenko <khore...@virtuozzo.com>
    
    Merged two patches together during rebase to vz8
     - 483f8f01c553 ("net/drivers/i40e: suppress high order allocation warning")
     - 3dec55f2ccf6 ("net/drivers/i40e: suppress high order allocation warning 
- addon")
    
    Signed-off-by: Andrey Zhadchenko <andrey.zhadche...@virtuozzo.com>
---
 drivers/net/ethernet/intel/i40e/i40e_txrx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/intel/i40e/i40e_txrx.c 
b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
index b8496037ef7f..1c56ec2421d4 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_txrx.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_txrx.c
@@ -1304,7 +1304,7 @@ int i40e_setup_tx_descriptors(struct i40e_ring *tx_ring)
        /* warn if we are about to overwrite the pointer */
        WARN_ON(tx_ring->tx_bi);
        bi_size = sizeof(struct i40e_tx_buffer) * tx_ring->count;
-       tx_ring->tx_bi = kzalloc(bi_size, GFP_KERNEL);
+       tx_ring->tx_bi = kzalloc(bi_size, GFP_KERNEL | __GFP_ORDER_NOWARN);
        if (!tx_ring->tx_bi)
                goto err;
 
_______________________________________________
Devel mailing list
Devel@openvz.org
https://lists.openvz.org/mailman/listinfo/devel

Reply via email to