Andreas Herrmann
36bf50d769
x86, microcode, AMD: Fix broken ucode patch size check
...
This issue was recently observed on an AMD C-50 CPU where a patch of
maximum size was applied.
Commit be62adb49294 ("x86, microcode, AMD: Simplify ucode verification")
added current_size in get_matching_microcode(). This is calculated as
size of the ucode patch + 8 (ie. size of the header). Later this is
compared against the maximum possible ucode patch size for a CPU family.
And of course this fails if the patch has already maximum size.
Cc: <stable@vger.kernel.org> [3.3+]
Signed-off-by: Andreas Herrmann <andreas.herrmann3@amd.com>
Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
Link: http://lkml.kernel.org/r/1344361461-10076-1-git-send-email-bp@amd64.org
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2012-08-22 16:10:41 -07:00
..
2012-07-30 21:10:16 -04:00
2012-08-14 09:52:20 -07:00
2012-08-20 10:36:18 -07:00
2012-08-22 12:09:49 +02:00
2012-03-28 16:36:31 +02:00
2012-07-22 16:07:45 -07:00
2011-07-23 10:34:47 -07:00
2012-06-06 11:58:38 +02:00
2012-06-06 09:17:22 +02:00
2011-11-17 13:35:37 -08:00
2012-02-20 12:52:06 -08:00
2011-12-12 14:26:10 -08:00
2012-05-15 15:36:41 -07:00
2012-03-28 18:11:12 +01:00
2012-03-20 21:48:15 +08:00
2011-03-23 19:47:19 -07:00
2011-10-10 06:56:57 +02:00
2012-02-23 14:37:47 -07:00
2012-06-20 14:33:48 +02:00
2012-06-20 14:33:48 +02:00
2012-06-20 14:33:48 +02:00
2012-07-30 17:25:17 -07:00
2012-07-22 15:47:52 +02:00
2011-03-16 14:03:32 +01:00
2012-06-01 13:01:51 -04:00
2012-07-26 13:17:17 -07:00
2012-05-31 23:12:19 -04:00
2012-05-08 11:46:05 -07:00
2012-05-08 11:46:05 -07:00
2012-05-29 20:14:53 -07:00
2012-05-29 20:14:53 -07:00
2011-07-14 11:47:53 -07:00
2012-05-25 15:32:29 +02:00
2010-12-30 12:20:28 +01:00
2012-05-14 14:15:31 -07:00
2011-03-23 22:15:54 +01:00
2011-07-01 10:37:14 +02:00
2012-03-28 18:11:12 +01:00
2011-02-17 14:59:22 +01:00
2012-05-08 14:08:44 +02:00
2011-12-07 09:27:11 +01:00
2010-10-18 19:58:50 +02:00
2012-08-22 10:36:08 +02:00
2012-06-27 19:29:13 -07:00
2011-12-06 20:41:02 +01:00
2012-07-26 15:07:20 +02:00
2012-06-18 10:53:18 +02:00
2012-03-06 09:49:49 +01:00
2012-03-06 09:49:49 +01:00
2012-05-09 11:44:42 +02:00
2012-07-16 12:51:44 +03:00
2012-06-11 23:18:33 -03:00
2012-03-28 18:11:12 +01:00
2012-03-28 18:11:12 +01:00
2012-05-29 20:14:53 -07:00
2012-08-22 16:10:41 -07:00
2012-07-22 12:04:44 -07:00
2012-05-07 14:37:14 +02:00
2010-11-18 13:41:35 +01:00
2012-07-24 13:34:56 -07:00
2012-05-29 20:14:53 -07:00
2012-03-28 18:11:12 +01:00
2012-06-20 14:23:17 +02:00
2012-06-08 18:51:12 -04:00
2012-06-07 11:41:08 -07:00
2012-06-06 09:17:22 +02:00
2012-06-25 13:48:30 +02:00
2011-05-10 10:21:35 +02:00
2012-05-21 15:09:38 +02:00
2012-03-28 16:36:31 +02:00
2012-03-08 10:57:35 +01:00
2012-05-23 10:59:07 -07:00
2012-07-22 12:04:44 -07:00
2012-06-06 09:17:22 +02:00
2012-06-01 13:54:21 -07:00
2010-11-28 09:33:20 +01:00
2012-06-12 09:10:54 -06:00
2010-11-12 00:45:41 +01:00
2012-07-22 12:25:47 -07:00
2011-07-21 11:19:28 +02:00
2011-07-21 11:19:28 +02:00
2010-12-17 10:01:30 -08:00
2011-12-05 17:09:21 +01:00
2012-06-14 12:42:11 +02:00
2012-06-15 14:17:01 +02:00
2012-06-06 09:17:22 +02:00
2012-05-14 11:49:38 +02:00
2012-07-26 13:17:17 -07:00
2011-06-14 22:48:51 -04:00
2011-08-04 16:13:49 -07:00
2012-03-29 18:12:23 -07:00
2011-11-18 16:25:07 -08:00
2012-02-20 12:52:06 -08:00
2012-05-08 15:04:27 -07:00
2012-03-28 18:11:12 +01:00
2011-05-21 19:10:33 +02:00
2012-04-20 13:51:38 -07:00
2012-05-17 19:06:13 -04:00
2012-03-29 14:28:26 -07:00
2011-10-31 19:30:35 -04:00
2012-06-06 09:17:22 +02:00
2012-02-22 11:49:40 +01:00
2012-06-06 09:17:22 +02:00
2012-06-08 12:22:27 +02:00
2011-03-18 10:39:30 +01:00
2012-06-06 09:17:22 +02:00
2012-05-08 11:46:05 -07:00
2012-07-06 11:00:22 +02:00
2012-07-22 12:04:44 -07:00
2011-08-10 19:26:46 -05:00
2011-08-04 16:13:53 -07:00
2012-05-24 23:16:14 +02:00
2012-06-29 15:33:34 -07:00
2012-06-06 09:17:22 +02:00