Linux bluetooth development
 help / color / mirror / Atom feed
* [PATCH 1/2] Bluetooth: Remove unneeded val variable when setting SSP
@ 2013-10-10 10:08 Marcel Holtmann
  2013-10-10 10:56 ` Johan Hedberg
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Marcel Holtmann @ 2013-10-10 10:08 UTC (permalink / raw)
  To: linux-bluetooth

The variable val in the set_ssp() function of the management interface
is not needed. Just use cp->val directly since its input values have
already been validated.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
---
 net/bluetooth/mgmt.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c
index a9d7506..2fb4d35 100644
--- a/net/bluetooth/mgmt.c
+++ b/net/bluetooth/mgmt.c
@@ -1290,7 +1290,7 @@ static int set_ssp(struct sock *sk, struct hci_dev *hdev, void *data, u16 len)
 {
 	struct mgmt_mode *cp = data;
 	struct pending_cmd *cmd;
-	u8 val, status;
+	u8 status;
 	int err;
 
 	BT_DBG("request for %s", hdev->name);
@@ -1309,8 +1309,6 @@ static int set_ssp(struct sock *sk, struct hci_dev *hdev, void *data, u16 len)
 
 	hci_dev_lock(hdev);
 
-	val = !!cp->val;
-
 	if (!hdev_is_powered(hdev)) {
 		bool changed = false;
 
@@ -1335,7 +1333,7 @@ static int set_ssp(struct sock *sk, struct hci_dev *hdev, void *data, u16 len)
 		goto failed;
 	}
 
-	if (test_bit(HCI_SSP_ENABLED, &hdev->dev_flags) == val) {
+	if (!!cp->val == test_bit(HCI_SSP_ENABLED, &hdev->dev_flags)) {
 		err = send_settings_rsp(sk, MGMT_OP_SET_SSP, hdev);
 		goto failed;
 	}
@@ -1346,7 +1344,7 @@ static int set_ssp(struct sock *sk, struct hci_dev *hdev, void *data, u16 len)
 		goto failed;
 	}
 
-	err = hci_send_cmd(hdev, HCI_OP_WRITE_SSP_MODE, sizeof(val), &val);
+	err = hci_send_cmd(hdev, HCI_OP_WRITE_SSP_MODE, 1, &cp->val);
 	if (err < 0) {
 		mgmt_pending_remove(cmd);
 		goto failed;
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] Bluetooth: Remove unneeded val variable when setting SSP
  2013-10-10 10:08 [PATCH 1/2] Bluetooth: Remove unneeded val variable when setting SSP Marcel Holtmann
@ 2013-10-10 10:56 ` Johan Hedberg
  2013-10-10 11:00 ` Anderson Lizardo
  2013-10-10 11:01 ` Andrei Emeltchenko
  2 siblings, 0 replies; 6+ messages in thread
From: Johan Hedberg @ 2013-10-10 10:56 UTC (permalink / raw)
  To: Marcel Holtmann; +Cc: linux-bluetooth

Hi Marcel,

On Thu, Oct 10, 2013, Marcel Holtmann wrote:
> The variable val in the set_ssp() function of the management interface
> is not needed. Just use cp->val directly since its input values have
> already been validated.
> 
> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
> ---
>  net/bluetooth/mgmt.c | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)

Both patches have been applied to bluetooth-next. Thanks.

Johan

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] Bluetooth: Remove unneeded val variable when setting SSP
  2013-10-10 10:08 [PATCH 1/2] Bluetooth: Remove unneeded val variable when setting SSP Marcel Holtmann
  2013-10-10 10:56 ` Johan Hedberg
@ 2013-10-10 11:00 ` Anderson Lizardo
  2013-10-10 11:06   ` Marcel Holtmann
  2013-10-10 11:01 ` Andrei Emeltchenko
  2 siblings, 1 reply; 6+ messages in thread
From: Anderson Lizardo @ 2013-10-10 11:00 UTC (permalink / raw)
  To: Marcel Holtmann; +Cc: BlueZ development

Hi Marcel,

