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: <DM6PR18MB26024CFB14D98C93F04DCB02CDFF9@DM6PR18MB2602.namprd18.prod.outlook.com> Date: Tue, 10 Jan 2023 08:55:50 +0000 From: Geethasowjanya Akula <gakula@...vell.com> To: Eric Dumazet <edumazet@...gle.com> CC: Leon Romanovsky <leon@...nel.org>, "netdev@...r.kernel.org" <netdev@...r.kernel.org>, "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>, "kuba@...nel.org" <kuba@...nel.org>, "pabeni@...hat.com" <pabeni@...hat.com>, "davem@...emloft.net" <davem@...emloft.net>, Subbaraya Sundeep Bhatta <sbhatta@...vell.com>, Hariprasad Kelam <hkelam@...vell.com>, Sunil Kovvuri Goutham <sgoutham@...vell.com> Subject: RE: [EXT] Re: [net PATCH] octeontx2-pf: Use GFP_ATOMIC in atomic context -----Original Message----- From: Eric Dumazet <edumazet@...gle.com> Sent: Tuesday, January 10, 2023 2:05 PM To: Geethasowjanya Akula <gakula@...vell.com> Cc: Leon Romanovsky <leon@...nel.org>; netdev@...r.kernel.org; linux-kernel@...r.kernel.org; kuba@...nel.org; pabeni@...hat.com; davem@...emloft.net; Subbaraya Sundeep Bhatta <sbhatta@...vell.com>; Hariprasad Kelam <hkelam@...vell.com>; Sunil Kovvuri Goutham <sgoutham@...vell.com> Subject: [EXT] Re: [net PATCH] octeontx2-pf: Use GFP_ATOMIC in atomic context External Email ---------------------------------------------------------------------- On Tue, Jan 10, 2023 at 8:54 AM Geethasowjanya Akula <gakula@...vell.com> wrote: >> >> >> >> -----Original Message----- >> From: Leon Romanovsky <leon@...nel.org> >> Sent: Sunday, January 8, 2023 6:39 PM >> To: Geethasowjanya Akula <gakula@...vell.com> >> Cc: netdev@...r.kernel.org; linux-kernel@...r.kernel.org; >> kuba@...nel.org; pabeni@...hat.com; davem@...emloft.net; >> edumazet@...gle.com; Subbaraya Sundeep Bhatta <sbhatta@...vell.com>; >> Hariprasad Kelam <hkelam@...vell.com>; Sunil Kovvuri Goutham >> <sgoutham@...vell.com> >> Subject: [EXT] Re: [net PATCH] octeontx2-pf: Use GFP_ATOMIC in atomic >> context >> >> External Email >> >> ---------------------------------------------------------------------- >> On Sat, Jan 07, 2023 at 10:11:39AM +0530, Geetha sowjanya wrote: >> >> Use GFP_ATOMIC flag instead of GFP_KERNEL while allocating memory >> >> in atomic context. >> >> >Awesome, but the changed functions don't run in atomic context. >> >> drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c >> 1368 /* Flush accumulated messages */ >> 1369 err = otx2_sync_mbox_msg(&pfvf->mbox); >> 1370 if (err) >> 1371 goto fail; >> 1372 >> 1373 get_cpu(); >> ^^^^^^^^^ >> The get_cpu() disables preemption. >Forcing GFP_ATOMIC in init functions is not desirable. > >Please move around the get_cpu() so that we keep GFP_KERNEL whenever possible. Ok will submit v2 with suggested changes. > >diff --git a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c >b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c >index 88f8772a61cd527c2ab138fb5a996470a7dfd456..2e628e12cd1ff92756f054639abd777ea185680f >100644 >--- a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c >+++ b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c >@@ -1370,7 +1370,6 @@ int otx2_sq_aura_pool_init(struct otx2_nic *pfvf) > if (err) > goto fail; > >- get_cpu(); > /* Allocate pointers and free them to aura/pool */ > for (qidx = 0; qidx < hw->tot_tx_queues; qidx++) { > pool_id = otx2_get_pool_idx(pfvf, AURA_NIX_SQ, qidx); @@ -1388,13 +1387,17 @@ int otx2_sq_aura_pool_init(struct otx2_nic *pfvf) > err = otx2_alloc_rbuf(pfvf, pool, &bufptr); > if (err) > goto err_mem; >+ /* __cn10k_aura_freeptr() needs to be called >+ * with preemption disabled. >+ */ >+ get_cpu(); > pfvf->hw_ops->aura_freeptr(pfvf, pool_id, bufptr); >+ put_cpu(); > sq->sqb_ptrs[sq->sqb_count++] = (u64)bufptr; > } > } > > err_mem: >- put_cpu(); > return err ? -ENOMEM : 0; > > fail:
Powered by blists - more mailing lists