Patch "bonding: fix incorrect software timestamping report" has been added to the 6.9-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    bonding: fix incorrect software timestamping report

to the 6.9-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     bonding-fix-incorrect-software-timestamping-report.patch
and it can be found in the queue-6.9 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit dda8c7d30d7f1c0bc0b75c595097bf3ea698cb01
Author: Hangbin Liu <liuhangbin@xxxxxxxxx>
Date:   Thu Jun 20 16:56:26 2024 +0800

    bonding: fix incorrect software timestamping report
    
    [ Upstream commit a95b031c6796bf9972da2d4b4b524a57734f3a0a ]
    
    The __ethtool_get_ts_info function returns directly if the device has a
    get_ts_info() method. For bonding with an active slave, this works correctly
    as we simply return the real device's timestamping information. However,
    when there is no active slave, we only check the slave's TX software
    timestamp information. We still need to set the phc index and RX timestamp
    information manually. Otherwise, the result will be look like:
    
      Time stamping parameters for bond0:
      Capabilities:
              software-transmit
      PTP Hardware Clock: 0
      Hardware Transmit Timestamp Modes: none
      Hardware Receive Filter Modes: none
    
    This issue does not affect VLAN or MACVLAN devices, as they only have one
    downlink and can directly use the downlink's timestamping information.
    
    Fixes: b8768dc40777 ("net: ethtool: Refactor identical get_ts_info implementations.")
    Reported-by: Liang Li <liali@xxxxxxxxxx>
    Closes: https://issues.redhat.com/browse/RHEL-42409
    Signed-off-by: Hangbin Liu <liuhangbin@xxxxxxxxx>
    Acked-by: Kory Maincent <kory.maincent@xxxxxxxxxxx>
    Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
index bceda85f0dcf6..cb66310c8d76b 100644
--- a/drivers/net/bonding/bond_main.c
+++ b/drivers/net/bonding/bond_main.c
@@ -5773,6 +5773,9 @@ static int bond_ethtool_get_ts_info(struct net_device *bond_dev,
 	if (real_dev) {
 		ret = ethtool_get_ts_info_by_layer(real_dev, info);
 	} else {
+		info->phc_index = -1;
+		info->so_timestamping = SOF_TIMESTAMPING_RX_SOFTWARE |
+					SOF_TIMESTAMPING_SOFTWARE;
 		/* Check if all slaves support software tx timestamping */
 		rcu_read_lock();
 		bond_for_each_slave_rcu(bond, slave, iter) {




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux