Thought I'd report back with a solution which may be useful to others. The loader remains pretty much the same:
case MOD_LOAD:
my_dev = make_dev(&my_cdevsw, 0, UID_ROOT,
GID_WHEEL, 0666, "foo");
my_mem = (vm_offset_t)malloc(PAGE_SIZE, M_MYMODULE, M_WAITOK);
char_ptr =...