On Thu, Oct 10, 2013 at 6:08 AM, Marcel Holtmann <marcel@holtmann.org> wrote:
> The variable val in the set_ssp() function of the management interface
> is not needed. Just use cp->val directly since its input values have
> already been validated.
> [...]
> -       if (test_bit(HCI_SSP_ENABLED, &hdev->dev_flags) == val) {
> +       if (!!cp->val == test_bit(HCI_SSP_ENABLED, &hdev->dev_flags)) {

In this case, the "!!" trick is unnecessary as the only allowed values
are 0x00 and 0x01 (I believe this has been removed in other similar
cases).

Best Regards,
-- 
Anderson Lizardo
Instituto Nokia de Tecnologia - INdT
Manaus - Brazil

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] Bluetooth: Remove unneeded val variable when setting SSP
  2013-10-10 10:08 [PATCH 1/2] Bluetooth: Remove unneeded val variable when setting SSP Marcel Holtmann
  2013-10-10 10:56 ` Johan Hedberg
  2013-10-10 11:00 ` Anderson Lizardo
@ 2013-10-10 11:01 ` Andrei Emeltchenko
  2013-10-10 11:07   ` Marcel Holtmann
  2 siblings, 1 reply; 6+ messages in thread
From: Andrei Emeltchenko @ 2013-10-10 11:01 UTC (permalink / raw)
  To: Marcel Holtmann; +Cc: linux-bluetooth

Hi Marcel,

On Thu, Oct 10, 2013 at 03:08:10AM -0700, Marcel Holtmann wrote:
> The variable val in the set_ssp() function of the management interface
> is not needed. Just use cp->val directly since its input values have
> already been validated.
> 
> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
> ---
>  net/bluetooth/mgmt.c | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
> 
> diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c
> index a9d7506..2fb4d35 100644
> --- a/net/bluetooth/mgmt.c
> +++ b/net/bluetooth/mgmt.c
> @@ -1290,7 +1290,7 @@ static int set_ssp(struct sock *sk, struct hci_dev *hdev, void *data, u16 len)
>  {
>  	struct mgmt_mode *cp = data;
>  	struct pending_cmd *cmd;
> -	u8 val, status;
> +	u8 status;
>  	int err;
>  
>  	BT_DBG("request for %s", hdev->name);
> @@ -1309,8 +1309,6 @@ static int set_ssp(struct sock *sk, struct hci_dev *hdev, void *data, u16 len)
>  
>  	hci_dev_lock(hdev);
>  
> -	val = !!cp->val;
> -
>  	if (!hdev_is_powered(hdev)) {
>  		bool changed = false;
>  
> @@ -1335,7 +1333,7 @@ static int set_ssp(struct sock *sk, struct hci_dev *hdev, void *data, u16 len)
>  		goto failed;
>  	}
>  
> -	if (test_bit(HCI_SSP_ENABLED, &hdev->dev_flags) == val) {
> +	if (!!cp->val == test_bit(HCI_SSP_ENABLED, &hdev->dev_flags)) {
>  		err = send_settings_rsp(sk, MGMT_OP_SET_SSP, hdev);
>  		goto failed;
>  	}
> @@ -1346,7 +1344,7 @@ static int set_ssp(struct sock *sk, struct hci_dev *hdev, void *data, u16 len)
>  		goto failed;
>  	}
>  
> -	err = hci_send_cmd(hdev, HCI_OP_WRITE_SSP_MODE, sizeof(val), &val);
> +	err = hci_send_cmd(hdev, HCI_OP_WRITE_SSP_MODE, 1, &cp->val);

I think sizeof is read better then magic number

Best regards 
Andrei Emeltchenko 


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] Bluetooth: Remove unneeded val variable when setting SSP
  2013-10-10 11:00 ` Anderson Lizardo
@ 2013-10-10 11:06   ` Marcel Holtmann
  0 siblings, 0 replies; 6+ messages in thread
From: Marcel Holtmann @ 2013-10-10 11:06 UTC (permalink / raw)
  To: Anderson Lizardo; +Cc: BlueZ development

Hi Anderson,

>> The variable val in the set_ssp() function of the management interface
>> is not needed. Just use cp->val directly since its input values have
>> already been validated.
>> [...]
>> -       if (test_bit(HCI_SSP_ENABLED, &hdev->dev_flags) == val) {
>> +       if (!!cp->val == test_bit(HCI_SSP_ENABLED, &hdev->dev_flags)) {
> 
> In this case, the "!!" trick is unnecessary as the only allowed values
> are 0x00 and 0x01 (I believe this has been removed in other similar
> cases).

it has not been removed. That is why I changed it and made it similar to the other case.

Regards

Marcel


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] Bluetooth: Remove unneeded val variable when setting SSP
  2013-10-10 11:01 ` Andrei Emeltchenko
@ 2013-10-10 11:07   ` Marcel Holtmann
  0 siblings, 0 replies; 6+ messages in thread
From: Marcel Holtmann @ 2013-10-10 11:07 UTC (permalink / raw)
  To: Andrei Emeltchenko; +Cc: linux-bluetooth

Hi Andrei,

>> The variable val in the set_ssp() function of the management interface
>> is not needed. Just use cp->val directly since its input values have
>> already been validated.
>> 
>> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
>> ---
>> net/bluetooth/mgmt.c | 8 +++-----
>> 1 file changed, 3 insertions(+), 5 deletions(-)
>> 
>> diff --git a/net/bluetooth/mgmt.c b/net/bluetooth/mgmt.c
>> index a9d7506..2fb4d35 100644
>> --- a/net/bluetooth/mgmt.c
>> +++ b/net/bluetooth/mgmt.c
>> @@ -1290,7 +1290,7 @@ static int set_ssp(struct sock *sk, struct hci_dev *hdev, void *data, u16 len)
>> {
>> 	struct mgmt_mode *cp = data;
>> 	struct pending_cmd *cmd;
>> -	u8 val, status;
>> +	u8 status;
>> 	int err;
>> 
>> 	BT_DBG("request for %s", hdev->name);
>> @@ -1309,8 +1309,6 @@ static int set_ssp(struct sock *sk, struct hci_dev *hdev, void *data, u16 len)
>> 
>> 	hci_dev_lock(hdev);
>> 
>> -	val = !!cp->val;
>> -
>> 	if (!hdev_is_powered(hdev)) {
>> 		bool changed = false;
>> 
>> @@ -1335,7 +1333,7 @@ static int set_ssp(struct sock *sk, struct hci_dev *hdev, void *data, u16 len)
>> 		goto failed;
>> 	}
>> 
>> -	if (test_bit(HCI_SSP_ENABLED, &hdev->dev_flags) == val) {
>> +	if (!!cp->val == test_bit(HCI_SSP_ENABLED, &hdev->dev_flags)) {
>> 		err = send_settings_rsp(sk, MGMT_OP_SET_SSP, hdev);
>> 		goto failed;
>> 	}
>> @@ -1346,7 +1344,7 @@ static int set_ssp(struct sock *sk, struct hci_dev *hdev, void *data, u16 len)
>> 		goto failed;
>> 	}
>> 
>> -	err = hci_send_cmd(hdev, HCI_OP_WRITE_SSP_MODE, sizeof(val), &val);
>> +	err = hci_send_cmd(hdev, HCI_OP_WRITE_SSP_MODE, 1, &cp->val);
> 
> I think sizeof is read better then magic number

if you look at the whole code base, for cases of single u8, we use the "magic" number 1 a lot to keep the lines shorter.

Regards

Marcel


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-10-10 11:07 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-10-10 10:08 [PATCH 1/2] Bluetooth: Remove unneeded val variable when setting SSP Marcel Holtmann
2013-10-10 10:56 ` Johan Hedberg
2013-10-10 11:00 ` Anderson Lizardo
2013-10-10 11:06   ` Marcel Holtmann
2013-10-10 11:01 ` Andrei Emeltchenko
2013-10-10 11:07   ` Marcel Holtmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox