]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/4.14.117/bonding-show-full-hw-address-in-sysfs-for-slave-entr.patch
Fixes for 5.10
[thirdparty/kernel/stable-queue.git] / releases / 4.14.117 / bonding-show-full-hw-address-in-sysfs-for-slave-entr.patch
1 From 3be8b08dba3901cfb05c14d2ffbb563d09a30a5c Mon Sep 17 00:00:00 2001
2 From: Konstantin Khorenko <khorenko@virtuozzo.com>
3 Date: Thu, 28 Mar 2019 13:29:21 +0300
4 Subject: bonding: show full hw address in sysfs for slave entries
5
6 [ Upstream commit 18bebc6dd3281955240062655a4df35eef2c46b3 ]
7
8 Bond expects ethernet hwaddr for its slave, but it can be longer than 6
9 bytes - infiniband interface for example.
10
11 # cat /sys/devices/<skipped>/net/ib0/address
12 80:00:02:08:fe:80:00:00:00:00:00:00:7c:fe:90:03:00:be:5d:e1
13
14 # cat /sys/devices/<skipped>/net/ib0/bonding_slave/perm_hwaddr
15 80:00:02:08:fe:80
16
17 So print full hwaddr in sysfs "bonding_slave/perm_hwaddr" as well.
18
19 Signed-off-by: Konstantin Khorenko <khorenko@virtuozzo.com>
20 Signed-off-by: David S. Miller <davem@davemloft.net>
21 Signed-off-by: Sasha Levin <sashal@kernel.org>
22 ---
23 drivers/net/bonding/bond_sysfs_slave.c | 4 +++-
24 1 file changed, 3 insertions(+), 1 deletion(-)
25
26 diff --git a/drivers/net/bonding/bond_sysfs_slave.c b/drivers/net/bonding/bond_sysfs_slave.c
27 index 7d16c51e6913..641a532b67cb 100644
28 --- a/drivers/net/bonding/bond_sysfs_slave.c
29 +++ b/drivers/net/bonding/bond_sysfs_slave.c
30 @@ -55,7 +55,9 @@ static SLAVE_ATTR_RO(link_failure_count);
31
32 static ssize_t perm_hwaddr_show(struct slave *slave, char *buf)
33 {
34 - return sprintf(buf, "%pM\n", slave->perm_hwaddr);
35 + return sprintf(buf, "%*phC\n",
36 + slave->dev->addr_len,
37 + slave->perm_hwaddr);
38 }
39 static SLAVE_ATTR_RO(perm_hwaddr);
40
41 --
42 2.20.1
43