diff --git a/accel/tcg/tb-maint.c b/accel/tcg/tb-maint.c
index 9566224d18..9ed86a6b0a 100644
--- a/accel/tcg/tb-maint.c
+++ b/accel/tcg/tb-maint.c
@@ -1,3 +1,3 @@
 /*
- * Translation Block Maintaince
+ * Translation Block Maintenance
  *
diff --git a/backends/tpm/tpm_ioctl.h b/backends/tpm/tpm_ioctl.h
index b1d31768a6..1933ab6855 100644
--- a/backends/tpm/tpm_ioctl.h
+++ b/backends/tpm/tpm_ioctl.h
@@ -240,3 +240,3 @@ struct ptm_lockstorage {
             ptm_res tpm_result;
-        } resp; /* reponse */
+        } resp; /* response */
     } u;
diff --git a/chardev/char-socket.c b/chardev/char-socket.c
index 8c58532171..fbe5716e57 100644
--- a/chardev/char-socket.c
+++ b/chardev/char-socket.c
@@ -712,3 +712,3 @@ static void tcp_chr_telnet_init(Chardev *chr)
         init->buflen = 12;
-        /* Prep the telnet negotion to put telnet in binary,
+        /* Prep the telnet negotiation to put telnet in binary,
          * no echo, single char mode */
@@ -720,3 +720,3 @@ static void tcp_chr_telnet_init(Chardev *chr)
         init->buflen = 21;
-        /* Prep the TN3270 negotion based on RFC1576 */
+        /* Prep the TN3270 negotiation based on RFC1576 */
         IACSET(init->buf, 0xff, 0xfd, 0x19);  /* IAC DO EOR */
