git: 9e971c3f9ad4 - stable/12 - ixgbe: initialize data field in struct buffer

Kevin Bowling kbowling at FreeBSD.org
Tue Sep 14 00:48:10 UTC 2021


The branch stable/12 has been updated by kbowling (ports committer):

URL: https://cgit.FreeBSD.org/src/commit/?id=9e971c3f9ad415f41954d96b38b59d8bb795bac3

commit 9e971c3f9ad415f41954d96b38b59d8bb795bac3
Author:     Guinan Sun <guinanx.sun at intel.com>
AuthorDate: 2020-07-09 08:00:40 +0000
Commit:     Kevin Bowling <kbowling at FreeBSD.org>
CommitDate: 2021-09-14 00:43:25 +0000

    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 at intel.com>
    Signed-off-by: Piotr Pietruszewski <piotr.pietruszewski at intel.com>
    Signed-off-by: Guinan Sun <guinanx.sun at intel.com>
    Reviewed-by: Wei Zhao <wei.zhao1 at 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)
---
 sys/dev/ixgbe/ixgbe_x550.c | 2 ++
 1 file changed, 2 insertions(+)

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),


More information about the dev-commits-src-all mailing list