This repository has been archived on 2026-03-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
ubports_kernel_google_msm/include/linux
Tejun Heo 7c756e6e19 percpu: implement optional weak percpu definitions
Some archs (alpha and s390) need to use weak definitions for percpu
variables in modules so that the compiler generates external
references for them.

This patch implements weak percpu definitions which arch can enable by
defining ARCH_NEEDS_WEAK_PER_CPU in arch percpu header file.  This
weak definition adds the following two restrictions on percpu variable
definitions.

  1. percpu symbols must be unique whether static or not
  2. percpu variables can't be defined inside a function

To ensure that these restrictions are observed in generic code, config
option DEBUG_FORCE_WEAK_PER_CPU enables weak percpu definitions for
all cases.

This patch is inspired by Ivan Kokshaysky's alpha percpu patch.

[ Impact: stricter rules for percpu variables, one more debug config option ]

Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: David Howells <dhowells@redhat.com>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
2009-06-24 15:13:50 +09:00
..
2009-06-17 19:41:52 +02:00
2009-06-02 13:53:35 +03:00
2009-06-11 21:36:00 -04:00
2009-06-18 08:46:47 +10:00
2009-03-05 14:39:32 -05:00
2009-06-17 00:36:36 -04:00
2009-01-30 23:38:03 +05:30
2009-01-21 14:02:19 -08:00
2009-01-30 23:38:37 +05:30
2009-02-12 09:40:14 +11:00
2009-04-01 08:59:23 -07:00
2009-01-30 23:39:42 +05:30
2009-06-01 06:21:13 +00:00
2009-01-30 23:40:06 +05:30
2009-05-02 15:36:10 -07:00
2009-06-15 16:47:21 +10:00
2009-04-23 10:06:35 +01:00
2009-06-11 21:36:09 -04:00
2009-01-30 23:44:08 +05:30
2009-04-03 14:53:32 -07:00
2009-05-29 08:40:01 -07:00
2009-06-11 08:50:57 -07:00
2009-06-11 21:36:06 -04:00
2009-03-01 00:19:35 -08:00
2009-06-15 21:30:25 -07:00
2009-01-30 23:46:03 +05:30
2009-04-03 14:53:32 -07:00
2009-01-30 23:46:40 +05:30
2009-06-17 09:33:49 -07:00
2009-01-30 23:48:33 +05:30
2009-02-10 00:41:26 +01:00
2009-03-16 08:32:27 -06:00
2009-06-15 21:30:25 -07:00
2009-06-16 19:50:13 -07:00
2009-06-18 18:40:18 -04:00
2009-06-18 13:04:05 -07:00
2009-01-30 23:51:17 +05:30
2009-01-30 23:51:41 +05:30
2009-04-02 19:04:53 -07:00
2009-06-03 14:05:10 -04:00
2009-01-30 23:52:16 +05:30
2009-01-30 23:53:12 +05:30
2009-01-30 23:53:40 +05:30
2009-01-30 23:54:53 +05:30
2009-01-30 23:55:45 +05:30
2009-01-30 23:56:13 +05:30
2009-01-30 23:56:48 +05:30
2009-05-19 16:02:02 -07:00
2009-01-30 23:57:16 +05:30
2009-05-22 09:43:41 +10:00
2009-02-02 21:40:58 +05:30
2009-06-02 00:45:24 -07:00
2009-06-16 19:47:28 -07:00
2009-06-18 13:03:57 -07:00
2009-06-18 13:03:56 -07:00
2009-04-21 13:41:48 -07:00
2009-04-21 13:41:48 -07:00
2009-01-30 23:59:44 +05:30
2009-01-31 00:00:06 +05:30
2009-06-18 13:04:04 -07:00
2009-06-15 15:49:23 +02:00
2009-06-11 17:03:28 +01:00
2009-06-10 11:48:39 +03:00
2009-04-06 16:06:26 +01:00
2009-06-16 19:47:57 -07:00
2009-04-28 07:37:28 +02:00
2009-04-14 09:00:19 +10:00
2009-06-16 19:47:48 -07:00
2009-06-16 08:40:20 +02:00
2009-04-29 17:32:35 -07:00
2009-01-31 00:00:35 +05:30
2009-06-11 19:05:32 +02:00
2009-05-25 00:55:45 -07:00
2009-06-16 19:50:13 -07:00
2009-06-18 13:03:57 -07:00
2009-06-11 21:36:02 -04:00
2009-01-31 00:01:11 +05:30
2009-03-20 10:48:14 -07:00
2009-06-11 21:36:01 -04:00
2009-03-15 19:59:13 -07:00
2009-04-03 17:41:23 -07:00
2009-04-01 13:28:15 -04:00
2009-04-03 17:41:12 -07:00
2009-03-10 20:33:18 -04:00
2009-06-15 21:44:43 -07:00
2009-04-01 08:59:13 -07:00
2009-04-01 08:59:13 -07:00
2009-06-15 21:44:44 -07:00
2009-01-31 00:02:54 +05:30
2009-01-08 08:31:12 -08:00
2009-01-31 00:03:40 +05:30
2009-04-24 08:54:21 +02:00
2009-04-01 08:59:13 -07:00
2009-03-13 16:09:12 -07:00
2009-06-18 13:04:04 -07:00
2009-06-18 13:04:04 -07:00
2009-03-30 15:22:01 +02:00
2009-06-11 21:36:12 -04:00
2009-03-26 02:18:35 +01:00
2009-01-31 00:05:59 +05:30
2009-02-26 23:42:11 -08:00
2009-03-30 14:28:58 -07:00
2009-05-09 10:49:41 -04:00
2009-04-01 08:59:24 -07:00
2009-04-08 14:33:38 -07:00
2009-06-11 08:50:58 -07:00
2009-02-27 16:53:50 +09:00
2009-04-13 15:04:29 -07:00
2009-01-31 00:06:33 +05:30
2009-06-15 15:50:49 +02:00
2009-04-21 19:40:00 -07:00
2009-06-16 19:47:48 -07:00
2009-04-27 02:45:02 -07:00
2009-03-27 12:18:56 -04:00
2009-01-31 00:07:00 +05:30
2009-05-12 11:11:48 +02:00
2009-06-18 13:03:47 -07:00
2009-04-02 19:05:01 -07:00
2009-02-18 15:37:53 -08:00
2009-02-03 11:23:12 +11:00
2009-06-11 08:50:59 -07:00
2009-06-11 08:51:01 -07:00