Messages in this thread | | | Date | Wed, 27 Oct 2010 23:35:29 -0700 | From | Divy Le Ray <> | Subject | Re: [PATCH] cxgb3: fix crash due to manipulating queues before registration |
| |
On 10/27/2010 10:06 PM, Nishanth Aravamudan wrote: > Hi Eric, > > Something like the following?: > > Thanks, > Nish > > > Along the same lines as "cxgb4: fix crash due to manipulating queues > before registration" (8f6d9f40476895571df039b6f1f5230ec7faebad), before > commit "net: allocate tx queues in register_netdevice" > netif_tx_stop_all_queues and related functions could be used between > device allocation and registration but now only after registration. > cxgb4 has such a call before registration and crashes now. Move it > after register_netdev. > > Signed-off-by: Nishanth Aravamudan<nacc@us.ibm.com>
Acked-by: Divy Le Ray <divy@chelsio.com>
> Cc: eric.dumazet@gmail.com > Cc: sonnyrao@us.ibm.com > Cc: Divy Le Ray<divy@chelsio.com> > Cc: Dimitris Michailidis<dm@chelsio.com> > Cc: netdev@vger.kernel.org > Cc: linux-kernel@vger.kernel.org > --- > drivers/net/cxgb3/cxgb3_main.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c > index 4e3c123..96c70a5 100644 > --- a/drivers/net/cxgb3/cxgb3_main.c > +++ b/drivers/net/cxgb3/cxgb3_main.c > @@ -3301,7 +3301,6 @@ static int __devinit init_one(struct pci_dev *pdev, > pi->rx_offload = T3_RX_CSUM | T3_LRO; > pi->port_id = i; > netif_carrier_off(netdev); > - netif_tx_stop_all_queues(netdev); > netdev->irq = pdev->irq; > netdev->mem_start = mmio_start; > netdev->mem_end = mmio_start + mmio_len - 1; > @@ -3342,6 +3341,7 @@ static int __devinit init_one(struct pci_dev *pdev, > adapter->name = adapter->port[i]->name; > > __set_bit(i,&adapter->registered_device_map); > + netif_tx_stop_all_queues(adapter->port[i]); > } > } > if (!adapter->registered_device_map) {
| |