Re: [PATCH] Bluetooth: Skip the shutdown routine if the interface is not up

2015-04-26 Thread David Miller
From: Marcel Holtmann 
Date: Sun, 26 Apr 2015 21:49:06 -0700

> Hi Gabriele,
> 
>> Most likely, the shutdown routine requires the interface to be up.
>> This is the case for BTUSB_INTEL: the routine tries to send a command
>> to the interface, but since this one is down, it fails and exits once
>> HCI_INIT_TIMEOUT has expired.
>> 
>> Signed-off-by: Gabriele Mazzotta 
>> ---
>> net/bluetooth/hci_core.c | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>> 
>> diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
>> index 476709b..4663c3d 100644
>> --- a/net/bluetooth/hci_core.c
>> +++ b/net/bluetooth/hci_core.c
>> @@ -1557,7 +1557,8 @@ static int hci_dev_do_close(struct hci_dev *hdev)
>> {
>>  BT_DBG("%s %p", hdev->name, hdev);
>> 
>> -if (!hci_dev_test_flag(hdev, HCI_UNREGISTER)) {
>> +if (!hci_dev_test_flag(hdev, HCI_UNREGISTER) &&
>> +test_bit(HCI_UP, >flags)) {
>>  /* Execute vendor specific shutdown routine */
>>  if (hdev->shutdown)
>>  hdev->shutdown(hdev);
> 
> this is a good catch.
> 
> Acked-by: Marcel Holtmann 
> Cc: sta...@vger.kernel.org # 4.0.x
> 
> Dave, do you want to take this patch straight into your stable tree?

Please handle this via the bluetooth tree, thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] Bluetooth: Skip the shutdown routine if the interface is not up

2015-04-26 Thread Marcel Holtmann
Hi Gabriele,

> Most likely, the shutdown routine requires the interface to be up.
> This is the case for BTUSB_INTEL: the routine tries to send a command
> to the interface, but since this one is down, it fails and exits once
> HCI_INIT_TIMEOUT has expired.
> 
> Signed-off-by: Gabriele Mazzotta 
> ---
> net/bluetooth/hci_core.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
> index 476709b..4663c3d 100644
> --- a/net/bluetooth/hci_core.c
> +++ b/net/bluetooth/hci_core.c
> @@ -1557,7 +1557,8 @@ static int hci_dev_do_close(struct hci_dev *hdev)
> {
>   BT_DBG("%s %p", hdev->name, hdev);
> 
> - if (!hci_dev_test_flag(hdev, HCI_UNREGISTER)) {
> + if (!hci_dev_test_flag(hdev, HCI_UNREGISTER) &&
> + test_bit(HCI_UP, >flags)) {
>   /* Execute vendor specific shutdown routine */
>   if (hdev->shutdown)
>   hdev->shutdown(hdev);

this is a good catch.

Acked-by: Marcel Holtmann 
Cc: sta...@vger.kernel.org # 4.0.x

Dave, do you want to take this patch straight into your stable tree?

Regards

Marcel

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] Bluetooth: Skip the shutdown routine if the interface is not up

2015-04-26 Thread Marcel Holtmann
Hi Gabriele,

 Most likely, the shutdown routine requires the interface to be up.
 This is the case for BTUSB_INTEL: the routine tries to send a command
 to the interface, but since this one is down, it fails and exits once
 HCI_INIT_TIMEOUT has expired.
 
 Signed-off-by: Gabriele Mazzotta gabriele@gmail.com
 ---
 net/bluetooth/hci_core.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
 index 476709b..4663c3d 100644
 --- a/net/bluetooth/hci_core.c
 +++ b/net/bluetooth/hci_core.c
 @@ -1557,7 +1557,8 @@ static int hci_dev_do_close(struct hci_dev *hdev)
 {
   BT_DBG(%s %p, hdev-name, hdev);
 
 - if (!hci_dev_test_flag(hdev, HCI_UNREGISTER)) {
 + if (!hci_dev_test_flag(hdev, HCI_UNREGISTER) 
 + test_bit(HCI_UP, hdev-flags)) {
   /* Execute vendor specific shutdown routine */
   if (hdev-shutdown)
   hdev-shutdown(hdev);

this is a good catch.

Acked-by: Marcel Holtmann mar...@holtmann.org
Cc: sta...@vger.kernel.org # 4.0.x

Dave, do you want to take this patch straight into your stable tree?

Regards

Marcel

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] Bluetooth: Skip the shutdown routine if the interface is not up

2015-04-26 Thread David Miller
From: Marcel Holtmann mar...@holtmann.org
Date: Sun, 26 Apr 2015 21:49:06 -0700

 Hi Gabriele,
 
 Most likely, the shutdown routine requires the interface to be up.
 This is the case for BTUSB_INTEL: the routine tries to send a command
 to the interface, but since this one is down, it fails and exits once
 HCI_INIT_TIMEOUT has expired.
 
 Signed-off-by: Gabriele Mazzotta gabriele@gmail.com
 ---
 net/bluetooth/hci_core.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
 index 476709b..4663c3d 100644
 --- a/net/bluetooth/hci_core.c
 +++ b/net/bluetooth/hci_core.c
 @@ -1557,7 +1557,8 @@ static int hci_dev_do_close(struct hci_dev *hdev)
 {
  BT_DBG(%s %p, hdev-name, hdev);
 
 -if (!hci_dev_test_flag(hdev, HCI_UNREGISTER)) {
 +if (!hci_dev_test_flag(hdev, HCI_UNREGISTER) 
 +test_bit(HCI_UP, hdev-flags)) {
  /* Execute vendor specific shutdown routine */
  if (hdev-shutdown)
  hdev-shutdown(hdev);
 
 this is a good catch.
 
 Acked-by: Marcel Holtmann mar...@holtmann.org
 Cc: sta...@vger.kernel.org # 4.0.x
 
 Dave, do you want to take this patch straight into your stable tree?

Please handle this via the bluetooth tree, thanks.
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/