I think there's something wrong with the docs for gdbsx regarding module debugging.
I assume that the value of pgd should not be 0 as the makes the next command it the docs meaningless.
(gdb) p init_mm
$2 = {mmap = 0x0, mm_rb = {rb_node = 0x0}, mmap_cache = 0x0, get_unmapped_area = 0, unmap_area = 0, mmap_base = 0, task_size = 0, cached_hole_size = 0, free_area_cache = 0,
pgd = 0xffffffff81001000, mm_users = {counter = 2}, mm_count = {counter = 15}, map_count = 0, mmap_sem = {count = 0, wait_lock = {raw_lock = {{slock = 0, tickets = {head = 0 '\0',
tail = 0 '\0'}}, waiting = 0 '\0'}}, wait_list = {next = 0xffffffff81952ed0, prev = 0xffffffff81952ed0}}, page_table_lock = {raw_lock = {{slock = 4369, tickets = {
head = 17 '\021', tail = 17 '\021'}}, waiting = 0 '\0'}}, mmlist = {next = 0xffffffff81952ee8, prev = 0xffffffff81952ee8}, _file_rss = {counter = 0}, _anon_rss = {counter = 0},
hiwater_rss = 0, hiwater_vm = 0, total_vm = 0, locked_vm = 0, shared_vm = 0, exec_vm = 0, stack_vm = 0, reserved_vm = 0, def_flags = 0, nr_ptes = 0, start_code = 18446744071578845184,
end_code = 18446744071585415526, start_data = 0, end_data = 18446744071589170120, start_brk = 0, brk = 18446744071591583744, start_stack = 0, arg_start = 0, arg_end = 0, env_start = 0,
env_end = 0, saved_auxv = {0 <repeats 44 times>}, binfmt = 0x0, cpu_vm_mask = {bits = {18446744073709551598}}, context = {ldt = 0x0, size = 0, lock = {count = {counter = 0}, wait_lock = {
raw_lock = {{slock = 0, tickets = {head = 0 '\0', tail = 0 '\0'}}, waiting = 0 '\0'}}, wait_list = {next = 0x0, prev = 0x0}, owner = 0x0}, vdso = 0x0, has_foreign_mappings = 0},
faultstamp = 0, token_priority = 0, last_interval = 0, flags = 0, core_state = 0x0, ioctx_lock = {raw_lock = {{slock = 0, tickets = {head = 0 '\0', tail = 0 '\0'}}, waiting = 0 '\0'}},
ioctx_list = {first = 0x0}, owner = 0xffffffff81940600, exe_file = 0x0, num_exe_file_vmas = 0, mmu_notifier_mm = 0x0}
This is with xen-unstable sync'd a few hours ago.