drivers/bluetooth/btbcm.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-)
There is no point in having the label since all it does is return the
value in the 'err' variable. Instead make every goto return directly
and remove the label.
Signed-off-by: Dongyang Jin <jindongyang@kylinos.cn>
---
drivers/bluetooth/btbcm.c | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/drivers/bluetooth/btbcm.c b/drivers/bluetooth/btbcm.c
index d33cc70eec66..dccfbeee4721 100644
--- a/drivers/bluetooth/btbcm.c
+++ b/drivers/bluetooth/btbcm.c
@@ -223,7 +223,7 @@ int btbcm_patchram(struct hci_dev *hdev, const struct firmware *fw)
err = PTR_ERR(skb);
bt_dev_err(hdev, "BCM: Download Minidrv command failed (%d)",
err);
- goto done;
+ return err;
}
kfree_skb(skb);
@@ -242,8 +242,7 @@ int btbcm_patchram(struct hci_dev *hdev, const struct firmware *fw)
if (fw_size < cmd->plen) {
bt_dev_err(hdev, "BCM: Patch is corrupted");
- err = -EINVAL;
- goto done;
+ return -EINVAL;
}
cmd_param = fw_ptr;
@@ -258,7 +257,7 @@ int btbcm_patchram(struct hci_dev *hdev, const struct firmware *fw)
err = PTR_ERR(skb);
bt_dev_err(hdev, "BCM: Patch command %04x failed (%d)",
opcode, err);
- goto done;
+ return err;
}
kfree_skb(skb);
}
@@ -266,8 +265,7 @@ int btbcm_patchram(struct hci_dev *hdev, const struct firmware *fw)
/* 250 msec delay after Launch Ram completes */
msleep(250);
-done:
- return err;
+ return 0;
}
EXPORT_SYMBOL(btbcm_patchram);
--
2.25.1
Dear Dongyang,
Thank you for your patch.
Am 03.02.26 um 08:10 schrieb Dongyang Jin:
> There is no point in having the label since all it does is return the
> value in the 'err' variable. Instead make every goto return directly
> and remove the label.
>
> Signed-off-by: Dongyang Jin <jindongyang@kylinos.cn>
> ---
> drivers/bluetooth/btbcm.c | 10 ++++------
> 1 file changed, 4 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/bluetooth/btbcm.c b/drivers/bluetooth/btbcm.c
> index d33cc70eec66..dccfbeee4721 100644
> --- a/drivers/bluetooth/btbcm.c
> +++ b/drivers/bluetooth/btbcm.c
> @@ -223,7 +223,7 @@ int btbcm_patchram(struct hci_dev *hdev, const struct firmware *fw)
> err = PTR_ERR(skb);
> bt_dev_err(hdev, "BCM: Download Minidrv command failed (%d)",
> err);
> - goto done;
> + return err;
> }
> kfree_skb(skb);
>
> @@ -242,8 +242,7 @@ int btbcm_patchram(struct hci_dev *hdev, const struct firmware *fw)
>
> if (fw_size < cmd->plen) {
> bt_dev_err(hdev, "BCM: Patch is corrupted");
> - err = -EINVAL;
> - goto done;
> + return -EINVAL;
> }
>
> cmd_param = fw_ptr;
> @@ -258,7 +257,7 @@ int btbcm_patchram(struct hci_dev *hdev, const struct firmware *fw)
> err = PTR_ERR(skb);
> bt_dev_err(hdev, "BCM: Patch command %04x failed (%d)",
> opcode, err);
> - goto done;
> + return err;
> }
> kfree_skb(skb);
> }
> @@ -266,8 +265,7 @@ int btbcm_patchram(struct hci_dev *hdev, const struct firmware *fw)
> /* 250 msec delay after Launch Ram completes */
> msleep(250);
>
> -done:
> - return err;
> + return 0;
> }
> EXPORT_SYMBOL(btbcm_patchram);
>
Reviewed-by: Paul Menzel <pmenzel@molgen.mpg.de>
Kind regards,
Paul
PS: Do you have a device to test *btbcm*?
© 2016 - 2026 Red Hat, Inc.