From patchwork Tue Apr 28 03:02:21 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 238701 List-Id: U-Boot discussion From: peng.fan at nxp.com (Peng Fan) Date: Tue, 28 Apr 2020 11:02:21 +0800 Subject: [PATCH 1/8] net: eth-uclass: add return value check In-Reply-To: <20200428030228.19964-1-peng.fan@nxp.com> References: <20200428030228.19964-1-peng.fan@nxp.com> Message-ID: <20200428030228.19964-2-peng.fan@nxp.com> Add return value check Signed-off-by: Peng Fan --- net/eth-uclass.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/net/eth-uclass.c b/net/eth-uclass.c index 8bf2eabe90..950a48d520 100644 --- a/net/eth-uclass.c +++ b/net/eth-uclass.c @@ -40,8 +40,12 @@ static int eth_errno; static struct eth_uclass_priv *eth_get_uclass_priv(void) { struct uclass *uc; + int ret; + + ret = uclass_get(UCLASS_ETH, &uc); + if (ret) + return NULL; - uclass_get(UCLASS_ETH, &uc); assert(uc); return uc->priv; } @@ -102,6 +106,7 @@ struct udevice *eth_get_dev_by_name(const char *devname) struct udevice *it; struct uclass *uc; int len = strlen("eth"); + int ret; /* Must be longer than 3 to be an alias */ if (!strncmp(devname, "eth", len) && strlen(devname) > len) { @@ -109,7 +114,10 @@ struct udevice *eth_get_dev_by_name(const char *devname) seq = simple_strtoul(startp, &endp, 10); } - uclass_get(UCLASS_ETH, &uc); + ret = uclass_get(UCLASS_ETH, &uc); + if (ret) + return NULL; + uclass_foreach_dev(it, uc) { /* * We need the seq to be valid, so try to probe it.