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
1604d9c8
Commit
1604d9c8
authored
Jul 11, 2005
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Plain Diff
Merge master.kernel.org:/pub/scm/linux/kernel/git/aegl/linux-2.6
parents
a8400986
3b5cc090
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
29 additions
and
37 deletions
+29
-37
Documentation/kernel-parameters.txt
Documentation/kernel-parameters.txt
+3
-0
arch/ia64/hp/sim/simeth.c
arch/ia64/hp/sim/simeth.c
+4
-2
arch/ia64/hp/sim/simserial.c
arch/ia64/hp/sim/simserial.c
+5
-2
arch/ia64/kernel/entry.S
arch/ia64/kernel/entry.S
+1
-1
arch/ia64/kernel/iosapic.c
arch/ia64/kernel/iosapic.c
+9
-4
arch/ia64/kernel/irq_ia64.c
arch/ia64/kernel/irq_ia64.c
+2
-13
arch/ia64/kernel/perfmon.c
arch/ia64/kernel/perfmon.c
+0
-1
arch/ia64/sn/kernel/tiocx.c
arch/ia64/sn/kernel/tiocx.c
+0
-1
arch/ia64/sn/kernel/xpc_main.c
arch/ia64/sn/kernel/xpc_main.c
+5
-11
include/asm-ia64/hw_irq.h
include/asm-ia64/hw_irq.h
+0
-1
include/asm-ia64/sn/xp.h
include/asm-ia64/sn/xp.h
+0
-1
No files found.
Documentation/kernel-parameters.txt
View file @
1604d9c8
...
@@ -758,6 +758,9 @@ running once the system is up.
...
@@ -758,6 +758,9 @@ running once the system is up.
maxcpus= [SMP] Maximum number of processors that an SMP kernel
maxcpus= [SMP] Maximum number of processors that an SMP kernel
should make use of
should make use of
max_addr=[KMG] [KNL,BOOT,ia64] All physical memory greater than or
equal to this physical address is ignored.
max_luns= [SCSI] Maximum number of LUNs to probe
max_luns= [SCSI] Maximum number of LUNs to probe
Should be between 1 and 2^32-1.
Should be between 1 and 2^32-1.
...
...
arch/ia64/hp/sim/simeth.c
View file @
1604d9c8
...
@@ -191,7 +191,7 @@ simeth_probe1(void)
...
@@ -191,7 +191,7 @@ simeth_probe1(void)
unsigned
char
mac_addr
[
ETH_ALEN
];
unsigned
char
mac_addr
[
ETH_ALEN
];
struct
simeth_local
*
local
;
struct
simeth_local
*
local
;
struct
net_device
*
dev
;
struct
net_device
*
dev
;
int
fd
,
i
,
err
;
int
fd
,
i
,
err
,
rc
;
/*
/*
* XXX Fix me
* XXX Fix me
...
@@ -228,7 +228,9 @@ simeth_probe1(void)
...
@@ -228,7 +228,9 @@ simeth_probe1(void)
return
err
;
return
err
;
}
}
dev
->
irq
=
assign_irq_vector
(
AUTO_ASSIGN
);
if
((
rc
=
assign_irq_vector
(
AUTO_ASSIGN
))
<
0
)
panic
(
"%s: out of interrupt vectors!
\n
"
,
__FUNCTION__
);
dev
->
irq
=
rc
;
/*
/*
* attach the interrupt in the simulator, this does enable interrupts
* attach the interrupt in the simulator, this does enable interrupts
...
...
arch/ia64/hp/sim/simserial.c
View file @
1604d9c8
...
@@ -982,7 +982,7 @@ static struct tty_operations hp_ops = {
...
@@ -982,7 +982,7 @@ static struct tty_operations hp_ops = {
static
int
__init
static
int
__init
simrs_init
(
void
)
simrs_init
(
void
)
{
{
int
i
;
int
i
,
rc
;
struct
serial_state
*
state
;
struct
serial_state
*
state
;
if
(
!
ia64_platform_is
(
"hpsim"
))
if
(
!
ia64_platform_is
(
"hpsim"
))
...
@@ -1017,7 +1017,10 @@ simrs_init (void)
...
@@ -1017,7 +1017,10 @@ simrs_init (void)
if
(
state
->
type
==
PORT_UNKNOWN
)
continue
;
if
(
state
->
type
==
PORT_UNKNOWN
)
continue
;
if
(
!
state
->
irq
)
{
if
(
!
state
->
irq
)
{
state
->
irq
=
assign_irq_vector
(
AUTO_ASSIGN
);
if
((
rc
=
assign_irq_vector
(
AUTO_ASSIGN
))
<
0
)
panic
(
"%s: out of interrupt vectors!
\n
"
,
__FUNCTION__
);
state
->
irq
=
rc
;
ia64_ssc_connect_irq
(
KEYBOARD_INTR
,
state
->
irq
);
ia64_ssc_connect_irq
(
KEYBOARD_INTR
,
state
->
irq
);
}
}
...
...
arch/ia64/kernel/entry.S
View file @
1604d9c8
...
@@ -1249,7 +1249,7 @@ ENTRY(sys_rt_sigreturn)
...
@@ -1249,7 +1249,7 @@ ENTRY(sys_rt_sigreturn)
stf.spill
[
r17
]=
f11
stf.spill
[
r17
]=
f11
adds
out0
=
16
,
sp
//
out0
=
&
sigscratch
adds
out0
=
16
,
sp
//
out0
=
&
sigscratch
br.call.sptk.many
rp
=
ia64_rt_sigreturn
br.call.sptk.many
rp
=
ia64_rt_sigreturn
.
ret19
:
.
restore
sp
0
.
ret19
:
.
restore
sp
,
0
adds
sp
=
16
,
sp
adds
sp
=
16
,
sp
;;
;;
ld8
r9
=[
sp
]
//
load
new
ar
.
unat
ld8
r9
=[
sp
]
//
load
new
ar
.
unat
...
...
arch/ia64/kernel/iosapic.c
View file @
1604d9c8
...
@@ -489,8 +489,6 @@ static int iosapic_find_sharable_vector (unsigned long trigger, unsigned long po
...
@@ -489,8 +489,6 @@ static int iosapic_find_sharable_vector (unsigned long trigger, unsigned long po
}
}
}
}
}
}
if
(
vector
<
0
)
panic
(
"%s: out of interrupt vectors!
\n
"
,
__FUNCTION__
);
return
vector
;
return
vector
;
}
}
...
@@ -506,6 +504,8 @@ iosapic_reassign_vector (int vector)
...
@@ -506,6 +504,8 @@ iosapic_reassign_vector (int vector)
if
(
!
list_empty
(
&
iosapic_intr_info
[
vector
].
rtes
))
{
if
(
!
list_empty
(
&
iosapic_intr_info
[
vector
].
rtes
))
{
new_vector
=
assign_irq_vector
(
AUTO_ASSIGN
);
new_vector
=
assign_irq_vector
(
AUTO_ASSIGN
);
if
(
new_vector
<
0
)
panic
(
"%s: out of interrupt vectors!
\n
"
,
__FUNCTION__
);
printk
(
KERN_INFO
"Reassigning vector %d to %d
\n
"
,
vector
,
new_vector
);
printk
(
KERN_INFO
"Reassigning vector %d to %d
\n
"
,
vector
,
new_vector
);
memcpy
(
&
iosapic_intr_info
[
new_vector
],
&
iosapic_intr_info
[
vector
],
memcpy
(
&
iosapic_intr_info
[
new_vector
],
&
iosapic_intr_info
[
vector
],
sizeof
(
struct
iosapic_intr_info
));
sizeof
(
struct
iosapic_intr_info
));
...
@@ -734,9 +734,12 @@ iosapic_register_intr (unsigned int gsi,
...
@@ -734,9 +734,12 @@ iosapic_register_intr (unsigned int gsi,
spin_unlock_irqrestore
(
&
iosapic_lock
,
flags
);
spin_unlock_irqrestore
(
&
iosapic_lock
,
flags
);
/* If vector is running out, we try to find a sharable vector */
/* If vector is running out, we try to find a sharable vector */
vector
=
assign_irq_vector
_nopanic
(
AUTO_ASSIGN
);
vector
=
assign_irq_vector
(
AUTO_ASSIGN
);
if
(
vector
<
0
)
if
(
vector
<
0
)
{
vector
=
iosapic_find_sharable_vector
(
trigger
,
polarity
);
vector
=
iosapic_find_sharable_vector
(
trigger
,
polarity
);
if
(
vector
<
0
)
panic
(
"%s: out of interrupt vectors!
\n
"
,
__FUNCTION__
);
}
spin_lock_irqsave
(
&
irq_descp
(
vector
)
->
lock
,
flags
);
spin_lock_irqsave
(
&
irq_descp
(
vector
)
->
lock
,
flags
);
spin_lock
(
&
iosapic_lock
);
spin_lock
(
&
iosapic_lock
);
...
@@ -884,6 +887,8 @@ iosapic_register_platform_intr (u32 int_type, unsigned int gsi,
...
@@ -884,6 +887,8 @@ iosapic_register_platform_intr (u32 int_type, unsigned int gsi,
break
;
break
;
case
ACPI_INTERRUPT_INIT
:
case
ACPI_INTERRUPT_INIT
:
vector
=
assign_irq_vector
(
AUTO_ASSIGN
);
vector
=
assign_irq_vector
(
AUTO_ASSIGN
);
if
(
vector
<
0
)
panic
(
"%s: out of interrupt vectors!
\n
"
,
__FUNCTION__
);
delivery
=
IOSAPIC_INIT
;
delivery
=
IOSAPIC_INIT
;
break
;
break
;
case
ACPI_INTERRUPT_CPEI
:
case
ACPI_INTERRUPT_CPEI
:
...
...
arch/ia64/kernel/irq_ia64.c
View file @
1604d9c8
...
@@ -63,30 +63,19 @@ EXPORT_SYMBOL(isa_irq_to_vector_map);
...
@@ -63,30 +63,19 @@ EXPORT_SYMBOL(isa_irq_to_vector_map);
static
unsigned
long
ia64_vector_mask
[
BITS_TO_LONGS
(
IA64_NUM_DEVICE_VECTORS
)];
static
unsigned
long
ia64_vector_mask
[
BITS_TO_LONGS
(
IA64_NUM_DEVICE_VECTORS
)];
int
int
assign_irq_vector
_nopanic
(
int
irq
)
assign_irq_vector
(
int
irq
)
{
{
int
pos
,
vector
;
int
pos
,
vector
;
again:
again:
pos
=
find_first_zero_bit
(
ia64_vector_mask
,
IA64_NUM_DEVICE_VECTORS
);
pos
=
find_first_zero_bit
(
ia64_vector_mask
,
IA64_NUM_DEVICE_VECTORS
);
vector
=
IA64_FIRST_DEVICE_VECTOR
+
pos
;
vector
=
IA64_FIRST_DEVICE_VECTOR
+
pos
;
if
(
vector
>
IA64_LAST_DEVICE_VECTOR
)
if
(
vector
>
IA64_LAST_DEVICE_VECTOR
)
return
-
1
;
return
-
ENOSPC
;
if
(
test_and_set_bit
(
pos
,
ia64_vector_mask
))
if
(
test_and_set_bit
(
pos
,
ia64_vector_mask
))
goto
again
;
goto
again
;
return
vector
;
return
vector
;
}
}
int
assign_irq_vector
(
int
irq
)
{
int
vector
=
assign_irq_vector_nopanic
(
irq
);
if
(
vector
<
0
)
panic
(
"assign_irq_vector: out of interrupt vectors!"
);
return
vector
;
}
void
void
free_irq_vector
(
int
vector
)
free_irq_vector
(
int
vector
)
{
{
...
...
arch/ia64/kernel/perfmon.c
View file @
1604d9c8
...
@@ -37,7 +37,6 @@
...
@@ -37,7 +37,6 @@
#include <linux/vfs.h>
#include <linux/vfs.h>
#include <linux/pagemap.h>
#include <linux/pagemap.h>
#include <linux/mount.h>
#include <linux/mount.h>
#include <linux/version.h>
#include <linux/bitops.h>
#include <linux/bitops.h>
#include <asm/errno.h>
#include <asm/errno.h>
...
...
arch/ia64/sn/kernel/tiocx.c
View file @
1604d9c8
...
@@ -8,7 +8,6 @@
...
@@ -8,7 +8,6 @@
#include <linux/module.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/kernel.h>
#include <linux/version.h>
#include <linux/slab.h>
#include <linux/slab.h>
#include <linux/spinlock.h>
#include <linux/spinlock.h>
#include <linux/proc_fs.h>
#include <linux/proc_fs.h>
...
...
arch/ia64/sn/kernel/xpc_main.c
View file @
1604d9c8
...
@@ -53,6 +53,7 @@
...
@@ -53,6 +53,7 @@
#include <linux/cache.h>
#include <linux/cache.h>
#include <linux/interrupt.h>
#include <linux/interrupt.h>
#include <linux/slab.h>
#include <linux/slab.h>
#include <linux/delay.h>
#include <asm/sn/intr.h>
#include <asm/sn/intr.h>
#include <asm/sn/sn_sal.h>
#include <asm/sn/sn_sal.h>
#include <asm/uaccess.h>
#include <asm/uaccess.h>
...
@@ -308,8 +309,7 @@ xpc_make_first_contact(struct xpc_partition *part)
...
@@ -308,8 +309,7 @@ xpc_make_first_contact(struct xpc_partition *part)
"partition %d
\n
"
,
XPC_PARTID
(
part
));
"partition %d
\n
"
,
XPC_PARTID
(
part
));
/* wait a 1/4 of a second or so */
/* wait a 1/4 of a second or so */
set_current_state
(
TASK_INTERRUPTIBLE
);
msleep_interruptible
(
250
);
(
void
)
schedule_timeout
(
0
.
25
*
HZ
);
if
(
part
->
act_state
==
XPC_P_DEACTIVATING
)
{
if
(
part
->
act_state
==
XPC_P_DEACTIVATING
)
{
return
part
->
reason
;
return
part
->
reason
;
...
@@ -841,9 +841,7 @@ xpc_do_exit(void)
...
@@ -841,9 +841,7 @@ xpc_do_exit(void)
down
(
&
xpc_discovery_exited
);
down
(
&
xpc_discovery_exited
);
set_current_state
(
TASK_INTERRUPTIBLE
);
msleep_interruptible
(
300
);
schedule_timeout
(
0
.
3
*
HZ
);
set_current_state
(
TASK_RUNNING
);
/* wait for all partitions to become inactive */
/* wait for all partitions to become inactive */
...
@@ -860,12 +858,8 @@ xpc_do_exit(void)
...
@@ -860,12 +858,8 @@ xpc_do_exit(void)
}
}
}
}
if
(
active_part_count
)
{
if
(
active_part_count
)
set_current_state
(
TASK_INTERRUPTIBLE
);
msleep_interruptible
(
300
);
schedule_timeout
(
0
.
3
*
HZ
);
set_current_state
(
TASK_RUNNING
);
}
}
while
(
active_part_count
>
0
);
}
while
(
active_part_count
>
0
);
...
...
include/asm-ia64/hw_irq.h
View file @
1604d9c8
...
@@ -81,7 +81,6 @@ extern __u8 isa_irq_to_vector_map[16];
...
@@ -81,7 +81,6 @@ extern __u8 isa_irq_to_vector_map[16];
extern
struct
hw_interrupt_type
irq_type_ia64_lsapic
;
/* CPU-internal interrupt controller */
extern
struct
hw_interrupt_type
irq_type_ia64_lsapic
;
/* CPU-internal interrupt controller */
extern
int
assign_irq_vector_nopanic
(
int
irq
);
/* allocate a free vector without panic */
extern
int
assign_irq_vector
(
int
irq
);
/* allocate a free vector */
extern
int
assign_irq_vector
(
int
irq
);
/* allocate a free vector */
extern
void
free_irq_vector
(
int
vector
);
extern
void
free_irq_vector
(
int
vector
);
extern
void
ia64_send_ipi
(
int
cpu
,
int
vector
,
int
delivery_mode
,
int
redirect
);
extern
void
ia64_send_ipi
(
int
cpu
,
int
vector
,
int
delivery_mode
,
int
redirect
);
...
...
include/asm-ia64/sn/xp.h
View file @
1604d9c8
...
@@ -16,7 +16,6 @@
...
@@ -16,7 +16,6 @@
#define _ASM_IA64_SN_XP_H
#define _ASM_IA64_SN_XP_H
#include <linux/version.h>
#include <linux/cache.h>
#include <linux/cache.h>
#include <linux/hardirq.h>
#include <linux/hardirq.h>
#include <asm/sn/types.h>
#include <asm/sn/types.h>
...
...
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