Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
8562b3f2
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
161
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看板
提交
8562b3f2
编写于
11月 05, 2007
作者:
D
Dave Airlie
提交者:
Dave Airlie
2月 07, 2008
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
drm: some minor cleanups and changes to make memory manager merging easier.
Signed-off-by:
N
Dave Airlie
<
airlied@linux.ie
>
上级
488b5ec8
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
28 addition
and
28 deletion
+28
-28
drivers/char/drm/drmP.h
drivers/char/drm/drmP.h
+26
-26
drivers/char/drm/drm_proc.c
drivers/char/drm/drm_proc.c
+2
-2
未找到文件。
drivers/char/drm/drmP.h
浏览文件 @
8562b3f2
...
...
@@ -292,7 +292,6 @@ struct drm_magic_entry {
struct
list_head
head
;
struct
drm_hash_item
hash_item
;
struct
drm_file
*
priv
;
struct
drm_magic_entry
*
next
;
};
struct
drm_vma_entry
{
...
...
@@ -388,8 +387,8 @@ struct drm_file {
struct
drm_head
*
head
;
int
remove_auth_on_close
;
unsigned
long
lock_count
;
void
*
driver_priv
;
struct
file
*
filp
;
void
*
driver_priv
;
};
/** Wait queue */
...
...
@@ -401,11 +400,9 @@ struct drm_queue {
wait_queue_head_t
read_queue
;
/**< Processes waiting on block_read */
atomic_t
block_write
;
/**< Queue blocked for writes */
wait_queue_head_t
write_queue
;
/**< Processes waiting on block_write */
#if 1
atomic_t
total_queued
;
/**< Total queued statistic */
atomic_t
total_flushed
;
/**< Total flushes statistic */
atomic_t
total_locks
;
/**< Total locks statistics */
#endif
enum
drm_ctx_flags
flags
;
/**< Context preserving and 2D-only */
struct
drm_waitlist
waitlist
;
/**< Pending buffers */
wait_queue_head_t
flush_queue
;
/**< Processes waiting until flush */
...
...
@@ -416,7 +413,8 @@ struct drm_queue {
*/
struct
drm_lock_data
{
struct
drm_hw_lock
*
hw_lock
;
/**< Hardware lock */
struct
drm_file
*
file_priv
;
/**< File descr of lock holder (0=kernel) */
/** Private of lock holder's file (NULL=kernel) */
struct
drm_file
*
file_priv
;
wait_queue_head_t
lock_queue
;
/**< Queue of blocked processes */
unsigned
long
lock_time
;
/**< Time of last lock in jiffies */
spinlock_t
spinlock
;
...
...
@@ -491,6 +489,27 @@ struct drm_sigdata {
struct
drm_hw_lock
*
lock
;
};
/*
* Generic memory manager structs
*/
struct
drm_mm_node
{
struct
list_head
fl_entry
;
struct
list_head
ml_entry
;
int
free
;
unsigned
long
start
;
unsigned
long
size
;
struct
drm_mm
*
mm
;
void
*
private
;
};
struct
drm_mm
{
struct
list_head
fl_entry
;
struct
list_head
ml_entry
;
};
/**
* Mappings list
*/
...
...
@@ -498,7 +517,7 @@ struct drm_map_list {
struct
list_head
head
;
/**< list head */
struct
drm_hash_item
hash
;
struct
drm_map
*
map
;
/**< mapping */
u
nsigned
in
t
user_token
;
u
int64_
t
user_token
;
};
typedef
struct
drm_map
drm_local_map_t
;
...
...
@@ -536,24 +555,6 @@ struct drm_ati_pcigart_info {
int
table_size
;
};
/*
* Generic memory manager structs
*/
struct
drm_mm_node
{
struct
list_head
fl_entry
;
struct
list_head
ml_entry
;
int
free
;
unsigned
long
start
;
unsigned
long
size
;
struct
drm_mm
*
mm
;
void
*
private
;
};
struct
drm_mm
{
struct
list_head
fl_entry
;
struct
list_head
ml_entry
;
};
/**
* DRM driver structure. This structure represent the common code for
* a family of cards. There will one drm_device for each card present
...
...
@@ -750,7 +751,6 @@ struct drm_device {
struct
pci_controller
*
hose
;
#endif
struct
drm_sg_mem
*
sg
;
/**< Scatter gather memory */
unsigned
long
*
ctx_bitmap
;
/**< context bitmap */
void
*
dev_private
;
/**< device private data */
struct
drm_sigdata
sigdata
;
/**< For block_all_signals */
sigset_t
sigmask
;
...
...
@@ -1073,7 +1073,7 @@ extern void drm_sysfs_device_remove(struct class_device *class_dev);
extern
struct
drm_mm_node
*
drm_mm_get_block
(
struct
drm_mm_node
*
parent
,
unsigned
long
size
,
unsigned
alignment
);
void
drm_mm_put_block
(
struct
drm_mm_node
*
cur
);
extern
void
drm_mm_put_block
(
struct
drm_mm_node
*
cur
);
extern
struct
drm_mm_node
*
drm_mm_search_free
(
const
struct
drm_mm
*
mm
,
unsigned
long
size
,
unsigned
alignment
,
int
best_match
);
extern
int
drm_mm_init
(
struct
drm_mm
*
mm
,
unsigned
long
start
,
unsigned
long
size
);
...
...
drivers/char/drm/drm_proc.c
浏览文件 @
8562b3f2
...
...
@@ -236,11 +236,11 @@ static int drm__vm_info(char *buf, char **start, off_t offset, int request,
type
=
"??"
;
else
type
=
types
[
map
->
type
];
DRM_PROC_PRINT
(
"%4d 0x%08lx 0x%08lx %4.4s 0x%02x 0x%08x "
,
DRM_PROC_PRINT
(
"%4d 0x%08lx 0x%08lx %4.4s 0x%02x 0x%08
l
x "
,
i
,
map
->
offset
,
map
->
size
,
type
,
map
->
flags
,
r_list
->
user_token
);
(
unsigned
long
)
r_list
->
user_token
);
if
(
map
->
mtrr
<
0
)
{
DRM_PROC_PRINT
(
"none
\n
"
);
}
else
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录