Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
f0c5b592
cloud-kernel
项目概览
openanolis
/
cloud-kernel
大约 1 年 前同步成功
通知
158
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看板
体验新版 GitCode,发现更多精彩内容 >>
提交
f0c5b592
编写于
11月 25, 2011
作者:
C
Cong Wang
提交者:
Cong Wang
3月 20, 2012
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
gma500: remove the second argument of k[un]map_atomic()
Signed-off-by:
N
Cong Wang
<
amwang@redhat.com
>
上级
c2e022cb
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
15 addition
and
15 deletion
+15
-15
drivers/gpu/drm/gma500/mmu.c
drivers/gpu/drm/gma500/mmu.c
+15
-15
未找到文件。
drivers/gpu/drm/gma500/mmu.c
浏览文件 @
f0c5b592
...
...
@@ -125,14 +125,14 @@ static void psb_page_clflush(struct psb_mmu_driver *driver, struct page* page)
int
i
;
uint8_t
*
clf
;
clf
=
kmap_atomic
(
page
,
KM_USER0
);
clf
=
kmap_atomic
(
page
);
mb
();
for
(
i
=
0
;
i
<
clflush_count
;
++
i
)
{
psb_clflush
(
clf
);
clf
+=
clflush_add
;
}
mb
();
kunmap_atomic
(
clf
,
KM_USER0
);
kunmap_atomic
(
clf
);
}
static
void
psb_pages_clflush
(
struct
psb_mmu_driver
*
driver
,
...
...
@@ -325,7 +325,7 @@ static struct psb_mmu_pt *psb_mmu_alloc_pt(struct psb_mmu_pd *pd)
spin_lock
(
lock
);
v
=
kmap_atomic
(
pt
->
p
,
KM_USER0
);
v
=
kmap_atomic
(
pt
->
p
);
clf
=
(
uint8_t
*
)
v
;
ptes
=
(
uint32_t
*
)
v
;
for
(
i
=
0
;
i
<
(
PAGE_SIZE
/
sizeof
(
uint32_t
));
++
i
)
...
...
@@ -341,7 +341,7 @@ static struct psb_mmu_pt *psb_mmu_alloc_pt(struct psb_mmu_pd *pd)
mb
();
}
kunmap_atomic
(
v
,
KM_USER0
);
kunmap_atomic
(
v
);
spin_unlock
(
lock
);
pt
->
count
=
0
;
...
...
@@ -376,18 +376,18 @@ struct psb_mmu_pt *psb_mmu_pt_alloc_map_lock(struct psb_mmu_pd *pd,
continue
;
}
v
=
kmap_atomic
(
pd
->
p
,
KM_USER0
);
v
=
kmap_atomic
(
pd
->
p
);
pd
->
tables
[
index
]
=
pt
;
v
[
index
]
=
(
page_to_pfn
(
pt
->
p
)
<<
12
)
|
pd
->
pd_mask
;
pt
->
index
=
index
;
kunmap_atomic
((
void
*
)
v
,
KM_USER0
);
kunmap_atomic
((
void
*
)
v
);
if
(
pd
->
hw_context
!=
-
1
)
{
psb_mmu_clflush
(
pd
->
driver
,
(
void
*
)
&
v
[
index
]);
atomic_set
(
&
pd
->
driver
->
needs_tlbflush
,
1
);
}
}
pt
->
v
=
kmap_atomic
(
pt
->
p
,
KM_USER0
);
pt
->
v
=
kmap_atomic
(
pt
->
p
);
return
pt
;
}
...
...
@@ -404,7 +404,7 @@ static struct psb_mmu_pt *psb_mmu_pt_map_lock(struct psb_mmu_pd *pd,
spin_unlock
(
lock
);
return
NULL
;
}
pt
->
v
=
kmap_atomic
(
pt
->
p
,
KM_USER0
);
pt
->
v
=
kmap_atomic
(
pt
->
p
);
return
pt
;
}
...
...
@@ -413,9 +413,9 @@ static void psb_mmu_pt_unmap_unlock(struct psb_mmu_pt *pt)
struct
psb_mmu_pd
*
pd
=
pt
->
pd
;
uint32_t
*
v
;
kunmap_atomic
(
pt
->
v
,
KM_USER0
);
kunmap_atomic
(
pt
->
v
);
if
(
pt
->
count
==
0
)
{
v
=
kmap_atomic
(
pd
->
p
,
KM_USER0
);
v
=
kmap_atomic
(
pd
->
p
);
v
[
pt
->
index
]
=
pd
->
invalid_pde
;
pd
->
tables
[
pt
->
index
]
=
NULL
;
...
...
@@ -424,7 +424,7 @@ static void psb_mmu_pt_unmap_unlock(struct psb_mmu_pt *pt)
(
void
*
)
&
v
[
pt
->
index
]);
atomic_set
(
&
pd
->
driver
->
needs_tlbflush
,
1
);
}
kunmap_atomic
(
pt
->
v
,
KM_USER0
);
kunmap_atomic
(
pt
->
v
);
spin_unlock
(
&
pd
->
driver
->
lock
);
psb_mmu_free_pt
(
pt
);
return
;
...
...
@@ -457,7 +457,7 @@ void psb_mmu_mirror_gtt(struct psb_mmu_pd *pd,
down_read
(
&
driver
->
sem
);
spin_lock
(
&
driver
->
lock
);
v
=
kmap_atomic
(
pd
->
p
,
KM_USER0
);
v
=
kmap_atomic
(
pd
->
p
);
v
+=
start
;
while
(
gtt_pages
--
)
{
...
...
@@ -467,7 +467,7 @@ void psb_mmu_mirror_gtt(struct psb_mmu_pd *pd,
/*ttm_tt_cache_flush(&pd->p, num_pages);*/
psb_pages_clflush
(
pd
->
driver
,
&
pd
->
p
,
num_pages
);
kunmap_atomic
(
v
,
KM_USER0
);
kunmap_atomic
(
v
);
spin_unlock
(
&
driver
->
lock
);
if
(
pd
->
hw_context
!=
-
1
)
...
...
@@ -830,9 +830,9 @@ int psb_mmu_virtual_to_pfn(struct psb_mmu_pd *pd, uint32_t virtual,
uint32_t
*
v
;
spin_lock
(
lock
);
v
=
kmap_atomic
(
pd
->
p
,
KM_USER0
);
v
=
kmap_atomic
(
pd
->
p
);
tmp
=
v
[
psb_mmu_pd_index
(
virtual
)];
kunmap_atomic
(
v
,
KM_USER0
);
kunmap_atomic
(
v
);
spin_unlock
(
lock
);
if
(
tmp
!=
pd
->
invalid_pde
||
!
(
tmp
&
PSB_PTE_VALID
)
||
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录