diff --git a/hmp-commands-info.hx b/hmp-commands-info.hx
index 4f1ece93e5..54c3e5eac6 100644
--- a/hmp-commands-info.hx
+++ b/hmp-commands-info.hx
@@ -23,7 +23,7 @@ ETEXI
 
 STEXI
 @item info version
-@findex version
+@findex info version
 Show the version of QEMU.
 ETEXI
 
@@ -37,7 +37,7 @@ ETEXI
 
 STEXI
 @item info network
-@findex network
+@findex info network
 Show the network state.
 ETEXI
 
@@ -51,7 +51,7 @@ ETEXI
 
 STEXI
 @item info chardev
-@findex chardev
+@findex info chardev
 Show the character devices.
 ETEXI
 
@@ -66,7 +66,7 @@ ETEXI
 
 STEXI
 @item info block
-@findex block
+@findex info block
 Show info of one block device or all block devices.
 ETEXI
 
@@ -80,7 +80,7 @@ ETEXI
 
 STEXI
 @item info blockstats
-@findex blockstats
+@findex info blockstats
 Show block device statistics.
 ETEXI
 
@@ -94,7 +94,7 @@ ETEXI
 
 STEXI
 @item info block-jobs
-@findex block-jobs
+@findex info block-jobs
 Show progress of ongoing block device operations.
 ETEXI
 
@@ -108,7 +108,7 @@ ETEXI
 
 STEXI
 @item info registers
-@findex registers
+@findex info registers
 Show the cpu registers.
 ETEXI
 
@@ -125,7 +125,7 @@ ETEXI
 
 STEXI
 @item info lapic
-@findex lapic
+@findex info lapic
 Show local APIC state
 ETEXI
 
@@ -141,7 +141,7 @@ ETEXI
 
 STEXI
 @item info ioapic
-@findex ioapic
+@findex info ioapic
 Show io APIC state
 ETEXI
 
@@ -155,7 +155,7 @@ ETEXI
 
 STEXI
 @item info cpus
-@findex cpus
+@findex info cpus
 Show infos for each CPU.
 ETEXI
 
@@ -169,7 +169,7 @@ ETEXI
 
 STEXI
 @item info history
-@findex history
+@findex info history
 Show the command line history.
 ETEXI
 
@@ -183,7 +183,7 @@ ETEXI
 
 STEXI
 @item info irq
-@findex irq
+@findex info irq
 Show the interrupts statistics (if available).
 ETEXI
 
@@ -197,7 +197,7 @@ ETEXI
 
 STEXI
 @item info pic
-@findex pic
+@findex info pic
 Show i8259 (PIC) state.
 ETEXI
 
@@ -211,7 +211,7 @@ ETEXI
 
 STEXI
 @item info pci
-@findex pci
+@findex info pci
 Show PCI information.
 ETEXI
 
@@ -228,7 +228,7 @@ ETEXI
 
 STEXI
 @item info tlb
-@findex tlb
+@findex info tlb
 Show virtual to physical memory mappings.
 ETEXI
 
@@ -244,7 +244,7 @@ ETEXI
 
 STEXI
 @item info mem
-@findex mem
+@findex info mem
 Show the active virtual memory mappings.
 ETEXI
 
@@ -259,7 +259,7 @@ ETEXI
 
 STEXI
 @item info mtree
-@findex mtree
+@findex info mtree
 Show memory tree.
 ETEXI
 
@@ -275,7 +275,7 @@ ETEXI
 
 STEXI
 @item info jit
-@findex jit
+@findex info jit
 Show dynamic compiler info.
 ETEXI
 
@@ -291,7 +291,7 @@ ETEXI
 
 STEXI
 @item info opcount
-@findex opcount
+@findex info opcount
 Show dynamic compiler opcode counters
 ETEXI
 
@@ -305,7 +305,7 @@ ETEXI
 
 STEXI
 @item info kvm
-@findex kvm
+@findex info kvm
 Show KVM information.
 ETEXI
 
@@ -319,7 +319,7 @@ ETEXI
 
 STEXI
 @item info numa
-@findex numa
+@findex info numa
 Show NUMA information.
 ETEXI
 
@@ -333,7 +333,7 @@ ETEXI
 
 STEXI
 @item info usb
-@findex usb
+@findex info usb
 Show guest USB devices.
 ETEXI
 
@@ -347,7 +347,7 @@ ETEXI
 
 STEXI
 @item info usbhost
-@findex usbhost
+@findex info usbhost
 Show host USB devices.
 ETEXI
 
@@ -361,7 +361,7 @@ ETEXI
 
 STEXI
 @item info profile
-@findex profile
+@findex info profile
 Show profiling information.
 ETEXI
 
@@ -375,7 +375,7 @@ ETEXI
 
 STEXI
 @item info capture
-@findex capture
+@findex info capture
 Show capture information.
 ETEXI
 
@@ -389,7 +389,7 @@ ETEXI
 
 STEXI
 @item info snapshots
-@findex snapshots
+@findex info snapshots
 Show the currently saved VM snapshots.
 ETEXI
 
