Michael Schmitz
e520c43132
fix race in drivers/char/random.c:get_reg()
...
[ Upstream commit 9dfa7bba35 ]
get_reg() can be reentered on architectures with prioritized interrupts
(m68k in this case), causing f->reg_index to be incremented after the
range check. Out of bounds memory access past the pt_regs struct results.
This will go mostly undetected unless access is beyond end of memory.
Prevent the race by disabling interrupts in get_reg().
Tested on m68k (Atari Falcon, and ARAnyM emulator).
Kudos to Geert Uytterhoeven for helping to trace this race.
Signed-off-by: Michael Schmitz <schmitzmic@gmail.com >
Signed-off-by: Theodore Ts'o <tytso@mit.edu >
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com >
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
2018-04-13 19:50:11 +02:00
..
2018-04-08 11:51:56 +02:00
2018-02-28 10:17:23 +01:00
2018-04-13 19:50:06 +02:00
2017-12-16 10:33:55 +01:00
2018-01-31 12:06:08 +01:00
2017-03-12 06:37:30 +01:00
2018-04-08 11:52:02 +02:00
2018-03-28 18:40:13 +02:00
2018-04-13 19:50:05 +02:00
2018-04-13 19:50:11 +02:00
2018-03-28 18:40:13 +02:00
2017-10-27 10:23:17 +02:00
2018-04-08 11:52:02 +02:00
2017-12-25 14:22:15 +01:00
2018-02-25 11:03:55 +01:00
2018-02-22 15:44:58 +01:00
2018-03-24 10:58:48 +01:00
2018-02-16 20:09:47 +01:00
2017-11-21 09:21:18 +01:00
2016-11-10 16:36:35 +01:00
2017-12-20 10:04:56 +01:00
2018-02-25 11:03:50 +01:00
2018-03-28 18:40:15 +02:00
2018-03-22 09:23:27 +01:00
2018-03-24 10:58:42 +01:00
2018-02-25 11:03:46 +01:00
2018-03-22 09:23:22 +01:00
2018-03-24 10:58:48 +01:00
2018-03-24 10:58:41 +01:00
2018-02-25 11:03:51 +01:00
2018-04-13 19:50:08 +02:00
2018-04-13 19:50:01 +02:00
2018-04-13 19:50:04 +02:00
2018-03-24 10:58:48 +01:00
2018-03-22 09:23:31 +01:00
2018-02-25 11:03:51 +01:00
2018-04-13 19:50:09 +02:00
2016-09-24 10:07:35 +02:00
2017-08-06 19:19:41 -07:00
2018-04-13 19:50:09 +02:00
2018-04-08 11:52:00 +02:00
2017-12-16 10:33:51 +01:00
2016-10-28 03:01:35 -04:00
2018-02-25 11:03:45 +01:00
2018-03-24 10:58:44 +01:00
2018-04-13 19:50:02 +02:00
2018-03-28 18:40:13 +02:00
2018-04-08 11:51:55 +02:00
2018-04-13 19:50:09 +02:00
2018-03-22 09:23:23 +01:00
2017-08-30 10:19:29 +02:00
2017-11-30 08:37:23 +00:00
2018-02-16 20:09:47 +01:00
2017-08-06 19:19:46 -07:00
2018-03-22 09:23:21 +01:00
2018-01-02 20:33:20 +01:00
2018-04-08 11:52:00 +02:00
2018-04-08 11:52:01 +02:00
2018-03-22 09:23:26 +01:00
2018-01-23 19:50:16 +01:00
2018-03-24 10:58:48 +01:00
2018-03-24 10:58:47 +01:00
2018-03-24 10:58:45 +01:00
2018-04-13 19:50:05 +02:00
2018-03-24 10:58:40 +01:00
2018-03-22 09:23:27 +01:00
2018-03-24 10:58:40 +01:00
2018-04-13 19:50:01 +02:00
2018-03-31 18:12:34 +02:00
2018-04-13 19:50:11 +02:00
2016-09-24 10:07:42 +02:00
2018-04-08 11:52:02 +02:00
2017-07-27 15:06:10 -07:00
2018-02-25 11:03:44 +01:00
2018-04-13 19:50:05 +02:00
2018-03-24 10:58:45 +01:00
2018-02-25 11:03:44 +01:00
2018-04-13 19:50:07 +02:00
2016-10-31 04:13:59 -06:00
2018-04-13 19:50:07 +02:00
2017-10-12 11:27:35 +02:00
2017-08-06 19:19:46 -07:00
2018-02-16 20:09:38 +01:00
2018-03-24 10:58:48 +01:00
2018-02-25 11:03:42 +01:00
2017-01-19 20:17:21 +01:00
2017-03-12 06:37:29 +01:00
2018-03-18 11:17:50 +01:00
2018-03-03 10:19:45 +01:00
2018-02-25 11:03:38 +01:00