فهرست منبع

Kernel: Don't use copy_from_user() for kernelspace read in perf events

Fixes #3182.
Andreas Kling 4 سال پیش
والد
کامیت
d5d54da0ea
1فایلهای تغییر یافته به همراه1 افزوده شده و 2 حذف شده
  1. 1 2
      Kernel/PerformanceEventBuffer.cpp

+ 1 - 2
Kernel/PerformanceEventBuffer.cpp

@@ -66,9 +66,8 @@ KResult PerformanceEventBuffer::append(int type, FlatPtr arg1, FlatPtr arg2)
     FlatPtr ebp;
     FlatPtr ebp;
     asm volatile("movl %%ebp, %%eax"
     asm volatile("movl %%ebp, %%eax"
                  : "=a"(ebp));
                  : "=a"(ebp));
-    FlatPtr eip;
     auto current_thread = Thread::current();
     auto current_thread = Thread::current();
-    copy_from_user(&eip, (FlatPtr*)&current_thread->get_register_dump_from_stack().eip);
+    auto eip = current_thread->get_register_dump_from_stack().eip;
     Vector<FlatPtr> backtrace;
     Vector<FlatPtr> backtrace;
     {
     {
         SmapDisabler disabler;
         SmapDisabler disabler;