Michael S. Tsirkin
505e428374
powerpc/uaccess: Allow get_user() with bitwise types
...
At the moment, if p and x are both of the same bitwise type
(eg. __le32), get_user(x, p) produces a sparse warning.
This is because *p is loaded into a long then cast back to typeof(*p).
When typeof(*p) is a bitwise type (which is uncommon), such a cast needs
__force, otherwise sparse produces a warning.
For non-bitwise types __force should have no effect, and should not hide
any legitimate errors.
Note that we are casting to typeof(*p) not typeof(x). Even with the
cast, if x and *p are of different types we should get the warning, so I
think we are not loosing the ability to detect any actual errors.
virtio would like to use bitwise types with get_user() so fix these
spurious warnings by adding __force.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com >
[mpe: Fill in changelog with more details]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au >
2014-12-18 19:11:09 +11:00
..
2014-03-19 22:24:08 -04:00
2014-07-28 15:22:21 +02:00
2014-08-14 12:48:11 +02:00
2014-04-18 14:20:41 +02:00
2014-11-12 16:31:46 +11:00
2013-08-14 14:57:40 +10:00
2014-09-25 23:14:43 +10:00
2014-07-28 15:23:17 +02:00
2013-08-14 14:56:44 +10:00
2013-10-11 16:48:39 +11:00
2014-01-28 14:45:43 +11:00
2014-06-24 14:05:32 +10:00
2014-03-24 10:16:04 +11:00
2014-04-23 10:05:16 +10:00
2014-10-08 20:15:37 +11:00
2014-06-11 17:03:28 +10:00
2014-12-15 10:46:40 +11:00
2014-11-10 09:59:29 +11:00
2014-05-28 13:35:35 +10:00
2014-10-15 07:48:18 +02:00
2013-01-10 15:09:06 +11:00
2014-05-23 08:28:02 +09:00
2014-05-20 10:54:06 +10:00
2013-08-14 11:38:34 +02:00
2014-05-30 14:26:25 +02:00
2014-09-30 17:15:20 +10:00
2013-04-18 13:03:53 +10:00
2014-06-11 17:04:33 +10:00
2014-12-02 11:03:26 +11:00
2014-11-17 17:55:11 +11:00
2014-04-09 12:53:28 +10:00
2014-01-09 10:14:57 +01:00
2014-04-23 10:05:16 +10:00
2014-08-05 16:33:48 +10:00
2014-10-30 16:52:46 +11:00
2013-05-14 15:10:02 +10:00
2014-01-23 16:36:54 -08:00
2014-06-25 18:49:40 -05:00
2014-11-07 18:10:47 -06:00
2014-01-10 17:19:27 -06:00
2013-08-14 11:38:34 +02:00
2014-04-23 10:05:20 +10:00
2014-11-03 12:12:32 +11:00
2014-11-14 17:24:21 +11:00
2014-07-28 15:22:19 +02:00
2013-10-11 16:48:53 +11:00
2014-05-20 10:54:06 +10:00
2014-08-05 16:33:48 +10:00
2014-09-25 23:14:43 +10:00
2013-06-12 12:37:26 +01:00
2013-01-03 15:57:04 -08:00
2014-11-10 09:59:28 +11:00
2014-02-11 16:07:37 +11:00
2014-09-25 23:14:43 +10:00
2014-07-28 14:11:23 +10:00
2014-07-11 16:05:58 +10:00
2014-09-13 18:38:07 +02:00
2014-09-25 23:14:43 +10:00
2014-04-23 10:05:33 +10:00
2014-09-22 10:11:34 +02:00
2013-10-17 14:45:05 +02:00
2014-08-05 09:58:11 +02:00
2014-05-30 14:26:22 +02:00
2014-07-31 10:23:46 +02:00
2014-03-19 19:57:15 -05:00
2014-09-22 10:11:36 +02:00
2014-09-24 23:19:45 +02:00
2014-01-09 10:14:57 +01:00
2014-09-24 23:19:45 +02:00
2014-04-23 10:05:20 +10:00
2013-12-09 11:40:25 +11:00
2014-12-05 16:26:15 +11:00
2014-03-07 15:52:10 +11:00
2014-07-28 14:10:23 +10:00
2014-11-07 18:10:42 -06:00
2014-07-28 15:23:13 +02:00
2014-12-05 16:26:15 +11:00
2014-07-28 14:10:23 +10:00
2014-04-23 10:05:34 +10:00
2013-06-03 10:22:35 -07:00
2014-07-02 17:32:41 -05:00
2014-01-12 18:59:36 +01:00
2013-07-01 18:38:41 -05:00
2013-08-07 18:38:04 -05:00
2014-09-19 15:20:42 -05:00
2013-06-26 12:10:55 +02:00
2014-12-15 10:46:41 +11:00
2014-07-28 14:10:25 +10:00
2014-12-15 10:46:41 +11:00
2014-10-02 16:04:21 +10:00
2014-11-14 17:24:21 +11:00
2013-04-18 13:03:50 +10:00
2013-08-14 11:50:25 +10:00
2014-05-27 16:23:58 -06:00
2013-08-07 18:38:03 -05:00
2014-07-28 14:30:47 +10:00
2014-10-15 11:23:20 +11:00
2013-12-10 11:25:05 +11:00
2013-12-10 11:25:05 +11:00
2013-04-30 16:00:04 +10:00
2014-11-07 18:10:43 -06:00
2014-11-14 17:24:21 +11:00
2014-11-14 17:24:21 +11:00
2014-11-14 17:24:21 +11:00
2014-11-14 17:24:21 +11:00
2014-10-07 22:01:56 +11:00
2014-10-08 20:15:44 +11:00
2013-01-10 15:08:37 +11:00
2014-06-26 13:19:42 +02:00
2014-12-15 10:46:41 +11:00
2014-04-28 17:34:32 +10:00
2013-06-20 16:55:09 +10:00
2014-12-15 10:46:41 +11:00
2014-09-25 23:14:43 +10:00
2014-01-15 13:46:44 +11:00
2014-11-07 18:10:43 -06:00
2013-10-17 14:49:37 +02:00
2014-10-09 22:25:52 -04:00
2014-06-25 18:49:39 -05:00
2014-08-13 18:20:41 +10:00
2013-12-09 11:40:30 +11:00
2014-09-09 19:02:45 +10:00
2014-06-11 16:35:38 +10:00
2014-09-22 10:11:33 +02:00
2013-08-07 18:38:04 -05:00
2014-12-15 10:46:41 +11:00
2014-09-25 23:14:43 +10:00
2014-04-07 10:33:12 +10:00
2013-11-06 14:13:49 +11:00
2014-06-10 18:54:22 -07:00
2014-11-10 09:59:25 +11:00
2013-10-11 17:26:49 +11:00
2013-06-01 08:29:23 +10:00
2014-05-28 13:35:34 +10:00
2014-08-13 15:13:26 +10:00
2014-10-08 20:14:54 +11:00
2014-09-25 23:14:51 +10:00
2014-04-30 15:26:18 +10:00
2014-06-24 12:43:15 +10:00
2014-06-11 17:03:41 +10:00
2014-12-12 20:14:08 +11:00
2013-02-03 18:16:11 -05:00
2014-10-22 14:03:06 +11:00
2014-11-10 09:59:31 +11:00
2014-07-28 15:21:50 +02:00
2013-11-22 16:56:48 -06:00
2014-12-05 16:26:15 +11:00
2014-03-29 15:44:05 +01:00
2014-06-10 18:54:22 -07:00
2014-07-11 16:06:08 +10:00
2014-09-25 23:14:43 +10:00
2014-12-18 19:11:09 +11:00
2014-09-25 23:14:43 +10:00
2013-12-30 14:02:29 +11:00
2014-10-22 14:03:06 +11:00
2013-11-20 16:31:01 +01:00
2014-02-17 11:19:37 +11:00
2014-11-10 09:59:31 +11:00
2014-01-15 13:46:44 +11:00
2014-09-30 14:59:13 +10:00
2014-11-03 12:12:32 +11:00
2013-10-30 16:02:28 +11:00