Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
raspberrypi-kernel
提交
3426cb3d
R
raspberrypi-kernel
项目概览
openeuler
/
raspberrypi-kernel
通知
13
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
raspberrypi-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
3426cb3d
编写于
4月 16, 2014
作者:
J
Joerg Roedel
浏览文件
操作
浏览文件
下载
差异文件
Merge
git://git.infradead.org/iommu-2.6
into iommu/fixes
上级
aca1bc45
5ae0566a
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
9 addition
and
4 deletion
+9
-4
drivers/iommu/dmar.c
drivers/iommu/dmar.c
+2
-1
drivers/iommu/intel-iommu.c
drivers/iommu/intel-iommu.c
+7
-3
未找到文件。
drivers/iommu/dmar.c
浏览文件 @
3426cb3d
...
...
@@ -152,7 +152,8 @@ dmar_alloc_pci_notify_info(struct pci_dev *dev, unsigned long event)
info
->
seg
=
pci_domain_nr
(
dev
->
bus
);
info
->
level
=
level
;
if
(
event
==
BUS_NOTIFY_ADD_DEVICE
)
{
for
(
tmp
=
dev
,
level
--
;
tmp
;
tmp
=
tmp
->
bus
->
self
)
{
for
(
tmp
=
dev
;
tmp
;
tmp
=
tmp
->
bus
->
self
)
{
level
--
;
info
->
path
[
level
].
device
=
PCI_SLOT
(
tmp
->
devfn
);
info
->
path
[
level
].
function
=
PCI_FUNC
(
tmp
->
devfn
);
if
(
pci_is_root_bus
(
tmp
->
bus
))
...
...
drivers/iommu/intel-iommu.c
浏览文件 @
3426cb3d
...
...
@@ -1009,11 +1009,13 @@ static struct page *dma_pte_list_pagetables(struct dmar_domain *domain,
if
(
level
==
1
)
return
freelist
;
for
(
pte
=
page_address
(
pg
);
!
first_pte_in_page
(
pte
);
pte
++
)
{
pte
=
page_address
(
pg
);
do
{
if
(
dma_pte_present
(
pte
)
&&
!
dma_pte_superpage
(
pte
))
freelist
=
dma_pte_list_pagetables
(
domain
,
level
-
1
,
pte
,
freelist
);
}
pte
++
;
}
while
(
!
first_pte_in_page
(
pte
));
return
freelist
;
}
...
...
@@ -2235,7 +2237,9 @@ static struct dmar_domain *get_domain_for_dev(struct device *dev, int gaw)
bridge_devfn
=
dev_tmp
->
devfn
;
}
spin_lock_irqsave
(
&
device_domain_lock
,
flags
);
info
=
dmar_search_domain_by_dev_info
(
segment
,
bus
,
devfn
);
info
=
dmar_search_domain_by_dev_info
(
segment
,
bridge_bus
,
bridge_devfn
);
if
(
info
)
{
iommu
=
info
->
iommu
;
domain
=
info
->
domain
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录