Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1623839

[PATCH] ide: don't call memcpy with the same source and destination

From Mikulas Patocka <mpatocka@redhat.com>
Newsgroups linux.kernel
Subject [PATCH] ide: don't call memcpy with the same source and destination
Date 2017-04-14 20:40 +0200
Message-ID <tweiu-4wE-7@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


The parisc architecture recently reimplemented the memcpy function and
their reimplementation crashed when source and destination overlapped.

The crash happened in the function ide_complete_cmd where memcpy is called
with the same source and destination pointer. According to the C
specification, memcpy behavior is undefined if the source and destination
range overlaps. This patches fixes the undefined behavior.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>

---
 drivers/ide/ide-io.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-4.11-rc6/drivers/ide/ide-io.c
===================================================================
--- linux-4.11-rc6.orig/drivers/ide/ide-io.c
+++ linux-4.11-rc6/drivers/ide/ide-io.c
@@ -107,7 +107,7 @@ void ide_complete_cmd(ide_drive_t *drive
 
 		if (cmd->tf_flags & IDE_TFLAG_DYN)
 			kfree(orig_cmd);
-		else
+		else if (cmd != orig_cmd)
 			memcpy(orig_cmd, cmd, sizeof(*cmd));
 	}
 }

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[PATCH] ide: don't call memcpy with the same source and  destination Mikulas Patocka <mpatocka@redhat.com> - 2017-04-14 20:40 +0200
  Re: [PATCH] ide: don't call memcpy with the same source and destination Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> - 2017-04-18 13:00 +0200

csiph-web