Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
af9df9e3
Commit
af9df9e3
authored
Jan 14, 2003
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Plain Diff
Merge
parents
b1975584
a0b7ca57
Changes
56
Hide whitespace changes
Inline
Side-by-side
Showing
56 changed files
with
364 additions
and
343 deletions
+364
-343
Makefile
Makefile
+11
-0
arch/alpha/vmlinux.lds.S
arch/alpha/vmlinux.lds.S
+2
-3
arch/arm/vmlinux-armo.lds.in
arch/arm/vmlinux-armo.lds.in
+4
-13
arch/arm/vmlinux-armv.lds.in
arch/arm/vmlinux-armv.lds.in
+4
-19
arch/cris/vmlinux.lds.S
arch/cris/vmlinux.lds.S
+3
-11
arch/i386/Makefile
arch/i386/Makefile
+4
-0
arch/i386/kernel/acpi.c
arch/i386/kernel/acpi.c
+7
-1
arch/i386/kernel/cpu/cpufreq/gx-suspmod.c
arch/i386/kernel/cpu/cpufreq/gx-suspmod.c
+1
-0
arch/i386/kernel/io_apic.c
arch/i386/kernel/io_apic.c
+8
-8
arch/i386/kernel/mpparse.c
arch/i386/kernel/mpparse.c
+3
-3
arch/i386/kernel/smp.c
arch/i386/kernel/smp.c
+1
-0
arch/i386/kernel/smpboot.c
arch/i386/kernel/smpboot.c
+2
-2
arch/i386/vmlinux.lds.S
arch/i386/vmlinux.lds.S
+4
-15
arch/ia64/vmlinux.lds.S
arch/ia64/vmlinux.lds.S
+2
-0
arch/m68k/vmlinux-std.lds
arch/m68k/vmlinux-std.lds
+4
-9
arch/m68k/vmlinux-sun3.lds
arch/m68k/vmlinux-sun3.lds
+4
-11
arch/m68knommu/vmlinux.lds.S
arch/m68knommu/vmlinux.lds.S
+2
-8
arch/mips/vmlinux.lds.S
arch/mips/vmlinux.lds.S
+4
-11
arch/mips64/ld.script.elf64
arch/mips64/ld.script.elf64
+1
-0
arch/mips64/vmlinux.lds.S
arch/mips64/vmlinux.lds.S
+4
-4
arch/parisc/vmlinux.lds.S
arch/parisc/vmlinux.lds.S
+7
-20
arch/ppc/vmlinux.lds.S
arch/ppc/vmlinux.lds.S
+4
-19
arch/ppc64/boot/zImage.lds
arch/ppc64/boot/zImage.lds
+1
-0
arch/ppc64/vmlinux.lds.S
arch/ppc64/vmlinux.lds.S
+5
-17
arch/s390/vmlinux.lds.S
arch/s390/vmlinux.lds.S
+4
-11
arch/s390x/vmlinux.lds.S
arch/s390x/vmlinux.lds.S
+4
-11
arch/sh/vmlinux.lds.S
arch/sh/vmlinux.lds.S
+3
-13
arch/sparc/vmlinux.lds.S
arch/sparc/vmlinux.lds.S
+4
-15
arch/sparc64/vmlinux.lds.S
arch/sparc64/vmlinux.lds.S
+6
-13
arch/um/uml.lds.S
arch/um/uml.lds.S
+4
-7
arch/v850/vmlinux.lds.S
arch/v850/vmlinux.lds.S
+2
-9
arch/x86_64/vmlinux.lds.S
arch/x86_64/vmlinux.lds.S
+4
-14
drivers/isdn/hisax/config.c
drivers/isdn/hisax/config.c
+1
-1
drivers/isdn/hisax/hisax_fcpcipnp.c
drivers/isdn/hisax/hisax_fcpcipnp.c
+1
-1
drivers/isdn/i4l/isdn_ppp_ccp.c
drivers/isdn/i4l/isdn_ppp_ccp.c
+1
-1
fs/devfs/Makefile
fs/devfs/Makefile
+0
-24
fs/devpts/inode.c
fs/devpts/inode.c
+1
-1
include/asm-generic/vmlinux.lds.h
include/asm-generic/vmlinux.lds.h
+24
-0
include/asm-i386/apicdef.h
include/asm-i386/apicdef.h
+7
-2
include/asm-i386/mach-bigsmp/mach_apic.h
include/asm-i386/mach-bigsmp/mach_apic.h
+13
-2
include/asm-i386/mach-default/mach_apic.h
include/asm-i386/mach-default/mach_apic.h
+10
-0
include/asm-i386/mach-default/mach_mpparse.h
include/asm-i386/mach-default/mach_mpparse.h
+6
-0
include/asm-i386/mach-numaq/mach_apic.h
include/asm-i386/mach-numaq/mach_apic.h
+11
-0
include/asm-i386/mach-numaq/mach_mpparse.h
include/asm-i386/mach-numaq/mach_mpparse.h
+5
-0
include/asm-i386/mach-summit/mach_apic.h
include/asm-i386/mach-summit/mach_apic.h
+49
-10
include/asm-i386/mach-summit/mach_mpparse.h
include/asm-i386/mach-summit/mach_mpparse.h
+9
-1
include/asm-i386/module.h
include/asm-i386/module.h
+44
-0
include/asm-i386/mpspec.h
include/asm-i386/mpspec.h
+3
-3
include/asm-i386/smp.h
include/asm-i386/smp.h
+0
-12
include/linux/cpufreq.h
include/linux/cpufreq.h
+1
-1
include/linux/fs.h
include/linux/fs.h
+0
-2
include/linux/i2c.h
include/linux/i2c.h
+0
-8
init/Makefile
init/Makefile
+2
-1
init/vermagic.c
init/vermagic.c
+22
-0
kernel/module.c
kernel/module.c
+22
-2
scripts/Makefile.build
scripts/Makefile.build
+9
-4
No files found.
Makefile
View file @
af9df9e3
...
...
@@ -394,6 +394,17 @@ $(SUBDIRS): .hdepend prepare
prepare
:
include/linux/version.h include/asm include/config/MARKER
@
echo
' Starting the build. KBUILD_BUILTIN=
$(KBUILD_BUILTIN)
KBUILD_MODULES=
$(KBUILD_MODULES)
'
# We need to build init/vermagic.o before descending since all modules
# (*.ko) need it already
ifdef
CONFIG_MODULES
prepare
:
init/vermagic.o
init/vermagic.o
:
include/linux/version.h
endif
# This can be used by arch/$ARCH/Makefile to preprocess
# their vmlinux.lds.S file
...
...
arch/alpha/vmlinux.lds.S
View file @
af9df9e3
#include <linux/config.h>
#include <asm-generic/vmlinux.lds.h>
OUTPUT_FORMAT
("
elf64
-
alpha
")
OUTPUT_ARCH
(
alpha
)
...
...
@@ -20,9 +21,7 @@ SECTIONS
*(.
gnu.warning
)
}
:
kernel
_etext
=
.
; /* End of text section */
.
rodata
:
{
*(
.
rodata
)
*(
.
rodata
.
*)
}
.
kstrtab
:
{
*(
.
kstrtab
)
}
RODATA
.
=
ALIGN
(
16
)
;
__start___ex_table
=
.
; /* Exception table */
...
...
arch/arm/vmlinux-armo.lds.in
View file @
af9df9e3
...
...
@@ -2,6 +2,9 @@
* taken from the i386 version by Russell King
* Written by Martin Mares <mj@atrey.karlin.mff.cuni.cz>
*/
#include <asm-generic/vmlinux.lds.h>
OUTPUT_ARCH(arm)
ENTRY(stext)
jiffies = jiffies_64;
...
...
@@ -63,8 +66,6 @@ SECTIONS
_etext = .; /* End of text section */
}
.kstrtab : { *(.kstrtab) }
. = ALIGN(16);
__ex_table : { /* Exception table */
__start___ex_table = .;
...
...
@@ -72,17 +73,7 @@ SECTIONS
__stop___ex_table = .;
}
__ksymtab : { /* Kernel symbol table */
__start___ksymtab = .;
*(__ksymtab)
__stop___ksymtab = .;
}
__gpl_ksymtab : { /* Kernel symbol table: GPL-only */
__start___gpl_ksymtab = .;
*(__gpl_ksymtab)
__stop___gpl_ksymtab = .;
}
RODATA
.data : {
/*
...
...
arch/arm/vmlinux-armv.lds.in
View file @
af9df9e3
...
...
@@ -2,6 +2,9 @@
* taken from the i386 version by Russell King
* Written by Martin Mares <mj@atrey.karlin.mff.cuni.cz>
*/
#include <asm-generic/vmlinux.lds.h>
OUTPUT_ARCH(arm)
ENTRY(stext)
jiffies = jiffies_64;
...
...
@@ -66,8 +69,6 @@ SECTIONS
_etext = .; /* End of text section */
}
.kstrtab : { *(.kstrtab) }
. = ALIGN(16);
__ex_table : { /* Exception table */
__start___ex_table = .;
...
...
@@ -75,23 +76,7 @@ SECTIONS
__stop___ex_table = .;
}
__gpl_ksymtab : { /* GPL Kernel symbol table */
__start___gpl_ksymtab = .;
*(__gpl_ksymtab)
__stop___gpl_ksymtab = .;
}
__ksymtab : { /* Kernel symbol table */
__start___ksymtab = .;
*(__ksymtab)
__stop___ksymtab = .;
}
__kallsyms : { /* All kernel symbols */
__start___kallsyms = .;
*(__kallsyms)
__stop___kallsyms = .;
}
RODATA
. = ALIGN(8192);
...
...
arch/cris/vmlinux.lds.S
View file @
af9df9e3
...
...
@@ -9,7 +9,8 @@
*/
#include <linux/config.h>
#include <asm-generic/vmlinux.lds.h>
jiffies
=
jiffies_64
;
SECTIONS
{
...
...
@@ -31,21 +32,12 @@ SECTIONS
_etext
=
.
; /* End of text section */
__etext
=
.
;
.
rodata
:
{
*(
.
rodata
)
*(
.
rodata
.
__
*)
}
.
kstrtab
:
{
*(
.
kstrtab
)
}
.
=
ALIGN
(
4
)
; /* Exception table */
__start___ex_table
=
.
;
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
__start___ksymtab
=
.
; /* Kernel symbol table */
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
__start___gpl_ksymtab
=
.
; /* Kernel symbol table: GPL-only */
__gpl_ksymtab
:
{
*(
__gpl_ksymtab
)
}
__stop___gpl_ksymtab
=
.
;
RODATA
.
=
ALIGN
(
4
)
;
___data_start
=
.
;
...
...
arch/i386/Makefile
View file @
af9df9e3
...
...
@@ -69,6 +69,10 @@ mcore-$(CONFIG_X86_NUMAQ) := mach-default
mflags-$(CONFIG_X86_BIGSMP)
:=
-Iinclude
/asm-i386/mach-bigsmp
mcore-$(CONFIG_X86_BIGSMP)
:=
mach-default
#Summit subarch support
mflags-$(CONFIG_X86_SUMMIT)
:=
-Iinclude
/asm-i386/mach-summit
mcore-$(CONFIG_X86_SUMMIT)
:=
mach-default
# default subarch .h files
mflags-y
+=
-Iinclude
/asm-i386/mach-default
...
...
arch/i386/kernel/acpi.c
View file @
af9df9e3
...
...
@@ -44,6 +44,8 @@
#include <asm/io_apic.h>
#include <asm/tlbflush.h>
#include <mach_apic.h>
#include <mach_mpparse.h>
#define PREFIX "ACPI: "
...
...
@@ -126,6 +128,8 @@ acpi_parse_madt (
printk
(
KERN_INFO
PREFIX
"Local APIC address 0x%08x
\n
"
,
madt
->
lapic_address
);
acpi_madt_oem_check
(
madt
->
header
.
oem_id
,
madt
->
header
.
oem_table_id
);
return
0
;
}
...
...
@@ -430,8 +434,10 @@ acpi_boot_init (
#endif
/*CONFIG_X86_IO_APIC*/
#ifdef CONFIG_X86_LOCAL_APIC
if
(
acpi_lapic
&&
acpi_ioapic
)
if
(
acpi_lapic
&&
acpi_ioapic
)
{
smp_found_config
=
1
;
clustered_apic_check
();
}
#endif
return
0
;
...
...
arch/i386/kernel/cpu/cpufreq/gx-suspmod.c
View file @
af9df9e3
...
...
@@ -482,6 +482,7 @@ static int __init cpufreq_gx_init(void)
driver
->
policy
[
0
].
cpuinfo
.
transition_latency
=
CPUFREQ_ETERNAL
;
driver
->
verify
=
&
cpufreq_gx_verify
;
driver
->
setpolicy
=
&
cpufreq_gx_setpolicy
;
strncpy
(
driver
->
name
,
"gx-suspmod"
,
CPUFREQ_NAME_LEN
);
gx_driver
=
driver
;
...
...
arch/i386/kernel/io_apic.c
View file @
af9df9e3
...
...
@@ -278,7 +278,7 @@ static inline void balance_irq(int irq)
new_cpu
=
move
(
entry
->
cpu
,
allowed_mask
,
now
,
random_number
);
if
(
entry
->
cpu
!=
new_cpu
)
{
entry
->
cpu
=
new_cpu
;
set_ioapic_affinity
(
irq
,
1
<<
new_cpu
);
set_ioapic_affinity
(
irq
,
cpu_to_logical_apicid
(
new_cpu
)
);
}
}
}
...
...
@@ -719,8 +719,8 @@ void __init setup_IO_APIC_irqs(void)
*/
memset
(
&
entry
,
0
,
sizeof
(
entry
));
entry
.
delivery_mode
=
dest_LowestPrio
;
entry
.
dest_mode
=
INT_DE
LIVERY
_MODE
;
entry
.
delivery_mode
=
INT_DELIVERY_MODE
;
entry
.
dest_mode
=
INT_DE
ST
_MODE
;
entry
.
mask
=
0
;
/* enable IRQ */
entry
.
dest
.
logical
.
logical_dest
=
TARGET_CPUS
;
...
...
@@ -799,10 +799,10 @@ void __init setup_ExtINT_IRQ0_pin(unsigned int pin, int vector)
* We use logical delivery to get the timer IRQ
* to the first CPU.
*/
entry
.
dest_mode
=
INT_DE
LIVERY
_MODE
;
entry
.
dest_mode
=
INT_DE
ST
_MODE
;
entry
.
mask
=
0
;
/* unmask IRQ now */
entry
.
dest
.
logical
.
logical_dest
=
TARGET_CPUS
;
entry
.
delivery_mode
=
dest_LowestPrio
;
entry
.
delivery_mode
=
INT_DELIVERY_MODE
;
entry
.
polarity
=
0
;
entry
.
trigger
=
0
;
entry
.
vector
=
vector
;
...
...
@@ -1763,7 +1763,7 @@ late_initcall(io_apic_bug_finalize);
#ifdef CONFIG_ACPI_BOOT
#define IO_APIC_MAX_ID
15
#define IO_APIC_MAX_ID
APIC_BROADCAST_ID
int
__init
io_apic_get_unique_id
(
int
ioapic
,
int
apic_id
)
{
...
...
@@ -1880,8 +1880,8 @@ int io_apic_set_pci_routing (int ioapic, int pin, int irq)
memset
(
&
entry
,
0
,
sizeof
(
entry
));
entry
.
delivery_mode
=
dest_LowestPrio
;
entry
.
dest_mode
=
INT_DE
LIVERY
_MODE
;
entry
.
delivery_mode
=
INT_DELIVERY_MODE
;
entry
.
dest_mode
=
INT_DE
ST
_MODE
;
entry
.
dest
.
logical
.
logical_dest
=
TARGET_CPUS
;
entry
.
mask
=
1
;
/* Disabled (masked) */
entry
.
trigger
=
1
;
/* Level sensitive */
...
...
arch/i386/kernel/mpparse.c
View file @
af9df9e3
...
...
@@ -72,8 +72,8 @@ static unsigned int __initdata num_processors;
/* Bitmask of physically existing CPUs */
unsigned
long
phys_cpu_present_map
;
int
summit_x86
=
0
;
u8
raw_phys
_apicid
[
NR_CPUS
]
=
{
[
0
...
NR_CPUS
-
1
]
=
BAD_APICID
};
int
x86_summit
=
0
;
u8
bios_cpu
_apicid
[
NR_CPUS
]
=
{
[
0
...
NR_CPUS
-
1
]
=
BAD_APICID
};
/*
* Intel MP BIOS table parsing routines:
...
...
@@ -186,7 +186,7 @@ void __init MP_processor_info (struct mpc_config_processor *m)
ver
=
0x10
;
}
apic_version
[
m
->
mpc_apicid
]
=
ver
;
raw_phys
_apicid
[
num_processors
-
1
]
=
m
->
mpc_apicid
;
bios_cpu
_apicid
[
num_processors
-
1
]
=
m
->
mpc_apicid
;
}
static
void
__init
MP_bus_info
(
struct
mpc_config_bus
*
m
)
...
...
arch/i386/kernel/smp.c
View file @
af9df9e3
...
...
@@ -24,6 +24,7 @@
#include <asm/pgalloc.h>
#include <asm/tlbflush.h>
#include <mach_ipi.h>
#include <mach_apic.h>
/*
* Some notes on x86 processor bugs affecting SMP operation:
...
...
arch/i386/kernel/smpboot.c
View file @
af9df9e3
...
...
@@ -1045,10 +1045,10 @@ static void __init smp_boot_cpus(unsigned int max_cpus)
/*
* Don't even attempt to start the boot CPU!
*/
if
(
apicid
==
boot_cpu_apicid
)
if
(
(
apicid
==
boot_cpu_apicid
)
||
(
apicid
==
BAD_APICID
)
)
continue
;
if
(
!
(
phys_cpu_present_map
&
(
1
<<
bit
)
))
if
(
!
check_apicid_present
(
bit
))
continue
;
if
(
max_cpus
<=
cpucount
+
1
)
continue
;
...
...
arch/i386/vmlinux.lds.S
View file @
af9df9e3
/*
ld
script
to
make
i386
Linux
kernel
*
Written
by
Martin
Mares
<
mj
@
atrey
.
karlin
.
mff
.
cuni
.
cz
>
;
*/
#include <asm-generic/vmlinux.lds.h>
OUTPUT_FORMAT
("
elf32
-
i386
",
"
elf32
-
i386
",
"elf32-i386"
)
OUTPUT_ARCH
(
i386
)
ENTRY
(
_start
)
...
...
@@ -18,26 +21,12 @@ SECTIONS
_etext
=
.
; /* End of text section */
.
rodata
:
{
*(
.
rodata
)
*(
.
rodata
.
*)
}
.
kstrtab
:
{
*(
.
kstrtab
)
}
.
=
ALIGN
(
16
)
; /* Exception table */
__start___ex_table
=
.
;
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
.
=
ALIGN
(
64
)
;
__start___ksymtab
=
.
; /* Kernel symbol table */
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
__start___gpl_ksymtab
=
.
; /* Kernel symbol table: GPL-only symbols */
__gpl_ksymtab
:
{
*(
__gpl_ksymtab
)
}
__stop___gpl_ksymtab
=
.
;
__start___kallsyms
=
.
; /* All kernel symbols */
__kallsyms
:
{
*(
__kallsyms
)
}
__stop___kallsyms
=
.
;
RODATA
/
*
writeable
*/
.
data
:
{
/*
Data
*/
...
...
arch/ia64/vmlinux.lds.S
View file @
af9df9e3
...
...
@@ -90,6 +90,8 @@ SECTIONS
{
*(
.
rodata
)
*(
.
rodata
.
*)
}
.
kstrtab
:
AT
(
ADDR
(
.
kstrtab
)
-
PAGE_OFFSET
)
{
*(
.
kstrtab
)
}
__vermagic
:
AT
(
ADDR
(
__vermagic
)
-
PAGE_OFFSET
)
{
*(
__vermagic
)
}
.
opd
:
AT
(
ADDR
(
.
opd
)
-
PAGE_OFFSET
)
{
*(
.
opd
)
}
...
...
arch/m68k/vmlinux-std.lds
View file @
af9df9e3
/* ld script to make m68k Linux kernel */
#include <asm-generic/vmlinux.lds.h>
OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k")
OUTPUT_ARCH(m68k)
ENTRY(_start)
...
...
@@ -12,21 +15,13 @@ SECTIONS
*(.fixup)
*(.gnu.warning)
} = 0x4e75
.rodata : { *(.rodata) *(.rodata.*) }
.kstrtab : { *(.kstrtab) }
. = ALIGN(16); /* Exception table */
__start___ex_table = .;
__ex_table : { *(__ex_table) }
__stop___ex_table = .;
__start___ksymtab = .; /* Kernel symbol table */
__ksymtab : { *(__ksymtab) }
__stop___ksymtab = .;
__start___gpl_ksymtab = .; /* Kernel symbol table: GPL only */
__gpl_ksymtab : { *(__gpl_ksymtab) }
__stop___gpl_ksymtab = .;
RODATA
_etext = .; /* End of text section */
...
...
arch/m68k/vmlinux-sun3.lds
View file @
af9df9e3
/* ld script to make m68k Linux kernel */
#include <asm-generic/vmlinux.lds.h>
OUTPUT_FORMAT("elf32-m68k", "elf32-m68k", "elf32-m68k")
OUTPUT_ARCH(m68k)
ENTRY(_start)
...
...
@@ -13,26 +16,16 @@ SECTIONS
*(.fixup)
*(.gnu.warning)
} = 0x4e75
.kstrtab : { *(.kstrtab) }
_etext = .; /* End of text section */
.data : { /* Data */
*(.rodata)
*(.rodata.*)
*(.data)
RODATA
CONSTRUCTORS
. = ALIGN(16); /* Exception table */
__start___ex_table = .;
*(__ex_table)
__stop___ex_table = .;
__start___ksymtab = .; /* Kernel symbol table */
*(__ksymtab)
__stop___ksymtab = .;
__start___gpl_ksymtab = .; /* Kernel symbol table: GPL-only */
__gpl_ksymtab : { *(__gpl_ksymtab) }
__stop___gpl_ksymtab = .;
}
/* End of data goes *here* so that freeing init code works properly. */
_edata = .;
...
...
arch/m68knommu/vmlinux.lds.S
View file @
af9df9e3
...
...
@@ -10,6 +10,7 @@
*/
#include <linux/config.h>
#include <asm-generic/vmlinux.lds.h>
/*
*
Original
Palm
pilot
(
same
for
Xcopilot
)
.
...
...
@@ -219,20 +220,13 @@ SECTIONS {
_stext
=
.
;
*(.
text
)
*(.
text.lock
)
*(.
rodata
)
*(.
rodata
.*)
.
=
ALIGN
(
0x4
)
;
*(.
kstrtab
)
.
=
ALIGN
(
16
)
; /* Exception table */
__start___ex_table
=
.
;
*(
__ex_table
)
__stop___ex_table
=
.
;
__start___ksymtab
=
.
; /* Kernel symbol table */
*(
__ksymtab
)
__stop___ksymtab
=
.
;
RODATA
.
=
ALIGN
(
4
)
;
_etext
=
.
;
...
...
arch/mips/vmlinux.lds.S
View file @
af9df9e3
#include <asm-generic/vmlinux.lds.h>
OUTPUT_ARCH
(
mips
)
ENTRY
(
kernel_entry
)
SECTIONS
...
...
@@ -9,12 +11,9 @@ SECTIONS
{
_ftext
=
.
;
*(.
text
)
*(.
rodata
)
*(.
rodata1
)
/
*
.
gnu
.
warning
sections
are
handled
specially
by
elf32
.
em
.
*/
*(.
gnu.warning
)
}
=
0
.
kstrtab
:
{
*(
.
kstrtab
)
}
.
=
ALIGN
(
16
)
; /* Exception table */
__start___ex_table
=
.
;
...
...
@@ -25,14 +24,8 @@ SECTIONS
__dbe_table
:
{
*(
__dbe_table
)
}
__stop___dbe_table
=
.
;
__start___ksymtab
=
.
; /* Kernel symbol table */
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
__start___gpl_ksymtab
=
.
; /* Kernel symbol table: GPL-only symbols */
__gpl_ksymtab
:
{
*(
__gpl_ksymtab
)
}
__stop___gpl_ksymtab
=
.
;
RODATA
_etext
=
.
;
.
=
ALIGN
(
8192
)
;
...
...
arch/mips64/ld.script.elf64
View file @
af9df9e3
...
...
@@ -25,6 +25,7 @@ SECTIONS
*(.gnu.warning)
} = 0
.kstrtab : { *(.kstrtab) }
__vermagic : { *(__vermagic) }
. = ALIGN(16); /* Exception table */
__start___ex_table = .;
...
...
arch/mips64/vmlinux.lds.S
View file @
af9df9e3
#include <asm-generic/vmlinux.lds.h>
OUTPUT_ARCH
(
mips
)
ENTRY
(
kernel_entry
)
SECTIONS
...
...
@@ -7,13 +9,9 @@ SECTIONS
.
text
:
{
*(.
text
)
*(.
rodata
)
*(.
rodata
.*)
*(.
rodata1
)
/
*
.
gnu
.
warning
sections
are
handled
specially
by
elf32
.
em
.
*/
*(.
gnu.warning
)
}
=
0
.
kstrtab
:
{
*(
.
kstrtab
)
}
.
=
ALIGN
(
16
)
; /* Exception table */
__start___ex_table
=
.
;
...
...
@@ -24,6 +22,8 @@ SECTIONS
__dbe_table
:
{
*(
__dbe_table
)
}
__stop___dbe_table
=
.
;
RODATA
_etext
=
.
;
.
=
ALIGN
(
16384
)
;
...
...
arch/parisc/vmlinux.lds.S
View file @
af9df9e3
#include <linux/config.h>
#include <asm-generic/vmlinux.lds.h>
/*
ld
script
to
make
hppa
Linux
kernel
*/
#ifndef CONFIG_PARISC64
OUTPUT_FORMAT
("
elf32
-
hppa
-
linux
")
...
...
@@ -31,31 +32,17 @@ SECTIONS
_etext
=
.
; /* End of text section */
.
=
ALIGN
(
16
)
;
.
rodata
:
{
*(
.
rodata
)
*(
.
rodata
.
*)
}
.
kstrtab
:
{
*(
.
kstrtab
)
}
.
data
BLOCK
(
8192
)
:
{
/*
Data
without
special
*/
data_start
=
.
;
*(.
data
)
}
.
=
ALIGN
(
16
)
; /* Exception table */
__start___ex_table
=
.
;
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
__start___ksymtab
=
.
; /* Kernel symbol table */
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
__start___gpl_ksymtab
=
.
; /* Kernel symbol table: GPL-only symbols */
__gpl_ksymtab
:
{
*(
__gpl_ksymtab
)
}
__stop___gpl_ksymtab
=
.
;
RODATA
__start___kallsyms
=
.
; /* All kernel symbols */
__kallsyms
:
{
*(
__kallsyms
)
}
__stop___kallsyms
=
.
;
.
data
BLOCK
(
8192
)
:
{
/*
Data
without
special
*/
data_start
=
.
;
*(.
data
)
}
#ifdef CONFIG_PARISC64
.
=
ALIGN
(
16
)
; /* Linkage tables */
...
...
arch/ppc/vmlinux.lds.S
View file @
af9df9e3
#include <asm-generic/vmlinux.lds.h>
OUTPUT_ARCH
(
powerpc
)
SEARCH_DIR
(/
lib
)
; SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/local/lib); SEARCH_DIR(/usr/local/powerpc-any-elf/lib);
/*
Do
we
need
any
of
these
for
elf
?
...
...
@@ -40,13 +42,8 @@ SECTIONS
}
_etext
=
.
;
PROVIDE
(
etext
=
.
)
;
.
rodata
:
{
*(.
rodata
)
*(.
rodata
.*)
*(.
rodata1
)
}
.
kstrtab
:
{
*(
.
kstrtab
)
}
RODATA
.
fini
:
{
*(
.
fini
)
}
=
0
.
ctors
:
{
*(
.
ctors
)
}
.
dtors
:
{
*(
.
dtors
)
}
...
...
@@ -57,18 +54,6 @@ SECTIONS
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
__start___ksymtab
=
.
; /* Kernel symbol table */
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
__start___gpl_ksymtab
=
.
; /* Kernel symbol table: GPL-only symbols */
__gpl_ksymtab
:
{
*(
__gpl_ksymtab
)
}
__stop___gpl_ksymtab
=
.
;
__start___kallsyms
=
.
; /* All kernel symbols */
__kallsyms
:
{
*(
__kallsyms
)
}
__stop___kallsyms
=
.
;
/
*
Read
-
write
section
,
merged
into
data
segment
:
*/
.
=
ALIGN
(
4096
)
;
.
data
:
...
...
arch/ppc64/boot/zImage.lds
View file @
af9df9e3
...
...
@@ -42,6 +42,7 @@ SECTIONS
*(.rodata1)
}
.kstrtab : { *(.kstrtab) }
__vermagic : { *(__vermagic) }
.fini : { *(.fini) } =0
.ctors : { *(.ctors) }
.dtors : { *(.dtors) }
...
...
arch/ppc64/vmlinux.lds.S
View file @
af9df9e3
#include <asm-generic/vmlinux.lds.h>
OUTPUT_ARCH
(
powerpc
:
common64
)
/*
Do
we
need
any
of
these
for
elf
?
__DYNAMIC
=
0
; */
...
...
@@ -37,11 +39,9 @@ SECTIONS
.
=
ALIGN
(
4096
)
;
_etext
=
.
;
PROVIDE
(
etext
=
.
)
;
.
rodata
:
{
*(.
rodata
)
*(.
rodata1
)
}
RODATA
.
fini
:
{
*(
.
fini
)
}
=
0
.
ctors
:
{
*(
.
ctors
)
}
.
dtors
:
{
*(
.
dtors
)
}
...
...
@@ -65,18 +65,6 @@ SECTIONS
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
__start___ksymtab
=
.
; /* Kernel symbol table */
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
__start___gpl_ksymtab
=
.
; /* Kernel symbol table: GPL-only symbols */
__gpl_ksymtab
:
{
*(
__gpl_ksymtab
)
}
__stop___gpl_ksymtab
=
.
;
__start___kallsyms
=
.
; /* All kernel symbols */
__kallsyms
:
{
*(
__kallsyms
)
}
__stop___kallsyms
=
.
;
.
=
ALIGN
(
16384
)
; /* init_task */
.
data.
init_task
:
{
*(
.
data
.
init_task
)
}
...
...
arch/s390/vmlinux.lds.S
View file @
af9df9e3
/*
ld
script
to
make
s390
Linux
kernel
*
Written
by
Martin
Schwidefsky
(
schwidefsky
@
de
.
ibm
.
com
)
*/
#include <asm-generic/vmlinux.lds.h>
OUTPUT_FORMAT
("
elf32
-
s390
",
"
elf32
-
s390
",
"elf32-s390"
)
OUTPUT_ARCH
(
s390
)
ENTRY
(
_start
)
...
...
@@ -17,22 +20,12 @@ SECTIONS
_etext
=
.
; /* End of text section */
.
rodata
:
{
*(
.
rodata
)
*(
.
rodata
.
*)
}
.
kstrtab
:
{
*(
.
kstrtab
)
}
.
=
ALIGN
(
16
)
; /* Exception table */
__start___ex_table
=
.
;
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
.
=
ALIGN
(
64
)
;
__start___ksymtab
=
.
; /* Kernel symbol table */
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
__start___gpl_ksymtab
=
.
; /* Kernel symbol table: GPL-only symbols */
__gpl_ksymtab
:
{
*(
__gpl_ksymtab
)
}
__stop___gpl_ksymtab
=
.
;
RODATA
#ifdef CONFIG_SHARED_KERNEL
.
=
ALIGN
(
1048576
)
; /* VM shared segments are 1MB aligned */
...
...
arch/s390x/vmlinux.lds.S
View file @
af9df9e3
/*
*
Written
by
Martin
Schwidefsky
(
schwidefsky
@
de
.
ibm
.
com
)
*/
#include <asm-generic/vmlinux.lds.h>
OUTPUT_FORMAT
("
elf64
-
s390
",
"
elf64
-
s390
",
"elf64-s390"
)
OUTPUT_ARCH
(
s390
:
64
-
bit
)
ENTRY
(
_start
)
...
...
@@ -17,22 +20,12 @@ SECTIONS
_etext
=
.
; /* End of text section */
.
rodata
:
{
*(
.
rodata
)
*(
.
rodata
.
*)
}
.
kstrtab
:
{
*(
.
kstrtab
)
}
.
=
ALIGN
(
16
)
; /* Exception table */
__start___ex_table
=
.
;
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
.
=
ALIGN
(
64
)
;
__start___ksymtab
=
.
; /* Kernel symbol table */
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
__start___gpl_ksymtab
=
.
; /* Kernel symbol table: GPL-only symbols */
__gpl_ksymtab
:
{
*(
__gpl_ksymtab
)
}
__stop___gpl_ksymtab
=
.
;
RODATA
#ifdef CONFIG_SHARED_KERNEL
.
=
ALIGN
(
1048576
)
; /* VM shared segments are 1MB aligned */
...
...
arch/sh/vmlinux.lds.S
View file @
af9df9e3
...
...
@@ -3,6 +3,8 @@
*
Written
by
Niibe
Yutaka
*/
#include <linux/config.h>
#include <asm-generic/vmlinux.lds.h>
#ifdef CONFIG_CPU_LITTLE_ENDIAN
OUTPUT_FORMAT
("
elf32
-
sh
-
linux
",
"
elf32
-
sh
-
linux
",
"elf32-sh-linux"
)
jiffies
=
jiffies_64
;
...
...
@@ -25,25 +27,13 @@ SECTIONS
*(.
fixup
)
*(.
gnu.warning
)
}
=
0x0009
.
rodata
:
{
*(
.
rodata
)
*(
.
rodata
.
*)
}
.
kstrtab
:
{
*(
.
kstrtab
)
}
.
=
ALIGN
(
16
)
; /* Exception table */
__start___ex_table
=
.
;
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
__start___ksymtab
=
.
; /* Kernel symbol table */
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
__start___gpl_ksymtab
=
.
; /* Kernel symbol table: GPL-only symbols */
__gpl_ksymtab
:
{
*(
__gpl_ksymtab
)
}
__stop___gpl_ksymtab
=
.
;
__start___kallsyms
=
.
; /* All kernel symbols */
__kallsyms
:
{
*(
__kallsyms
)
}
__stop___kallsyms
=
.
;
RODATA
_etext
=
.
; /* End of text section */
...
...
arch/sparc/vmlinux.lds.S
View file @
af9df9e3
/*
ld
script
to
make
SparcLinux
kernel
*/
#include <asm-generic/vmlinux.lds.h>
OUTPUT_FORMAT
("
elf32
-
sparc
",
"
elf32
-
sparc
",
"elf32-sparc"
)
OUTPUT_ARCH
(
sparc
)
ENTRY
(
_start
)
...
...
@@ -13,8 +16,7 @@ SECTIONS
}
=
0
_etext
=
.
;
PROVIDE
(
etext
=
.
)
;
.
rodata
:
{
*(
.
rodata
)
*(
.
rodata
.
*)
}
.
rodata1
:
{
*(
.
rodata1
)
}
RODATA
.
data
:
{
*(.
data
)
...
...
@@ -30,19 +32,6 @@ SECTIONS
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
.
=
ALIGN
(
64
)
;
__start___ksymtab
=
.
;
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
__start___gpl_ksymtab
=
.
;
__gpl_ksymtab
:
{
*(
__gpl_ksymtab
)
}
__stop___gpl_ksymtab
=
.
;
__start___kallsyms
=
.
; /* All kernel symbols */
__kallsyms
:
{
*(
__kallsyms
)
}
__stop___kallsyms
=
.
;
.
=
ALIGN
(
4096
)
;
__init_begin
=
.
;
.
init.text
:
{
*(
.
init
.
text
)
}
...
...
arch/sparc64/vmlinux.lds.S
View file @
af9df9e3
/*
ld
script
to
make
UltraLinux
kernel
*/
#include <asm-generic/vmlinux.lds.h>
OUTPUT_FORMAT
("
elf64
-
sparc
",
"
elf64
-
sparc
",
"elf64-sparc"
)
OUTPUT_ARCH
(
sparc
:
v9a
)
ENTRY
(
_start
)
...
...
@@ -16,8 +19,9 @@ SECTIONS
}
=
0
_etext
=
.
;
PROVIDE
(
etext
=
.
)
;
.
rodata
:
{
*(
.
rodata
)
*(
.
rodata
.
*)
}
.
rodata1
:
{
*(
.
rodata1
)
}
RODATA
.
data
:
{
*(.
data
)
...
...
@@ -35,17 +39,6 @@ SECTIONS
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
.
=
ALIGN
(
64
)
;
__start___ksymtab
=
.
;
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
__start___gpl_ksymtab
=
.
;
__gpl_ksymtab
:
{
*(
__gpl_ksymtab
)
}
__stop___gpl_ksymtab
=
.
;
__kstrtab
:
{
*(
.
kstrtab
)
}
__start___kallsyms
=
.
; /* All kernel symbols */
__kallsyms
:
{
*(
__kallsyms
)
}
__stop___kallsyms
=
.
;
.
=
ALIGN
(
8192
)
;
__init_begin
=
.
;
.
init.text
:
{
*(
.
init
.
text
)
}
...
...
arch/um/uml.lds.S
View file @
af9df9e3
#include <asm-generic/vmlinux.lds.h>
OUTPUT_FORMAT
(
ELF_FORMAT
)
OUTPUT_ARCH
(
ELF_ARCH
)
ENTRY
(
_start
)
...
...
@@ -31,20 +33,15 @@ SECTIONS
*(.
gnu.warning
)
*(.
gnu.linkonce.t
*)
}
.
kstrtab
:
{
*(
.
kstrtab
)
}
.
=
ALIGN
(
16
)
; /* Exception table */
__start___ex_table
=
.
;
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
.
=
ALIGN
(
64
)
;
__start___ksymtab
=
.
; /* Kernel symbol table */
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
RODATA
.
fini
:
{
*(
.
fini
)
}
=
0x9090
.
rodata
:
{
*(
.
rodata
)
*(
.
gnu
.
linkonce
.
r
*)
}
.
rodata1
:
{
*(
.
rodata1
)
}
_etext
=
.
;
PROVIDE
(
etext
=
.
)
;
...
...
arch/v850/vmlinux.lds.S
View file @
af9df9e3
...
...
@@ -12,6 +12,7 @@
*/
#include <linux/config.h>
#include <asm-generic/vmlinux.lds.h>
/*
The
following
macros
contain
the
usual
definitions
for
various
data
areas
.
...
...
@@ -38,9 +39,7 @@
*(.
text.lock
)
\
*(.
exitcall.exit
)
\
__real_etext
=
.
; /* There may be data after here. */ \
*(.
rodata
)
\
.
=
ALIGN
(
0x4
)
; \
*(.
kstrtab
)
\
RODATA
\
.
=
ALIGN
(
4
)
; \
*(.
call_table_data
)
\
*(.
call_table_text
)
\
...
...
@@ -48,12 +47,6 @@
___start___ex_table
=
.
; \
*(
__ex_table
)
\
___stop___ex_table
=
.
; \
___start___ksymtab
=
.
;/* Kernel symbol table. */ \
*(
__ksymtab
)
\
___stop___ksymtab
=
.
; \
___start___gpl_ksymtab
=
.
; /* Same for GPL symbols. */ \
*(
__gpl_ksymtab
)
\
___stop___gpl_ksymtab
=
.
; \
.
=
ALIGN
(
4
)
; \
__etext
=
.
;
...
...
arch/x86_64/vmlinux.lds.S
View file @
af9df9e3
/*
ld
script
to
make
x86
-
64
Linux
kernel
*
Written
by
Martin
Mares
<
mj
@
atrey
.
karlin
.
mff
.
cuni
.
cz
>
;
*/
#include <asm-generic/vmlinux.lds.h>
OUTPUT_FORMAT
("
elf64
-
x86
-
64
",
"
elf64
-
x86
-64",
"elf64-x86-64"
)
OUTPUT_ARCH
(
i386
:
x86
-
64
)
ENTRY
(
_start
)
...
...
@@ -18,25 +21,12 @@ SECTIONS
_etext
=
.
; /* End of text section */
.
rodata
:
{
*(
.
rodata
)
*(
.
rodata
.
*)
}
.
kstrtab
:
{
*(
.
kstrtab
)
}
.
=
ALIGN
(
16
)
; /* Exception table */
__start___ex_table
=
.
;
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
.
=
ALIGN
(
64
)
;
__start___ksymtab
=
.
; /* Kernel symbol table */
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
__start___gpl_ksymtab
=
.
; /* Kernel symbol table: GPL-only symbols */
__gpl_ksymtab
:
{
*(
__gpl_ksymtab
)
}
__stop___gpl_ksymtab
=
.
;
__start___kallsyms
=
.
; /* All kernel symbols */
__kallsyms
:
{
*(
__kallsyms
)
}
__stop___kallsyms
=
.
;
RODATA
.
data
:
{
/*
Data
*/
*(.
data
)
...
...
drivers/isdn/hisax/config.c
View file @
af9df9e3
...
...
@@ -2138,7 +2138,7 @@ request_mmio(struct resources *rs, unsigned long start, int len,
}
void
hisax_re
sources_release
(
struct
IsdnCardState
*
cs
)
hisax_re
lease_resources
(
struct
IsdnCardState
*
cs
)
{
resources_release
(
&
cs
->
rs
);
}
...
...
drivers/isdn/hisax/hisax_fcpcipnp.c
View file @
af9df9e3
...
...
@@ -58,7 +58,7 @@ static struct pci_device_id fcpci_ids[] __devinitdata = {
};
MODULE_DEVICE_TABLE
(
pci
,
fcpci_ids
);
static
struct
pnp_card_id
fcpnp_ids
[]
__devinitdata
=
{
static
struct
pnp_card_
device_
id
fcpnp_ids
[]
__devinitdata
=
{
{
.
id
=
"AVM0900"
,
.
driver_data
=
(
unsigned
long
)
"Fritz!Card PnP"
,
.
devs
=
{
{
"AVM0900"
}
}
}
...
...
drivers/isdn/i4l/isdn_ppp_ccp.c
View file @
af9df9e3
...
...
@@ -241,7 +241,7 @@ ippp_ccp_alloc(void)
struct
ippp_ccp
*
ccp
;
ccp
=
kmalloc
(
sizeof
(
*
ccp
),
GFP_ATOMIC
);
// FIXME
if
(
!
c
p
p
)
if
(
!
c
c
p
)
return
NULL
;
memset
(
ccp
,
0
,
sizeof
(
*
ccp
));
ccp
->
mru
=
1524
;
/* MRU, default 1524 */
...
...
fs/devfs/Makefile
View file @
af9df9e3
...
...
@@ -8,27 +8,3 @@ obj-$(CONFIG_DEVFS_FS) += devfs.o
devfs-objs
:=
base.o util.o
# Special case to support building documentation
ifndef
TOPDIR
TOPDIR
=
../..
endif
# Rule to build documentation
doc
:
base.c util.c
@
echo
'$$PACKAGE devfs'
>
devfs.doc
@
echo
'$$NAME Linux Kernel'
>>
devfs.doc
@
echo
'$$SUMMARY devfs (Device FileSystem) functions'
>>
devfs.doc
@
echo
'$$SYNOPSIS "#include <linux/devfs_fs.h>"'
>>
devfs.doc
@
echo
'$$END'
>>
devfs.doc
c2doc base.c util.c
>>
devfs.doc
karma_doc2man
-section
9 devfs.doc .
rm
devfs.doc
gzip
--best
*
.9
mv
*
.9.gz /usr/man/man9
# Rule for test compiling
test
:
gcc
-o
/tmp/base.o
-D__KERNEL__
-I
../../include
-Wall
\
-Wstrict-prototypes
-O2
-fomit-frame-pointer
-pipe
\
-fno-strength-reduce
-DEXPORT_SYMTAB
-c
base.c
fs/devpts/inode.c
View file @
af9df9e3
...
...
@@ -180,7 +180,7 @@ static int __init init_devpts_fs(void)
static
void
__exit
exit_devpts_fs
(
void
)
{
unregister_filesystem
(
&
devpts_fs_type
);
kern_umoun
t
(
devpts_mnt
);
mntpu
t
(
devpts_mnt
);
}
module_init
(
init_devpts_fs
)
...
...
include/asm-generic/vmlinux.lds.h
0 → 100644
View file @
af9df9e3
#define RODATA \
.rodata : { *(.rodata) *(.rodata.*) *(.rodata1) } \
.rodata1 : { *(.rodata1) } \
\
.kstrtab : { *(.kstrtab) } \
\
/* Kernel version magic */
\
__vermagic : { *(__vermagic) } \
\
/* Kernel symbol table */
\
. = ALIGN(64); \
__start___ksymtab = .; \
__ksymtab : { *(__ksymtab) } \
__stop___ksymtab = .; \
\
/* Kernel symbol table: GPL-only symbols */
\
__start___gpl_ksymtab = .; \
__gpl_ksymtab : { *(__gpl_ksymtab) } \
__stop___gpl_ksymtab = .; \
\
/* All kernel symbols */
\
__start___kallsyms = .; \
__kallsyms : { *(__kallsyms) } \
__stop___kallsyms = .; \
include/asm-i386/apicdef.h
View file @
af9df9e3
...
...
@@ -11,8 +11,13 @@
#define APIC_DEFAULT_PHYS_BASE 0xfee00000
#define APIC_ID 0x20
#define APIC_ID_MASK (0x0F<<24)
#define GET_APIC_ID(x) (((x)>>24)&0x0F)
#ifdef CONFIG_X86_SUMMIT
#define APIC_ID_MASK (0xFF<<24)
#define GET_APIC_ID(x) (((x)>>24)&0xFF)
#else
#define APIC_ID_MASK (0x0F<<24)
#define GET_APIC_ID(x) (((x)>>24)&0x0F)
#endif
#define APIC_LVR 0x30
#define APIC_LVR_MASK 0xFF00FF
#define GET_APIC_VERSION(x) ((x)&0xFF)
...
...
include/asm-i386/mach-bigsmp/mach_apic.h
View file @
af9df9e3
...
...
@@ -21,8 +21,12 @@ static inline int apic_id_registered(void)
#define APIC_DFR_VALUE (APIC_DFR_CLUSTER)
#define TARGET_CPUS ((cpu_online_map < 0xf)?cpu_online_map:0xf)
#define INT_DELIVERY_MODE dest_LowestPrio
#define INT_DEST_MODE 1
/* logical delivery broadcast to all procs */
#define APIC_BROADCAST_ID (0x0f)
#define check_apicid_used(bitmap, apicid) (0)
#define check_apicid_present(bit) (phys_cpu_present_map & (1 << bit))
static
inline
unsigned
long
calculate_ldr
(
unsigned
long
old
)
{
...
...
@@ -64,11 +68,11 @@ static inline int apicid_to_node(int logical_apicid)
return
0
;
}
extern
u8
raw_phys
_apicid
[];
extern
u8
bios_cpu
_apicid
[];
static
inline
int
cpu_present_to_apicid
(
int
mps_cpu
)
{
return
(
int
)
raw_phys
_apicid
[
mps_cpu
];
return
(
int
)
bios_cpu
_apicid
[
mps_cpu
];
}
static
inline
unsigned
long
apicid_to_cpu_present
(
int
phys_apicid
)
...
...
@@ -76,6 +80,13 @@ static inline unsigned long apicid_to_cpu_present(int phys_apicid)
return
(
1ul
<<
phys_apicid
);
}
extern
volatile
u8
cpu_2_logical_apicid
[];
/* Mapping from cpu number to logical apicid */
static
inline
int
cpu_to_logical_apicid
(
int
cpu
)
{
return
(
int
)
cpu_2_logical_apicid
[
cpu
];
}
static
inline
int
mpc_apic_id
(
struct
mpc_config_processor
*
m
,
int
quad
)
{
printk
(
"Processor #%d %ld:%ld APIC version %d
\n
"
,
...
...
include/asm-i386/mach-default/mach_apic.h
View file @
af9df9e3
...
...
@@ -12,8 +12,12 @@
#define no_balance_irq (0)
#define esr_disable (0)
#define INT_DELIVERY_MODE dest_LowestPrio
#define INT_DEST_MODE 1
/* logical delivery broadcast to all procs */
#define APIC_BROADCAST_ID 0x0F
#define check_apicid_used(bitmap, apicid) (bitmap & (1 << apicid))
#define check_apicid_present(bit) (phys_cpu_present_map & (1 << bit))
static
inline
int
apic_id_registered
(
void
)
{
...
...
@@ -59,6 +63,12 @@ static inline int apicid_to_node(int logical_apicid)
return
0
;
}
/* Mapping from cpu number to logical apicid */
static
inline
int
cpu_to_logical_apicid
(
int
cpu
)
{
return
1
<<
cpu
;
}
static
inline
int
cpu_present_to_apicid
(
int
mps_cpu
)
{
return
mps_cpu
;
...
...
include/asm-i386/mach-default/mach_mpparse.h
View file @
af9df9e3
...
...
@@ -17,4 +17,10 @@ static inline void mps_oem_check(struct mp_config_table *mpc, char *oem,
{
}
/* Hook from generic ACPI tables.c */
static
inline
void
acpi_madt_oem_check
(
char
*
oem_id
,
char
*
oem_table_id
)
{
}
#endif
/* __ASM_MACH_MPPARSE_H */
include/asm-i386/mach-numaq/mach_apic.h
View file @
af9df9e3
...
...
@@ -8,8 +8,12 @@
#define no_balance_irq (1)
#define esr_disable (1)
#define INT_DELIVERY_MODE dest_LowestPrio
#define INT_DEST_MODE 0
/* physical delivery on LOCAL quad */
#define APIC_BROADCAST_ID 0x0F
#define check_apicid_used(bitmap, apicid) ((bitmap) & (1 << (apicid)))
#define check_apicid_present(bit) (phys_cpu_present_map & (1 << bit))
static
inline
int
apic_id_registered
(
void
)
{
...
...
@@ -42,6 +46,13 @@ static inline ulong ioapic_phys_id_map(ulong phys_map)
return
0xf
;
}
/* Mapping from cpu number to logical apicid */
extern
volatile
u8
cpu_2_logical_apicid
[];
static
inline
int
cpu_to_logical_apicid
(
int
cpu
)
{
return
(
int
)
cpu_2_logical_apicid
[
cpu
];
}
static
inline
int
cpu_present_to_apicid
(
int
mps_cpu
)
{
return
(
((
mps_cpu
/
4
)
*
16
)
+
(
1
<<
(
mps_cpu
%
4
))
);
...
...
include/asm-i386/mach-numaq/mach_mpparse.h
View file @
af9df9e3
...
...
@@ -34,4 +34,9 @@ static inline void mps_oem_check(struct mp_config_table *mpc, char *oem,
mpc
->
mpc_oemsize
);
}
/* Hook from generic ACPI tables.c */
static
inline
void
acpi_madt_oem_check
(
char
*
oem_id
,
char
*
oem_table_id
)
{
}
#endif
/* __ASM_MACH_MPPARSE_H */
include/asm-i386/mach-summit/mach_apic.h
View file @
af9df9e3
...
...
@@ -4,6 +4,7 @@
extern
int
x86_summit
;
#define esr_disable (1)
#define no_balance_irq (0)
#define XAPIC_DEST_CPUS_MASK 0x0Fu
#define XAPIC_DEST_CLUSTER_MASK 0xF0u
...
...
@@ -11,22 +12,43 @@ extern int x86_summit;
#define xapic_phys_to_log_apicid(phys_apic) ( (1ul << ((phys_apic) & 0x3)) |\
((phys_apic) & XAPIC_DEST_CLUSTER_MASK) )
static
inline
unsigned
long
calculate_ldr
(
unsigned
long
old
)
#define APIC_DFR_VALUE (x86_summit ? APIC_DFR_CLUSTER : APIC_DFR_FLAT)
#define TARGET_CPUS (x86_summit ? XAPIC_DEST_CPUS_MASK : cpu_online_map)
#define INT_DELIVERY_MODE dest_Fixed
#define INT_DEST_MODE 1
/* logical delivery broadcast to all procs */
#define APIC_BROADCAST_ID (x86_summit ? 0xFF : 0x0F)
#define check_apicid_used(bitmap, apicid) (0)
/* we don't use the phys_cpu_present_map to indicate apicid presence */
#define check_apicid_present(bit) (1)
extern
u8
bios_cpu_apicid
[];
static
inline
void
init_apic_ldr
(
void
)
{
unsigned
long
id
;
unsigned
long
val
,
id
;
if
(
x86_summit
)
id
=
xapic_phys_to_log_apicid
(
hard_smp_processor_id
());
else
id
=
1UL
<<
smp_processor_id
();
return
((
old
&
~
APIC_LDR_MASK
)
|
SET_APIC_LOGICAL_ID
(
id
));
apic_write_around
(
APIC_DFR
,
APIC_DFR_VALUE
);
val
=
apic_read
(
APIC_LDR
)
&
~
APIC_LDR_MASK
;
val
|=
SET_APIC_LOGICAL_ID
(
id
);
apic_write_around
(
APIC_LDR
,
val
);
}
#define APIC_DFR_VALUE (x86_summit ? APIC_DFR_CLUSTER : APIC_DFR_FLAT)
#define TARGET_CPUS (x86_summit ? XAPIC_DEST_CPUS_MASK : cpu_online_map)
static
inline
int
multi_timer_check
(
int
apic
,
int
irq
)
{
return
0
;
}
#define APIC_BROADCAST_ID (x86_summit ? 0xFF : 0x0F)
#define check_apicid_used(bitmap, apicid) (0)
static
inline
int
apic_id_registered
(
void
)
{
return
1
;
}
static
inline
void
clustered_apic_check
(
void
)
{
...
...
@@ -39,10 +61,17 @@ static inline int apicid_to_node(int logical_apicid)
return
(
logical_apicid
>>
5
);
/* 2 clusterids per CEC */
}
/* Mapping from cpu number to logical apicid */
extern
volatile
u8
cpu_2_logical_apicid
[];
static
inline
int
cpu_to_logical_apicid
(
int
cpu
)
{
return
(
int
)
cpu_2_logical_apicid
[
cpu
];
}
static
inline
int
cpu_present_to_apicid
(
int
mps_cpu
)
{
if
(
x86_summit
)
return
(
int
)
raw_phys
_apicid
[
mps_cpu
];
return
(
int
)
bios_cpu
_apicid
[
mps_cpu
];
else
return
mps_cpu
;
}
...
...
@@ -53,14 +82,24 @@ static inline ulong ioapic_phys_id_map(ulong phys_map)
return
(
x86_summit
?
0x0F
:
phys_map
);
}
static
inline
unsigned
long
apicid_to_
phys_
cpu_present
(
int
apicid
)
static
inline
unsigned
long
apicid_to_cpu_present
(
int
apicid
)
{
if
(
x86_summit
)
return
(
1ul
<<
(((
apicid
>>
4
)
<<
2
)
|
(
apicid
&
0x3
)))
;
return
1
;
else
return
(
1ul
<<
apicid
);
}
static
inline
int
mpc_apic_id
(
struct
mpc_config_processor
*
m
,
int
quad
)
{
printk
(
"Processor #%d %ld:%ld APIC version %d
\n
"
,
m
->
mpc_apicid
,
(
m
->
mpc_cpufeature
&
CPU_FAMILY_MASK
)
>>
8
,
(
m
->
mpc_cpufeature
&
CPU_MODEL_MASK
)
>>
4
,
m
->
mpc_apicver
);
return
(
m
->
mpc_apicid
);
}
static
inline
void
setup_portio_remap
(
void
)
{
}
...
...
include/asm-i386/mach-summit/mach_mpparse.h
View file @
af9df9e3
...
...
@@ -15,8 +15,16 @@ static inline void mpc_oem_pci_bus(struct mpc_config_bus *m,
static
inline
void
mps_oem_check
(
struct
mp_config_table
*
mpc
,
char
*
oem
,
char
*
productid
)
{
if
(
!
strncmp
(
oem
,
"IBM ENSW"
,
8
)
&&
!
strncmp
(
str
,
"VIGIL SMP"
,
9
))
if
(
!
strncmp
(
oem
,
"IBM ENSW"
,
8
)
&&
(
!
strncmp
(
productid
,
"VIGIL SMP"
,
9
)
||
!
strncmp
(
productid
,
"RUTHLESS SMP"
,
12
)))
x86_summit
=
1
;
}
/* Hook from generic ACPI tables.c */
static
inline
void
acpi_madt_oem_check
(
char
*
oem_id
,
char
*
oem_table_id
)
{
if
(
!
strncmp
(
oem_id
,
"IBM"
,
3
)
&&
!
strncmp
(
oem_table_id
,
"SERVIGIL"
,
8
))
x86_summit
=
1
;
}
#endif
/* __ASM_MACH_MPPARSE_H */
include/asm-i386/module.h
View file @
af9df9e3
#ifndef _ASM_I386_MODULE_H
#define _ASM_I386_MODULE_H
/* x86 is simple */
struct
mod_arch_specific
{
...
...
@@ -8,4 +9,47 @@ struct mod_arch_specific
#define Elf_Shdr Elf32_Shdr
#define Elf_Sym Elf32_Sym
#define Elf_Ehdr Elf32_Ehdr
#ifdef CONFIG_M386
#define MODULE_PROC_FAMILY "386 "
#elif CONFIG_M486
#define MODULE_PROC_FAMILY "486 "
#elif CONFIG_M586
#define MODULE_PROC_FAMILY "586 "
#elif CONFIG_M586TSC
#define MODULE_PROC_FAMILY "586TSC "
#elif CONFIG_M586MMX
#define MODULE_PROC_FAMILY "586MMX "
#elif CONFIG_M686
#define MODULE_PROC_FAMILY "686 "
#elif CONFIG_MPENTIUMII
#define MODULE_PROC_FAMILY "PENTIUMII "
#elif CONFIG_MPENTIUMIII
#define MODULE_PROC_FAMILY "PENTIUMIII "
#elif CONFIG_MPENTIUM4
#define MODULE_PROC_FAMILY "PENTIUM4 "
#elif CONFIG_MK6
#define MODULE_PROC_FAMILY "K6 "
#elif CONFIG_MK7
#define MODULE_PROC_FAMILY "K7 "
#elif CONFIG_MK8
#define MODULE_PROC_FAMILY "K8 "
#elif CONFIG_MELAN
#define MODULE_PROC_FAMILY "ELAN "
#elif CONFIG_MCRUSOE
#define MODULE_PROC_FAMILY "CRUSOE "
#elif CONFIG_MWINCHIPC6
#define MODULE_PROC_FAMILY "WINCHIPC6 "
#elif CONFIG_MWINCHIP2
#define MODULE_PROC_FAMILY "WINCHIP2 "
#elif CONFIG_MWINCHIP3D
#define MODULE_PROC_FAMILY "WINCHIP3D "
#elif CONFIG_MCYRIXIII
#define MODULE_PROC_FAMILY "CYRIXIII "
#else
#error unknown processor family
#endif
#define MODULE_ARCH_VERMAGIC MODULE_PROC_FAMILY
#endif
/* _ASM_I386_MODULE_H */
include/asm-i386/mpspec.h
View file @
af9df9e3
...
...
@@ -16,11 +16,11 @@
/*
* a maximum of 16 APICs with the current APIC ID architecture.
*/
#if
def CONFIG_X86_NUMA
#if
defined(CONFIG_X86_NUMAQ) || defined (CONFIG_X86_SUMMIT)
#define MAX_APICS 256
#else
/* !CONFIG_X86_NUMA */
#else
#define MAX_APICS 16
#endif
/* CONFIG_X86_NUMA */
#endif
#define MAX_MPC_ENTRY 1024
...
...
include/asm-i386/smp.h
View file @
af9df9e3
...
...
@@ -22,12 +22,6 @@
#endif
#endif
#ifdef CONFIG_X86_NUMAQ
#define INT_DELIVERY_MODE 0
/* physical delivery on LOCAL quad */
#else
#define INT_DELIVERY_MODE 1
/* logical delivery broadcast to all procs */
#endif
#define BAD_APICID 0xFFu
#ifdef CONFIG_SMP
#ifndef __ASSEMBLY__
...
...
@@ -82,12 +76,6 @@ static inline int num_booting_cpus(void)
return
hweight32
(
cpu_callout_map
);
}
/* Mapping from cpu number to logical apicid */
extern
volatile
u8
cpu_2_logical_apicid
[];
static
inline
int
cpu_to_logical_apicid
(
int
cpu
)
{
return
(
int
)
cpu_2_logical_apicid
[
cpu
];
}
extern
void
map_cpu_to_logical_apicid
(
void
);
extern
void
unmap_cpu_to_logical_apicid
(
int
cpu
);
...
...
include/linux/cpufreq.h
View file @
af9df9e3
...
...
@@ -130,7 +130,7 @@ int cpufreq_register_driver(struct cpufreq_driver *driver_data);
int
cpufreq_unregister_driver
(
struct
cpufreq_driver
*
driver_data
);
/* deprecated */
#define cpufreq_register(x) cpufreq_register_driver(x)
#define cpufreq_unregister(
x
) cpufreq_unregister_driver(NULL)
#define cpufreq_unregister() cpufreq_unregister_driver(NULL)
void
cpufreq_notify_transition
(
struct
cpufreq_freqs
*
freqs
,
unsigned
int
state
);
...
...
include/linux/fs.h
View file @
af9df9e3
...
...
@@ -992,8 +992,6 @@ extern struct vfsmount *kern_mount(struct file_system_type *);
extern
int
may_umount
(
struct
vfsmount
*
);
extern
long
do_mount
(
char
*
,
char
*
,
char
*
,
unsigned
long
,
void
*
);
#define kern_umount mntput
extern
int
vfs_statfs
(
struct
super_block
*
,
struct
statfs
*
);
/* Return value for VFS lock functions - tells locks.c to lock conventionally
...
...
include/linux/i2c.h
View file @
af9df9e3
...
...
@@ -484,14 +484,6 @@ union i2c_smbus_data {
#define I2C_MAJOR 89
/* Device major number */
# ifndef NULL
# define NULL ( (void *) 0 )
# endif
# ifndef ENODEV
# include <asm/errno.h>
# endif
/* These defines are used for probing i2c client addresses */
/* Default fill of many variables */
#define I2C_CLIENT_DEFAULTS {I2C_CLIENT_END, I2C_CLIENT_END, I2C_CLIENT_END, \
...
...
init/Makefile
View file @
af9df9e3
...
...
@@ -2,7 +2,8 @@
# Makefile for the linux kernel.
#
obj-y
:=
main.o version.o do_mounts.o initramfs.o
obj-y
:=
main.o version.o do_mounts.o initramfs.o
obj-$(CONFIG_MODULES)
+=
vermagic.o
# files to be removed upon make clean
clean-files
:=
../include/linux/compile.h
...
...
init/vermagic.c
0 → 100644
View file @
af9df9e3
#include <linux/version.h>
#include <linux/module.h>
/* Simply sanity version stamp for modules. */
#ifdef CONFIG_SMP
#define MODULE_VERMAGIC_SMP "SMP "
#else
#define MODULE_VERMAGIC_SMP ""
#endif
#ifdef CONFIG_PREEMPT
#define MODULE_VERMAGIC_PREEMPT "preempt "
#else
#define MODULE_VERMAGIC_PREEMPT ""
#endif
#ifndef MODULE_ARCH_VERMAGIC
#define MODULE_ARCH_VERMAGIC ""
#endif
const
char
vermagic
[]
__attribute__
((
section
(
"__vermagic"
)))
=
UTS_RELEASE
" "
MODULE_VERMAGIC_SMP
MODULE_VERMAGIC_PREEMPT
MODULE_ARCH_VERMAGIC
"gcc-"
__stringify
(
__GNUC__
)
"."
__stringify
(
__GNUC_MINOR__
);
kernel/module.c
View file @
af9df9e3
...
...
@@ -963,6 +963,9 @@ static void set_license(struct module *mod, Elf_Shdr *sechdrs, int licenseidx)
}
}
/* From init/vermagic.o */
extern
char
vermagic
[];
/* Allocate and load the module: note that size of section 0 is always
zero, and we rely on this for optional sections. */
static
struct
module
*
load_module
(
void
*
umod
,
...
...
@@ -973,7 +976,7 @@ static struct module *load_module(void *umod,
Elf_Shdr
*
sechdrs
;
char
*
secstrings
,
*
args
;
unsigned
int
i
,
symindex
,
exportindex
,
strindex
,
setupindex
,
exindex
,
modindex
,
obsparmindex
,
licenseindex
,
gplindex
;
modindex
,
obsparmindex
,
licenseindex
,
gplindex
,
vmagindex
;
long
arglen
;
struct
module
*
mod
;
long
err
=
0
;
...
...
@@ -1012,7 +1015,7 @@ static struct module *load_module(void *umod,
exportindex
=
setupindex
=
obsparmindex
=
gplindex
=
licenseindex
=
0
;
/* And these should exist, but gcc whinges if we don't init them */
symindex
=
strindex
=
exindex
=
modindex
=
0
;
symindex
=
strindex
=
exindex
=
modindex
=
vmagindex
=
0
;
/* Find where important sections are */
for
(
i
=
1
;
i
<
hdr
->
e_shnum
;
i
++
)
{
...
...
@@ -1062,6 +1065,11 @@ static struct module *load_module(void *umod,
/* EXPORT_SYMBOL_GPL() */
DEBUGP
(
"GPL symbols found in section %u
\n
"
,
i
);
gplindex
=
i
;
}
else
if
(
strcmp
(
secstrings
+
sechdrs
[
i
].
sh_name
,
"__vermagic"
)
==
0
)
{
/* Version magic. */
DEBUGP
(
"Version magic found in section %u
\n
"
,
i
);
vmagindex
=
i
;
}
#ifdef CONFIG_KALLSYMS
/* symbol and string tables for decoding later. */
...
...
@@ -1082,6 +1090,18 @@ static struct module *load_module(void *umod,
}
mod
=
(
void
*
)
sechdrs
[
modindex
].
sh_addr
;
/* This is allowed: modprobe --force will strip it. */
if
(
!
vmagindex
)
{
tainted
|=
TAINT_FORCED_MODULE
;
printk
(
KERN_WARNING
"%s: no version magic, tainting kernel.
\n
"
,
mod
->
name
);
}
else
if
(
strcmp
((
char
*
)
sechdrs
[
vmagindex
].
sh_addr
,
vermagic
)
!=
0
)
{
printk
(
KERN_ERR
"%s: version magic '%s' should be '%s'
\n
"
,
mod
->
name
,
(
char
*
)
sechdrs
[
vmagindex
].
sh_addr
,
vermagic
);
err
=
-
ENOEXEC
;
goto
free_hdr
;
}
/* Now copy in args */
arglen
=
strlen_user
(
uargs
);
if
(
!
arglen
)
{
...
...
scripts/Makefile.build
View file @
af9df9e3
...
...
@@ -176,10 +176,15 @@ quiet_cmd_link_multi-y = LD $@
cmd_link_multi-y
=
$(LD)
$(LDFLAGS)
$(EXTRA_LDFLAGS)
-r
-o
$@
$(
filter
$(
addprefix
$(obj)
/,
$
(
$(
subst
$(obj)
/,,
$
(
@:.o
=
-objs
)))
$
(
$(
subst
$(obj)
/,,
$
(
@:.o
=
-y
))))
,
$^
)
quiet_cmd_link_multi-m
=
LD
[
M]
$@
cmd_link_multi-m
=
$(LD)
$(LDFLAGS)
$(EXTRA_LDFLAGS)
$(LDFLAGS_MODULE)
-o
$@
$(
filter
$(
addprefix
$(obj)
/,
$
(
$(
subst
$(obj)
/,,
$
(
@:.ko
=
-objs
)))
$
(
$(
subst
$(obj)
/,,
$
(
@:.ko
=
-y
))))
,
$^
)
cmd_link_multi-m
=
$(LD)
$(LDFLAGS)
$(EXTRA_LDFLAGS)
$(LDFLAGS_MODULE)
-o
$@
$(
filter
$(
addprefix
$(obj)
/,
$
(
$(
subst
$(obj)
/,,
$
(
@:.ko
=
-objs
)))
$
(
$(
subst
$(obj)
/,,
$
(
@:.ko
=
-y
))))
,
$^
)
init/vermagic.o
quiet_cmd_link_single-m
=
LD
[
M]
$@
cmd_link_single-m
=
$(LD)
$(LDFLAGS)
$(EXTRA_LDFLAGS)
$(LDFLAGS_MODULE)
-o
$@
$<
cmd_link_single-m
=
$(LD)
$(LDFLAGS)
$(EXTRA_LDFLAGS)
$(LDFLAGS_MODULE)
-o
$@
$<
init/vermagic.o
# Don't rebuilt vermagic.o unless we actually are in the init/ dir
ifneq
($(obj),init)
init/vermagic.o
:
;
endif
# We would rather have a list of rules like
# foo.o: $(foo-objs)
...
...
@@ -188,10 +193,10 @@ cmd_link_single-m = $(LD) $(LDFLAGS) $(EXTRA_LDFLAGS) $(LDFLAGS_MODULE) -o $@ $<
$(multi-used-y)
:
%.o: $(multi-objs-y) FORCE
$(
call
if_changed,link_multi-y
)
$(multi-used-m
:
.o=.ko) : %.ko: $(multi-objs-m) FORCE
$(multi-used-m
:
.o=.ko) : %.ko: $(multi-objs-m)
init/vermagic.o
FORCE
$(
call
if_changed,link_multi-m
)
$(single-used-m
:
.o=.ko) : %.ko: %.o FORCE
$(single-used-m
:
.o=.ko) : %.ko: %.o
init/vermagic.o
FORCE
$(
call
if_changed,link_single-m
)
targets
+=
$
(
multi-used-y
)
$
(
multi-used-m:.o
=
.ko
)
$
(
single-used-m:.o
=
.ko
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment