aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuinan Sun <guinanx.sun@intel.com>2020-07-09 08:00:40 +0000
committerKevin Bowling <kbowling@FreeBSD.org>2021-09-14 00:43:25 +0000
commit9e971c3f9ad415f41954d96b38b59d8bb795bac3 (patch)
tree5871284776dcd4199b385ba4ddc4ff815e8e71a8
parent8b6d4eea1b5269dc8968b0c24ab866b494d0a5a0 (diff)
downloadsrc-9e971c3f9ad415f41954d96b38b59d8bb795bac3.tar.gz
src-9e971c3f9ad415f41954d96b38b59d8bb795bac3.zip
ixgbe: initialize data field in struct buffer
While sending request using ixgbe_hic_unlocked() the data field in buffer struct is not used. It is set when the struct is overwritten by FW to deliver the response. To not pass random data to FW the whole structure should be zeroed before use. Signed-off-by: Krzysztof Galazka <krzysztof.galazka@intel.com> Signed-off-by: Piotr Pietruszewski <piotr.pietruszewski@intel.com> Signed-off-by: Guinan Sun <guinanx.sun@intel.com> Reviewed-by: Wei Zhao <wei.zhao1@intel.com> Approved by: imp Obtained from: DPDK (40543be5376ca415b2a7e196315d0555725b8bdf) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D31621 (cherry picked from commit b3ebe337ffa06b0f1f460bf8f1e42fb55db77d0b)
-rw-r--r--sys/dev/ixgbe/ixgbe_x550.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/ixgbe/ixgbe_x550.c b/sys/dev/ixgbe/ixgbe_x550.c
index 03904c026cae..02db10b61673 100644
--- a/sys/dev/ixgbe/ixgbe_x550.c
+++ b/sys/dev/ixgbe/ixgbe_x550.c
@@ -3137,6 +3137,7 @@ s32 ixgbe_read_ee_hostif_X550(struct ixgbe_hw *hw, u16 offset, u16 *data)
/* one word */
buffer.length = IXGBE_CPU_TO_BE16(sizeof(u16));
buffer.pad2 = 0;
+ buffer.data = 0;
buffer.pad3 = 0;
status = hw->mac.ops.acquire_swfw_sync(hw, mask);
@@ -3197,6 +3198,7 @@ s32 ixgbe_read_ee_hostif_buffer_X550(struct ixgbe_hw *hw,
buffer.address = IXGBE_CPU_TO_BE32((offset + current_word) * 2);
buffer.length = IXGBE_CPU_TO_BE16(words_to_read * 2);
buffer.pad2 = 0;
+ buffer.data = 0;
buffer.pad3 = 0;
status = ixgbe_hic_unlocked(hw, (u32 *)&buffer, sizeof(buffer),