This fixes the regression introduced by commit
42590a75019a50012f25a962246498dead428433 ("x86/agp: Fix agp_amd64_init
and agp_amd64_cleanup").
The commit 61684ceaad4f65d1a9832c722f7bd5e7fc714de9 fixed the above
regression but there is still a problem in the module initialization;
when apg_amd64 is built as a module, the GART IOMMU is not still
initialized.
Reported-by: Marin Mitov <[email protected]>
Signed-off-by: FUJITA Tomonori <[email protected]>
Tested-by: Marin Mitov <[email protected]>
---
drivers/char/agp/amd64-agp.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/drivers/char/agp/amd64-agp.c b/drivers/char/agp/amd64-agp.c
index 34cf04e..fd50ead 100644
--- a/drivers/char/agp/amd64-agp.c
+++ b/drivers/char/agp/amd64-agp.c
@@ -767,16 +767,19 @@ int __init agp_amd64_init(void)
static int __init agp_amd64_mod_init(void)
{
+#ifndef MODULE
if (gart_iommu_aperture)
return agp_bridges_found ? 0 : -ENODEV;
-
+#endif
return agp_amd64_init();
}
static void __exit agp_amd64_cleanup(void)
{
+#ifndef MODULE
if (gart_iommu_aperture)
return;
+#endif
if (aperture_resource)
release_resource(aperture_resource);
pci_unregister_driver(&agp_amd64_pci_driver);
--
1.5.6.5
Commit-ID: 06df6dafb5d9e3cfa3588c6ce79328b91582b6af
Gitweb: http://git.kernel.org/tip/06df6dafb5d9e3cfa3588c6ce79328b91582b6af
Author: FUJITA Tomonori <[email protected]>
AuthorDate: Thu, 4 Feb 2010 14:43:38 +0900
Committer: Ingo Molnar <[email protected]>
CommitDate: Thu, 4 Feb 2010 07:27:26 +0100
x86/agp: Fix amd64-agp module initialization regression
This fixes the regression introduced by commit
42590a75019a50012f25a962246498dead428433 ("x86/agp: Fix
agp_amd64_init and agp_amd64_cleanup").
The commit 61684ceaad4f65d1a9832c722f7bd5e7fc714de9 fixed the
above regression but it's not enough. When amd64-agp is built as
a module, AGP isn't initialized, iommu is initialized, all the
aperture is owned by the iommu.
Reported-by: Marin Mitov <[email protected]>
Signed-off-by: FUJITA Tomonori <[email protected]>
Tested-by: Marin Mitov <[email protected]>
LKML-Reference: <[email protected]>
Signed-off-by: Ingo Molnar <[email protected]>
---
drivers/char/agp/amd64-agp.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/drivers/char/agp/amd64-agp.c b/drivers/char/agp/amd64-agp.c
index 34cf04e..fd50ead 100644
--- a/drivers/char/agp/amd64-agp.c
+++ b/drivers/char/agp/amd64-agp.c
@@ -767,16 +767,19 @@ int __init agp_amd64_init(void)
static int __init agp_amd64_mod_init(void)
{
+#ifndef MODULE
if (gart_iommu_aperture)
return agp_bridges_found ? 0 : -ENODEV;
-
+#endif
return agp_amd64_init();
}
static void __exit agp_amd64_cleanup(void)
{
+#ifndef MODULE
if (gart_iommu_aperture)
return;
+#endif
if (aperture_resource)
release_resource(aperture_resource);
pci_unregister_driver(&agp_amd64_pci_driver);