lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <a61fb7b1-5f55-9141-3826-495947eb93de@linux.intel.com> Date: Thu, 27 Oct 2022 15:57:02 +0300 (EEST) From: Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com> To: Sreehari Kancharla <sreehari.kancharla@...ux.intel.com> cc: Netdev <netdev@...r.kernel.org>, kuba@...nel.org, davem@...emloft.net, johannes@...solutions.net, ryazanov.s.a@...il.com, loic.poulain@...aro.org, m.chetan.kumar@...el.com, chandrashekar.devegowda@...el.com, linuxwwan@...el.com, chiranjeevi.rapolu@...ux.intel.com, haijun.liu@...iatek.com, ricardo.martinez@...ux.intel.com, Andy Shevchenko <andriy.shevchenko@...ux.intel.com>, dinesh.sharma@...el.com, moises.veleta@...el.com, sreehari.kancharla@...el.com Subject: Re: [PATCH net-next v2 2/2] net: wwan: t7xx: Add NAPI support On Thu, 27 Oct 2022, Sreehari Kancharla wrote: > From: Haijun Liu <haijun.liu@...iatek.com> > > Replace the work queue based RX flow with a NAPI implementation > Remove rx_thread and dpmaif_rxq_work. > Enable GRO on RX path. > Introduce dummy network device. its responsibility is > - Binds one NAPI object for each DL HW queue and acts as > the agent of all those network devices. > - Use NAPI object to poll DL packets. > - Helps to dispatch each packet to the network interface. > > Signed-off-by: Haijun Liu <haijun.liu@...iatek.com> > Co-developed-by: Sreehari Kancharla <sreehari.kancharla@...ux.intel.com> > Signed-off-by: Sreehari Kancharla <sreehari.kancharla@...ux.intel.com> > Signed-off-by: Chandrashekar Devegowda <chandrashekar.devegowda@...el.com> > Acked-by: Ricardo Martinez <ricardo.martinez@...ux.intel.com> > Acked-by: M Chetan Kumar <m.chetan.kumar@...ux.intel.com> > -- > + if (once_more) { > + napi_gro_flush(napi, false); > + work_done = budget; > + t7xx_dpmaif_clr_ip_busy_sts(&rxq->dpmaif_ctrl->hw_info); > + } else if (work_done < budget) { > + napi_complete_done(napi, work_done); > + t7xx_dpmaif_clr_ip_busy_sts(&rxq->dpmaif_ctrl->hw_info); > + t7xx_dpmaif_dlq_unmask_rx_done(&rxq->dpmaif_ctrl->hw_info, rxq->index); > + } else { > + t7xx_dpmaif_clr_ip_busy_sts(&rxq->dpmaif_ctrl->hw_info); > + } > + > + t7xx_pci_enable_sleep(rxq->dpmaif_ctrl->t7xx_dev); > + pm_runtime_mark_last_busy(rxq->dpmaif_ctrl->dev); > + pm_runtime_put_noidle(rxq->dpmaif_ctrl->dev); > atomic_set(&rxq->rx_processing, 0); > + return work_done; A nitpick: I'd put newline prior to return, it's a bit crowded there already. The patch looks ok to me: Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com> -- i.
Powered by blists - more mailing lists