Commit acf61ecd authored by Yunsheng Lin's avatar Yunsheng Lin Committed by David S. Miller

net: hns3: Add support for dynamically buffer reallocation

Current buffer allocation can only happen at init, when
doing buffer reallocation after init, care must be taken
care of memory which priv_buf points to.
This patch fixes it by using a dynamic allocated temporary
memory. Because we only do buffer reallocation at init or
when setting up the DCB parameter, and priv_buf is only
used at buffer allocation process, so it is ok to use a
dynamic allocated temporary memory.
Signed-off-by: default avatarYunsheng Lin <linyunsheng@huawei.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 9ffe79a9
...@@ -322,6 +322,11 @@ struct hclge_shared_buf { ...@@ -322,6 +322,11 @@ struct hclge_shared_buf {
u32 buf_size; u32 buf_size;
}; };
struct hclge_pkt_buf_alloc {
struct hclge_priv_buf priv_buf[HCLGE_MAX_TC_NUM];
struct hclge_shared_buf s_buf;
};
#define HCLGE_RX_COM_WL_EN_B 15 #define HCLGE_RX_COM_WL_EN_B 15
struct hclge_rx_com_wl_buf { struct hclge_rx_com_wl_buf {
__le16 high_wl; __le16 high_wl;
......
...@@ -463,8 +463,6 @@ struct hclge_dev { ...@@ -463,8 +463,6 @@ struct hclge_dev {
u32 pkt_buf_size; /* Total pf buf size for tx/rx */ u32 pkt_buf_size; /* Total pf buf size for tx/rx */
u32 mps; /* Max packet size */ u32 mps; /* Max packet size */
struct hclge_priv_buf *priv_buf;
struct hclge_shared_buf s_buf;
enum hclge_mta_dmac_sel_type mta_mac_sel_type; enum hclge_mta_dmac_sel_type mta_mac_sel_type;
bool enable_mta; /* Mutilcast filter enable */ bool enable_mta; /* Mutilcast filter enable */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment