All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] staging: mt7621-pci: avoid to request pci bus resources
@ 2020-11-02 20:25 ` Sergio Paracuellos
  0 siblings, 0 replies; 8+ messages in thread
From: Sergio Paracuellos @ 2020-11-02 20:25 UTC (permalink / raw)
  To: devel; +Cc: gregkh, neil, stable

After upgrading kernel to version 5.9.x the driver was not
working anymore showing the following kernel trace:

...
mt7621-pci 1e140000.pcie: resource collision:
[mem 0x60000000-0x6fffffff] conflicts with pcie@1e140000 [mem 0x60000000-0x6fffffff]
------------[ cut here ]------------
WARNING: CPU: 2 PID: 73 at kernel/resource.c:1400
devm_request_resource+0xfc/0x10c
Modules linked in:
CPU: 2 PID: 73 Comm: kworker/2:1 Not tainted 5.9.2 #0
Workqueue: events deferred_probe_work_func
Stack : 00000000 81590000 807d0a1c 808a0000 8fd49080
        807d0000 00000009 808ac820
        00000001 808338d0 7fff0001 800839dc 00000049
        00000001 8fe51b00 367204ab
        00000000 00000000 807d0a1c 807c0000 00000001
        80082358 8fe50000 00559000
        00000000 8fe519f1 ffffffff 00000005 00000000
        00000001 00000000 807d0000
        00000009 808ac820 00000001 808338d0 00000001
        803bf1b0 00000008 81390008

Call Trace:
[<8000d018>] show_stack+0x30/0x100
[<8032e66c>] dump_stack+0xa4/0xd4
[<8002db1c>] __warn+0xc0/0x134
[<8002dbec>] warn_slowpath_fmt+0x5c/0xac
[<80033b34>] devm_request_resource+0xfc/0x10c
[<80365ff8>] devm_request_pci_bus_resources+0x58/0xdc
[<8048e13c>] mt7621_pci_probe+0x8dc/0xe48
[<803d2140>] platform_drv_probe+0x40/0x94
[<803cfd94>] really_probe+0x108/0x4ec
[<803cd958>] bus_for_each_drv+0x70/0xb0
[<803d0388>] __device_attach+0xec/0x164
[<803cec8c>] bus_probe_device+0xa4/0xc0
[<803cf1c4>] deferred_probe_work_func+0x80/0xc4
[<80048444>] process_one_work+0x260/0x510
[<80048a4c>] worker_thread+0x358/0x5cc
[<8004f7d0>] kthread+0x134/0x13c
[<80007478>] ret_from_kernel_thread+0x14/0x1c
---[ end trace a9dd2e37537510d3 ]---
mt7621-pci 1e140000.pcie: Error requesting resources
mt7621-pci: probe of 1e140000.pcie failed with error -16
...

With commit 669cbc708122 ("PCI: Move DT resource setup into
devm_pci_alloc_host_bridge()"), the DT 'ranges' is parsed and populated
into resources when the host bridge is allocated. The resources are
requested as well, but that happens a 2nd time for this driver in
mt7621_pcie_request_resources(). Hence we should avoid this second
request.

Also, the bus ranges was also populated by default, so we can remove
it from mt7621_pcie_request_resources() to avoid the following trace
if we don't avoid it:

pci_bus 0000:00: busn_res: can not insert [bus 00-ff]
under domain [bus 00-ff] (conflicts with (null) [bus 00-ff])

Function 'mt7621_pcie_request_resources' has been renamed into
'mt7621_pcie_add_resources' which now is a more accurate name
for this function.

Cc: stable@vger.kernel.org#5.9.x-
Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
---
 drivers/staging/mt7621-pci/pci-mt7621.c | 15 +++------------
 1 file changed, 3 insertions(+), 12 deletions(-)

diff --git a/drivers/staging/mt7621-pci/pci-mt7621.c b/drivers/staging/mt7621-pci/pci-mt7621.c
index f961b353c22e..8831db383fad 100644
--- a/drivers/staging/mt7621-pci/pci-mt7621.c
+++ b/drivers/staging/mt7621-pci/pci-mt7621.c
@@ -653,16 +653,11 @@ static int mt7621_pcie_init_virtual_bridges(struct mt7621_pcie *pcie)
 	return 0;
 }
 
-static int mt7621_pcie_request_resources(struct mt7621_pcie *pcie,
-					 struct list_head *res)
+static void mt7621_pcie_add_resources(struct mt7621_pcie *pcie,
+				      struct list_head *res)
 {
-	struct device *dev = pcie->dev;
-
 	pci_add_resource_offset(res, &pcie->io, pcie->offset.io);
 	pci_add_resource_offset(res, &pcie->mem, pcie->offset.mem);
-	pci_add_resource(res, &pcie->busn);
-
-	return devm_request_pci_bus_resources(dev, res);
 }
 
 static int mt7621_pcie_register_host(struct pci_host_bridge *host,
@@ -738,11 +733,7 @@ static int mt7621_pci_probe(struct platform_device *pdev)
 
 	setup_cm_memory_region(pcie);
 
-	err = mt7621_pcie_request_resources(pcie, &res);
-	if (err) {
-		dev_err(dev, "Error requesting resources\n");
-		return err;
-	}
+	mt7621_pcie_add_resources(pcie, &res);
 
 	err = mt7621_pcie_register_host(bridge, &res);
 	if (err) {
-- 
2.25.1


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

* [PATCH] staging: mt7621-pci: avoid to request pci bus resources
@ 2020-11-02 20:25 ` Sergio Paracuellos
  0 siblings, 0 replies; 8+ messages in thread
