Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
62070fa4
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
160
Star
36
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
cloud-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
62070fa4
编写于
3月 03, 2006
作者:
S
Sam Ravnborg
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
kbuild: kill trailing whitespace in modpost & friends
Signed-off-by:
N
Sam Ravnborg
<
sam@ravnborg.org
>
上级
e11f0496
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
43 addition
and
43 deletion
+43
-43
scripts/mod/file2alias.c
scripts/mod/file2alias.c
+2
-2
scripts/mod/mk_elfconfig.c
scripts/mod/mk_elfconfig.c
+2
-2
scripts/mod/modpost.c
scripts/mod/modpost.c
+35
-35
scripts/mod/modpost.h
scripts/mod/modpost.h
+4
-4
未找到文件。
scripts/mod/file2alias.c
浏览文件 @
62070fa4
...
...
@@ -34,7 +34,7 @@ typedef uint16_t __u16;
typedef
unsigned
char
__u8
;
/* Big exception to the "don't include kernel headers into userspace, which
* even potentially has different endianness and word sizes, since
* even potentially has different endianness and word sizes, since
* we handle those differences explicitly below */
#include "../../include/linux/mod_devicetable.h"
#include "../../include/linux/input.h"
...
...
@@ -228,7 +228,7 @@ static int do_pci_entry(const char *filename,
return
1
;
}
/* looks like: "ccw:tNmNdtNdmN" */
/* looks like: "ccw:tNmNdtNdmN" */
static
int
do_ccw_entry
(
const
char
*
filename
,
struct
ccw_device_id
*
id
,
char
*
alias
)
{
...
...
scripts/mod/mk_elfconfig.c
浏览文件 @
62070fa4
...
...
@@ -6,7 +6,7 @@
int
main
(
int
argc
,
char
**
argv
)
{
unsigned
char
ei
[
EI_NIDENT
];
unsigned
char
ei
[
EI_NIDENT
];
union
{
short
s
;
char
c
[
2
];
}
endian_test
;
if
(
argc
!=
2
)
{
...
...
@@ -57,7 +57,7 @@ main(int argc, char **argv)
if
((
strcmp
(
argv
[
1
],
"v850"
)
==
0
)
||
(
strcmp
(
argv
[
1
],
"h8300"
)
==
0
))
printf
(
"#define MODULE_SYMBOL_PREFIX
\"
_
\"\n
"
);
else
else
printf
(
"#define MODULE_SYMBOL_PREFIX
\"\"\n
"
);
return
0
;
...
...
scripts/mod/modpost.c
浏览文件 @
62070fa4
...
...
@@ -85,7 +85,7 @@ static struct module *new_module(char *modname)
{
struct
module
*
mod
;
char
*
p
,
*
s
;
mod
=
NOFAIL
(
malloc
(
sizeof
(
*
mod
)));
memset
(
mod
,
0
,
sizeof
(
*
mod
));
p
=
NOFAIL
(
strdup
(
modname
));
...
...
@@ -320,9 +320,9 @@ static void parse_elf(struct elf_info *info, const char *filename)
continue
;
info
->
symtab_start
=
(
void
*
)
hdr
+
sechdrs
[
i
].
sh_offset
;
info
->
symtab_stop
=
(
void
*
)
hdr
+
sechdrs
[
i
].
sh_offset
info
->
symtab_stop
=
(
void
*
)
hdr
+
sechdrs
[
i
].
sh_offset
+
sechdrs
[
i
].
sh_size
;
info
->
strtab
=
(
void
*
)
hdr
+
info
->
strtab
=
(
void
*
)
hdr
+
sechdrs
[
sechdrs
[
i
].
sh_link
].
sh_offset
;
}
if
(
!
info
->
symtab_start
)
{
...
...
@@ -387,15 +387,15 @@ static void handle_modversions(struct module *mod, struct elf_info *info,
/* Ignore register directives. */
if
(
ELF_ST_TYPE
(
sym
->
st_info
)
==
STT_SPARC_REGISTER
)
break
;
if
(
symname
[
0
]
==
'.'
)
{
char
*
munged
=
strdup
(
symname
);
munged
[
0
]
=
'_'
;
munged
[
1
]
=
toupper
(
munged
[
1
]);
symname
=
munged
;
}
if
(
symname
[
0
]
==
'.'
)
{
char
*
munged
=
strdup
(
symname
);
munged
[
0
]
=
'_'
;
munged
[
1
]
=
toupper
(
munged
[
1
]);
symname
=
munged
;
}
}
#endif
if
(
memcmp
(
symname
,
MODULE_SYMBOL_PREFIX
,
strlen
(
MODULE_SYMBOL_PREFIX
))
==
0
)
mod
->
unres
=
alloc_symbol
(
symname
+
...
...
@@ -458,13 +458,13 @@ static char *get_modinfo(void *modinfo, unsigned long modinfo_len,
static
int
strrcmp
(
const
char
*
s
,
const
char
*
sub
)
{
int
slen
,
sublen
;
if
(
!
s
||
!
sub
)
return
1
;
slen
=
strlen
(
s
);
sublen
=
strlen
(
sub
);
if
((
slen
==
0
)
||
(
sublen
==
0
))
return
1
;
...
...
@@ -485,7 +485,7 @@ static int strrcmp(const char *s, const char *sub)
* tosec = .init.data
* fromsec = .data
* atsym =__param*
*
*
* Pattern 2:
* Many drivers utilise a *_driver container with references to
* add, remove, probe functions etc.
...
...
@@ -508,7 +508,7 @@ static int secref_whitelist(const char *tosec, const char *fromsec,
"_probe_one"
,
NULL
};
/* Check for pattern 1 */
if
(
strcmp
(
tosec
,
".init.data"
)
!=
0
)
f1
=
0
;
...
...
@@ -521,7 +521,7 @@ static int secref_whitelist(const char *tosec, const char *fromsec,
return
f1
;
/* Check for pattern 2 */
if
((
strcmp
(
tosec
,
".init.text"
)
!=
0
)
&&
if
((
strcmp
(
tosec
,
".init.text"
)
!=
0
)
&&
(
strcmp
(
tosec
,
".exit.text"
)
!=
0
))
f2
=
0
;
if
(
strcmp
(
fromsec
,
".data"
)
!=
0
)
...
...
@@ -570,7 +570,7 @@ static void find_symbols_between(struct elf_info *elf, Elf_Addr addr,
Elf_Addr
afterdiff
=
~
0
;
const
char
*
secstrings
=
(
void
*
)
hdr
+
elf
->
sechdrs
[
hdr
->
e_shstrndx
].
sh_offset
;
*
before
=
NULL
;
*
after
=
NULL
;
...
...
@@ -614,7 +614,7 @@ static void warn_sec_mismatch(const char *modname, const char *fromsec,
const
char
*
secstrings
=
(
void
*
)
hdr
+
sechdrs
[
hdr
->
e_shstrndx
].
sh_offset
;
const
char
*
secname
=
secstrings
+
sechdrs
[
sym
->
st_shndx
].
sh_name
;
find_symbols_between
(
elf
,
r
.
r_offset
,
fromsec
,
&
before
,
&
after
);
refsym
=
find_elf_symbol
(
elf
,
r
.
r_addend
,
sym
);
...
...
@@ -622,10 +622,10 @@ static void warn_sec_mismatch(const char *modname, const char *fromsec,
refsymname
=
elf
->
strtab
+
refsym
->
st_name
;
/* check whitelist - we may ignore it */
if
(
before
&&
if
(
before
&&
secref_whitelist
(
secname
,
fromsec
,
elf
->
strtab
+
before
->
st_name
))
return
;
if
(
before
&&
after
)
{
warn
(
"%s - Section mismatch: reference to %s:%s from %s "
"between '%s' (at offset 0x%llx) and '%s'
\n
"
,
...
...
@@ -636,13 +636,13 @@ static void warn_sec_mismatch(const char *modname, const char *fromsec,
}
else
if
(
before
)
{
warn
(
"%s - Section mismatch: reference to %s:%s from %s "
"after '%s' (at offset 0x%llx)
\n
"
,
modname
,
secname
,
refsymname
,
fromsec
,
modname
,
secname
,
refsymname
,
fromsec
,
elf
->
strtab
+
before
->
st_name
,
(
long
long
)
r
.
r_offset
);
}
else
if
(
after
)
{
warn
(
"%s - Section mismatch: reference to %s:%s from %s "
"before '%s' (at offset -0x%llx)
\n
"
,
modname
,
secname
,
refsymname
,
fromsec
,
modname
,
secname
,
refsymname
,
fromsec
,
elf
->
strtab
+
before
->
st_name
,
(
long
long
)
r
.
r_offset
);
}
else
{
...
...
@@ -676,7 +676,7 @@ static void check_sec_ref(struct module *mod, const char *modname,
Elf_Shdr
*
sechdrs
=
elf
->
sechdrs
;
const
char
*
secstrings
=
(
void
*
)
hdr
+
sechdrs
[
hdr
->
e_shstrndx
].
sh_offset
;
/* Walk through all sections */
for
(
i
=
0
;
i
<
hdr
->
e_shnum
;
i
++
)
{
Elf_Rela
*
rela
;
...
...
@@ -724,13 +724,13 @@ static int init_section(const char *name)
/**
* Identify sections from which references to a .init section is OK.
*
*
* Unfortunately references to read only data that referenced .init
* sections had to be excluded. Almost all of these are false
* positives, they are created by gcc. The downside of excluding rodata
* is that there really are some user references from rodata to
* init code, e.g. drivers/video/vgacon.c:
*
*
* const struct consw vga_con = {
* con_startup: vgacon_startup,
*
...
...
@@ -769,10 +769,10 @@ static int init_section_ref_ok(const char *name)
for
(
s
=
namelist1
;
*
s
;
s
++
)
if
(
strcmp
(
*
s
,
name
)
==
0
)
return
1
;
for
(
s
=
namelist2
;
*
s
;
s
++
)
for
(
s
=
namelist2
;
*
s
;
s
++
)
if
(
strncmp
(
*
s
,
name
,
strlen
(
*
s
))
==
0
)
return
1
;
for
(
s
=
namelist3
;
*
s
;
s
++
)
for
(
s
=
namelist3
;
*
s
;
s
++
)
if
(
strstr
(
*
s
,
name
)
!=
NULL
)
return
1
;
return
0
;
...
...
@@ -792,12 +792,12 @@ static int exit_section(const char *name)
if
(
strcmp
(
name
,
".exit.data"
)
==
0
)
return
1
;
return
0
;
}
/*
* Identify sections from which references to a .exit section is OK.
*
*
* [OPD] Keith Ownes <kaos@sgi.com> commented:
* For our future {in}sanity, add a comment that this is the ppc .opd
* section, not the ia64 .opd section.
...
...
@@ -829,14 +829,14 @@ static int exit_section_ref_ok(const char *name)
".unwind"
,
/* Sample: IA_64.unwind.exit.text */
NULL
};
for
(
s
=
namelist1
;
*
s
;
s
++
)
if
(
strcmp
(
*
s
,
name
)
==
0
)
return
1
;
for
(
s
=
namelist2
;
*
s
;
s
++
)
for
(
s
=
namelist2
;
*
s
;
s
++
)
if
(
strncmp
(
*
s
,
name
,
strlen
(
*
s
))
==
0
)
return
1
;
for
(
s
=
namelist3
;
*
s
;
s
++
)
for
(
s
=
namelist3
;
*
s
;
s
++
)
if
(
strstr
(
*
s
,
name
)
!=
NULL
)
return
1
;
return
0
;
...
...
@@ -900,7 +900,7 @@ void __attribute__((format(printf, 2, 3))) buf_printf(struct buffer *buf,
char
tmp
[
SZ
];
int
len
;
va_list
ap
;
va_start
(
ap
,
fmt
);
len
=
vsnprintf
(
tmp
,
SZ
,
fmt
,
ap
);
if
(
buf
->
size
-
buf
->
pos
<
len
+
1
)
{
...
...
@@ -1129,7 +1129,7 @@ static int dump_sym(struct symbol *sym)
return
0
;
return
1
;
}
static
void
write_dump
(
const
char
*
fname
)
{
struct
buffer
buf
=
{
};
...
...
@@ -1141,7 +1141,7 @@ static void write_dump(const char *fname)
while
(
symbol
)
{
if
(
dump_sym
(
symbol
))
buf_printf
(
&
buf
,
"0x%08x
\t
%s
\t
%s
\n
"
,
symbol
->
crc
,
symbol
->
name
,
symbol
->
crc
,
symbol
->
name
,
symbol
->
module
->
name
);
symbol
=
symbol
->
next
;
}
...
...
scripts/mod/modpost.h
浏览文件 @
62070fa4
...
...
@@ -13,8 +13,8 @@
#if KERNEL_ELFCLASS == ELFCLASS32
#define Elf_Ehdr Elf32_Ehdr
#define Elf_Shdr Elf32_Shdr
#define Elf_Ehdr Elf32_Ehdr
#define Elf_Shdr Elf32_Shdr
#define Elf_Sym Elf32_Sym
#define Elf_Addr Elf32_Addr
#define Elf_Section Elf32_Section
...
...
@@ -26,8 +26,8 @@
#define ELF_R_TYPE ELF32_R_TYPE
#else
#define Elf_Ehdr Elf64_Ehdr
#define Elf_Shdr Elf64_Shdr
#define Elf_Ehdr Elf64_Ehdr
#define Elf_Shdr Elf64_Shdr
#define Elf_Sym Elf64_Sym
#define Elf_Addr Elf64_Addr
#define Elf_Section Elf64_Section
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录