>-----Original Message----- >From: Lorenzo Bianconi <lorenzo@xxxxxxxxxx> >Sent: Monday, June 3, 2024 1:24 PM >To: Sunil Kovvuri Goutham <sgoutham@xxxxxxxxxxx> >Cc: netdev@xxxxxxxxxxxxxxx; nbd@xxxxxxxx; lorenzo.bianconi83@xxxxxxxxx; >davem@xxxxxxxxxxxxx; edumazet@xxxxxxxxxx; kuba@xxxxxxxxxx; >pabeni@xxxxxxxxxx; conor@xxxxxxxxxx; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; >robh+dt@xxxxxxxxxx; krzysztof.kozlowski+dt@xxxxxxxxxx; conor+dt@xxxxxxxxxx; >devicetree@xxxxxxxxxxxxxxx; catalin.marinas@xxxxxxx; will@xxxxxxxxxx; >upstream@xxxxxxxxxx; angelogioacchino.delregno@xxxxxxxxxxxxx; >benjamin.larsson@xxxxxxxxxx >Subject: Re: [EXTERNAL] [PATCH net-next 3/3] net: airoha: Introduce ethernet >support for EN7581 SoC > >> >+ >> >+ q = ð->q_tx[qid]; >> >+ spin_lock_bh(&q->lock); >> >> Same here, is this lock needed ? >> If yes, can you please elaborate why. > >ndo_start_xmit callback can run in parallel with airoha_qdma_tx_napi_poll() > Okay. >> >> >+ >> >+ if (q->queued + nr_frags > q->ndesc) { >> >+ /* not enough space in the queue */ >> >+ spin_unlock_bh(&q->lock); >> >+ return NETDEV_TX_BUSY; >> >+ } >> >+ >> >> I do not see netif_set_tso_max_segs() being set, so HW doesn't have >> any limit wrt number of TSO segs and number of fragments in skb, is it ?? > >I do not think there is any specific limitation for it > Okay. >> >> ........... >> >+static int airoha_probe(struct platform_device *pdev) { >> >+ struct device_node *np = pdev->dev.of_node; >> >+ struct net_device *dev; >> >+ struct airoha_eth *eth; >> >+ int err; >> >+ >> >+ dev = devm_alloc_etherdev_mqs(&pdev->dev, sizeof(*eth), >> >+ AIROHA_NUM_TX_RING, >> >AIROHA_NUM_RX_RING); >> >> Always 32 queues, even if kernel is booted with less number cores ? > >ethtool is not supported yet, I will add it with followup patches > I meant by default. Wouldn't it better to check online cpu count ? If system is booted with just 10 cores, then why initialize 32 cores is my point. Thanks, Sunil.