Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
1604d9c8
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看板
提交
1604d9c8
编写于
7月 11, 2005
作者:
L
Linus Torvalds
浏览文件
操作
浏览文件
下载
差异文件
Merge master.kernel.org:/pub/scm/linux/kernel/git/aegl/linux-2.6
上级
a8400986
3b5cc090
变更
11
隐藏空白更改
内联
并排
Showing
11 changed file
with
29 addition
and
37 deletion
+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
未找到文件。
Documentation/kernel-parameters.txt
浏览文件 @
1604d9c8
...
...
@@ -758,6 +758,9 @@ running once the system is up.
maxcpus= [SMP] Maximum number of processors that an SMP kernel
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
Should be between 1 and 2^32-1.
...
...
arch/ia64/hp/sim/simeth.c
浏览文件 @
1604d9c8
...
...
@@ -191,7 +191,7 @@ simeth_probe1(void)
unsigned
char
mac_addr
[
ETH_ALEN
];
struct
simeth_local
*
local
;
struct
net_device
*
dev
;
int
fd
,
i
,
err
;
int
fd
,
i
,
err
,
rc
;
/*
* XXX Fix me
...
...
@@ -228,7 +228,9 @@ simeth_probe1(void)
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
...
...
arch/ia64/hp/sim/simserial.c
浏览文件 @
1604d9c8
...
...
@@ -982,7 +982,7 @@ static struct tty_operations hp_ops = {
static
int
__init
simrs_init
(
void
)
{
int
i
;
int
i
,
rc
;
struct
serial_state
*
state
;
if
(
!
ia64_platform_is
(
"hpsim"
))
...
...
@@ -1017,7 +1017,10 @@ simrs_init (void)
if
(
state
->
type
==
PORT_UNKNOWN
)
continue
;
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
);
}
...
...
arch/ia64/kernel/entry.S
浏览文件 @
1604d9c8
...
...
@@ -1249,7 +1249,7 @@ ENTRY(sys_rt_sigreturn)
stf.spill
[
r17
]=
f11
adds
out0
=
16
,
sp
//
out0
=
&
sigscratch
br.call.sptk.many
rp
=
ia64_rt_sigreturn
.
ret19
:
.
restore
sp
0
.
ret19
:
.
restore
sp
,
0
adds
sp
=
16
,
sp
;;
ld8
r9
=[
sp
]
//
load
new
ar
.
unat
...
...
arch/ia64/kernel/iosapic.c
浏览文件 @
1604d9c8
...
...
@@ -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
;
}
...
...
@@ -506,6 +504,8 @@ iosapic_reassign_vector (int vector)
if
(
!
list_empty
(
&
iosapic_intr_info
[
vector
].
rtes
))
{
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
);
memcpy
(
&
iosapic_intr_info
[
new_vector
],
&
iosapic_intr_info
[
vector
],
sizeof
(
struct
iosapic_intr_info
));
...
...
@@ -734,9 +734,12 @@ iosapic_register_intr (unsigned int gsi,
spin_unlock_irqrestore
(
&
iosapic_lock
,
flags
);
/* If vector is running out, we try to find a sharable vector */
vector
=
assign_irq_vector
_nopanic
(
AUTO_ASSIGN
);
if
(
vector
<
0
)
vector
=
assign_irq_vector
(
AUTO_ASSIGN
);
if
(
vector
<
0
)
{
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
(
&
iosapic_lock
);
...
...
@@ -884,6 +887,8 @@ iosapic_register_platform_intr (u32 int_type, unsigned int gsi,
break
;
case
ACPI_INTERRUPT_INIT
:
vector
=
assign_irq_vector
(
AUTO_ASSIGN
);
if
(
vector
<
0
)
panic
(
"%s: out of interrupt vectors!
\n
"
,
__FUNCTION__
);
delivery
=
IOSAPIC_INIT
;
break
;
case
ACPI_INTERRUPT_CPEI
:
...
...
arch/ia64/kernel/irq_ia64.c
浏览文件 @
1604d9c8
...
...
@@ -63,30 +63,19 @@ EXPORT_SYMBOL(isa_irq_to_vector_map);
static
unsigned
long
ia64_vector_mask
[
BITS_TO_LONGS
(
IA64_NUM_DEVICE_VECTORS
)];
int
assign_irq_vector
_nopanic
(
int
irq
)
assign_irq_vector
(
int
irq
)
{
int
pos
,
vector
;
again:
pos
=
find_first_zero_bit
(
ia64_vector_mask
,
IA64_NUM_DEVICE_VECTORS
);
vector
=
IA64_FIRST_DEVICE_VECTOR
+
pos
;
if
(
vector
>
IA64_LAST_DEVICE_VECTOR
)
return
-
1
;
return
-
ENOSPC
;
if
(
test_and_set_bit
(
pos
,
ia64_vector_mask
))
goto
again
;
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
free_irq_vector
(
int
vector
)
{
...
...
arch/ia64/kernel/perfmon.c
浏览文件 @
1604d9c8
...
...
@@ -37,7 +37,6 @@
#include <linux/vfs.h>
#include <linux/pagemap.h>
#include <linux/mount.h>
#include <linux/version.h>
#include <linux/bitops.h>
#include <asm/errno.h>
...
...
arch/ia64/sn/kernel/tiocx.c
浏览文件 @
1604d9c8
...
...
@@ -8,7 +8,6 @@
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/version.h>
#include <linux/slab.h>
#include <linux/spinlock.h>
#include <linux/proc_fs.h>
...
...
arch/ia64/sn/kernel/xpc_main.c
浏览文件 @
1604d9c8
...
...
@@ -53,6 +53,7 @@
#include <linux/cache.h>
#include <linux/interrupt.h>
#include <linux/slab.h>
#include <linux/delay.h>
#include <asm/sn/intr.h>
#include <asm/sn/sn_sal.h>
#include <asm/uaccess.h>
...
...
@@ -308,8 +309,7 @@ xpc_make_first_contact(struct xpc_partition *part)
"partition %d
\n
"
,
XPC_PARTID
(
part
));
/* wait a 1/4 of a second or so */
set_current_state
(
TASK_INTERRUPTIBLE
);
(
void
)
schedule_timeout
(
0
.
25
*
HZ
);
msleep_interruptible
(
250
);
if
(
part
->
act_state
==
XPC_P_DEACTIVATING
)
{
return
part
->
reason
;
...
...
@@ -841,9 +841,7 @@ xpc_do_exit(void)
down
(
&
xpc_discovery_exited
);
set_current_state
(
TASK_INTERRUPTIBLE
);
schedule_timeout
(
0
.
3
*
HZ
);
set_current_state
(
TASK_RUNNING
);
msleep_interruptible
(
300
);
/* wait for all partitions to become inactive */
...
...
@@ -860,12 +858,8 @@ xpc_do_exit(void)
}
}
if
(
active_part_count
)
{
set_current_state
(
TASK_INTERRUPTIBLE
);
schedule_timeout
(
0
.
3
*
HZ
);
set_current_state
(
TASK_RUNNING
);
}
if
(
active_part_count
)
msleep_interruptible
(
300
);
}
while
(
active_part_count
>
0
);
...
...
include/asm-ia64/hw_irq.h
浏览文件 @
1604d9c8
...
...
@@ -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
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
void
free_irq_vector
(
int
vector
);
extern
void
ia64_send_ipi
(
int
cpu
,
int
vector
,
int
delivery_mode
,
int
redirect
);
...
...
include/asm-ia64/sn/xp.h
浏览文件 @
1604d9c8
...
...
@@ -16,7 +16,6 @@
#define _ASM_IA64_SN_XP_H
#include <linux/version.h>
#include <linux/cache.h>
#include <linux/hardirq.h>
#include <asm/sn/types.h>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录