[問題] 如何從自訂system call 呼叫export funct

作者: lemonedhide   2016-05-21 05:48:38
我是linux kernel新手,所以以下講得或名詞可能有誤
敬請見諒或指正
我目前在學習virtualization相關技術
因此想從KVM程式碼學實作
我現在想要看看當vm exit時候的相關狀態
從我目前找到的資料和看的kernel code中我找到
arch/x86/kvm/vmx.c裡面的vmx_handle_exit function似乎是我想找到的地方
目前想要看看常出現的vm exit reason有哪些所以在vmx.c定義了一個int counter[]
去記錄各個exit出現的次數
另外我想寫一個user mode的程式去監看狀態,所以我自己加了一個system call
希望用我的程式不斷去呼叫這個system call取得array的值
我的想法目前卡在我沒辦法在我定義的system call 裡面去取得counter[]的值
我查了一些網站說用EXPORT_SYMBOL去export我的counter不過都不成功
請問我該怎麼做或是可以告訴我該去查什麼關鍵字?感謝
補充一下
實際上我就是在vmx.h定義
int my_counter[EXIT_REASON_XRSTORS+1];
EXPORT_SYMBOL(my_counter)
vmx.c裡面
extern int my_counter[EXIT_REASON_XRSTORS+1];
然後在vmx_handle_exit做my_counter[exit_reason] += 1;
我自己定義的system call my_syscall.c裡面
#include <asm/vmx.h>
extern int my_counter[EXIT_REASON_XRSTORS+1];
但當我compile時總是說my_syscall.c找不到my_counter[]

Links booklink

Contact Us: admin [ a t ] ucptt.com