Patch "octeontx2-pf: Fix page pool frag allocation warning" has been added to the 6.5-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    octeontx2-pf: Fix page pool frag allocation warning

to the 6.5-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     octeontx2-pf-fix-page-pool-frag-allocation-warning.patch
and it can be found in the queue-6.5 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 2f71b78b0c505031d5917f9772ee1e451a7ffb12
Author: Ratheesh Kannoth <rkannoth@xxxxxxxxxxx>
Date:   Tue Oct 10 09:18:42 2023 +0530

    octeontx2-pf: Fix page pool frag allocation warning
    
    [ Upstream commit 50e492143374c17ad89c865a1a44837b3f5c8226 ]
    
    Since page pool param's "order" is set to 0, will result
    in below warn message if interface is configured with higher
    rx buffer size.
    
    Steps to reproduce the issue.
    1. devlink dev param set pci/0002:04:00.0 name receive_buffer_size \
       value 8196 cmode runtime
    2. ifconfig eth0 up
    
    [   19.901356] ------------[ cut here ]------------
    [   19.901361] WARNING: CPU: 11 PID: 12331 at net/core/page_pool.c:567 page_pool_alloc_frag+0x3c/0x230
    [   19.901449] pstate: 82401009 (Nzcv daif +PAN -UAO +TCO -DIT +SSBS BTYPE=--)
    [   19.901451] pc : page_pool_alloc_frag+0x3c/0x230
    [   19.901453] lr : __otx2_alloc_rbuf+0x60/0xbc [rvu_nicpf]
    [   19.901460] sp : ffff80000f66b970
    [   19.901461] x29: ffff80000f66b970 x28: 0000000000000000 x27: 0000000000000000
    [   19.901464] x26: ffff800000d15b68 x25: ffff000195b5c080 x24: ffff0002a5a32dc0
    [   19.901467] x23: ffff0001063c0878 x22: 0000000000000100 x21: 0000000000000000
    [   19.901469] x20: 0000000000000000 x19: ffff00016f781000 x18: 0000000000000000
    [   19.901472] x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
    [   19.901474] x14: 0000000000000000 x13: ffff0005ffdc9c80 x12: 0000000000000000
    [   19.901477] x11: ffff800009119a38 x10: 4c6ef2e3ba300519 x9 : ffff800000d13844
    [   19.901479] x8 : ffff0002a5a33cc8 x7 : 0000000000000030 x6 : 0000000000000030
    [   19.901482] x5 : 0000000000000005 x4 : 0000000000000000 x3 : 0000000000000a20
    [   19.901484] x2 : 0000000000001080 x1 : ffff80000f66b9d4 x0 : 0000000000001000
    [   19.901487] Call trace:
    [   19.901488]  page_pool_alloc_frag+0x3c/0x230
    [   19.901490]  __otx2_alloc_rbuf+0x60/0xbc [rvu_nicpf]
    [   19.901494]  otx2_rq_aura_pool_init+0x1c4/0x240 [rvu_nicpf]
    [   19.901498]  otx2_open+0x228/0xa70 [rvu_nicpf]
    [   19.901501]  otx2vf_open+0x20/0xd0 [rvu_nicvf]
    [   19.901504]  __dev_open+0x114/0x1d0
    [   19.901507]  __dev_change_flags+0x194/0x210
    [   19.901510]  dev_change_flags+0x2c/0x70
    [   19.901512]  devinet_ioctl+0x3a4/0x6c4
    [   19.901515]  inet_ioctl+0x228/0x240
    [   19.901518]  sock_ioctl+0x2ac/0x480
    [   19.901522]  __arm64_sys_ioctl+0x564/0xe50
    [   19.901525]  invoke_syscall.constprop.0+0x58/0xf0
    [   19.901529]  do_el0_svc+0x58/0x150
    [   19.901531]  el0_svc+0x30/0x140
    [   19.901533]  el0t_64_sync_handler+0xe8/0x114
    [   19.901535]  el0t_64_sync+0x1a0/0x1a4
    [   19.901537] ---[ end trace 678c0bf660ad8116 ]---
    
    Fixes: b2e3406a38f0 ("octeontx2-pf: Add support for page pool")
    Signed-off-by: Ratheesh Kannoth <rkannoth@xxxxxxxxxxx>
    Reviewed-by: Yunsheng Lin <linyunsheng@xxxxxxxxxx>
    Link: https://lore.kernel.org/r/20231010034842.3807816-1-rkannoth@xxxxxxxxxxx
    Signed-off-by: Paolo Abeni <pabeni@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c
index 20ecc90d203e0..379e1510b70c0 100644
--- a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c
+++ b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c
@@ -1401,6 +1401,7 @@ int otx2_pool_init(struct otx2_nic *pfvf, u16 pool_id,
 		return 0;
 	}
 
+	pp_params.order = get_order(buf_size);
 	pp_params.flags = PP_FLAG_PAGE_FRAG | PP_FLAG_DMA_MAP;
 	pp_params.pool_size = min(OTX2_PAGE_POOL_SZ, numptrs);
 	pp_params.nid = NUMA_NO_NODE;



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux