Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
7079060f
K
Kernel
项目概览
openeuler
/
Kernel
大约 1 年 前同步成功
通知
6
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
Kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
7079060f
编写于
11月 07, 2005
作者:
L
Linus Torvalds
浏览文件
操作
浏览文件
下载
差异文件
Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart
上级
3f00d3e8
0a1cc0b6
变更
16
隐藏空白更改
内联
并排
Showing
16 changed file
with
53 addition
and
42 deletion
+53
-42
drivers/char/agp/ali-agp.c
drivers/char/agp/ali-agp.c
+1
-0
drivers/char/agp/amd-k7-agp.c
drivers/char/agp/amd-k7-agp.c
+3
-5
drivers/char/agp/amd64-agp.c
drivers/char/agp/amd64-agp.c
+1
-0
drivers/char/agp/ati-agp.c
drivers/char/agp/ati-agp.c
+3
-5
drivers/char/agp/backend.c
drivers/char/agp/backend.c
+3
-3
drivers/char/agp/efficeon-agp.c
drivers/char/agp/efficeon-agp.c
+2
-1
drivers/char/agp/frontend.c
drivers/char/agp/frontend.c
+4
-11
drivers/char/agp/generic.c
drivers/char/agp/generic.c
+5
-5
drivers/char/agp/i460-agp.c
drivers/char/agp/i460-agp.c
+3
-4
drivers/char/agp/intel-agp.c
drivers/char/agp/intel-agp.c
+1
-0
drivers/char/agp/nvidia-agp.c
drivers/char/agp/nvidia-agp.c
+1
-0
drivers/char/agp/sgi-agp.c
drivers/char/agp/sgi-agp.c
+2
-0
drivers/char/agp/sis-agp.c
drivers/char/agp/sis-agp.c
+1
-0
drivers/char/agp/sworks-agp.c
drivers/char/agp/sworks-agp.c
+21
-8
drivers/char/agp/uninorth-agp.c
drivers/char/agp/uninorth-agp.c
+1
-0
drivers/char/agp/via-agp.c
drivers/char/agp/via-agp.c
+1
-0
未找到文件。
drivers/char/agp/ali-agp.c
浏览文件 @
7079060f
...
...
@@ -389,6 +389,7 @@ static struct pci_device_id agp_ali_pci_table[] = {
MODULE_DEVICE_TABLE
(
pci
,
agp_ali_pci_table
);
static
struct
pci_driver
agp_ali_pci_driver
=
{
.
owner
=
THIS_MODULE
,
.
name
=
"agpgart-ali"
,
.
id_table
=
agp_ali_pci_table
,
.
probe
=
agp_ali_probe
,
...
...
drivers/char/agp/amd-k7-agp.c
浏览文件 @
7079060f
...
...
@@ -94,19 +94,16 @@ static int amd_create_gatt_pages(int nr_tables)
int
retval
=
0
;
int
i
;
tables
=
kmalloc
((
nr_tables
+
1
)
*
sizeof
(
struct
amd_page_map
*
),
GFP_KERNEL
);
tables
=
kzalloc
((
nr_tables
+
1
)
*
sizeof
(
struct
amd_page_map
*
),
GFP_KERNEL
);
if
(
tables
==
NULL
)
return
-
ENOMEM
;
memset
(
tables
,
0
,
sizeof
(
struct
amd_page_map
*
)
*
(
nr_tables
+
1
));
for
(
i
=
0
;
i
<
nr_tables
;
i
++
)
{
entry
=
k
m
alloc
(
sizeof
(
struct
amd_page_map
),
GFP_KERNEL
);
entry
=
k
z
alloc
(
sizeof
(
struct
amd_page_map
),
GFP_KERNEL
);
if
(
entry
==
NULL
)
{
retval
=
-
ENOMEM
;
break
;
}
memset
(
entry
,
0
,
sizeof
(
struct
amd_page_map
));
tables
[
i
]
=
entry
;
retval
=
amd_create_page_map
(
entry
);
if
(
retval
!=
0
)
...
...
@@ -518,6 +515,7 @@ static struct pci_device_id agp_amdk7_pci_table[] = {
MODULE_DEVICE_TABLE
(
pci
,
agp_amdk7_pci_table
);
static
struct
pci_driver
agp_amdk7_pci_driver
=
{
.
owner
=
THIS_MODULE
,
.
name
=
"agpgart-amdk7"
,
.
id_table
=
agp_amdk7_pci_table
,
.
probe
=
agp_amdk7_probe
,
...
...
drivers/char/agp/amd64-agp.c
浏览文件 @
7079060f
...
...
@@ -703,6 +703,7 @@ static struct pci_device_id agp_amd64_pci_table[] = {
MODULE_DEVICE_TABLE
(
pci
,
agp_amd64_pci_table
);
static
struct
pci_driver
agp_amd64_pci_driver
=
{
.
owner
=
THIS_MODULE
,
.
name
=
"agpgart-amd64"
,
.
id_table
=
agp_amd64_pci_table
,
.
probe
=
agp_amd64_probe
,
...
...
drivers/char/agp/ati-agp.c
浏览文件 @
7079060f
...
...
@@ -118,14 +118,12 @@ static int ati_create_gatt_pages(int nr_tables)
int
retval
=
0
;
int
i
;
tables
=
kmalloc
((
nr_tables
+
1
)
*
sizeof
(
ati_page_map
*
),
GFP_KERNEL
);
tables
=
kzalloc
((
nr_tables
+
1
)
*
sizeof
(
ati_page_map
*
),
GFP_KERNEL
);
if
(
tables
==
NULL
)
return
-
ENOMEM
;
memset
(
tables
,
0
,
sizeof
(
ati_page_map
*
)
*
(
nr_tables
+
1
));
for
(
i
=
0
;
i
<
nr_tables
;
i
++
)
{
entry
=
k
m
alloc
(
sizeof
(
ati_page_map
),
GFP_KERNEL
);
entry
=
k
z
alloc
(
sizeof
(
ati_page_map
),
GFP_KERNEL
);
if
(
entry
==
NULL
)
{
while
(
i
>
0
)
{
kfree
(
tables
[
i
-
1
]);
...
...
@@ -136,7 +134,6 @@ static int ati_create_gatt_pages(int nr_tables)
retval
=
-
ENOMEM
;
break
;
}
memset
(
entry
,
0
,
sizeof
(
ati_page_map
));
tables
[
i
]
=
entry
;
retval
=
ati_create_page_map
(
entry
);
if
(
retval
!=
0
)
break
;
...
...
@@ -524,6 +521,7 @@ static struct pci_device_id agp_ati_pci_table[] = {
MODULE_DEVICE_TABLE
(
pci
,
agp_ati_pci_table
);
static
struct
pci_driver
agp_ati_pci_driver
=
{
.
owner
=
THIS_MODULE
,
.
name
=
"agpgart-ati"
,
.
id_table
=
agp_ati_pci_table
,
.
probe
=
agp_ati_probe
,
...
...
drivers/char/agp/backend.c
浏览文件 @
7079060f
...
...
@@ -222,12 +222,12 @@ static void agp_backend_cleanup(struct agp_bridge_data *bridge)
struct
agp_bridge_data
*
agp_alloc_bridge
(
void
)
{
struct
agp_bridge_data
*
bridge
=
kmalloc
(
sizeof
(
*
bridge
),
GFP_KERNEL
);
struct
agp_bridge_data
*
bridge
;
bridge
=
kzalloc
(
sizeof
(
*
bridge
),
GFP_KERNEL
);
if
(
!
bridge
)
return
NULL
;
memset
(
bridge
,
0
,
sizeof
(
*
bridge
));
atomic_set
(
&
bridge
->
agp_in_use
,
0
);
atomic_set
(
&
bridge
->
current_memory_agp
,
0
);
...
...
drivers/char/agp/efficeon-agp.c
浏览文件 @
7079060f
...
...
@@ -219,7 +219,7 @@ static int efficeon_create_gatt_table(struct agp_bridge_data *bridge)
efficeon_private
.
l1_table
[
index
]
=
page
;
value
=
virt_to_gart
(
page
)
|
pati
|
present
|
index
;
value
=
virt_to_gart
(
(
unsigned
long
*
)
page
)
|
pati
|
present
|
index
;
pci_write_config_dword
(
agp_bridge
->
dev
,
EFFICEON_ATTPAGE
,
value
);
...
...
@@ -429,6 +429,7 @@ static struct pci_device_id agp_efficeon_pci_table[] = {
MODULE_DEVICE_TABLE
(
pci
,
agp_efficeon_pci_table
);
static
struct
pci_driver
agp_efficeon_pci_driver
=
{
.
owner
=
THIS_MODULE
,
.
name
=
"agpgart-efficeon"
,
.
id_table
=
agp_efficeon_pci_table
,
.
probe
=
agp_efficeon_probe
,
...
...
drivers/char/agp/frontend.c
浏览文件 @
7079060f
...
...
@@ -189,13 +189,12 @@ static int agp_create_segment(struct agp_client *client, struct agp_region *regi
struct
agp_segment
*
user_seg
;
size_t
i
;
seg
=
k
m
alloc
((
sizeof
(
struct
agp_segment_priv
)
*
region
->
seg_count
),
GFP_KERNEL
);
seg
=
k
z
alloc
((
sizeof
(
struct
agp_segment_priv
)
*
region
->
seg_count
),
GFP_KERNEL
);
if
(
seg
==
NULL
)
{
kfree
(
region
->
seg_list
);
region
->
seg_list
=
NULL
;
return
-
ENOMEM
;
}
memset
(
seg
,
0
,
(
sizeof
(
struct
agp_segment_priv
)
*
region
->
seg_count
));
user_seg
=
region
->
seg_list
;
for
(
i
=
0
;
i
<
region
->
seg_count
;
i
++
)
{
...
...
@@ -332,14 +331,11 @@ static struct agp_controller *agp_create_controller(pid_t id)
{
struct
agp_controller
*
controller
;
controller
=
kmalloc
(
sizeof
(
struct
agp_controller
),
GFP_KERNEL
);
controller
=
kzalloc
(
sizeof
(
struct
agp_controller
),
GFP_KERNEL
);
if
(
controller
==
NULL
)
return
NULL
;
memset
(
controller
,
0
,
sizeof
(
struct
agp_controller
));
controller
->
pid
=
id
;
return
controller
;
}
...
...
@@ -540,12 +536,10 @@ static struct agp_client *agp_create_client(pid_t id)
{
struct
agp_client
*
new_client
;
new_client
=
kmalloc
(
sizeof
(
struct
agp_client
),
GFP_KERNEL
);
new_client
=
kzalloc
(
sizeof
(
struct
agp_client
),
GFP_KERNEL
);
if
(
new_client
==
NULL
)
return
NULL
;
memset
(
new_client
,
0
,
sizeof
(
struct
agp_client
));
new_client
->
pid
=
id
;
agp_insert_client
(
new_client
);
return
new_client
;
...
...
@@ -709,11 +703,10 @@ static int agp_open(struct inode *inode, struct file *file)
if
(
minor
!=
AGPGART_MINOR
)
goto
err_out
;
priv
=
k
m
alloc
(
sizeof
(
struct
agp_file_private
),
GFP_KERNEL
);
priv
=
k
z
alloc
(
sizeof
(
struct
agp_file_private
),
GFP_KERNEL
);
if
(
priv
==
NULL
)
goto
err_out_nomem
;
memset
(
priv
,
0
,
sizeof
(
struct
agp_file_private
));
set_bit
(
AGP_FF_ALLOW_CLIENT
,
&
priv
->
access_flags
);
priv
->
my_pid
=
current
->
pid
;
...
...
drivers/char/agp/generic.c
浏览文件 @
7079060f
...
...
@@ -105,12 +105,10 @@ struct agp_memory *agp_create_memory(int scratch_pages)
{
struct
agp_memory
*
new
;
new
=
kmalloc
(
sizeof
(
struct
agp_memory
),
GFP_KERNEL
);
new
=
kzalloc
(
sizeof
(
struct
agp_memory
),
GFP_KERNEL
);
if
(
new
==
NULL
)
return
NULL
;
memset
(
new
,
0
,
sizeof
(
struct
agp_memory
));
new
->
key
=
agp_get_key
();
if
(
new
->
key
<
0
)
{
...
...
@@ -414,7 +412,8 @@ static void agp_v2_parse_one(u32 *requested_mode, u32 *bridge_agpstat, u32 *vga_
u32
tmp
;
if
(
*
requested_mode
&
AGP2_RESERVED_MASK
)
{
printk
(
KERN_INFO
PFX
"reserved bits set in mode 0x%x. Fixed.
\n
"
,
*
requested_mode
);
printk
(
KERN_INFO
PFX
"reserved bits set (%x) in mode 0x%x. Fixed.
\n
"
,
*
requested_mode
&
AGP2_RESERVED_MASK
,
*
requested_mode
);
*
requested_mode
&=
~
AGP2_RESERVED_MASK
;
}
...
...
@@ -492,7 +491,8 @@ static void agp_v3_parse_one(u32 *requested_mode, u32 *bridge_agpstat, u32 *vga_
u32
tmp
;
if
(
*
requested_mode
&
AGP3_RESERVED_MASK
)
{
printk
(
KERN_INFO
PFX
"reserved bits set in mode 0x%x. Fixed.
\n
"
,
*
requested_mode
);
printk
(
KERN_INFO
PFX
"reserved bits set (%x) in mode 0x%x. Fixed.
\n
"
,
*
requested_mode
&
AGP3_RESERVED_MASK
,
*
requested_mode
);
*
requested_mode
&=
~
AGP3_RESERVED_MASK
;
}
...
...
drivers/char/agp/i460-agp.c
浏览文件 @
7079060f
...
...
@@ -227,10 +227,9 @@ static int i460_configure (void)
*/
if
(
I460_IO_PAGE_SHIFT
>
PAGE_SHIFT
)
{
size
=
current_size
->
num_entries
*
sizeof
(
i460
.
lp_desc
[
0
]);
i460
.
lp_desc
=
k
m
alloc
(
size
,
GFP_KERNEL
);
i460
.
lp_desc
=
k
z
alloc
(
size
,
GFP_KERNEL
);
if
(
!
i460
.
lp_desc
)
return
-
ENOMEM
;
memset
(
i460
.
lp_desc
,
0
,
size
);
}
return
0
;
}
...
...
@@ -366,13 +365,12 @@ static int i460_alloc_large_page (struct lp_desc *lp)
}
map_size
=
((
I460_KPAGES_PER_IOPAGE
+
BITS_PER_LONG
-
1
)
&
-
BITS_PER_LONG
)
/
8
;
lp
->
alloced_map
=
k
m
alloc
(
map_size
,
GFP_KERNEL
);
lp
->
alloced_map
=
k
z
alloc
(
map_size
,
GFP_KERNEL
);
if
(
!
lp
->
alloced_map
)
{
free_pages
((
unsigned
long
)
lpage
,
order
);
printk
(
KERN_ERR
PFX
"Out of memory, we're in trouble...
\n
"
);
return
-
ENOMEM
;
}
memset
(
lp
->
alloced_map
,
0
,
map_size
);
lp
->
paddr
=
virt_to_gart
(
lpage
);
lp
->
refcount
=
0
;
...
...
@@ -619,6 +617,7 @@ static struct pci_device_id agp_intel_i460_pci_table[] = {
MODULE_DEVICE_TABLE
(
pci
,
agp_intel_i460_pci_table
);
static
struct
pci_driver
agp_intel_i460_pci_driver
=
{
.
owner
=
THIS_MODULE
,
.
name
=
"agpgart-intel-i460"
,
.
id_table
=
agp_intel_i460_pci_table
,
.
probe
=
agp_intel_i460_probe
,
...
...
drivers/char/agp/intel-agp.c
浏览文件 @
7079060f
...
...
@@ -1824,6 +1824,7 @@ static struct pci_device_id agp_intel_pci_table[] = {
MODULE_DEVICE_TABLE
(
pci
,
agp_intel_pci_table
);
static
struct
pci_driver
agp_intel_pci_driver
=
{
.
owner
=
THIS_MODULE
,
.
name
=
"agpgart-intel"
,
.
id_table
=
agp_intel_pci_table
,
.
probe
=
agp_intel_probe
,
...
...
drivers/char/agp/nvidia-agp.c
浏览文件 @
7079060f
...
...
@@ -398,6 +398,7 @@ static struct pci_device_id agp_nvidia_pci_table[] = {
MODULE_DEVICE_TABLE
(
pci
,
agp_nvidia_pci_table
);
static
struct
pci_driver
agp_nvidia_pci_driver
=
{
.
owner
=
THIS_MODULE
,
.
name
=
"agpgart-nvidia"
,
.
id_table
=
agp_nvidia_pci_table
,
.
probe
=
agp_nvidia_probe
,
...
...
drivers/char/agp/sgi-agp.c
浏览文件 @
7079060f
...
...
@@ -289,6 +289,8 @@ static int __devinit agp_sgi_init(void)
j
=
0
;
list_for_each_entry
(
info
,
&
tioca_list
,
ca_list
)
{
struct
list_head
*
tmp
;
if
(
list_empty
(
info
->
ca_devices
))
continue
;
list_for_each
(
tmp
,
info
->
ca_devices
)
{
u8
cap_ptr
;
pdev
=
pci_dev_b
(
tmp
);
...
...
drivers/char/agp/sis-agp.c
浏览文件 @
7079060f
...
...
@@ -332,6 +332,7 @@ static struct pci_device_id agp_sis_pci_table[] = {
MODULE_DEVICE_TABLE
(
pci
,
agp_sis_pci_table
);
static
struct
pci_driver
agp_sis_pci_driver
=
{
.
owner
=
THIS_MODULE
,
.
name
=
"agpgart-sis"
,
.
id_table
=
agp_sis_pci_table
,
.
probe
=
agp_sis_probe
,
...
...
drivers/char/agp/sworks-agp.c
浏览文件 @
7079060f
...
...
@@ -102,19 +102,17 @@ static int serverworks_create_gatt_pages(int nr_tables)
int
retval
=
0
;
int
i
;
tables
=
k
m
alloc
((
nr_tables
+
1
)
*
sizeof
(
struct
serverworks_page_map
*
),
tables
=
k
z
alloc
((
nr_tables
+
1
)
*
sizeof
(
struct
serverworks_page_map
*
),
GFP_KERNEL
);
if
(
tables
==
NULL
)
{
if
(
tables
==
NULL
)
return
-
ENOMEM
;
}
memset
(
tables
,
0
,
sizeof
(
struct
serverworks_page_map
*
)
*
(
nr_tables
+
1
));
for
(
i
=
0
;
i
<
nr_tables
;
i
++
)
{
entry
=
k
m
alloc
(
sizeof
(
struct
serverworks_page_map
),
GFP_KERNEL
);
entry
=
k
z
alloc
(
sizeof
(
struct
serverworks_page_map
),
GFP_KERNEL
);
if
(
entry
==
NULL
)
{
retval
=
-
ENOMEM
;
break
;
}
memset
(
entry
,
0
,
sizeof
(
struct
serverworks_page_map
));
tables
[
i
]
=
entry
;
retval
=
serverworks_create_page_map
(
entry
);
if
(
retval
!=
0
)
break
;
...
...
@@ -244,13 +242,27 @@ static int serverworks_fetch_size(void)
*/
static
void
serverworks_tlbflush
(
struct
agp_memory
*
temp
)
{
unsigned
long
timeout
;
writeb
(
1
,
serverworks_private
.
registers
+
SVWRKS_POSTFLUSH
);
while
(
readb
(
serverworks_private
.
registers
+
SVWRKS_POSTFLUSH
)
==
1
)
timeout
=
jiffies
+
3
*
HZ
;
while
(
readb
(
serverworks_private
.
registers
+
SVWRKS_POSTFLUSH
)
==
1
)
{
cpu_relax
();
if
(
time_after
(
jiffies
,
timeout
))
{
printk
(
KERN_ERR
PFX
"TLB post flush took more than 3 seconds
\n
"
);
break
;
}
}
writel
(
1
,
serverworks_private
.
registers
+
SVWRKS_DIRFLUSH
);
while
(
readl
(
serverworks_private
.
registers
+
SVWRKS_DIRFLUSH
)
==
1
)
timeout
=
jiffies
+
3
*
HZ
;
while
(
readl
(
serverworks_private
.
registers
+
SVWRKS_DIRFLUSH
)
==
1
)
{
cpu_relax
();
if
(
time_after
(
jiffies
,
timeout
))
{
printk
(
KERN_ERR
PFX
"TLB Dir flush took more than 3 seconds
\n
"
);
break
;
}
}
}
static
int
serverworks_configure
(
void
)
...
...
@@ -533,6 +545,7 @@ static struct pci_device_id agp_serverworks_pci_table[] = {
MODULE_DEVICE_TABLE
(
pci
,
agp_serverworks_pci_table
);
static
struct
pci_driver
agp_serverworks_pci_driver
=
{
.
owner
=
THIS_MODULE
,
.
name
=
"agpgart-serverworks"
,
.
id_table
=
agp_serverworks_pci_table
,
.
probe
=
agp_serverworks_probe
,
...
...
drivers/char/agp/uninorth-agp.c
浏览文件 @
7079060f
...
...
@@ -658,6 +658,7 @@ static struct pci_device_id agp_uninorth_pci_table[] = {
MODULE_DEVICE_TABLE
(
pci
,
agp_uninorth_pci_table
);
static
struct
pci_driver
agp_uninorth_pci_driver
=
{
.
owner
=
THIS_MODULE
,
.
name
=
"agpgart-uninorth"
,
.
id_table
=
agp_uninorth_pci_table
,
.
probe
=
agp_uninorth_probe
,
...
...
drivers/char/agp/via-agp.c
浏览文件 @
7079060f
...
...
@@ -518,6 +518,7 @@ MODULE_DEVICE_TABLE(pci, agp_via_pci_table);
static
struct
pci_driver
agp_via_pci_driver
=
{
.
owner
=
THIS_MODULE
,
.
name
=
"agpgart-via"
,
.
id_table
=
agp_via_pci_table
,
.
probe
=
agp_via_probe
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录