mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
kbuild: Fix genksyms handling of DEFINE_PER_CPU(struct foo_s *, bar);
This is a one-line change to parse.y.
To take advantage of this the scripts/genksyms/*_shipped files needs to
be rebuild - this is the next patch.
When a .c file contains:
DEFINE_PER_CPU(struct foo_s *, bar);
the .cpp output looks like:
__attribute__((__section__(".data.percpu"))) __typeof__(struct foo_s *) per_cpu__bar;
With the existing parse.y, the value inside the paranthesis of
__typeof__() does not evaluate as a type_specifier and therefore
per_cpu__bar does not get assigned a type for genksyms which results in
the EXPORT_PER_CPU_SYMBOL() not generating a CRC value.
I have compared the Modules.symvers with and without this
patch and for ia64's defconfig, the only change is:
Before 0x00000000 per_cpu____sn_nodepda vmlinux
After 0x9d3f3faa per_cpu____sn_nodepda vmlinux
per_cpu____sn_nodepda was the original source of my problems.
Signed-off-by: Robin Holt <[email protected]>
Signed-off-by: Sam Ravnborg <[email protected]>
This commit is contained in:
parent
f83b5e323f
commit
a89a0a2354
1 changed files with 1 additions and 0 deletions
|
|
@ -197,6 +197,7 @@ storage_class_specifier:
|
|||
type_specifier:
|
||||
simple_type_specifier
|
||||
| cvar_qualifier
|
||||
| TYPEOF_KEYW '(' decl_specifier_seq '*' ')'
|
||||
| TYPEOF_KEYW '(' decl_specifier_seq ')'
|
||||
|
||||
/* References to s/u/e's defined elsewhere. Rearrange things
|
||||
|
|
|
|||
Loading…
Reference in a new issue