Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1218816 > unrolled thread
| Started by | Geert Uytterhoeven <geert@linux-m68k.org> |
|---|---|
| First post | 2015-09-04 12:50 +0200 |
| Last post | 2015-09-07 04:50 +0200 |
| Articles | 2 — 2 participants |
Back to article view | Back to linux.kernel
[PATCH] lan78xx: Fix ladv/radv error handling in lan78xx_link_reset() Geert Uytterhoeven <geert@linux-m68k.org> - 2015-09-04 12:50 +0200
Re: [PATCH] lan78xx: Fix ladv/radv error handling in lan78xx_link_reset() David Miller <davem@davemloft.net> - 2015-09-07 04:50 +0200
| From | Geert Uytterhoeven <geert@linux-m68k.org> |
|---|---|
| Date | 2015-09-04 12:50 +0200 |
| Subject | [PATCH] lan78xx: Fix ladv/radv error handling in lan78xx_link_reset() |
| Message-ID | <q4WJb-86i-9@gated-at.bofh.it> |
net/usb/lan78xx.c: In function ‘lan78xx_link_reset’:
net/usb/lan78xx.c:1107: warning: comparison is always false due to limited range of data type
net/usb/lan78xx.c:1111: warning: comparison is always false due to limited range of data type
Assigning return values that can be negative error codes to "u16"
variables makes them positive, ignoring the errors. Hence use "int"
instead.
Drop the "unlikely"s (unlikely considered harmful) and propagate the
actual error values instead of overriding them to -EIO while we're at
it.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
---
Compile-tested only.
Many more overridden or plainly ignored errors, and lots of unlikely()
abuse to fix...
---
drivers/net/usb/lan78xx.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/drivers/net/usb/lan78xx.c b/drivers/net/usb/lan78xx.c
index 39364a45af404388..a39518fc93aadf82 100644
--- a/drivers/net/usb/lan78xx.c
+++ b/drivers/net/usb/lan78xx.c
@@ -1049,8 +1049,7 @@ static int lan78xx_link_reset(struct lan78xx_net *dev)
{
struct mii_if_info *mii = &dev->mii;
struct ethtool_cmd ecmd = { .cmd = ETHTOOL_GSET };
- u16 ladv, radv;
- int ret;
+ int ladv, radv, ret;
u32 buf;
/* clear PHY interrupt status */
@@ -1104,12 +1103,12 @@ static int lan78xx_link_reset(struct lan78xx_net *dev)
}
ladv = lan78xx_mdio_read(dev->net, mii->phy_id, MII_ADVERTISE);
- if (unlikely(ladv < 0))
- return -EIO;
+ if (ladv < 0)
+ return ladv;
radv = lan78xx_mdio_read(dev->net, mii->phy_id, MII_LPA);
- if (unlikely(radv < 0))
- return -EIO;
+ if (radv < 0)
+ return radv;
netif_dbg(dev, link, dev->net,
"speed: %u duplex: %d anadv: 0x%04x anlpa: 0x%04x",
--
1.9.1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | David Miller <davem@davemloft.net> |
|---|---|
| Date | 2015-09-07 04:50 +0200 |
| Subject | Re: [PATCH] lan78xx: Fix ladv/radv error handling in lan78xx_link_reset() |
| Message-ID | <q5UFk-SF-17@gated-at.bofh.it> |
| In reply to | #1218816 |
RnJvbTogR2VlcnQgVXl0dGVyaG9ldmVuIDxnZWVydEBsaW51eC1tNjhrLm9yZz4NCkRhdGU6IEZy aSwgIDQgU2VwIDIwMTUgMTI6NDc6MjggKzAyMDANCg0KPiBuZXQvdXNiL2xhbjc4eHguYzogSW4g ZnVuY3Rpb24goWxhbjc4eHhfbGlua19yZXNldKI6DQo+IG5ldC91c2IvbGFuNzh4eC5jOjExMDc6 IHdhcm5pbmc6IGNvbXBhcmlzb24gaXMgYWx3YXlzIGZhbHNlIGR1ZSB0byBsaW1pdGVkIHJhbmdl IG9mIGRhdGEgdHlwZQ0KPiBuZXQvdXNiL2xhbjc4eHguYzoxMTExOiB3YXJuaW5nOiBjb21wYXJp c29uIGlzIGFsd2F5cyBmYWxzZSBkdWUgdG8gbGltaXRlZCByYW5nZSBvZiBkYXRhIHR5cGUNCj4g DQo+IEFzc2lnbmluZyByZXR1cm4gdmFsdWVzIHRoYXQgY2FuIGJlIG5lZ2F0aXZlIGVycm9yIGNv ZGVzIHRvICJ1MTYiDQo+IHZhcmlhYmxlcyBtYWtlcyB0aGVtIHBvc2l0aXZlLCBpZ25vcmluZyB0 aGUgZXJyb3JzLiAgSGVuY2UgdXNlICJpbnQiDQo+IGluc3RlYWQuDQo+IA0KPiBEcm9wIHRoZSAi dW5saWtlbHkicyAodW5saWtlbHkgY29uc2lkZXJlZCBoYXJtZnVsKSBhbmQgcHJvcGFnYXRlIHRo ZQ0KPiBhY3R1YWwgZXJyb3IgdmFsdWVzIGluc3RlYWQgb2Ygb3ZlcnJpZGluZyB0aGVtIHRvIC1F SU8gd2hpbGUgd2UncmUgYXQNCj4gaXQuDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBHZWVydCBVeXR0 ZXJob2V2ZW4gPGdlZXJ0QGxpbnV4LW02OGsub3JnPg0KDQpBcHBsaWVkLCB0aGFua3MuDQo= -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web