@@ -403,7 +403,7 @@ ETEXI
 
 STEXI
 @item info status
-@findex status
+@findex info status
 Show the current VM status (running|paused).
 ETEXI
 
@@ -417,7 +417,7 @@ ETEXI
 
 STEXI
 @item info mice
-@findex mice
+@findex info mice
 Show which guest mouse is receiving events.
 ETEXI
 
@@ -431,7 +431,7 @@ ETEXI
 
 STEXI
 @item info vnc
-@findex vnc
+@findex info vnc
 Show the vnc server status.
 ETEXI
 
@@ -447,7 +447,7 @@ ETEXI
 
 STEXI
 @item info spice
-@findex spice
+@findex info spice
 Show the spice server status.
 ETEXI
 
@@ -461,7 +461,7 @@ ETEXI
 
 STEXI
 @item info name
-@findex name
+@findex info name
 Show the current VM name.
 ETEXI
 
@@ -475,7 +475,7 @@ ETEXI
 
 STEXI
 @item info uuid
-@findex uuid
+@findex info uuid
 Show the current VM UUID.
 ETEXI
 
@@ -489,7 +489,7 @@ ETEXI
 
 STEXI
 @item info cpustats
-@findex cpustats
+@findex info cpustats
 Show CPU statistics.
 ETEXI
 
@@ -505,7 +505,7 @@ ETEXI
 
 STEXI
 @item info usernet
-@findex usernet
+@findex info usernet
 Show user network stack connection states.
 ETEXI
 
@@ -519,7 +519,7 @@ ETEXI
 
 STEXI
 @item info migrate
-@findex migrate
+@findex info migrate
 Show migration status.
 ETEXI
 
@@ -533,7 +533,7 @@ ETEXI
 
 STEXI
 @item info migrate_capabilities
-@findex migrate_capabilities
+@findex info migrate_capabilities
 Show current migration capabilities.
 ETEXI
 
@@ -547,7 +547,7 @@ ETEXI
 
 STEXI
 @item info migrate_parameters
-@findex migrate_parameters
+@findex info migrate_parameters
 Show current migration parameters.
 ETEXI
 
@@ -561,7 +561,7 @@ ETEXI
 
 STEXI
 @item info migrate_cache_size
-@findex migrate_cache_size
+@findex info migrate_cache_size
 Show current migration xbzrle cache size.
 ETEXI
 
@@ -575,7 +575,7 @@ ETEXI
 
 STEXI
 @item info balloon
-@findex balloon
+@findex info balloon
 Show balloon information.
 ETEXI
 
@@ -589,7 +589,7 @@ ETEXI
 
 STEXI
 @item info qtree
-@findex qtree
+@findex info qtree
 Show device tree.
 ETEXI
 
@@ -603,7 +603,7 @@ ETEXI
 
 STEXI
 @item info qdm
-@findex qdm
+@findex info qdm
 Show qdev device model list.
 ETEXI
 
@@ -617,7 +617,7 @@ ETEXI
 
 STEXI
 @item info qom-tree
-@findex qom-tree
+@findex info qom-tree
 Show QOM composition tree.
 ETEXI
 
@@ -631,7 +631,7 @@ ETEXI
 
 STEXI
 @item info roms
-@findex roms
+@findex info roms
 Show roms.
 ETEXI
 
@@ -647,7 +647,7 @@ ETEXI
 
 STEXI
 @item info trace-events
-@findex trace-events
+@findex info trace-events
 Show available trace-events & their state.
 ETEXI
 
@@ -661,7 +661,7 @@ ETEXI
 
 STEXI
 @item info tpm
-@findex tpm
+@findex info tpm
 Show the TPM device.
 ETEXI
 
@@ -675,7 +675,7 @@ ETEXI
 
 STEXI
 @item info memdev
-@findex memdev
+@findex info memdev
 Show memory backends
 ETEXI
 
@@ -689,7 +689,7 @@ ETEXI
 
 STEXI
 @item info memory-devices
-@findex memory-devices
+@findex info memory-devices
 Show memory devices.
 ETEXI
 
@@ -703,7 +703,7 @@ ETEXI
 
 STEXI
 @item info iothreads
-@findex iothreads
+@findex info iothreads
 Show iothread's identifiers.
 ETEXI
 
@@ -717,7 +717,7 @@ ETEXI
 
 STEXI
 @item info rocker @var{name}
-@findex rocker
+@findex info rocker
 Show rocker switch.
 ETEXI
 
@@ -730,8 +730,8 @@ ETEXI
     },
 
 STEXI
-@item info rocker_ports @var{name}-ports
-@findex ocker-ports
+@item info rocker-ports @var{name}-ports
+@findex info rocker-ports
 Show rocker ports.
 ETEXI
 
@@ -744,8 +744,8 @@ ETEXI
     },
 
 STEXI
-@item info rocker_of_dpa_flows @var{name} [@var{tbl_id}]
-@findex rocker-of-dpa-flows
+@item info rocker-of-dpa-flows @var{name} [@var{tbl_id}]
+@findex info rocker-of-dpa-flows
 Show rocker OF-DPA flow tables.
 ETEXI
 
