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
b32d4b59
Commit
b32d4b59
authored
Nov 20, 2002
by
Richard Henderson
Browse files
Options
Browse Files
Download
Plain Diff
Merge are.twiddle.net:/home/rth/BK/linus-2.5
into are.twiddle.net:/home/rth/BK/axp-2.5
parents
621ce5a8
1c05f11e
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
56 additions
and
31 deletions
+56
-31
arch/alpha/kernel/osf_sys.c
arch/alpha/kernel/osf_sys.c
+1
-0
arch/alpha/kernel/setup.c
arch/alpha/kernel/setup.c
+26
-5
arch/alpha/kernel/sys_nautilus.c
arch/alpha/kernel/sys_nautilus.c
+5
-3
arch/alpha/kernel/sys_sio.c
arch/alpha/kernel/sys_sio.c
+1
-1
arch/alpha/mm/init.c
arch/alpha/mm/init.c
+16
-17
arch/alpha/mm/numa.c
arch/alpha/mm/numa.c
+7
-5
No files found.
arch/alpha/kernel/osf_sys.c
View file @
b32d4b59
...
@@ -34,6 +34,7 @@
...
@@ -34,6 +34,7 @@
#include <linux/types.h>
#include <linux/types.h>
#include <linux/ipc.h>
#include <linux/ipc.h>
#include <linux/namei.h>
#include <linux/namei.h>
#include <linux/uio.h>
#include <asm/fpu.h>
#include <asm/fpu.h>
#include <asm/io.h>
#include <asm/io.h>
...
...
arch/alpha/kernel/setup.c
View file @
b32d4b59
...
@@ -251,6 +251,27 @@ get_mem_size_limit(char *s)
...
@@ -251,6 +251,27 @@ get_mem_size_limit(char *s)
return
end
>>
PAGE_SHIFT
;
/* Return the PFN of the limit. */
return
end
>>
PAGE_SHIFT
;
/* Return the PFN of the limit. */
}
}
#ifdef CONFIG_BLK_DEV_INITRD
void
*
__init
move_initrd
(
unsigned
long
mem_limit
)
{
void
*
start
;
unsigned
long
size
;
size
=
initrd_end
-
initrd_start
;
start
=
__alloc_bootmem
(
size
,
PAGE_SIZE
,
0
);
if
(
!
start
||
__pa
(
start
)
+
size
>
mem_limit
)
{
initrd_start
=
initrd_end
=
0
;
return
NULL
;
}
memmove
(
start
,
(
void
*
)
initrd_start
,
size
);
initrd_start
=
(
unsigned
long
)
start
;
initrd_end
=
initrd_start
+
size
;
printk
(
"initrd moved to %p
\n
"
,
start
);
return
start
;
}
#endif
#ifndef CONFIG_DISCONTIGMEM
#ifndef CONFIG_DISCONTIGMEM
static
void
__init
static
void
__init
setup_memory
(
void
*
kernel_end
)
setup_memory
(
void
*
kernel_end
)
...
@@ -379,11 +400,11 @@ setup_memory(void *kernel_end)
...
@@ -379,11 +400,11 @@ setup_memory(void *kernel_end)
(
void
*
)
initrd_start
,
INITRD_SIZE
);
(
void
*
)
initrd_start
,
INITRD_SIZE
);
if
((
void
*
)
initrd_end
>
phys_to_virt
(
PFN_PHYS
(
max_low_pfn
)))
{
if
((
void
*
)
initrd_end
>
phys_to_virt
(
PFN_PHYS
(
max_low_pfn
)))
{
if
(
!
move_initrd
(
PFN_PHYS
(
max_low_pfn
)))
printk
(
"initrd extends beyond end of memory "
printk
(
"initrd extends beyond end of memory "
"(0x%08lx > 0x%p)
\n
disabling initrd
\n
"
,
"(0x%08lx > 0x%p)
\n
disabling initrd
\n
"
,
initrd_end
,
initrd_end
,
phys_to_virt
(
PFN_PHYS
(
max_low_pfn
)));
phys_to_virt
(
PFN_PHYS
(
max_low_pfn
)));
initrd_start
=
initrd_end
=
0
;
}
else
{
}
else
{
reserve_bootmem
(
virt_to_phys
((
void
*
)
initrd_start
),
reserve_bootmem
(
virt_to_phys
((
void
*
)
initrd_start
),
INITRD_SIZE
);
INITRD_SIZE
);
...
...
arch/alpha/kernel/sys_nautilus.c
View file @
b32d4b59
...
@@ -76,12 +76,14 @@ nautilus_map_irq(struct pci_dev *dev, u8 slot, u8 pin)
...
@@ -76,12 +76,14 @@ nautilus_map_irq(struct pci_dev *dev, u8 slot, u8 pin)
void
void
nautilus_kill_arch
(
int
mode
)
nautilus_kill_arch
(
int
mode
)
{
{
struct
pci_bus
*
bus
=
pci_isa_hose
->
bus
;
switch
(
mode
)
{
switch
(
mode
)
{
case
LINUX_REBOOT_CMD_RESTART
:
case
LINUX_REBOOT_CMD_RESTART
:
if
(
!
alpha_using_srm
)
{
if
(
!
alpha_using_srm
)
{
u8
t8
;
u8
t8
;
pci
bios_read_config_byte
(
0
,
0x38
,
0x43
,
&
t8
);
pci
_bus_read_config_byte
(
bus
,
0x38
,
0x43
,
&
t8
);
pci
bios_write_config_byte
(
0
,
0x38
,
0x43
,
t8
|
0x80
);
pci
_bus_write_config_byte
(
bus
,
0x38
,
0x43
,
t8
|
0x80
);
outb
(
1
,
0x92
);
outb
(
1
,
0x92
);
outb
(
0
,
0x92
);
outb
(
0
,
0x92
);
/* NOTREACHED */
/* NOTREACHED */
...
@@ -91,7 +93,7 @@ nautilus_kill_arch(int mode)
...
@@ -91,7 +93,7 @@ nautilus_kill_arch(int mode)
case
LINUX_REBOOT_CMD_POWER_OFF
:
case
LINUX_REBOOT_CMD_POWER_OFF
:
{
{
u32
pmuport
;
u32
pmuport
;
pci
bios_read_config_dword
(
0
,
0x88
,
0x10
,
&
pmuport
);
pci
_bus_read_config_dword
(
bus
,
0x88
,
0x10
,
&
pmuport
);
pmuport
&=
0xfffe
;
pmuport
&=
0xfffe
;
outl
(
0xffff
,
pmuport
);
/* clear pending events */
outl
(
0xffff
,
pmuport
);
/* clear pending events */
outw
(
0x2000
,
pmuport
+
4
);
/* power off */
outw
(
0x2000
,
pmuport
+
4
);
/* power off */
...
...
arch/alpha/kernel/sys_sio.c
View file @
b32d4b59
...
@@ -77,7 +77,7 @@ alphabook1_init_arch(void)
...
@@ -77,7 +77,7 @@ alphabook1_init_arch(void)
static
void
__init
static
void
__init
sio_pci_route
(
void
)
sio_pci_route
(
void
)
{
{
pci
bios_write_config_dword
(
0
,
PCI_DEVFN
(
7
,
0
),
0x60
,
pci
_bus_write_config_dword
(
pci_isa_hose
->
bus
,
PCI_DEVFN
(
7
,
0
),
0x60
,
alpha_mv
.
sys
.
sio
.
route_tab
);
alpha_mv
.
sys
.
sio
.
route_tab
);
}
}
...
...
arch/alpha/mm/init.c
View file @
b32d4b59
...
@@ -357,18 +357,23 @@ mem_init(void)
...
@@ -357,18 +357,23 @@ mem_init(void)
#endif
/* CONFIG_DISCONTIGMEM */
#endif
/* CONFIG_DISCONTIGMEM */
void
void
free_
initmem
(
voi
d
)
free_
reserved_mem
(
void
*
start
,
void
*
en
d
)
{
{
extern
char
__init_begin
,
__init_end
;
void
*
__start
=
start
;
unsigned
long
addr
;
for
(;
__start
<
end
;
__start
+=
PAGE_SIZE
)
{
ClearPageReserved
(
virt_to_page
(
__start
));
addr
=
(
unsigned
long
)(
&
__init_begin
);
set_page_count
(
virt_to_page
(
__start
),
1
);
for
(;
addr
<
(
unsigned
long
)(
&
__init_end
);
addr
+=
PAGE_SIZE
)
{
free_page
((
long
)
__start
);
ClearPageReserved
(
virt_to_page
(
addr
));
set_page_count
(
virt_to_page
(
addr
),
1
);
free_page
(
addr
);
totalram_pages
++
;
totalram_pages
++
;
}
}
}
void
free_initmem
(
void
)
{
extern
char
__init_begin
,
__init_end
;
free_reserved_mem
(
&
__init_begin
,
&
__init_end
);
printk
(
"Freeing unused kernel memory: %ldk freed
\n
"
,
printk
(
"Freeing unused kernel memory: %ldk freed
\n
"
,
(
&
__init_end
-
&
__init_begin
)
>>
10
);
(
&
__init_end
-
&
__init_begin
)
>>
10
);
}
}
...
@@ -377,13 +382,7 @@ free_initmem (void)
...
@@ -377,13 +382,7 @@ free_initmem (void)
void
void
free_initrd_mem
(
unsigned
long
start
,
unsigned
long
end
)
free_initrd_mem
(
unsigned
long
start
,
unsigned
long
end
)
{
{
unsigned
long
__start
=
start
;
free_reserved_mem
((
void
*
)
start
,
(
void
*
)
end
);
for
(;
start
<
end
;
start
+=
PAGE_SIZE
)
{
printk
(
"Freeing initrd memory: %ldk freed
\n
"
,
(
end
-
start
)
>>
10
);
ClearPageReserved
(
virt_to_page
(
start
));
set_page_count
(
virt_to_page
(
start
),
1
);
free_page
(
start
);
totalram_pages
++
;
}
printk
(
"Freeing initrd memory: %ldk freed
\n
"
,
(
end
-
__start
)
>>
10
);
}
}
#endif
#endif
arch/alpha/mm/numa.c
View file @
b32d4b59
...
@@ -249,16 +249,18 @@ setup_memory(void *kernel_end)
...
@@ -249,16 +249,18 @@ setup_memory(void *kernel_end)
#ifdef CONFIG_BLK_DEV_INITRD
#ifdef CONFIG_BLK_DEV_INITRD
initrd_start
=
INITRD_START
;
initrd_start
=
INITRD_START
;
if
(
initrd_start
)
{
if
(
initrd_start
)
{
extern
void
*
move_initrd
(
unsigned
long
);
initrd_end
=
initrd_start
+
INITRD_SIZE
;
initrd_end
=
initrd_start
+
INITRD_SIZE
;
printk
(
"Initial ramdisk at: 0x%p (%lu bytes)
\n
"
,
printk
(
"Initial ramdisk at: 0x%p (%lu bytes)
\n
"
,
(
void
*
)
initrd_start
,
INITRD_SIZE
);
(
void
*
)
initrd_start
,
INITRD_SIZE
);
if
((
void
*
)
initrd_end
>
phys_to_virt
(
PFN_PHYS
(
max_low_pfn
)))
{
if
((
void
*
)
initrd_end
>
phys_to_virt
(
PFN_PHYS
(
max_low_pfn
)))
{
if
(
!
move_initrd
(
PFN_PHYS
(
max_low_pfn
)))
printk
(
"initrd extends beyond end of memory "
printk
(
"initrd extends beyond end of memory "
"(0x%08lx > 0x%p)
\n
disabling initrd
\n
"
,
"(0x%08lx > 0x%p)
\n
disabling initrd
\n
"
,
initrd_end
,
initrd_end
,
phys_to_virt
(
PFN_PHYS
(
max_low_pfn
)));
phys_to_virt
(
PFN_PHYS
(
max_low_pfn
)));
initrd_start
=
initrd_end
=
0
;
}
else
{
}
else
{
reserve_bootmem_node
(
NODE_DATA
(
KVADDR_TO_NID
(
initrd_start
)),
reserve_bootmem_node
(
NODE_DATA
(
KVADDR_TO_NID
(
initrd_start
)),
virt_to_phys
((
void
*
)
initrd_start
),
virt_to_phys
((
void
*
)
initrd_start
),
...
...
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