@@ -1292,3 +1292,3 @@ static bool qmp_chardev_validate_socket(ChardevSocket *sock,
 
-    /* Validate any options which have a dependancy on client vs server */
+    /* Validate any options which have a dependency on client vs server */
     if (!sock->has_server || sock->server) {
diff --git a/chardev/char.c b/chardev/char.c
index 661ad8176a..996a024c7a 100644
--- a/chardev/char.c
+++ b/chardev/char.c
@@ -1117,3 +1117,3 @@ ChardevReturn *qmp_chardev_change(const char *id, ChardevBackend *backend,
 
-    /* change successfull, clean up */
+    /* change successful, clean up */
     chr_new->handover_yank_instance = false;
diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index 5036213f1b..dea4a56c8d 100644
--- a/contrib/plugins/cache.c
+++ b/contrib/plugins/cache.c
@@ -352,3 +352,3 @@ static int in_cache(Cache *cache, uint64_t addr)
  *
- * Returns true if the requsted data is hit in the cache and false when missed.
+ * Returns true if the requested data is hit in the cache and false when missed.
  * The cache is updated on miss for the next access.
diff --git a/contrib/plugins/lockstep.c b/contrib/plugins/lockstep.c
index 3614c3564c..850f7b2941 100644
--- a/contrib/plugins/lockstep.c
+++ b/contrib/plugins/lockstep.c
@@ -110,3 +110,3 @@ static void report_divergance(ExecState *us, ExecState *them)
      * If we have diverged before did we get back on track or are we
-     * totally loosing it?
+     * totally losing it?
      */
diff --git a/crypto/afalg.c b/crypto/afalg.c
index 348301e703..52a491dbb5 100644
--- a/crypto/afalg.c
+++ b/crypto/afalg.c
@@ -75,3 +75,3 @@ qcrypto_afalg_comm_alloc(const char *type, const char *name,
     afalg = g_new0(QCryptoAFAlg, 1);
-    /* initilize crypto API socket */
+    /* initialize crypto API socket */
     afalg->opfd = -1;
diff --git a/crypto/block-luks.c b/crypto/block-luks.c
index 5688783ab1..d5dadb7892 100644
--- a/crypto/block-luks.c
+++ b/crypto/block-luks.c
@@ -246,3 +246,3 @@ qcrypto_block_luks_has_format(const uint8_t *buf,
  * may be different from the cipher length used for the block
- * encryption, becauses dm-crypt uses the hash digest length
+ * encryption, because dm-crypt uses the hash digest length
  * as the key size. ie, if you have AES 128 as the block cipher
@@ -395,3 +395,3 @@ qcrypto_block_luks_from_disk_endian(QCryptoBlockLUKSHeader *hdr)
 /*
- * Stores the main LUKS header, taking care of endianess
+ * Stores the main LUKS header, taking care of endianness
  */
@@ -425,3 +425,3 @@ qcrypto_block_luks_store_header(QCryptoBlock *block,
 /*
- * Loads the main LUKS header,and byteswaps it to native endianess
+ * Loads the main LUKS header,and byteswaps it to native endianness
  * And run basic sanity checks on it
diff --git a/crypto/der.c b/crypto/der.c
index dab3fe4f24..ebbecfc3fe 100644
--- a/crypto/der.c
+++ b/crypto/der.c
@@ -78,3 +78,3 @@ enum QCryptoDERTagEnc {
  * @src_len: the length of source data
- * @dst: distination to save the encoded 'length', if dst is NULL, only compute
+ * @dst: destination to save the encoded 'length', if dst is NULL, only compute
  * the expected buffer size in bytes.
diff --git a/crypto/der.h b/crypto/der.h
index 0e895bbeec..f4ba6da28a 100644
--- a/crypto/der.h
+++ b/crypto/der.h
@@ -251,3 +251,3 @@ void qcrypto_der_encode_octet_str(QCryptoEncodeContext *ctx,
  * are encoded as an octet string. This is useful when we need to encode a
- * encoded SEQUNCE as OCTET STRING.
+ * encoded SEQUENCE as OCTET STRING.
  */
@@ -262,3 +262,3 @@ void qcrypto_der_encode_octet_str_begin(QCryptoEncodeContext *ctx);
  * are encoded as an octet string. This is useful when we need to encode a
- * encoded SEQUNCE as OCTET STRING.
+ * encoded SEQUENCE as OCTET STRING.
  */
@@ -277,3 +277,3 @@ size_t qcrypto_der_encode_ctx_buffer_len(QCryptoEncodeContext *ctx);
  * @ctx: the encode context.
- * @dst: the distination to save the encoded data, the length of dst should
+ * @dst: the destination to save the encoded data, the length of dst should
  * not less than qcrypto_der_encode_cxt_buffer_len
diff --git a/linux-user/elfload.c b/linux-user/elfload.c
index d3d1352c4e..4353ac011e 100644
--- a/linux-user/elfload.c
+++ b/linux-user/elfload.c
@@ -2719,3 +2719,3 @@ static void pgb_static(const char *image_name, abi_ulong orig_loaddr,
          * For a 64-bit host, this is just 4GiB; for a 32-bit host we
-         * need to ensure there is space bellow the guest_base so we
+         * need to ensure there is space below the guest_base so we
          * can map the commpage in the place needed when the address
diff --git a/linux-user/flatload.c b/linux-user/flatload.c
index 5efec2630e..5943a68c52 100644
--- a/linux-user/flatload.c
+++ b/linux-user/flatload.c
@@ -782,3 +782,3 @@ int load_flt_binary(struct linux_binprm *bprm, struct image_info *info)
     stack_len = bprm->envc + bprm->argc + 2;
-    stack_len += flat_argvp_envp_on_stack() ? 2 : 0; /* arvg, argp */
+    stack_len += flat_argvp_envp_on_stack() ? 2 : 0; /* argv, argp */
     stack_len += 1; /* argc */
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 420bab7c68..3dc6bbc846 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -838,3 +838,3 @@ abi_long do_brk(abi_ulong brk_val)
 
-    /* Release heap if necesary */
+    /* Release heap if necessary */
     if (new_brk < target_brk) {
@@ -1847,3 +1847,3 @@ static inline abi_long target_to_host_cmsg(struct msghdr *msgh,
             memcpy(dst, target_data, len);
-            /* fix endianess of first 32-bit word */
+            /* fix endianness of first 32-bit word */
             if (len >= sizeof(uint32_t)) {
@@ -2958,3 +2958,3 @@ get_timeout:
             }
-            /* swap host endianess to target endianess. */
+            /* swap host endianness to target endianness. */
             for (i = 0; i < (len / sizeof(uint32_t)); i++) {
diff --git a/nbd/client-connection.c b/nbd/client-connection.c
index 3d14296c04..258ef81ae9 100644
--- a/nbd/client-connection.c
+++ b/nbd/client-connection.c
@@ -199,3 +199,3 @@ static void *connect_thread_func(void *opaque)
          * of nbd_receive_negotiate() and therefore nbd_connect(). Caller
-         * shoudn't be interested in these fields.
+         * shouldn't be interested in these fields.
          */
diff --git a/net/checksum.c b/net/checksum.c
index 68245fd748..1a957e4c0b 100644
--- a/net/checksum.c
+++ b/net/checksum.c
@@ -76,3 +76,3 @@ void net_checksum_calculate(uint8_t *data, int length, int csum_flag)
 
-    /* Handle the optionnal VLAN headers */
+    /* Handle the optional VLAN headers */
     switch (lduw_be_p(&PKT_GET_ETH_HDR(data)->h_proto)) {
@@ -98,3 +98,3 @@ void net_checksum_calculate(uint8_t *data, int length, int csum_flag)
 
-    /* Now check we have an IP header (with an optionnal VLAN header) */
+    /* Now check we have an IP header (with an optional VLAN header) */
     if (length < sizeof(struct ip_header)) {
diff --git a/net/filter.c b/net/filter.c
index 3fe88fa43f..3b92e04af0 100644
--- a/net/filter.c
+++ b/net/filter.c
@@ -94,3 +94,3 @@ ssize_t qemu_netfilter_pass_to_next(NetClientState *sender,
          * if qemu_netfilter_pass_to_next been called, means that
-         * the packet has been hold by filter and has already retured size
+         * the packet has been hold by filter and has already returned size
          * to the sender, so sent_cb shouldn't be called later, just
@@ -108,3 +108,3 @@ ssize_t qemu_netfilter_pass_to_next(NetClientState *sender,
      * We have gone through all filters, pass it to receiver.
-     * Do the valid check again incase sender or receiver been
+     * Do the valid check again in case sender or receiver been
      * deleted while we go through filters.
diff --git a/net/vhost-vdpa.c b/net/vhost-vdpa.c
index 9795306742..34202ca009 100644
--- a/net/vhost-vdpa.c
+++ b/net/vhost-vdpa.c
@@ -823,3 +823,3 @@ static int vhost_vdpa_net_load_rx(VhostVDPAState *s,
      *
-     * Addtionally, according to VirtIO standard, "Since there are
+     * Additionally, according to VirtIO standard, "Since there are
      * no guarantees, it can use a hash filter or silently switch to
@@ -1132,3 +1132,3 @@ static int vhost_vdpa_net_excessive_mac_filter_cvq_add(VhostVDPAState *s,
      * According to virtio_net_handle_mac(), QEMU doesn't verify the MAC
-     * addresses provieded in CVQ command. Therefore, only the entries
+     * addresses provided in CVQ command. Therefore, only the entries
      * field need to be prepared in the CVQ command.
@@ -1143,3 +1143,3 @@ static int vhost_vdpa_net_excessive_mac_filter_cvq_add(VhostVDPAState *s,
      * According to virtio_net_handle_mac(), QEMU doesn't verify the MAC
-     * addresses provieded in CVQ command. Therefore, only the entries
+     * addresses provided in CVQ command. Therefore, only the entries
      * field need to be prepared in the CVQ command.
@@ -1204,3 +1204,3 @@ static int vhost_vdpa_net_handle_ctrl_avail(VhostShadowVirtqueue *svq,
          * Therefore, QEMU must handle this situation instead of sending
-         * the CVQ command direclty.
+         * the CVQ command directly.
          */
diff --git a/semihosting/config.c b/semihosting/config.c
index 89a1759687..8ca569735d 100644
--- a/semihosting/config.c
+++ b/semihosting/config.c
@@ -10,3 +10,3 @@
  *
- * Semihosting is sightly strange in that it is also supported by some
+ * Semihosting is slightly strange in that it is also supported by some
  * linux-user targets. However in that use case no configuration of
diff --git a/semihosting/syscalls.c b/semihosting/syscalls.c
index 68899ebb1c..d27574a1e2 100644
--- a/semihosting/syscalls.c
+++ b/semihosting/syscalls.c
@@ -722,3 +722,3 @@ void semihost_sys_read_gf(CPUState *cs, gdb_syscall_complete_cb complete,
     /*
-     * Bound length for 64-bit guests on 32-bit hosts, not overlowing ssize_t.
+     * Bound length for 64-bit guests on 32-bit hosts, not overflowing ssize_t.
      * Note the Linux kernel does this with MAX_RW_COUNT, so it's not a bad
@@ -763,3 +763,3 @@ void semihost_sys_write_gf(CPUState *cs, gdb_syscall_complete_cb complete,
     /*
-     * Bound length for 64-bit guests on 32-bit hosts, not overlowing ssize_t.
+     * Bound length for 64-bit guests on 32-bit hosts, not overflowing ssize_t.
      * Note the Linux kernel does this with MAX_RW_COUNT, so it's not a bad
diff --git a/softmmu/icount.c b/softmmu/icount.c
index a5cef9c60a..144e24829c 100644
--- a/softmmu/icount.c
+++ b/softmmu/icount.c
@@ -327,3 +327,3 @@ void icount_start_warp_timer(void)
              * to vCPU was processed in advance and vCPU went to sleep.
-             * Therefore we have to wake it up for doing someting.
+             * Therefore we have to wake it up for doing something.
              */
diff --git a/softmmu/ioport.c b/softmmu/ioport.c
index b66e0a5a8e..1824aa808c 100644
--- a/softmmu/ioport.c
+++ b/softmmu/ioport.c
@@ -24,3 +24,3 @@
 /*
- * splitted out ioport related stuffs from vl.c.
+ * split out ioport related stuffs from vl.c.
  */
diff --git a/stubs/colo.c b/stubs/colo.c
index f33379d0fd..08c9f982d5 100644
--- a/stubs/colo.c
+++ b/stubs/colo.c
@@ -23,3 +23,3 @@ void migrate_start_colo_process(MigrationState *s)
 {
-    error_report("Impossible happend: trying to start COLO when COLO "
+    error_report("Impossible happened: trying to start COLO when COLO "
                  "module is not built in");