From: Sergio Paracuellos @ 2020-11-02 20:25 UTC (permalink / raw)
  To: devel; +Cc: neil, gregkh, stable

After upgrading kernel to version 5.9.x the driver was not
working anymore showing the following kernel trace:

...
mt7621-pci 1e140000.pcie: resource collision:
[mem 0x60000000-0x6fffffff] conflicts with pcie@1e140000 [mem 0x60000000-0x6fffffff]
------------[ cut here ]------------
WARNING: CPU: 2 PID: 73 at kernel/resource.c:1400
devm_request_resource+0xfc/0x10c
Modules linked in:
CPU: 2 PID: 73 Comm: kworker/2:1 Not tainted 5.9.2 #0
Workqueue: events deferred_probe_work_func
Stack : 00000000 81590000 807d0a1c 808a0000 8fd49080
        807d0000 00000009 808ac820
        00000001 808338d0 7fff0001 800839dc 00000049
        00000001 8fe51b00 367204ab
        00000000 00000000 807d0a1c 807c0000 00000001
        80082358 8fe50000 00559000
        00000000 8fe519f1 ffffffff 00000005 00000000
        00000001 00000000 807d0000
        00000009 808ac820 00000001 808338d0 00000001
        803bf1b0 00000008 81390008

Call Trace:
[<8000d018>] show_stack+0x30/0x100
[<8032e66c>] dump_stack+0xa4/0xd4
[<8002db1c>] __warn+0xc0/0x134
[<8002dbec>] warn_slowpath_fmt+0x5c/0xac
[<80033b34>] devm_request_resource+0xfc/0x10c
[<80365ff8>] devm_request_pci_bus_resources+0x58/0xdc
[<8048e13c>] mt7621_pci_probe+0x8dc/0xe48
[<803d2140>] platform_drv_probe+0x40/0x94
[<803cfd94>] really_probe+0x108/0x4ec
[<803cd958>] bus_for_each_drv+0x70/0xb0
[<803d0388>] __device_attach+0xec/0x164
[<803cec8c>] bus_probe_device+0xa4/0xc0
[<803cf1c4>] deferred_probe_work_func+0x80/0xc4
[<80048444>] process_one_work+0x260/0x510
[<80048a4c>] worker_thread+0x358/0x5cc
[<8004f7d0>] kthread+0x134/0x13c
[<80007478>] ret_from_kernel_thread+0x14/0x1c
---[ end trace a9dd2e37537510d3 ]---
mt7621-pci 1e140000.pcie: Error requesting resources
mt7621-pci: probe of 1e140000.pcie failed with error -16
...

With commit 669cbc708122 ("PCI: Move DT resource setup into
devm_pci_alloc_host_bridge()"), the DT 'ranges' is parsed and populated
into resources when the host bridge is allocated. The resources are
requested as well, but that happens a 2nd time for this driver in
mt7621_pcie_request_resources(). Hence we should avoid this second
request.

Also, the bus ranges was also populated by default, so we can remove
it from mt7621_pcie_request_resources() to avoid the following trace
if we don't avoid it:

pci_bus 0000:00: busn_res: can not insert [bus 00-ff]
under domain [bus 00-ff] (conflicts with (null) [bus 00-ff])

Function 'mt7621_pcie_request_resources' has been renamed into
'mt7621_pcie_add_resources' which now is a more accurate name
for this function.

Cc: stable@vger.kernel.org#5.9.x-
Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
---
 drivers/staging/mt7621-pci/pci-mt7621.c | 15 +++------------
 1 file changed, 3 insertions(+), 12 deletions(-)

diff --git a/drivers/staging/mt7621-pci/pci-mt7621.c b/drivers/staging/mt7621-pci/pci-mt7621.c
index f961b353c22e..8831db383fad 100644
--- a/drivers/staging/mt7621-pci/pci-mt7621.c
+++ b/drivers/staging/mt7621-pci/pci-mt7621.c
@@ -653,16 +653,11 @@ static int mt7621_pcie_init_virtual_bridges(struct mt7621_pcie *pcie)
 	return 0;
 }
 