@@ -759,7 +759,7 @@ ETEXI
 
 STEXI
 @item info rocker-of-dpa-groups @var{name} [@var{type}]
-@findex rocker-of-dpa-groups
+@findex info rocker-of-dpa-groups
 Show rocker OF-DPA groups.
 ETEXI
 
@@ -775,7 +775,7 @@ ETEXI
 
 STEXI
 @item info skeys @var{address}
-@findex skeys
+@findex info skeys
 Display the value of a storage key (s390 only)
 ETEXI
 
@@ -791,7 +791,7 @@ ETEXI
 
 STEXI
 @item info cmma @var{address}
-@findex cmma
+@findex info cmma
 Display the values of the CMMA storage attributes for a range of pages (s390 only)
 ETEXI
 
@@ -805,7 +805,7 @@ ETEXI
 
 STEXI
 @item info dump
-@findex dump
+@findex info dump
 Display the latest dump status.
 ETEXI
 
@@ -819,7 +819,7 @@ ETEXI
 
 STEXI
 @item info ramblock
-@findex ramblock
+@findex info ramblock
 Dump all the ramblocks of the system.
 ETEXI
 
@@ -833,14 +833,8 @@ ETEXI
 
 STEXI
 @item info hotpluggable-cpus
-@findex hotpluggable-cpus
+@findex info hotpluggable-cpus
 Show information about hotpluggable CPUs
-ETEXI
-
-STEXI
-@item info vm-generation-id
-@findex vm-generation-id
-Show Virtual Machine Generation ID
 ETEXI
 
     {
@@ -852,10 +846,9 @@ ETEXI
     },
 
 STEXI
-@item info memory_size_summary
-@findex memory_size_summary
-Display the amount of initially allocated and present hotpluggable (if
-enabled) memory in bytes.
+@item info vm-generation-id
+@findex info vm-generation-id
+Show Virtual Machine Generation ID
 ETEXI
 
     {
@@ -867,6 +860,13 @@ ETEXI
         .cmd        = hmp_info_memory_size_summary,
     },
 
+STEXI
+@item info memory_size_summary
+@findex info memory_size_summary
+Display the amount of initially allocated and present hotpluggable (if
+enabled) memory in bytes.
+ETEXI
+
 STEXI
 @end table
 ETEXI
diff --git a/hmp.c b/hmp.c
index ace729d03f..739d330f4e 100644
--- a/hmp.c
+++ b/hmp.c
@@ -2394,6 +2394,7 @@ void hmp_info_memdev(Monitor *mon, const QDict *qdict)
     monitor_printf(mon, "\n");
 
     qapi_free_MemdevList(memdev_list);
+    hmp_handle_error(mon, &err);
 }
 
 void hmp_info_memory_devices(Monitor *mon, const QDict *qdict)
@@ -2432,6 +2433,7 @@ void hmp_info_memory_devices(Monitor *mon, const QDict *qdict)
     }
 
     qapi_free_MemoryDeviceInfoList(info_list);
+    hmp_handle_error(mon, &err);
 }
 
 void hmp_info_iothreads(Monitor *mon, const QDict *qdict)
diff --git a/monitor.c b/monitor.c
index 94fb197c0d..fe0d1bdbb4 100644
--- a/monitor.c
+++ b/monitor.c
@@ -2697,6 +2697,7 @@ static const mon_cmd_t *search_dispatch_table(const mon_cmd_t *disp_table,
  * the command is found in a sub-command table.
  */
 static const mon_cmd_t *monitor_parse_command(Monitor *mon,
+                                              const char *cmdp_start,
                                               const char **cmdp,
                                               mon_cmd_t *table)
 {
@@ -2712,7 +2713,7 @@ static const mon_cmd_t *monitor_parse_command(Monitor *mon,
     cmd = search_dispatch_table(table, cmdname);
     if (!cmd) {
         monitor_printf(mon, "unknown command: '%.*s'\n",
-                       (int)(p - *cmdp), *cmdp);
+                       (int)(p - cmdp_start), cmdp_start);
         return NULL;
     }
 
@@ -2724,7 +2725,7 @@ static const mon_cmd_t *monitor_parse_command(Monitor *mon,
     *cmdp = p;
     /* search sub command */
     if (cmd->sub_table != NULL && *p != '\0') {
-        return monitor_parse_command(mon, cmdp, cmd->sub_table);
+        return monitor_parse_command(mon, cmdp_start, cmdp, cmd->sub_table);
     }
 
     return cmd;
@@ -3108,7 +3109,7 @@ static void handle_hmp_command(Monitor *mon, const char *cmdline)
 
     trace_handle_hmp_command(mon, cmdline);
 
-    cmd = monitor_parse_command(mon, &cmdline, mon->cmd_table);
+    cmd = monitor_parse_command(mon, cmdline, &cmdline, mon->cmd_table);
     if (!cmd) {
         return;
     }