Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0465f54c authored by Rahul Lakkireddy's avatar Rahul Lakkireddy Committed by Greg Kroah-Hartman
Browse files

cxgb4: fix SGE queue dump destination buffer context



[ Upstream commit 1992ded5d111997877a9a25205976d8d03c46814 ]

The data in destination buffer is expected to be be parsed in big
endian. So, use the right context.

Fixes following sparse warning:
cudbg_lib.c:2041:44: warning: incorrect type in assignment (different
base types)
cudbg_lib.c:2041:44:    expected unsigned long long [usertype]
cudbg_lib.c:2041:44:    got restricted __be64 [usertype]

Fixes: 736c3b94 ("cxgb4: collect egress and ingress SGE queue contexts")
Signed-off-by: default avatarRahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 6bcb00d0
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -1980,7 +1980,6 @@ int cudbg_collect_dump_context(struct cudbg_init *pdbg_init,
	u8 mem_type[CTXT_INGRESS + 1] = { 0 };
	struct cudbg_buffer temp_buff = { 0 };
	struct cudbg_ch_cntxt *buff;
	u64 *dst_off, *src_off;
	u8 *ctx_buf;
	u8 i, k;
	int rc;
@@ -2049,8 +2048,11 @@ int cudbg_collect_dump_context(struct cudbg_init *pdbg_init,
		}

		for (j = 0; j < max_ctx_qid; j++) {
			__be64 *dst_off;
			u64 *src_off;

			src_off = (u64 *)(ctx_buf + j * SGE_CTXT_SIZE);
			dst_off = (u64 *)buff->data;
			dst_off = (__be64 *)buff->data;

			/* The data is stored in 64-bit cpu order.  Convert it
			 * to big endian before parsing.