-static int mt7621_pcie_request_resources(struct mt7621_pcie *pcie,
-					 struct list_head *res)
+static void mt7621_pcie_add_resources(struct mt7621_pcie *pcie,
+				      struct list_head *res)
 {
-	struct device *dev = pcie->dev;
-
 	pci_add_resource_offset(res, &pcie->io, pcie->offset.io);
 	pci_add_resource_offset(res, &pcie->mem, pcie->offset.mem);
-	pci_add_resource(res, &pcie->busn);
-
-	return devm_request_pci_bus_resources(dev, res);
 }
 
 static int mt7621_pcie_register_host(struct pci_host_bridge *host,
@@ -738,11 +733,7 @@ static int mt7621_pci_probe(struct platform_device *pdev)
 
 	setup_cm_memory_region(pcie);
 
-	err = mt7621_pcie_request_resources(pcie, &res);
-	if (err) {
-		dev_err(dev, "Error requesting resources\n");
-		return err;
-	}
+	mt7621_pcie_add_resources(pcie, &res);
 
 	err = mt7621_pcie_register_host(bridge, &res);
 	if (err) {
-- 
2.25.1

_______________________________________________
devel mailing list
devel@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

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

* Re: [PATCH] staging: mt7621-pci: avoid to request pci bus resources
  2020-11-02 20:25 ` Sergio Paracuellos
@ 2020-11-13 15:26   ` Sergio Paracuellos
  -1 siblings, 0 replies; 8+ messages in thread
From: Sergio Paracuellos @ 2020-11-13 15:26 UTC (permalink / raw)
  To: open list:STAGING SUBSYSTEM; +Cc: Greg KH, NeilBrown, stable

Hi Greg,

On Mon, Nov 2, 2020 at 9:25 PM Sergio Paracuellos
<sergio.paracuellos@gmail.com> wrote:
>
> After upgrading kernel to version 5.9.x the driver was not
> working anymore showing the following kernel trace:
>
> ...
> mt7621-pci 1e140000.pcie: resource collision:
> [mem 0x60000000-0x6fffffff] conflicts with pcie@1e140000 [mem 0x60000000-0x6fffffff]
> ------------[ cut here ]------------
> WARNING: CPU: 2 PID: 73 at kernel/resource.c:1400
> devm_request_resource+0xfc/0x10c
> Modules linked in:
> CPU: 2 PID: 73 Comm: kworker/2:1 Not tainted 5.9.2 #0
> Workqueue: events deferred_probe_work_func
> Stack : 00000000 81590000 807d0a1c 808a0000 8fd49080
>         807d0000 00000009 808ac820
>         00000001 808338d0 7fff0001 800839dc 00000049
>         00000001 8fe51b00 367204ab
>         00000000 00000000 807d0a1c 807c0000 00000001
>         80082358 8fe50000 00559000
>         00000000 8fe519f1 ffffffff 00000005 00000000
>         00000001 00000000 807d0000
>         00000009 808ac820 00000001 808338d0 00000001
>         803bf1b0 00000008 81390008
>
> Call Trace:
> [<8000d018>] show_stack+0x30/0x100
> [<8032e66c>] dump_stack+0xa4/0xd4
> [<8002db1c>] __warn+0xc0/0x134
> [<8002dbec>] warn_slowpath_fmt+0x5c/0xac
> [<80033b34>] devm_request_resource+0xfc/0x10c
> [<80365ff8>] devm_request_pci_bus_resources+0x58/0xdc
> [<8048e13c>] mt7621_pci_probe+0x8dc/0xe48
> [<803d2140>] platform_drv_probe+0x40/0x94
> [<803cfd94>] really_probe+0x108/0x4ec
> [<803cd958>] bus_for_each_drv+0x70/0xb0
> [<803d0388>] __device_attach+0xec/0x164
> [<803cec8c>] bus_probe_device+0xa4/0xc0
> [<803cf1c4>] deferred_probe_work_func+0x80/0xc4
> [<80048444>] process_one_work+0x260/0x510
> [<80048a4c>] worker_thread+0x358/0x5cc
> [<8004f7d0>] kthread+0x134/0x13c
> [<80007478>] ret_from_kernel_thread+0x14/0x1c
> ---[ end trace a9dd2e37537510d3 ]---
> mt7621-pci 1e140000.pcie: Error requesting resources
> mt7621-pci: probe of 1e140000.pcie failed with error -16
> ...
>
> With commit 669cbc708122 ("PCI: Move DT resource setup into
> devm_pci_alloc_host_bridge()"), the DT 'ranges' is parsed and populated
> into resources when the host bridge is allocated. The resources are
> requested as well, but that happens a 2nd time for this driver in
> mt7621_pcie_request_resources(). Hence we should avoid this second
> request.
>
> Also, the bus ranges was also populated by default, so we can remove
> it from mt7621_pcie_request_resources() to avoid the following trace
> if we don't avoid it:
>
> pci_bus 0000:00: busn_res: can not insert [bus 00-ff]
> under domain [bus 00-ff] (conflicts with (null) [bus 00-ff])
>
> Function 'mt7621_pcie_request_resources' has been renamed into
> 'mt7621_pcie_add_resources' which now is a more accurate name
> for this function.
>
> Cc: stable@vger.kernel.org#5.9.x-
> Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>

This patch have to be added also for stable 5.9.x because driver is
broken in all kernel 5.9.x releases. I noticed a new stable release
comes three days ago (5.9.8) and this was not added. I was wondering
if the way I marked this patch to be included is wrong.

Thanks in advance for your time.

Best regards,
    Sergio Paracuellos

> ---
>  drivers/staging/mt7621-pci/pci-mt7621.c | 15 +++------------
>  1 file changed, 3 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/staging/mt7621-pci/pci-mt7621.c b/drivers/staging/mt7621-pci/pci-mt7621.c
> index f961b353c22e..8831db383fad 100644
> --- a/drivers/staging/mt7621-pci/pci-mt7621.c
> +++ b/drivers/staging/mt7621-pci/pci-mt7621.c
> @@ -653,16 +653,11 @@ static int mt7621_pcie_init_virtual_bridges(struct mt7621_pcie *pcie)
>         return 0;
>  }
>
> -static int mt7621_pcie_request_resources(struct mt7621_pcie *pcie,
> -                                        struct list_head *res)
> +static void mt7621_pcie_add_resources(struct mt7621_pcie *pcie,
> +                                     struct list_head *res)
>  {
> -       struct device *dev = pcie->dev;
> -
>         pci_add_resource_offset(res, &pcie->io, pcie->offset.io);
>         pci_add_resource_offset(res, &pcie->mem, pcie->offset.mem);
> -       pci_add_resource(res, &pcie->busn);
> -
> -       return devm_request_pci_bus_resources(dev, res);
>  }
>
>  static int mt7621_pcie_register_host(struct pci_host_bridge *host,
> @@ -738,11 +733,7 @@ static int mt7621_pci_probe(struct platform_device *pdev)
>
>         setup_cm_memory_region(pcie);
>
> -       err = mt7621_pcie_request_resources(pcie, &res);
> -       if (err) {
> -               dev_err(dev, "Error requesting resources\n");
> -               return err;
> -       }
> +       mt7621_pcie_add_resources(pcie, &res);
>
>         err = mt7621_pcie_register_host(bridge, &res);
>         if (err) {
> --
> 2.25.1
>

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

* Re: [PATCH] staging: mt7621-pci: avoid to request pci bus resources
@ 2020-11-13 15:26   ` Sergio Paracuellos
  0 siblings, 0 replies; 8+ messages in thread
From: Sergio Paracuellos @ 2020-11-13 15:26 UTC (permalink / raw)
  To: open list:STAGING SUBSYSTEM; +Cc: NeilBrown, Greg KH, stable

Hi Greg,

On Mon, Nov 2, 2020 at 9:25 PM Sergio Paracuellos
<sergio.paracuellos@gmail.com> wrote:
>
> After upgrading kernel to version 5.9.x the driver was not
> working anymore showing the following kernel trace:
>
> ...
> mt7621-pci 1e140000.pcie: resource collision:
> [mem 0x60000000-0x6fffffff] conflicts with pcie@1e140000 [mem 0x60000000-0x6fffffff]
> ------------[ cut here ]------------
> WARNING: CPU: 2 PID: 73 at kernel/resource.c:1400
> devm_request_resource+0xfc/0x10c
> Modules linked in:
> CPU: 2 PID: 73 Comm: kworker/2:1 Not tainted 5.9.2 #0
> Workqueue: events deferred_probe_work_func
> Stack : 00000000 81590000 807d0a1c 808a0000 8fd49080
>         807d0000 00000009 808ac820
>         00000001 808338d0 7fff0001 800839dc 00000049
>         00000001 8fe51b00 367204ab
>         00000000 00000000 807d0a1c 807c0000 00000001
>         80082358 8fe50000 00559000
>         00000000 8fe519f1 ffffffff 00000005 00000000
>         00000001 00000000 807d0000
>         00000009 808ac820 00000001 808338d0 00000001
>         803bf1b0 00000008 81390008
>
> Call Trace:
> [<8000d018>] show_stack+0x30/0x100
> [<8032e66c>] dump_stack+0xa4/0xd4
> [<8002db1c>] __warn+0xc0/0x134
> [<8002dbec>] warn_slowpath_fmt+0x5c/0xac
> [<80033b34>] devm_request_resource+0xfc/0x10c
> [<80365ff8>] devm_request_pci_bus_resources+0x58/0xdc
> [<8048e13c>] mt7621_pci_probe+0x8dc/0xe48
> [<803d2140>] platform_drv_probe+0x40/0x94
> [<803cfd94>] really_probe+0x108/0x4ec
> [<803cd958>] bus_for_each_drv+0x70/0xb0
> [<803d0388>] __device_attach+0xec/0x164
> [<803cec8c>] bus_probe_device+0xa4/0xc0
> [<803cf1c4>] deferred_probe_work_func+0x80/0xc4
> [<80048444>] process_one_work+0x260/0x510
> [<80048a4c>] worker_thread+0x358/0x5cc
> [<8004f7d0>] kthread+0x134/0x13c
> [<80007478>] ret_from_kernel_thread+0x14/0x1c
> ---[ end trace a9dd2e37537510d3 ]---
> mt7621-pci 1e140000.pcie: Error requesting resources
> mt7621-pci: probe of 1e140000.pcie failed with error -16
> ...
>
> With commit 669cbc708122 ("PCI: Move DT resource setup into
> devm_pci_alloc_host_bridge()"), the DT 'ranges' is parsed and populated
> into resources when the host bridge is allocated. The resources are
> requested as well, but that happens a 2nd time for this driver in
> mt7621_pcie_request_resources(). Hence we should avoid this second
> request.
>
> Also, the bus ranges was also populated by default, so we can remove
> it from mt7621_pcie_request_resources() to avoid the following trace
> if we don't avoid it:
>
> pci_bus 0000:00: busn_res: can not insert [bus 00-ff]
> under domain [bus 00-ff] (conflicts with (null) [bus 00-ff])
>
> Function 'mt7621_pcie_request_resources' has been renamed into
> 'mt7621_pcie_add_resources' which now is a more accurate name
> for this function.
>
> Cc: stable@vger.kernel.org#5.9.x-
> Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>

This patch have to be added also for stable 5.9.x because driver is
broken in all kernel 5.9.x releases. I noticed a new stable release
comes three days ago (5.9.8) and this was not added. I was wondering
if the way I marked this patch to be included is wrong.

Thanks in advance for your time.

Best regards,
    Sergio Paracuellos

> ---
>  drivers/staging/mt7621-pci/pci-mt7621.c | 15 +++------------
>  1 file changed, 3 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/staging/mt7621-pci/pci-mt7621.c b/drivers/staging/mt7621-pci/pci-mt7621.c
> index f961b353c22e..8831db383fad 100644
> --- a/drivers/staging/mt7621-pci/pci-mt7621.c
> +++ b/drivers/staging/mt7621-pci/pci-mt7621.c
> @@ -653,16 +653,11 @@ static int mt7621_pcie_init_virtual_bridges(struct mt7621_pcie *pcie)
>         return 0;
>  }
>
> -static int mt7621_pcie_request_resources(struct mt7621_pcie *pcie,
> -                                        struct list_head *res)
> +static void mt7621_pcie_add_resources(struct mt7621_pcie *pcie,
> +                                     struct list_head *res)
>  {
> -       struct device *dev = pcie->dev;
> -
>         pci_add_resource_offset(res, &pcie->io, pcie->offset.io);
>         pci_add_resource_offset(res, &pcie->mem, pcie->offset.mem);
> -       pci_add_resource(res, &pcie->busn);
> -
> -       return devm_request_pci_bus_resources(dev, res);
>  }
>
>  static int mt7621_pcie_register_host(struct pci_host_bridge *host,
> @@ -738,11 +733,7 @@ static int mt7621_pci_probe(struct platform_device *pdev)
>
>         setup_cm_memory_region(pcie);
>
> -       err = mt7621_pcie_request_resources(pcie, &res);
> -       if (err) {
> -               dev_err(dev, "Error requesting resources\n");
> -               return err;
> -       }
> +       mt7621_pcie_add_resources(pcie, &res);
>
>         err = mt7621_pcie_register_host(bridge, &res);
>         if (err) {
> --
> 2.25.1
>
_______________________________________________
devel mailing list
devel@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

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

* Re: [PATCH] staging: mt7621-pci: avoid to request pci bus resources
  2020-11-13 15:26   ` Sergio Paracuellos
@ 2020-11-13 23:20     ` Greg KH
  -1 siblings, 0 replies; 8+ messages in thread
From: Greg KH @ 2020-11-13 23:20 UTC (permalink / raw)
  To: Sergio Paracuellos; +Cc: open list:STAGING SUBSYSTEM, NeilBrown, stable

On Fri, Nov 13, 2020 at 04:26:08PM +0100, Sergio Paracuellos wrote:
> Hi Greg,
> 
> On Mon, Nov 2, 2020 at 9:25 PM Sergio Paracuellos
> <sergio.paracuellos@gmail.com> wrote:
> >
> > After upgrading kernel to version 5.9.x the driver was not
> > working anymore showing the following kernel trace:
> >
> > ...
> > mt7621-pci 1e140000.pcie: resource collision:
> > [mem 0x60000000-0x6fffffff] conflicts with pcie@1e140000 [mem 0x60000000-0x6fffffff]
> > ------------[ cut here ]------------
> > WARNING: CPU: 2 PID: 73 at kernel/resource.c:1400
> > devm_request_resource+0xfc/0x10c
> > Modules linked in:
> > CPU: 2 PID: 73 Comm: kworker/2:1 Not tainted 5.9.2 #0
> > Workqueue: events deferred_probe_work_func
> > Stack : 00000000 81590000 807d0a1c 808a0000 8fd49080
> >         807d0000 00000009 808ac820
> >         00000001 808338d0 7fff0001 800839dc 00000049
> >         00000001 8fe51b00 367204ab
> >         00000000 00000000 807d0a1c 807c0000 00000001
> >         80082358 8fe50000 00559000
> >         00000000 8fe519f1 ffffffff 00000005 00000000
> >         00000001 00000000 807d0000
> >         00000009 808ac820 00000001 808338d0 00000001
> >         803bf1b0 00000008 81390008
> >
> > Call Trace:
> > [<8000d018>] show_stack+0x30/0x100
> > [<8032e66c>] dump_stack+0xa4/0xd4
> > [<8002db1c>] __warn+0xc0/0x134
> > [<8002dbec>] warn_slowpath_fmt+0x5c/0xac
> > [<80033b34>] devm_request_resource+0xfc/0x10c
> > [<80365ff8>] devm_request_pci_bus_resources+0x58/0xdc
> > [<8048e13c>] mt7621_pci_probe+0x8dc/0xe48
> > [<803d2140>] platform_drv_probe+0x40/0x94
> > [<803cfd94>] really_probe+0x108/0x4ec
> > [<803cd958>] bus_for_each_drv+0x70/0xb0
> > [<803d0388>] __device_attach+0xec/0x164
> > [<803cec8c>] bus_probe_device+0xa4/0xc0
> > [<803cf1c4>] deferred_probe_work_func+0x80/0xc4
> > [<80048444>] process_one_work+0x260/0x510
> > [<80048a4c>] worker_thread+0x358/0x5cc
> > [<8004f7d0>] kthread+0x134/0x13c
> > [<80007478>] ret_from_kernel_thread+0x14/0x1c
> > ---[ end trace a9dd2e37537510d3 ]---
> > mt7621-pci 1e140000.pcie: Error requesting resources
> > mt7621-pci: probe of 1e140000.pcie failed with error -16
> > ...
> >
> > With commit 669cbc708122 ("PCI: Move DT resource setup into
> > devm_pci_alloc_host_bridge()"), the DT 'ranges' is parsed and populated
> > into resources when the host bridge is allocated. The resources are
> > requested as well, but that happens a 2nd time for this driver in
> > mt7621_pcie_request_resources(). Hence we should avoid this second
> > request.
> >
> > Also, the bus ranges was also populated by default, so we can remove
> > it from mt7621_pcie_request_resources() to avoid the following trace
> > if we don't avoid it:
> >
> > pci_bus 0000:00: busn_res: can not insert [bus 00-ff]
> > under domain [bus 00-ff] (conflicts with (null) [bus 00-ff])
> >
> > Function 'mt7621_pcie_request_resources' has been renamed into
> > 'mt7621_pcie_add_resources' which now is a more accurate name
> > for this function.
> >
> > Cc: stable@vger.kernel.org#5.9.x-
> > Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
> 
> This patch have to be added also for stable 5.9.x because driver is
> broken in all kernel 5.9.x releases. I noticed a new stable release
> comes three days ago (5.9.8) and this was not added. I was wondering
> if the way I marked this patch to be included is wrong.

Is this patch in Linus's tree yet?  If not, we can't add it to any
stable tree.  That has to happen first.

thanks,

greg k-h

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

* Re: [PATCH] staging: mt7621-pci: avoid to request pci bus resources
@ 2020-11-13 23:20     ` Greg KH
  0 siblings, 0 replies; 8+ messages in thread
From: Greg KH @ 2020-11-13 23:20 UTC (permalink / raw)
  To: Sergio Paracuellos; +Cc: open list:STAGING SUBSYSTEM, NeilBrown, stable

On Fri, Nov 13, 2020 at 04:26:08PM +0100, Sergio Paracuellos wrote:
> Hi Greg,
> 
> On Mon, Nov 2, 2020 at 9:25 PM Sergio Paracuellos
> <sergio.paracuellos@gmail.com> wrote:
> >
> > After upgrading kernel to version 5.9.x the driver was not
> > working anymore showing the following kernel trace:
> >
> > ...
> > mt7621-pci 1e140000.pcie: resource collision:
> > [mem 0x60000000-0x6fffffff] conflicts with pcie@1e140000 [mem 0x60000000-0x6fffffff]
> > ------------[ cut here ]------------
> > WARNING: CPU: 2 PID: 73 at kernel/resource.c:1400
> > devm_request_resource+0xfc/0x10c
> > Modules linked in:
> > CPU: 2 PID: 73 Comm: kworker/2:1 Not tainted 5.9.2 #0
> > Workqueue: events deferred_probe_work_func
> > Stack : 00000000 81590000 807d0a1c 808a0000 8fd49080
> >         807d0000 00000009 808ac820
> >         00000001 808338d0 7fff0001 800839dc 00000049
> >         00000001 8fe51b00 367204ab
> >         00000000 00000000 807d0a1c 807c0000 00000001
> >         80082358 8fe50000 00559000
> >         00000000 8fe519f1 ffffffff 00000005 00000000
> >         00000001 00000000 807d0000
> >         00000009 808ac820 00000001 808338d0 00000001
> >         803bf1b0 00000008 81390008
> >
> > Call Trace:
> > [<8000d018>] show_stack+0x30/0x100
> > [<8032e66c>] dump_stack+0xa4/0xd4
> > [<8002db1c>] __warn+0xc0/0x134
> > [<8002dbec>] warn_slowpath_fmt+0x5c/0xac
> > [<80033b34>] devm_request_resource+0xfc/0x10c
> > [<80365ff8>] devm_request_pci_bus_resources+0x58/0xdc
> > [<8048e13c>] mt7621_pci_probe+0x8dc/0xe48
> > [<803d2140>] platform_drv_probe+0x40/0x94
> > [<803cfd94>] really_probe+0x108/0x4ec
> > [<803cd958>] bus_for_each_drv+0x70/0xb0
> > [<803d0388>] __device_attach+0xec/0x164
> > [<803cec8c>] bus_probe_device+0xa4/0xc0
> > [<803cf1c4>] deferred_probe_work_func+0x80/0xc4
> > [<80048444>] process_one_work+0x260/0x510
> > [<80048a4c>] worker_thread+0x358/0x5cc
> > [<8004f7d0>] kthread+0x134/0x13c
> > [<80007478>] ret_from_kernel_thread+0x14/0x1c
> > ---[ end trace a9dd2e37537510d3 ]---
> > mt7621-pci 1e140000.pcie: Error requesting resources
> > mt7621-pci: probe of 1e140000.pcie failed with error -16
> > ...
> >
> > With commit 669cbc708122 ("PCI: Move DT resource setup into
> > devm_pci_alloc_host_bridge()"), the DT 'ranges' is parsed and populated
> > into resources when the host bridge is allocated. The resources are
> > requested as well, but that happens a 2nd time for this driver in
> > mt7621_pcie_request_resources(). Hence we should avoid this second
> > request.
> >
> > Also, the bus ranges was also populated by default, so we can remove
> > it from mt7621_pcie_request_resources() to avoid the following trace
> > if we don't avoid it:
> >
> > pci_bus 0000:00: busn_res: can not insert [bus 00-ff]
> > under domain [bus 00-ff] (conflicts with (null) [bus 00-ff])
> >
> > Function 'mt7621_pcie_request_resources' has been renamed into
> > 'mt7621_pcie_add_resources' which now is a more accurate name
> > for this function.
> >
> > Cc: stable@vger.kernel.org#5.9.x-
> > Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
> 
> This patch have to be added also for stable 5.9.x because driver is
> broken in all kernel 5.9.x releases. I noticed a new stable release
> comes three days ago (5.9.8) and this was not added. I was wondering
> if the way I marked this patch to be included is wrong.

Is this patch in Linus's tree yet?  If not, we can't add it to any
stable tree.  That has to happen first.

thanks,

greg k-h
_______________________________________________
devel mailing list
devel@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

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

* Re: [PATCH] staging: mt7621-pci: avoid to request pci bus resources
  2020-11-13 23:20     ` Greg KH
@ 2020-11-14  7:24       ` Sergio Paracuellos
  -1 siblings, 0 replies; 8+ messages in thread
From: Sergio Paracuellos @ 2020-11-14  7:24 UTC (permalink / raw)
  To: Greg KH; +Cc: open list:STAGING SUBSYSTEM, NeilBrown, stable

On Sat, Nov 14, 2020 at 12:19 AM Greg KH <gregkh@linuxfoundation.org> wrote:
>
> On Fri, Nov 13, 2020 at 04:26:08PM +0100, Sergio Paracuellos wrote:
> > Hi Greg,
> >
> > On Mon, Nov 2, 2020 at 9:25 PM Sergio Paracuellos
> > <sergio.paracuellos@gmail.com> wrote:
> > >
> > > After upgrading kernel to version 5.9.x the driver was not
> > > working anymore showing the following kernel trace:
> > >
> > > ...
> > > mt7621-pci 1e140000.pcie: resource collision:
> > > [mem 0x60000000-0x6fffffff] conflicts with pcie@1e140000 [mem 0x60000000-0x6fffffff]
> > > ------------[ cut here ]------------
> > > WARNING: CPU: 2 PID: 73 at kernel/resource.c:1400
> > > devm_request_resource+0xfc/0x10c
> > > Modules linked in:
> > > CPU: 2 PID: 73 Comm: kworker/2:1 Not tainted 5.9.2 #0
> > > Workqueue: events deferred_probe_work_func
> > > Stack : 00000000 81590000 807d0a1c 808a0000 8fd49080
> > >         807d0000 00000009 808ac820
> > >         00000001 808338d0 7fff0001 800839dc 00000049
> > >         00000001 8fe51b00 367204ab
> > >         00000000 00000000 807d0a1c 807c0000 00000001
> > >         80082358 8fe50000 00559000
> > >         00000000 8fe519f1 ffffffff 00000005 00000000
> > >         00000001 00000000 807d0000
> > >         00000009 808ac820 00000001 808338d0 00000001
> > >         803bf1b0 00000008 81390008
> > >
> > > Call Trace:
> > > [<8000d018>] show_stack+0x30/0x100
> > > [<8032e66c>] dump_stack+0xa4/0xd4
> > > [<8002db1c>] __warn+0xc0/0x134
> > > [<8002dbec>] warn_slowpath_fmt+0x5c/0xac
> > > [<80033b34>] devm_request_resource+0xfc/0x10c
> > > [<80365ff8>] devm_request_pci_bus_resources+0x58/0xdc
> > > [<8048e13c>] mt7621_pci_probe+0x8dc/0xe48
> > > [<803d2140>] platform_drv_probe+0x40/0x94
> > > [<803cfd94>] really_probe+0x108/0x4ec
> > > [<803cd958>] bus_for_each_drv+0x70/0xb0
> > > [<803d0388>] __device_attach+0xec/0x164
> > > [<803cec8c>] bus_probe_device+0xa4/0xc0
> > > [<803cf1c4>] deferred_probe_work_func+0x80/0xc4
> > > [<80048444>] process_one_work+0x260/0x510
> > > [<80048a4c>] worker_thread+0x358/0x5cc
> > > [<8004f7d0>] kthread+0x134/0x13c
> > > [<80007478>] ret_from_kernel_thread+0x14/0x1c
> > > ---[ end trace a9dd2e37537510d3 ]---
> > > mt7621-pci 1e140000.pcie: Error requesting resources
> > > mt7621-pci: probe of 1e140000.pcie failed with error -16
> > > ...
> > >
> > > With commit 669cbc708122 ("PCI: Move DT resource setup into
> > > devm_pci_alloc_host_bridge()"), the DT 'ranges' is parsed and populated
> > > into resources when the host bridge is allocated. The resources are
> > > requested as well, but that happens a 2nd time for this driver in
> > > mt7621_pcie_request_resources(). Hence we should avoid this second
> > > request.
> > >
> > > Also, the bus ranges was also populated by default, so we can remove
> > > it from mt7621_pcie_request_resources() to avoid the following trace
> > > if we don't avoid it:
> > >
> > > pci_bus 0000:00: busn_res: can not insert [bus 00-ff]
> > > under domain [bus 00-ff] (conflicts with (null) [bus 00-ff])
> > >
> > > Function 'mt7621_pcie_request_resources' has been renamed into
> > > 'mt7621_pcie_add_resources' which now is a more accurate name
> > > for this function.
> > >
> > > Cc: stable@vger.kernel.org#5.9.x-
> > > Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
> >
> > This patch have to be added also for stable 5.9.x because driver is
> > broken in all kernel 5.9.x releases. I noticed a new stable release
> > comes three days ago (5.9.8) and this was not added. I was wondering
> > if the way I marked this patch to be included is wrong.
>
> Is this patch in Linus's tree yet?  If not, we can't add it to any
> stable tree.  That has to happen first.
>

Ahh, ok I see. No, it is not in the linux tree yet. It is still in
your staging-linus branch.
I did not know that, thanks for let me know .

> thanks,
>
> greg k-h

Best regards,
   Sergio Paracuellos

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

* Re: [PATCH] staging: mt7621-pci: avoid to request pci bus resources
@ 2020-11-14  7:24       ` Sergio Paracuellos
  0 siblings, 0 replies; 8+ messages in thread
From: Sergio Paracuellos @ 2020-11-14  7:24 UTC (permalink / raw)
  To: Greg KH; +Cc: open list:STAGING SUBSYSTEM, NeilBrown, stable

On Sat, Nov 14, 2020 at 12:19 AM Greg KH <gregkh@linuxfoundation.org> wrote:
>
> On Fri, Nov 13, 2020 at 04:26:08PM +0100, Sergio Paracuellos wrote:
> > Hi Greg,
> >
> > On Mon, Nov 2, 2020 at 9:25 PM Sergio Paracuellos
> > <sergio.paracuellos@gmail.com> wrote:
> > >
> > > After upgrading kernel to version 5.9.x the driver was not
> > > working anymore showing the following kernel trace:
> > >
> > > ...
> > > mt7621-pci 1e140000.pcie: resource collision:
> > > [mem 0x60000000-0x6fffffff] conflicts with pcie@1e140000 [mem 0x60000000-0x6fffffff]
> > > ------------[ cut here ]------------
> > > WARNING: CPU: 2 PID: 73 at kernel/resource.c:1400
> > > devm_request_resource+0xfc/0x10c
> > > Modules linked in:
> > > CPU: 2 PID: 73 Comm: kworker/2:1 Not tainted 5.9.2 #0
> > > Workqueue: events deferred_probe_work_func
> > > Stack : 00000000 81590000 807d0a1c 808a0000 8fd49080
> > >         807d0000 00000009 808ac820
> > >         00000001 808338d0 7fff0001 800839dc 00000049
> > >         00000001 8fe51b00 367204ab
> > >         00000000 00000000 807d0a1c 807c0000 00000001
> > >         80082358 8fe50000 00559000
> > >         00000000 8fe519f1 ffffffff 00000005 00000000
> > >         00000001 00000000 807d0000
> > >         00000009 808ac820 00000001 808338d0 00000001
> > >         803bf1b0 00000008 81390008
> > >
> > > Call Trace:
> > > [<8000d018>] show_stack+0x30/0x100
> > > [<8032e66c>] dump_stack+0xa4/0xd4
> > > [<8002db1c>] __warn+0xc0/0x134
> > > [<8002dbec>] warn_slowpath_fmt+0x5c/0xac
> > > [<80033b34>] devm_request_resource+0xfc/0x10c
> > > [<80365ff8>] devm_request_pci_bus_resources+0x58/0xdc
> > > [<8048e13c>] mt7621_pci_probe+0x8dc/0xe48
> > > [<803d2140>] platform_drv_probe+0x40/0x94
> > > [<803cfd94>] really_probe+0x108/0x4ec
> > > [<803cd958>] bus_for_each_drv+0x70/0xb0
> > > [<803d0388>] __device_attach+0xec/0x164
> > > [<803cec8c>] bus_probe_device+0xa4/0xc0
> > > [<803cf1c4>] deferred_probe_work_func+0x80/0xc4
> > > [<80048444>] process_one_work+0x260/0x510
> > > [<80048a4c>] worker_thread+0x358/0x5cc
> > > [<8004f7d0>] kthread+0x134/0x13c
> > > [<80007478>] ret_from_kernel_thread+0x14/0x1c
> > > ---[ end trace a9dd2e37537510d3 ]---
> > > mt7621-pci 1e140000.pcie: Error requesting resources
> > > mt7621-pci: probe of 1e140000.pcie failed with error -16
> > > ...
> > >
> > > With commit 669cbc708122 ("PCI: Move DT resource setup into
> > > devm_pci_alloc_host_bridge()"), the DT 'ranges' is parsed and populated
> > > into resources when the host bridge is allocated. The resources are
> > > requested as well, but that happens a 2nd time for this driver in
> > > mt7621_pcie_request_resources(). Hence we should avoid this second
> > > request.
> > >
> > > Also, the bus ranges was also populated by default, so we can remove
> > > it from mt7621_pcie_request_resources() to avoid the following trace
> > > if we don't avoid it:
> > >
> > > pci_bus 0000:00: busn_res: can not insert [bus 00-ff]
> > > under domain [bus 00-ff] (conflicts with (null) [bus 00-ff])
> > >
> > > Function 'mt7621_pcie_request_resources' has been renamed into
> > > 'mt7621_pcie_add_resources' which now is a more accurate name
> > > for this function.
> > >
> > > Cc: stable@vger.kernel.org#5.9.x-
> > > Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
> >
> > This patch have to be added also for stable 5.9.x because driver is
> > broken in all kernel 5.9.x releases. I noticed a new stable release
> > comes three days ago (5.9.8) and this was not added. I was wondering
> > if the way I marked this patch to be included is wrong.
>
> Is this patch in Linus's tree yet?  If not, we can't add it to any
> stable tree.  That has to happen first.
>

Ahh, ok I see. No, it is not in the linux tree yet. It is still in
your staging-linus branch.
I did not know that, thanks for let me know .

> thanks,
>
> greg k-h

Best regards,
   Sergio Paracuellos
_______________________________________________
devel mailing list
devel@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

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

end of thread, other threads:[~2020-11-14  7:24 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-02 20:25 [PATCH] staging: mt7621-pci: avoid to request pci bus resources Sergio Paracuellos
2020-11-02 20:25 ` Sergio Paracuellos
2020-11-13 15:26 ` Sergio Paracuellos
2020-11-13 15:26   ` Sergio Paracuellos
2020-11-13 23:20   ` Greg KH
2020-11-13 23:20     ` Greg KH
2020-11-14  7:24     ` Sergio Paracuellos
2020-11-14  7:24       ` Sergio Paracuellos

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.