Dave Martin
27e64b4be4
regset: Add support for dynamically sized regsets
...
Currently the regset API doesn't allow for the possibility that
regsets (or at least, the amount of meaningful data in a regset)
may change in size.
In particular, this results in useless padding being added to
coredumps if a regset's current size is smaller than its
theoretical maximum size.
This patch adds a get_size() function to struct user_regset.
Individual regset implementations can implement this function to
return the current size of the regset data. A regset_size()
function is added to provide callers with an abstract interface for
determining the size of a regset without needing to know whether
the regset is dynamically sized or not.
The only affected user of this interface is the ELF coredump code:
This patch ports ELF coredump to dump regsets with their actual
size in the coredump. This has no effect except for new regsets
that are dynamically sized and provide a get_size() implementation.
Signed-off-by: Dave Martin <Dave.Martin@arm.com >
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com >
Cc: Oleg Nesterov <oleg@redhat.com >
Cc: Alexander Viro <viro@zeniv.linux.org.uk >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: Ingo Molnar <mingo@redhat.com >
Cc: "H. Peter Anvin" <hpa@zytor.com >
Cc: Dmitry Safonov <dsafonov@virtuozzo.com >
Cc: H. J. Lu <hjl.tools@gmail.com >
Signed-off-by: Will Deacon <will.deacon@arm.com >
2017-11-03 15:24:11 +00:00
..
2017-09-08 18:26:48 -07:00
2017-09-06 19:56:49 +02:00
2017-09-13 11:04:14 -07:00
2017-09-09 14:18:40 -07:00
2017-09-07 13:51:13 -07:00
2017-09-15 20:43:33 -07:00
2017-09-09 14:48:21 -07:00
2017-09-06 14:45:08 -07:00
2017-09-06 14:45:08 -07:00
2017-09-07 12:24:50 -07:00
2017-09-01 15:34:30 +02:00
2017-08-28 17:11:28 +02:00
2017-09-04 12:54:42 +02:00
2017-08-30 15:17:45 -07:00
2017-08-31 09:15:21 +02:00
2017-09-10 20:35:46 -07:00
2017-08-30 17:31:51 +02:00
2017-08-29 20:33:57 -07:00
2017-09-06 20:49:49 -07:00
2017-09-10 20:40:00 -07:00
2017-09-11 22:01:44 -07:00
2017-08-31 18:08:47 +02:00
2017-10-16 14:26:03 +01:00
2017-09-05 12:50:00 -07:00
2017-09-01 16:35:50 -05:00
2017-08-29 08:33:24 -07:00
2017-09-22 16:16:41 -10:00
2017-09-07 11:59:42 -07:00
2017-09-08 18:26:49 -07:00
2017-09-08 18:26:48 -07:00
2017-09-25 08:56:05 -06:00
2017-09-08 21:11:00 -07:00
2017-09-07 21:11:05 -07:00
2017-09-01 14:57:15 -05:00
2017-09-07 11:59:42 -07:00
2017-08-31 18:35:45 -07:00
2017-09-14 17:37:26 -07:00
2017-09-04 12:21:28 -07:00
2017-09-04 12:21:28 -07:00
2017-08-29 15:14:38 +02:00
2017-08-28 17:35:43 +02:00
2017-08-30 14:40:40 +02:00
2017-09-04 00:05:22 +02:00
2017-10-19 17:06:35 +01:00
2017-09-04 00:06:02 +02:00
2017-09-08 18:26:51 -07:00
2017-09-07 11:45:21 +02:00
2017-09-14 13:43:16 -07:00
2017-09-05 12:53:11 +02:00
2017-09-11 11:00:55 -04:00
2017-09-18 13:22:30 +02:00
2017-09-12 13:30:06 -07:00
2017-09-06 21:55:10 +05:30
2017-08-29 15:34:44 -06:00
2017-08-29 15:34:44 -06:00
2017-08-29 15:34:46 -06:00
2017-08-28 16:55:47 +02:00
2017-09-12 13:27:21 -07:00
2017-08-28 16:24:22 +02:00
2017-09-14 20:18:45 -07:00
2017-09-06 17:27:26 -07:00
2017-08-31 15:49:11 -04:00
2017-08-31 09:47:22 -06:00
2017-09-13 18:53:16 -07:00
2017-09-05 11:54:41 -07:00
2017-09-08 18:26:46 -07:00
2017-09-08 18:26:45 -07:00
2017-09-07 09:25:15 -07:00
2017-08-30 14:36:44 -07:00
2017-09-01 18:38:09 -07:00
2017-09-08 18:26:49 -07:00
2017-09-21 16:31:22 -07:00
2017-09-08 18:26:49 -07:00
2017-09-08 18:26:49 -07:00
2017-09-27 17:02:45 +02:00
2017-09-08 18:26:46 -07:00
2017-09-08 18:26:51 -07:00
2017-09-08 18:26:51 -07:00
2017-09-21 11:54:44 +02:00
2017-10-24 16:03:28 +01:00
2017-09-05 12:50:00 -07:00
2017-08-29 15:14:38 +02:00
2017-09-08 18:26:47 -07:00
2017-09-25 15:19:57 +01:00
2017-09-08 18:26:51 -07:00
2017-08-29 21:10:40 +02:00
2017-08-29 08:36:58 -07:00
2017-08-31 15:05:10 -07:00
2017-08-29 15:14:38 +02:00
2017-09-12 13:21:00 -07:00
2017-08-28 20:51:22 +02:00
2017-09-05 14:42:52 -07:00
2017-09-07 11:53:11 +02:00
2017-09-06 17:27:27 -07:00
2017-09-08 18:26:46 -07:00
2017-09-08 18:26:46 -07:00
2017-09-08 18:26:46 -07:00
2017-09-08 18:26:46 -07:00
2017-09-08 18:26:45 -07:00
2017-09-08 18:26:49 -07:00
2017-08-31 16:13:00 -07:00
2017-09-08 18:26:47 -07:00
2017-08-28 16:19:44 +02:00
2017-09-14 17:37:26 -07:00
2017-09-06 14:45:08 -07:00
2017-08-28 17:44:00 +02:00
2017-08-28 17:44:00 +02:00
2017-09-06 12:32:37 -04:00
2017-09-25 12:42:11 -06:00
2017-09-25 08:56:05 -06:00
2017-08-28 17:33:23 +02:00
2017-09-19 12:20:44 -05:00
2017-09-06 17:27:28 -07:00
2017-09-06 17:27:26 -07:00
2017-09-06 17:27:27 -07:00
2017-08-29 16:00:37 -05:00
2017-09-07 13:24:11 -05:00
2017-09-25 11:08:20 -05:00
2017-09-07 13:24:20 -05:00
2017-09-04 13:56:37 -07:00
2017-08-29 12:24:52 +02:00
2017-09-08 18:26:51 -07:00
2017-09-08 18:26:51 -07:00
2017-09-08 18:26:47 -07:00
2017-08-30 14:36:44 -07:00
2017-09-08 18:26:48 -07:00
2017-09-08 18:26:48 -07:00
2017-09-07 21:11:05 -07:00
2017-11-03 15:24:11 +00:00
2017-09-01 15:49:13 -07:00
2017-09-08 18:26:49 -07:00
2017-09-08 18:26:49 -07:00
2017-09-08 18:26:49 -07:00
2017-09-29 11:02:57 +02:00
2017-09-12 13:21:00 -07:00
2017-09-14 17:37:26 -07:00
2017-08-28 20:51:20 +02:00
2017-08-28 20:51:20 +02:00
2017-09-14 17:37:26 -07:00
2017-09-06 17:27:28 -07:00
2017-09-06 17:27:24 -07:00
2017-09-07 20:02:39 -07:00
2017-09-06 17:27:24 -07:00
2017-08-29 15:14:38 +02:00
2017-09-04 11:52:29 -07:00
2017-09-11 12:29:41 -04:00
2017-09-15 16:57:10 +02:00
2017-09-08 18:26:46 -07:00
2017-09-08 18:26:46 -07:00
2017-09-17 19:45:32 +02:00
2017-08-30 11:20:09 -07:00
2017-09-14 17:37:26 -07:00
2017-09-28 16:30:36 +02:00
2017-09-20 14:10:29 -07:00
2017-08-28 20:51:23 +02:00
2017-08-28 16:15:42 +02:00
2017-08-31 17:32:39 -04:00
2017-09-08 18:26:51 -07:00
2017-09-11 18:34:47 -07:00
2017-09-06 17:27:29 -07:00
2017-09-08 18:26:47 -07:00
2017-09-08 18:26:48 -07:00
2017-08-31 18:50:14 +02:00
2017-09-14 09:56:18 -07:00
2017-09-05 06:34:17 -07:00