diff options
Diffstat (limited to 'src/usr/testcore')
-rw-r--r-- | src/usr/testcore/kernel/vmmbasetest.H | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/usr/testcore/kernel/vmmbasetest.H b/src/usr/testcore/kernel/vmmbasetest.H index fbfdddf70..15c853268 100644 --- a/src/usr/testcore/kernel/vmmbasetest.H +++ b/src/usr/testcore/kernel/vmmbasetest.H @@ -150,7 +150,16 @@ class VmmBaseTest : public CxxTest::TestSuite static void* writeToKernelCode(void* unused) { - (*(*(uint64_t**)&printk)) = 0x12345678; + uint64_t value = 0x12345678; + + union fn_ptr + { + void (*opd)(const char*, ...); + uint64_t** data; + }; + fn_ptr function = { printk }; + + memcpy(*function.data, &value, sizeof(value)); return NULL; } |