[PATCH 4/4] testme2

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Wed Jun 9 08:35:04 UTC 2021


Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
---
 drivers/gpu/drm/i915/gt/intel_ggtt.c | 8 ++++++--
 kernel/stop_machine.c                | 1 +
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/gt/intel_ggtt.c b/drivers/gpu/drm/i915/gt/intel_ggtt.c
index 5fd66f4ff6b0..86edca6930e4 100644
--- a/drivers/gpu/drm/i915/gt/intel_ggtt.c
+++ b/drivers/gpu/drm/i915/gt/intel_ggtt.c
@@ -370,7 +370,9 @@ static void bxt_vtd_ggtt_insert_page__BKL(struct i915_address_space *vm,
 {
 	struct insert_page arg = { vm, addr, offset, level };
 
-	stop_machine(bxt_vtd_ggtt_insert_page__cb, &arg, NULL);
+	cpus_read_lock();
+	stop_machine_cpuslocked(bxt_vtd_ggtt_insert_page__cb, &arg, cpumask_of(smp_processor_id()));
+	cpus_read_unlock();
 }
 
 struct insert_entries {
@@ -397,7 +399,9 @@ static void bxt_vtd_ggtt_insert_entries__BKL(struct i915_address_space *vm,
 {
 	struct insert_entries arg = { vm, vma, level, flags };
 
-	stop_machine(bxt_vtd_ggtt_insert_entries__cb, &arg, NULL);
+	cpus_read_lock();
+	stop_machine_cpuslocked(bxt_vtd_ggtt_insert_entries__cb, &arg, cpumask_of(smp_processor_id()));
+	cpus_read_unlock();
 }
 
 static void gen6_ggtt_clear_range(struct i915_address_space *vm,
diff --git a/kernel/stop_machine.c b/kernel/stop_machine.c
index cbc30271ea4d..62e3d61b0a1b 100644
--- a/kernel/stop_machine.c
+++ b/kernel/stop_machine.c
@@ -620,6 +620,7 @@ int stop_machine_cpuslocked(cpu_stop_fn_t fn, void *data,
 	set_state(&msdata, MULTI_STOP_PREPARE);
 	return stop_cpus(cpu_online_mask, multi_cpu_stop, &msdata);
 }
+EXPORT_SYMBOL_GPL(stop_machine_cpuslocked);
 
 int stop_machine(cpu_stop_fn_t fn, void *data, const struct cpumask *cpus)
 {
-- 
2.31.0



More information about the Intel-gfx-trybot mailing list