X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?p=palacios.git;a=blobdiff_plain;f=guest%2Flinux%2Fhvm-ros%2Ftest.c;fp=guest%2Flinux%2Fhvm-ros%2Ftest.c;h=2781610ef0fbfade08e724d430834b211c2a5e83;hp=e6e14bffe79c6d1d995420659b6c37ee4f99e3e4;hb=4e43946f01f687361197dc9571b7df02ae20de30;hpb=a8686374c6aa74d805b32e7675f42f7ab9a0b348 diff --git a/guest/linux/hvm-ros/test.c b/guest/linux/hvm-ros/test.c index e6e14bf..2781610 100644 --- a/guest/linux/hvm-ros/test.c +++ b/guest/linux/hvm-ros/test.c @@ -188,6 +188,14 @@ int timing_test_async(uint64_t num_merge, uint64_t num_call) return 0; } +#define HVM_SIG_STACK_SIZE 8192 +static char hvm_sig_stack[HVM_SIG_STACK_SIZE] __attribute__((aligned(4096))); + +static void my_hvm_sig_handler(uint64_t code) +{ + printf("HVM Signal Handler Invoked: code=0x%lx\n",code); +} + int main(int argc, char *argv[]) { int rc; @@ -198,7 +206,10 @@ int main(int argc, char *argv[]) } v3_hvm_ros_user_init(); - + + v3_hvm_ros_unregister_signal(); // remove any existing signal handler + v3_hvm_ros_register_signal(my_hvm_sig_handler,hvm_sig_stack,HVM_SIG_STACK_SIZE); + if (argv[1][0]=='s') { if (argv[2][0]=='s') { rc=simple_test_sync(); @@ -222,6 +233,8 @@ int main(int argc, char *argv[]) rc=-1; } + v3_hvm_ros_unregister_signal(); + v3_hvm_ros_user_deinit(); return rc;