test/integration: tweak paravirt call in module.patch

Calling __flush_tlb_local() may result in a kernel warning:

  STATIC_NOPV void native_flush_tlb_local(void)
  {
          /*
           * Preemption or interrupts must be disabled to protect the access
           * to the per CPU variable and to prevent being preempted between
           * read_cr3() and write_cr3().
           */
          WARN_ON_ONCE(preemptible());

so use another paravirt call like slow_down_io() instead.

Signed-off-by: Joe Lawrence <joe.lawrence@redhat.com>
This commit is contained in:
Joe Lawrence 2022-06-16 08:46:39 -04:00
parent 30f09bfaa2
commit 8aa91803be
2 changed files with 2 additions and 2 deletions

View File

@ -35,7 +35,7 @@ diff -Nupr src.orig/fs/nfsd/export.c src/fs/nfsd/export.c
+ alternative("ud2", "call single_task_running", X86_FEATURE_ALWAYS);
+ alternative("call single_task_running", "ud2", X86_FEATURE_IA64);
+
+ __flush_tlb_local(); /* paravirt call */
+ slow_down_io(); /* paravirt call */
+#endif
+
+ pr_debug("kpatch: pr_debug() test\n");

View File

@ -35,7 +35,7 @@ diff -Nupr src.orig/fs/nfsd/export.c src/fs/nfsd/export.c
+ alternative("ud2", "call single_task_running", X86_FEATURE_ALWAYS);
+ alternative("call single_task_running", "ud2", X86_FEATURE_IA64);
+
+ __flush_tlb_local(); /* paravirt call */
+ slow_down_io(); /* paravirt call */
+#endif
+
+ pr_debug("kpatch: pr_debug() test\n");