]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - glsdk/meta-ti-glsdk.git/blob - recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.17/0021-Fix-modpost-failures-in-fedora-17.patch
linux-ti33x-psp 3.2: update to 3.2.18
[glsdk/meta-ti-glsdk.git] / recipes-kernel / linux / linux-ti33x-psp-3.2 / 3.2.17 / 0021-Fix-modpost-failures-in-fedora-17.patch
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
6 commit e88aa7bbbe3046a125ea1936b16bb921cc9c6349 upstream.
8 The symbol table on x86-64 starts to have entries that have names
9 like:
11 _GLOBAL__sub_I_65535_0___mod_x86cpu_device_table
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.
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 --------------------
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.
26 So skip the symbol if it is not of type STT_OBJECT.
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(-)
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