diff --git a/drivers/net/ethernet/chelsio/Kconfig b/drivers/net/ethernet/chelsio/Kconfig index 5713e83be08cc7c79d165bc4bf4713d6ffbf11b9..e2cdfa75673fd58cf6dbacd1e67d7a05dd4b33c8 100644 --- a/drivers/net/ethernet/chelsio/Kconfig +++ b/drivers/net/ethernet/chelsio/Kconfig @@ -69,6 +69,7 @@ config CHELSIO_T4 depends on PCI && (IPV6 || IPV6=n) select FW_LOADER select MDIO + select ZLIB_DEFLATE ---help--- This driver supports Chelsio T4, T5 & T6 based gigabit, 10Gb Ethernet adapter and T5/T6 based 40Gb and T6 based 25Gb, 50Gb and 100Gb diff --git a/drivers/net/ethernet/chelsio/cxgb4/Makefile b/drivers/net/ethernet/chelsio/cxgb4/Makefile index 5df923798669c814e208f27d34b672952faa2b94..53b6a02c778e35f327af8374a6ea783e127381d1 100644 --- a/drivers/net/ethernet/chelsio/cxgb4/Makefile +++ b/drivers/net/ethernet/chelsio/cxgb4/Makefile @@ -8,8 +8,7 @@ obj-$(CONFIG_CHELSIO_T4) += cxgb4.o cxgb4-objs := cxgb4_main.o l2t.o smt.o t4_hw.o sge.o clip_tbl.o cxgb4_ethtool.o \ cxgb4_uld.o sched.o cxgb4_filter.o cxgb4_tc_u32.o \ cxgb4_ptp.o cxgb4_tc_flower.o cxgb4_cudbg.o \ - cudbg_common.o cudbg_lib.o + cudbg_common.o cudbg_lib.o cudbg_zlib.o cxgb4-$(CONFIG_CHELSIO_T4_DCB) += cxgb4_dcb.o cxgb4-$(CONFIG_CHELSIO_T4_FCOE) += cxgb4_fcoe.o cxgb4-$(CONFIG_DEBUG_FS) += cxgb4_debugfs.o -cxgb4-$(CONFIG_ZLIB_DEFLATE) += cudbg_zlib.o diff --git a/drivers/net/ethernet/chelsio/cxgb4/cudbg_zlib.c b/drivers/net/ethernet/chelsio/cxgb4/cudbg_zlib.c index 4c3854cbeb6cfc7cc8c9a0c8bbea4083183d2403..25cc06d75cff2fea1482706588be48ee73d4b7ef 100644 --- a/drivers/net/ethernet/chelsio/cxgb4/cudbg_zlib.c +++ b/drivers/net/ethernet/chelsio/cxgb4/cudbg_zlib.c @@ -40,8 +40,8 @@ int cudbg_compress_buff(struct cudbg_init *pdbg_init, struct cudbg_buffer *pin_buff, struct cudbg_buffer *pout_buff) { - struct z_stream_s compress_stream = { 0 }; struct cudbg_buffer temp_buff = { 0 }; + struct z_stream_s compress_stream; struct cudbg_compress_hdr *c_hdr; int rc; @@ -53,6 +53,7 @@ int cudbg_compress_buff(struct cudbg_init *pdbg_init, c_hdr = (struct cudbg_compress_hdr *)temp_buff.data; c_hdr->compress_id = CUDBG_ZLIB_COMPRESS_ID; + memset(&compress_stream, 0, sizeof(struct z_stream_s)); compress_stream.workspace = pdbg_init->workspace; rc = zlib_deflateInit2(&compress_stream, Z_DEFAULT_COMPRESSION, Z_DEFLATED, CUDBG_ZLIB_WIN_BITS, diff --git a/drivers/net/ethernet/chelsio/cxgb4/cudbg_zlib.h b/drivers/net/ethernet/chelsio/cxgb4/cudbg_zlib.h index 9d55c4c38c849f2a3e86292ad40b2e34060c1c4d..60d23805dfc3007c02b72863071121b7a64d8b6b 100644 --- a/drivers/net/ethernet/chelsio/cxgb4/cudbg_zlib.h +++ b/drivers/net/ethernet/chelsio/cxgb4/cudbg_zlib.h @@ -33,24 +33,11 @@ struct cudbg_compress_hdr { static inline int cudbg_get_workspace_size(void) { -#ifdef CONFIG_ZLIB_DEFLATE return zlib_deflate_workspacesize(CUDBG_ZLIB_WIN_BITS, CUDBG_ZLIB_MEM_LVL); -#else - return 0; -#endif /* CONFIG_ZLIB_DEFLATE */ } -#ifndef CONFIG_ZLIB_DEFLATE -static inline int cudbg_compress_buff(struct cudbg_init *pdbg_init, - struct cudbg_buffer *pin_buff, - struct cudbg_buffer *pout_buff) -{ - return 0; -} -#else int cudbg_compress_buff(struct cudbg_init *pdbg_init, struct cudbg_buffer *pin_buff, struct cudbg_buffer *pout_buff); -#endif /* CONFIG_ZLIB_DEFLATE */ #endif /* __CUDBG_ZLIB_H__ */ diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_cudbg.c b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_cudbg.c index 9e0a8a8186c4c421e7c39b22bb0e8b493cba965c..30485f9a598f159fb5d44bba3cdd1d9cf1a36fdb 100644 --- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_cudbg.c +++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_cudbg.c @@ -406,14 +406,15 @@ static void cudbg_free_compress_buff(struct cudbg_init *pdbg_init) int cxgb4_cudbg_collect(struct adapter *adap, void *buf, u32 *buf_size, u32 flag) { - struct cudbg_init cudbg_init = { 0 }; struct cudbg_buffer dbg_buff = { 0 }; u32 size, min_size, total_size = 0; + struct cudbg_init cudbg_init; struct cudbg_hdr *cudbg_hdr; int rc; size = *buf_size; + memset(&cudbg_init, 0, sizeof(struct cudbg_init)); cudbg_init.adap = adap; cudbg_init.outbuf = buf; cudbg_init.outbuf_size = size;