| From 683697d72cb9ea1365b1aeae609268b7729ce886 Mon Sep 17 00:00:00 2001 |
| From: Konstantin Khorenko <khorenko@virtuozzo.com> |
| Date: Thu, 28 Mar 2019 13:29:21 +0300 |
| Subject: bonding: show full hw address in sysfs for slave entries |
| |
| [ Upstream commit 18bebc6dd3281955240062655a4df35eef2c46b3 ] |
| |
| Bond expects ethernet hwaddr for its slave, but it can be longer than 6 |
| bytes - infiniband interface for example. |
| |
| # cat /sys/devices/<skipped>/net/ib0/address |
| 80:00:02:08:fe:80:00:00:00:00:00:00:7c:fe:90:03:00:be:5d:e1 |
| |
| # cat /sys/devices/<skipped>/net/ib0/bonding_slave/perm_hwaddr |
| 80:00:02:08:fe:80 |
| |
| So print full hwaddr in sysfs "bonding_slave/perm_hwaddr" as well. |
| |
| Signed-off-by: Konstantin Khorenko <khorenko@virtuozzo.com> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Sasha Levin (Microsoft) <sashal@kernel.org> |
| --- |
| drivers/net/bonding/bond_sysfs_slave.c | 4 +++- |
| 1 file changed, 3 insertions(+), 1 deletion(-) |
| |
| diff --git a/drivers/net/bonding/bond_sysfs_slave.c b/drivers/net/bonding/bond_sysfs_slave.c |
| index 2f120b2ffef0..4985268e2273 100644 |
| --- a/drivers/net/bonding/bond_sysfs_slave.c |
| +++ b/drivers/net/bonding/bond_sysfs_slave.c |
| @@ -55,7 +55,9 @@ static SLAVE_ATTR_RO(link_failure_count); |
| |
| static ssize_t perm_hwaddr_show(struct slave *slave, char *buf) |
| { |
| - return sprintf(buf, "%pM\n", slave->perm_hwaddr); |
| + return sprintf(buf, "%*phC\n", |
| + slave->dev->addr_len, |
| + slave->perm_hwaddr); |
| } |
| static SLAVE_ATTR_RO(perm_hwaddr); |
| |
| -- |
| 2.20.1 |
| |