Add API to get memory mapping

Add API to get all virtual address and physical address mapping.
If the guest doesn't use paging, the virtual address is equal to the phyical
address. The virtual address and physical address mapping is for gdb's user, and
it does not include the memory that is not referenced by the page table. So if
you want to use crash to anaylze the vmcore, please do not specify -p option.
the reason why the -p option is not default explicitly: guest machine in a
catastrophic state can have corrupted memory, which we cannot trust.

Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2 files changed
tree: e26060994760f2501a1e953ddf889c6f252cb0d6
  1. audio/
  2. block/
  3. bsd-user/
  4. default-configs/
  5. docs/
  6. fpu/
  7. fsdev/
  8. gdb-xml/
  9. hw/
  10. include/
  11. libcacard/
  12. linux-headers/
  13. linux-user/
  14. net/
  15. pc-bios/
  16. qapi/
  17. qga/
  18. QMP/
  19. qom/
  20. roms/
  21. scripts/
  22. slirp/
  23. sysconfigs/
  24. target-alpha/
  25. target-arm/
  26. target-cris/
  27. target-i386/
  28. target-lm32/
  29. target-m68k/
  30. target-microblaze/
  31. target-mips/
  32. target-ppc/
  33. target-s390x/
  34. target-sh4/
  35. target-sparc/
  36. target-unicore32/
  37. target-xtensa/
  38. tcg/
  39. tests/
  40. trace/
  41. ui/
  42. .gitignore
  43. .gitmodules
  44. .mailmap
  45. a.out.h
  46. acl.c
  47. acl.h
  48. aes.c
  49. aes.h
  50. aio.c
  51. alpha-dis.c
  52. alpha.ld
  53. arch_init.c
  54. arch_init.h
  55. arm-dis.c
  56. arm-semi.c
  57. arm.ld
  58. async.c
  59. balloon.c
  60. balloon.h
  61. bitmap.c
  62. bitmap.h
  63. bitops.c
  64. bitops.h
  65. block-migration.c
  66. block-migration.h
  67. block.c
  68. block.h
  69. block_int.h
  70. blockdev.c
  71. blockdev.h
  72. bswap.h
  73. bt-host.c
  74. bt-host.h
  75. bt-vhci.c
  76. buffered_file.c
  77. buffered_file.h
  78. cache-utils.c
  79. cache-utils.h
  80. Changelog
  81. cmd.c
  82. cmd.h
  83. CODING_STYLE
  84. compatfd.c
  85. compatfd.h
  86. compiler.h
  87. config.h
  88. configure
  89. console.c
  90. console.h
  91. COPYING
  92. COPYING.LIB
  93. coroutine-gthread.c
  94. coroutine-sigaltstack.c
  95. coroutine-ucontext.c
  96. coroutine-win32.c
  97. cpu-all.h
  98. cpu-common.h
  99. cpu-defs.h
  100. cpu-exec.c
  101. cpus.c
  102. cpus.h
  103. cputlb.c
  104. cputlb.h
  105. cris-dis.c
  106. cursor.c
  107. cursor_hidden.xpm
  108. cursor_left_ptr.xpm
  109. cutils.c
  110. def-helper.h
  111. device_tree.c
  112. device_tree.h
  113. dis-asm.h
  114. disas.c
  115. disas.h
  116. dma-helpers.c
  117. dma.h
  118. dyngen-exec.h
  119. elf.h
  120. envlist.c
  121. envlist.h
  122. error.c
  123. error.h
  124. error_int.h
  125. event_notifier.c
  126. event_notifier.h
  127. exec-all.h
  128. exec-memory.h
  129. exec-obsolete.h
  130. exec.c
  131. gdbstub.c
  132. gdbstub.h
  133. gen-icount.h
  134. HACKING
  135. hmp-commands.hx
  136. hmp.c
  137. hmp.h
  138. host-utils.c
  139. host-utils.h
  140. hppa-dis.c
  141. hppa.ld
  142. i386-dis.c
  143. i386.ld
  144. ia64-dis.c
  145. ia64.ld
  146. input.c
  147. int128.h
  148. iohandler.c
  149. ioport-user.c
  150. ioport.c
  151. ioport.h
  152. iorange.h
  153. iov.c
  154. iov.h
  155. json-lexer.c
  156. json-lexer.h
  157. json-parser.c
  158. json-parser.h
  159. json-streamer.c
  160. json-streamer.h
  161. kvm-all.c
  162. kvm-stub.c
  163. kvm.h
  164. libfdt_env.h
  165. LICENSE
  166. linux-aio.c
  167. lm32-dis.c
  168. m68k-dis.c
  169. m68k-semi.c
  170. m68k.ld
  171. main-loop.c
  172. main-loop.h
  173. MAINTAINERS
  174. Makefile
  175. Makefile.dis
  176. Makefile.hw
  177. Makefile.objs
  178. Makefile.target
  179. Makefile.user
  180. memory.c
  181. memory.h
  182. memory_mapping.c
  183. memory_mapping.h
  184. microblaze-dis.c
  185. migration-exec.c
  186. migration-fd.c
  187. migration-tcp.c
  188. migration-unix.c
  189. migration.c
  190. migration.h
  191. mips-dis.c
  192. mips.ld
  193. module.c
  194. module.h
  195. monitor.c
  196. monitor.h
  197. nbd.c
  198. nbd.h
  199. net.c
  200. net.h
  201. notify.c
  202. notify.h
  203. os-posix.c
  204. os-win32.c
  205. osdep.c
  206. osdep.h
  207. oslib-posix.c
  208. oslib-win32.c
  209. path.c
  210. pci-ids.txt
  211. pflib.c
  212. pflib.h
  213. poison.h
  214. posix-aio-compat.c
  215. ppc-dis.c
  216. ppc.ld
  217. ppc64.ld
  218. qapi-schema-guest.json
  219. qapi-schema-test.json
  220. qapi-schema.json
  221. qbool.c
  222. qbool.h
  223. qdict-test-data.txt
  224. qdict.c
  225. qdict.h
  226. qemu-aio.h
  227. qemu-barrier.h
  228. qemu-bridge-helper.c
  229. qemu-char.c
  230. qemu-char.h
  231. qemu-common.h
  232. qemu-config.c
  233. qemu-config.h
  234. qemu-coroutine-int.h
  235. qemu-coroutine-io.c
  236. qemu-coroutine-lock.c
  237. qemu-coroutine-sleep.c
  238. qemu-coroutine.c
  239. qemu-coroutine.h
  240. qemu-doc.texi
  241. qemu-error.c
  242. qemu-error.h
  243. qemu-file.h
  244. qemu-ga.c
  245. qemu-img-cmds.hx
  246. qemu-img.c
  247. qemu-img.texi
  248. qemu-io.c
  249. qemu-lock.h
  250. qemu-log.h
  251. qemu-nbd.c
  252. qemu-nbd.texi
  253. qemu-objects.h
  254. qemu-option.c
  255. qemu-option.h
  256. qemu-options-wrapper.h
  257. qemu-options.h
  258. qemu-options.hx
  259. qemu-os-posix.h
  260. qemu-os-win32.h
  261. qemu-progress.c
  262. qemu-queue.h
  263. qemu-sockets.c
  264. qemu-tech.texi
  265. qemu-thread-posix.c
  266. qemu-thread-posix.h
  267. qemu-thread-win32.c
  268. qemu-thread-win32.h
  269. qemu-thread.h
  270. qemu-timer-common.c
  271. qemu-timer.c
  272. qemu-timer.h
  273. qemu-tls.h
  274. qemu-tool.c
  275. qemu-user.c
  276. qemu-x509.h
  277. qemu-xattr.h
  278. qemu.sasl
  279. qemu_socket.h
  280. qerror.c
  281. qerror.h
  282. qfloat.c
  283. qfloat.h
  284. qint.c
  285. qint.h
  286. qjson.c
  287. qjson.h
  288. qlist.c
  289. qlist.h
  290. qmp-commands.hx
  291. qmp.c
  292. qobject.h
  293. qstring.c
  294. qstring.h
  295. qtest.c
  296. qtest.h
  297. range.h
  298. readline.c
  299. readline.h
  300. README
  301. rules.mak
  302. s390-dis.c
  303. s390.ld
  304. savevm.c
  305. sh4-dis.c
  306. softmmu-semi.h
  307. softmmu_defs.h
  308. softmmu_exec.h
  309. softmmu_header.h
  310. softmmu_template.h
  311. sparc-dis.c
  312. sparc.ld
  313. sparc64.ld
  314. spice-qemu-char.c
  315. sysemu.h
  316. targphys.h
  317. tcg-runtime.c
  318. tci-dis.c
  319. tci.c
  320. thunk.c
  321. thunk.h
  322. TODO
  323. trace-events
  324. translate-all.c
  325. uboot_image.h
  326. user-exec.c
  327. VERSION
  328. version.rc
  329. vgafont.h
  330. vl.c
  331. vmstate.h
  332. x86_64.ld
  333. xen-all.c
  334. xen-mapcache.c
  335. xen-mapcache.h
  336. xen-stub.c
  337. xtensa-semi.c