diff mbox

caif: checking the wrong variable

Message ID 20110115130639.GA2721@bicker
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Dan Carpenter Jan. 15, 2011, 1:06 p.m. UTC
In the original code we check if (servl == NULL) twice.  The first time
should print the message that cfmuxl_remove_uplayer() failed and set
"ret" correctly, but instead it just returns success.  The second check
should be checking the value of "ret" instead of "servl".

Signed-off-by: Dan Carpenter <error27@gmail.com>

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Sjur Brændeland Jan. 15, 2011, 2:03 p.m. UTC | #1
> In the original code we check if (servl == NULL) twice.  The first time
> should print the message that cfmuxl_remove_uplayer() failed and set
> "ret" correctly, but instead it just returns success.  The second check
> should be checking the value of "ret" instead of "servl".
>
> Signed-off-by: Dan Carpenter <error27@gmail.com>

Thank you for spotting and correcting this.
Looks good to me (reviewed only)

Acked-by: Sjur Braendeland <sjur.brandeland@stericsson.com>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller Jan. 16, 2011, 5:05 a.m. UTC | #2
From: Sjur Brændeland <sjurbren@gmail.com>
Date: Sat, 15 Jan 2011 15:03:31 +0100

>> In the original code we check if (servl == NULL) twice.  The first time
>> should print the message that cfmuxl_remove_uplayer() failed and set
>> "ret" correctly, but instead it just returns success.  The second check
>> should be checking the value of "ret" instead of "servl".
>>
>> Signed-off-by: Dan Carpenter <error27@gmail.com>
> 
> Thank you for spotting and correcting this.
> Looks good to me (reviewed only)
> 
> Acked-by: Sjur Braendeland <sjur.brandeland@stericsson.com>

Applied, thanks.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/net/caif/cfcnfg.c b/net/caif/cfcnfg.c
index 21ede14..c665de7 100644
--- a/net/caif/cfcnfg.c
+++ b/net/caif/cfcnfg.c
@@ -191,6 +191,7 @@  int cfcnfg_disconn_adapt_layer(struct cfcnfg *cnfg, struct cflayer *adap_layer)
 	struct cflayer *servl = NULL;
 	struct cfcnfg_phyinfo *phyinfo = NULL;
 	u8 phyid = 0;
+
 	caif_assert(adap_layer != NULL);
 	channel_id = adap_layer->id;
 	if (adap_layer->dn == NULL || channel_id == 0) {
@@ -199,16 +200,16 @@  int cfcnfg_disconn_adapt_layer(struct cfcnfg *cnfg, struct cflayer *adap_layer)
 		goto end;
 	}
 	servl = cfmuxl_remove_uplayer(cnfg->mux, channel_id);
-	if (servl == NULL)
-		goto end;
-	layer_set_up(servl, NULL);
-	ret = cfctrl_linkdown_req(cnfg->ctrl, channel_id, adap_layer);
 	if (servl == NULL) {
 		pr_err("PROTOCOL ERROR - Error removing service_layer Channel_Id(%d)",
 		       channel_id);
 		ret = -EINVAL;
 		goto end;
 	}
+	layer_set_up(servl, NULL);
+	ret = cfctrl_linkdown_req(cnfg->ctrl, channel_id, adap_layer);
+	if (ret)
+		goto end;
 	caif_assert(channel_id == servl->id);
 	if (adap_layer->dn != NULL) {
 		phyid = cfsrvl_getphyid(adap_layer->dn);