Skip to content

Commit 1c72e6a

Browse files
SamuelZOUdavem330
authored andcommitted
atm: iphase: fix possible use-after-free in ia_module_exit()
This module's remove path calls del_timer(). However, that function does not wait until the timer handler finishes. This means that the timer handler may still be running after the driver's remove function has finished, which would result in a use-after-free. Fix by calling del_timer_sync(), which makes sure the timer handler has finished, and unable to re-schedule itself. Reported-by: Hulk Robot <hulkci@huawei.com> Signed-off-by: Zou Wei <zou_wei@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 3913ba7 commit 1c72e6a

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

drivers/atm/iphase.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3282,7 +3282,7 @@ static void __exit ia_module_exit(void)
32823282
{
32833283
pci_unregister_driver(&ia_driver);
32843284

3285-
del_timer(&ia_timer);
3285+
del_timer_sync(&ia_timer);
32863286
}
32873287

32883288
module_init(ia_module_init);

0 commit comments

Comments
 (0)