diff options
Diffstat (limited to 'recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.17/0021-Fix-modpost-failures-in-fedora-17.patch')
-rw-r--r-- | recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.17/0021-Fix-modpost-failures-in-fedora-17.patch | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.17/0021-Fix-modpost-failures-in-fedora-17.patch b/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.17/0021-Fix-modpost-failures-in-fedora-17.patch new file mode 100644 index 00000000..5de8b33f --- /dev/null +++ b/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.17/0021-Fix-modpost-failures-in-fedora-17.patch | |||
@@ -0,0 +1,54 @@ | |||
1 | From 3ff39b2411c6722c1ee6c490ac4ec7f90f026d64 Mon Sep 17 00:00:00 2001 | ||
2 | From: David Miller <davem@davemloft.net> | ||
3 | Date: Wed, 25 Apr 2012 19:41:32 -0500 | ||
4 | Subject: [PATCH 021/165] Fix modpost failures in fedora 17 | ||
5 | |||
6 | commit e88aa7bbbe3046a125ea1936b16bb921cc9c6349 upstream. | ||
7 | |||
8 | The symbol table on x86-64 starts to have entries that have names | ||
9 | like: | ||
10 | |||
11 | _GLOBAL__sub_I_65535_0___mod_x86cpu_device_table | ||
12 | |||
13 | They are of type STT_FUNCTION and this one had a length of 18. This | ||
14 | matched the device ID validation logic and it barfed because the | ||
15 | length did not meet the device type's criteria. | ||
16 | |||
17 | -------------------- | ||
18 | FATAL: arch/x86/crypto/aesni-intel: sizeof(struct x86cpu_device_id)=16 is not a modulo of the size of section __mod_x86cpu_device_table=18. | ||
19 | Fix definition of struct x86cpu_device_id in mod_devicetable.h | ||
20 | -------------------- | ||
21 | |||
22 | These are some kind of compiler tool internal stuff being emitted and | ||
23 | not something we want to inspect in modpost's device ID table | ||
24 | validation code. | ||
25 | |||
26 | So skip the symbol if it is not of type STT_OBJECT. | ||
27 | |||
28 | Signed-off-by: David S. Miller <davem@davemloft.net> | ||
29 | Acked-by: Sam Ravnborg <sam@ravnborg.org> | ||
30 | Signed-off-by: Michal Marek <mmarek@suse.cz> | ||
31 | Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> | ||
32 | Signed-off-by: Ben Hutchings <ben@decadent.org.uk> | ||
33 | --- | ||
34 | scripts/mod/file2alias.c | 4 ++++ | ||
35 | 1 files changed, 4 insertions(+), 0 deletions(-) | ||
36 | |||
37 | diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c | ||
38 | index f936d1f..d1d0ae8 100644 | ||
39 | --- a/scripts/mod/file2alias.c | ||
40 | +++ b/scripts/mod/file2alias.c | ||
41 | @@ -926,6 +926,10 @@ void handle_moddevtable(struct module *mod, struct elf_info *info, | ||
42 | if (!sym->st_shndx || get_secindex(info, sym) >= info->num_sections) | ||
43 | return; | ||
44 | |||
45 | + /* We're looking for an object */ | ||
46 | + if (ELF_ST_TYPE(sym->st_info) != STT_OBJECT) | ||
47 | + return; | ||
48 | + | ||
49 | /* Handle all-NULL symbols allocated into .bss */ | ||
50 | if (info->sechdrs[get_secindex(info, sym)].sh_type & SHT_NOBITS) { | ||
51 | zeros = calloc(1, sym->st_size); | ||
52 | -- | ||
53 | 1.7.7.6 | ||
54 | |||