iommu code.
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 15 ---
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index 69fa7da..f80b4bb 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers/iommu/int
om current behaviour -- just enables
a functional change to be made in a later patch.
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 23 ++-
1 file changed, 14 insertions(+), 9 deletions(-)
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
in
Add data declarations and prototypes needed for kdump.
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu-private.h | 94 +
1 file changed, 94 insertions(+)
diff --git a/drivers/iommu/intel-iommu-private.h
b/drivers/iommu/intel-iommu-private.h
index
lines that would move to an intel-iommu-private.h file.
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 74 +++--
1 file changed, 38 insertions(+), 36 deletions(-)
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index
Create intel-iommu-kdump.c
Populate it with support functions to copy iommu translation tables from
from the panicked kernel into the kdump kernel in the event of a crash.
Update Makefile to build intel-iommu-kdump.o
Signed-off-by: Bill Sumner
---
drivers/iommu/Makefile| 2
Move the single block of #define, static inline ... ; struct definitions
to intel-iommu-private.h from intel-iommu.c
Replace them with #include "intel-iommu-private.h"
This introduces no functional change from current behaviour.
Signed-off-by: Bill Sumner
---
drivers/iommu/i
Add "#include " to gain access to is_kdump_kernel()
Modify the operation of the following functions when called during crash dump:
device_to_domain_id
get_domain_for_dev
init_dmars
intel_iommu_init
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iom
by using the linked-list of previously-collected values
instead of stepping back into the tree of translation tables.
Bill Sumner (8):
Fix a few existing lines for checkpatch.pl
Consolidate lines for a new private header
Create intel-iommu-private.h
Update iommu_attach_domain() and its
Interfaces for when a new domain in the crashdump kernel needs some
values from the panicked kernel's context entries.
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu-kdump.c | 39 +++
1 file changed, 39 insertions(+)
diff --git a/drivers/
Add "#include "
Chg device_to_domain_id
Chg get_domain_for_dev
Chg init_dmars
Chg intel_iommu_init
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 210 +---
1 file changed, 158 insertions(+), 52 deletions(-)
diff --git a/dri
Items needed for fixing crashdump.
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu-private.h | 92 +
1 file changed, 92 insertions(+)
diff --git a/drivers/iommu/intel-iommu-private.h
b/drivers/iommu/intel-iommu-private.h
index 73dabec..b436cd8
Populate with "Copy iommu translation tables" function set.
Edit Makefile to add intel-iommu-kdump.o
Signed-off-by: Bill Sumner
---
drivers/iommu/Makefile| 2 +-
drivers/iommu/intel-iommu-kdump.c | 590 ++
2 files changed, 591 insert
Allow specification of the domain-id for the new domain.
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 23 ++-
1 file changed, 14 insertions(+), 9 deletions(-)
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index 4352731..0c00c2d
intel_iommu_did_to_domain_values_entry()
intel_iommu_get_dids_from_old_kernel()
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu-kdump.c | 39 +++
1 file changed, 39 insertions(+)
diff --git a/drivers/iommu/intel-iommu-kdump.c
b/drivers/iommu
ode much cleaner and easier to read.
5. Miscellaneous cleanups such as enum-values for return-codes.
6. Simplified the code that retrieves the values needed to initialize a new
domain by using the linked-list of previously-collected values
instead of stepping back into the tree of translation tabl
age);
- return vaddr;
-}
-
-static inline void free_pgtable_page(void *vaddr)
-{
- free_page((unsigned long)vaddr);
-}
-
static inline void *alloc_domain_mem(void)
{
return kmem_cache_alloc(iommu_domain_cache, GFP_ATOMIC);
--
Bill Sumner
--
To unsubscribe from this list: send t
Move the single block of #define, static inline ... ; struct definitions
to intel-iommu-private.h from intel-iommu.c
Replace them with #include "intel-iommu-private.h"
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu-private.h | 351 +++
Things like:
1. no space before tabs
2. no initialization of static variables to 0 or NULL
3. no extra parentheses around the value on the 'return' statement
4. no line over 80-characters
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 14 +++---
1 file
patch subject to more accurately reflect its purpose.
5. Made a few changes to better match the style of the mainline code.
6. Added comments at the front of several of the new functions.
7. Re-edited this patch log
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 1233
taking a crashdump.
Bill Sumner (1):
Fix Crashdump failure caused by leftover DMA through a hardware IOMMU
drivers/iommu/intel-iommu.c | 1233 ---
1 file changed, 1172 insertions(+), 61 deletions(-)
--
Bill Sumner
--
To unsubscribe from this list: send
re enabled. These flags and the pr_debug() lines scattered
throughout the code are only for the developer or analyst. At this time,
no means is provided to modify the flags without a re-compile.
v1->v2:
Updated patch description
v2->v3:
No change
Signed-off-by: Bill Sumner
---
drivers/iom
entry, plus one to copy from a physically-
addressed area of memory (primarily pages from the panicked kernel)
into a virtually-addressed area within the crashdump kernel.
v1->v2:
Updated patch description
v2->v3:
No change
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.
ain-id, address-width, and IOVA ranges from the old kernel context;
. Get address(page-entry-tables) from the copy in the new kernel;
. And apply all of the above values to the new domain structure.
* Else
. Create a new domain as normal
v1->v2:
Updated patch description
v2->
locks within the existing code
protect them.
v1->v2:
Updated patch description
v2->v3
Added "init_iova_domain(&domain->iovad, DMA_32BIT_PFN);" as recommended
by Baoquan He [b...@redhat.com]
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 530
#x27;device_domain_values_list'. Updates
are done only during the initialization operation of copying the
translation tables -- when only a single CPU is active.
Accesses after Linux goes multi-CPU are all read-only.
v1->v2:
Updated patch description
v2->v3:
No change
ntry-tables) from the copy in the new kernel;
. And apply all of the above values to the new domain structure.
* Else
. Create a new domain as normal
Bill Sumner (6):
Crashdump-Accepting-Active-IOMMU-Flags-and-Prototype
Crashdump-Accepting-Active-IOMMU-Utility-functions
Crashdump-Accep
e
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 76 +
1 file changed, 76 insertions(+)
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index 6737550..457ac80b 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/dri
This patch contains a function to print the hardware registers of each
IOMMU onto the system console during crashdump kernel initialization.
This function seemed far too useful to leave out.
v1->v2:
Updated patch description
Fixed: "Advanced Fault Log register"
Signed-off-by
(primarily pages from the panicked kernel)
into a virtually-addressed area within the crashdump kernel.
v1->v2:
Updated patch description
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 74 +
1 file changed, 74 insertions(+)
diff --git a/driv
ts further down the
structure are enabled. These flags and the pr_debug() lines scattered
throughout the code are only for the developer or analyst. At this time,
no means is provided to modify the flags without a re-compile.
v1->v2:
Updated patch description
Signed-off-by: Bill Sumner
---
context;
. Get address(page-entry-tables) from the copy in the new kernel;
. And apply all of the above values to the new domain structure.
* Else
. Create a new domain as normal
Bill Sumner (6):
Crashdump-Accepting-Active-IOMMU-Flags-and-Prototype
Crashdump-Accepting-Active-IOMMU-Utility-functi
patch description
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 529
1 file changed, 529 insertions(+)
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index 85e30e5..9d2398b 100644
--- a/drivers/iommu/intel-iommu.c
ain-id, address-width, and IOVA ranges from the old kernel context;
. Get address(page-entry-tables) from the copy in the new kernel;
. And apply all of the above values to the new domain structure.
* Else
. Create a new domain as normal
v1->v2:
Updated patch d
he copy operation has already seen 'this' domain-id,
it will simply point the current context entry to the same top-level
page-table that has been created previously for this domain-id.
v1->v2:
Updated patch description
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 266
1 file changed, 266 insertions(+)
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index b68b962..ee68f42 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 75 +
1 file changed, 75 insertions(+)
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index 15e9b57..a0e8a76 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers
give us one.
When a new domain is created for a device:
* If (this device has a context in the old kernel)
. Get domain-id, address-width, and IOVA ranges from the old kernel context;
. Get address(page-entry-tables) from the copy in the new kernel;
. And apply all of the above v
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 76 +
1 file changed, 76 insertions(+)
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index d9a49ad..19c1370 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 272 +---
1 file changed, 204 insertions(+), 68 deletions(-)
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index 19c1370..71083d1 100644
--- a/drivers/iommu/intel
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 529
1 file changed, 529 insertions(+)
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index ee68f42..d9a49ad 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers
Signed-off-by: Bill Sumner
---
drivers/iommu/intel-iommu.c | 74 +
1 file changed, 74 insertions(+)
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index a0e8a76..b68b962 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers
41 matches
Mail list logo