netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Fix the cleanup on alloc_mpc failure in atm_mpoa_mpoad_attach
@ 2025-09-23 13:24 Deepak Sharma
  2025-09-24 18:41 ` Simon Horman
  2025-09-24 18:44 ` Simon Horman
  0 siblings, 2 replies; 6+ messages in thread
From: Deepak Sharma @ 2025-09-23 13:24 UTC (permalink / raw)
  To: davem, edumazet, kuba, pabeni, horms, pwn9uin
  Cc: netdev, linux-kernel, Deepak Sharma, syzbot+07b635b9c111c566af8b

Syzbot reported a warning at `add_timer`, which is called from the
`atm_mpoa_mpoad_attach` function

The reason for this warning is that in the allocation failure by `alloc_mpc`,
there is lack of proper cleanup. And in the event that ATMMPC_CTRL ioctl is
called on to again, it will lead to the attempt of starting an already 
started timer from the previous ioctl call

Do a `timer_delete` before returning from the `alloc_mpc` failure

Reported-by: syzbot+07b635b9c111c566af8b@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=07b635b9c111c566af8b
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Signed-off-by: Deepak Sharma <deepak.sharma.472935@gmail.com>
---
 net/atm/mpc.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/net/atm/mpc.c b/net/atm/mpc.c
index f6b447bba329..cd3295c3c480 100644
--- a/net/atm/mpc.c
+++ b/net/atm/mpc.c
@@ -814,7 +814,10 @@ static int atm_mpoa_mpoad_attach(struct atm_vcc *vcc, int arg)
 		dprintk("allocating new mpc for itf %d\n", arg);
 		mpc = alloc_mpc();
 		if (mpc == NULL)
+		{
+			timer_delete(&mpc_timer);
 			return -ENOMEM;
+		}
 		mpc->dev_num = arg;
 		mpc->dev = find_lec_by_itfnum(arg);
 					/* NULL if there was no lec */
-- 
2.51.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread
* [PATCH] Fix the cleanup on alloc_mpc failure in atm_mpoa_mpoad_attach
@ 2025-09-25 20:40 Deepak Sharma
  2025-09-28 15:26 ` David Hunter
  0 siblings, 1 reply; 6+ messages in thread
From: Deepak Sharma @ 2025-09-25 20:40 UTC (permalink / raw)
  To: davem, edumazet, kuba, pabeni, horms, pwn9uin
  Cc: netdev, linux-kernel, linux-kernel-mentees, david.hunter.linux,
	skhan, syzbot+740e04c2a93467a0f8c8, Deepak Sharma,
	syzbot+07b635b9c111c566af8b

Syzbot reported a warning at `add_timer`, which is called from the
`atm_mpoa_mpoad_attach` function

The reason for this warning is that in the allocation failure by `alloc_mpc`,
there is lack of proper cleanup. And in the event that ATMMPC_CTRL ioctl is
called on to again, it will lead to the attempt of starting an already 
started timer from the previous ioctl call

Do a `timer_delete` before returning from the `alloc_mpc` failure

Reported-by: syzbot+07b635b9c111c566af8b@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=07b635b9c111c566af8b
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Signed-off-by: Deepak Sharma <deepak.sharma.472935@gmail.com>
---
 net/atm/mpc.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/net/atm/mpc.c b/net/atm/mpc.c
index f6b447bba329..cd3295c3c480 100644
--- a/net/atm/mpc.c
+++ b/net/atm/mpc.c
@@ -814,7 +814,10 @@ static int atm_mpoa_mpoad_attach(struct atm_vcc *vcc, int arg)
 		dprintk("allocating new mpc for itf %d\n", arg);
 		mpc = alloc_mpc();
 		if (mpc == NULL)
+		{
+			timer_delete(&mpc_timer);
 			return -ENOMEM;
+		}
 		mpc->dev_num = arg;
 		mpc->dev = find_lec_by_itfnum(arg);
 					/* NULL if there was no lec */
-- 
2.51.0


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

end of thread, other threads:[~2025-09-28 15:26 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-23 13:24 [PATCH] Fix the cleanup on alloc_mpc failure in atm_mpoa_mpoad_attach Deepak Sharma
2025-09-24 18:41 ` Simon Horman
2025-09-24 18:44 ` Simon Horman
2025-09-24 23:45   ` Jakub Kicinski
  -- strict thread matches above, loose matches on Subject: below --
2025-09-25 20:40 Deepak Sharma
2025-09-28 15:26 ` David Hunter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).