Philippe Waroquiers
f05d0d0969
patch fixing 297991: mmap changing a file descriptor current position
...
Bug caused by the following problem:
for each mmap, Valgrind reads the 1st 1024 bytes to detect
if this is an mmap-ed file containing debug info to decode.
Reading this 1Kb is done with VG_(pread). VG_(pread) should be
the equivalent of syscall pread but on linux, it is implemented as
a seek+read.
The patch implements VG_(pread) in terms of the underlying pread syscall.
Test mmap_fcntl_bug.c completed to also verify the fd current position
before and after the mmap.
tested on linux x86/amd64/ppc32/ppc64/s390.
(not tested on Darwin)
(manually tested on arm-android)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12504
2012-04-13 23:07:29 +00:00
..
2012-04-11 07:12:32 +00:00
2011-12-11 16:29:43 +00:00
2009-08-16 00:00:17 +00:00
2011-12-22 13:25:58 +00:00
2012-04-12 17:28:57 +00:00
2012-04-12 17:35:15 +00:00
2012-03-05 23:12:47 +00:00
2012-01-28 14:20:30 +00:00
2009-06-24 00:37:09 +00:00
2011-12-11 16:29:43 +00:00
2011-12-11 16:29:43 +00:00
2011-12-11 16:29:43 +00:00
2011-12-11 16:29:43 +00:00
2011-12-11 16:29:43 +00:00
2011-12-11 16:29:43 +00:00
2011-12-11 16:29:43 +00:00
2011-12-11 16:29:43 +00:00
2005-06-28 19:44:10 +00:00
2005-06-28 19:44:10 +00:00
2005-06-28 19:44:10 +00:00
2003-02-24 22:05:38 +00:00
2003-02-24 22:05:38 +00:00
2003-02-24 22:05:38 +00:00
2003-02-24 22:05:38 +00:00
2009-05-01 05:00:34 +00:00
2009-05-01 05:00:34 +00:00
2009-05-01 05:00:34 +00:00
2004-01-03 14:24:42 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2011-04-03 17:42:19 +00:00
2006-08-16 15:07:48 +00:00
2006-08-16 15:07:48 +00:00
2006-08-16 15:07:48 +00:00
2004-02-15 16:12:35 +00:00
2004-02-15 16:12:35 +00:00
2004-02-15 16:12:35 +00:00
2009-08-03 00:23:16 +00:00
2009-08-03 00:23:16 +00:00
2005-10-26 16:17:46 +00:00
2005-10-26 16:17:46 +00:00
2005-10-26 16:17:46 +00:00
2004-06-15 10:54:40 +00:00
2011-12-08 16:14:59 +00:00
2009-08-04 02:32:55 +00:00
2004-11-26 12:37:10 +00:00
2011-12-08 16:14:59 +00:00
2009-08-04 02:32:55 +00:00
2004-06-15 10:54:40 +00:00
2004-06-15 10:54:40 +00:00
2010-07-06 04:05:23 +00:00
2004-06-15 10:54:40 +00:00
2005-10-14 03:11:30 +00:00
2004-06-15 10:54:40 +00:00
2005-10-14 03:11:30 +00:00
2004-06-15 10:54:40 +00:00
2011-04-21 23:05:49 +00:00
2002-09-23 09:36:25 +00:00
2009-03-13 05:38:01 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2011-10-24 13:21:57 +00:00
2002-12-15 02:51:21 +00:00
2002-10-04 14:16:38 +00:00
2002-10-04 14:16:38 +00:00
2009-06-29 06:57:30 +00:00
2009-06-29 06:57:30 +00:00
2005-03-10 23:59:00 +00:00
2005-03-10 23:59:00 +00:00
2004-01-16 02:19:15 +00:00
2005-03-10 23:59:00 +00:00
2005-03-10 23:23:45 +00:00
2004-01-21 01:20:38 +00:00
2012-03-11 20:47:41 +00:00
2004-06-19 13:02:34 +00:00
2004-06-19 13:02:34 +00:00
2004-06-19 13:02:34 +00:00
2011-10-21 02:32:49 +00:00
2005-11-02 16:15:55 +00:00
2011-09-12 20:22:38 +00:00
2005-03-10 23:23:45 +00:00
2004-07-29 21:20:11 +00:00
2004-07-29 21:20:11 +00:00
2004-07-29 21:20:11 +00:00
2004-07-29 21:20:11 +00:00
2011-06-28 07:25:29 +00:00
2009-04-28 05:35:53 +00:00
2005-06-29 03:46:32 +00:00
2009-04-28 05:35:53 +00:00
2009-04-28 05:35:53 +00:00
2005-06-29 03:46:32 +00:00
2009-04-28 05:35:53 +00:00
2009-04-28 05:35:53 +00:00
2005-06-29 03:46:32 +00:00
2009-04-28 05:35:53 +00:00
2009-04-28 05:35:53 +00:00
2005-06-29 03:46:32 +00:00
2009-04-28 05:35:53 +00:00
2009-04-28 05:35:53 +00:00
2005-06-29 03:46:32 +00:00
2009-04-29 02:04:57 +00:00
2009-04-28 05:35:53 +00:00
2005-06-29 03:46:32 +00:00
2005-06-29 03:46:32 +00:00
2009-04-28 05:35:53 +00:00
2009-04-28 05:35:53 +00:00
2005-06-29 03:46:32 +00:00
2009-04-28 05:35:53 +00:00
2009-04-28 05:35:53 +00:00
2005-06-29 03:46:32 +00:00
2009-04-28 05:35:53 +00:00
2009-04-28 05:35:53 +00:00
2005-06-29 03:46:32 +00:00
2009-04-28 05:35:53 +00:00
2005-10-26 16:17:46 +00:00
2009-08-20 18:38:59 +00:00
2009-04-28 05:35:53 +00:00
2005-10-15 13:01:21 +00:00
2002-10-30 15:22:03 +00:00
2011-10-09 08:48:22 +00:00
2009-08-12 00:14:44 +00:00
2009-07-29 23:34:49 +00:00
2002-09-23 09:36:25 +00:00
2005-03-20 12:06:57 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2004-01-06 21:46:02 +00:00
2004-01-06 21:46:02 +00:00
2002-09-27 10:38:20 +00:00
2004-01-06 21:46:02 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2012-03-27 10:03:56 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:23:45 +00:00
2009-04-15 03:12:43 +00:00
2009-03-16 04:29:12 +00:00
2005-03-10 23:23:45 +00:00
2009-04-15 03:12:43 +00:00
2003-12-19 21:56:04 +00:00
2003-12-19 21:56:04 +00:00
2005-03-10 23:59:00 +00:00
2012-04-13 23:07:29 +00:00
2011-10-24 08:53:03 +00:00
2011-10-24 08:53:03 +00:00
2011-10-24 08:53:03 +00:00
2012-03-02 09:57:14 +00:00
2004-08-14 18:52:27 +00:00
2004-08-14 18:52:27 +00:00
2009-04-15 03:12:43 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2005-07-07 14:29:21 +00:00
2005-07-07 14:29:21 +00:00
2005-07-07 14:29:21 +00:00
2005-07-07 14:29:21 +00:00
2011-12-24 21:50:53 +00:00
2011-12-24 21:50:53 +00:00
2009-03-17 06:22:58 +00:00
2005-03-10 23:23:45 +00:00
2009-03-17 06:22:58 +00:00
2005-03-10 23:23:45 +00:00
2012-02-10 09:39:37 +00:00
2012-02-10 09:39:37 +00:00
2012-02-10 09:39:37 +00:00
2009-08-26 18:11:18 +00:00
2009-08-26 18:45:46 +00:00
2009-08-26 18:45:46 +00:00
2009-08-26 18:11:18 +00:00
2009-08-26 18:11:18 +00:00
2009-08-26 18:11:18 +00:00
2011-06-28 07:25:29 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-03-10 23:59:00 +00:00
2002-09-23 09:36:25 +00:00
2005-03-10 23:59:00 +00:00
2002-09-23 09:36:25 +00:00
2006-10-17 01:28:48 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2009-04-16 02:04:07 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2005-06-30 02:15:59 +00:00
2004-11-16 19:40:05 +00:00
2004-11-16 19:40:05 +00:00
2004-11-16 19:40:05 +00:00
2004-11-16 19:40:05 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2010-05-09 22:30:43 +00:00
2010-05-09 22:30:43 +00:00
2010-05-09 22:30:43 +00:00
2011-05-17 21:35:41 +00:00
2010-05-09 22:30:43 +00:00
2005-06-30 04:41:56 +00:00
2005-06-30 04:41:56 +00:00
2005-06-30 04:41:56 +00:00
2005-06-30 04:41:56 +00:00
2004-01-03 14:24:42 +00:00
2002-10-01 11:45:34 +00:00
2003-04-03 00:50:21 +00:00
2002-10-01 11:45:34 +00:00
2012-03-01 13:42:18 +00:00
2012-03-01 13:42:18 +00:00
2012-03-01 13:42:18 +00:00
2012-03-01 13:42:18 +00:00
2012-03-01 13:42:18 +00:00
2004-06-26 11:27:52 +00:00
2004-06-26 11:27:52 +00:00
2004-06-26 11:27:52 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:23:45 +00:00
2005-08-15 13:29:43 +00:00
2006-12-12 01:38:15 +00:00
2004-06-13 14:23:00 +00:00
2004-06-13 14:23:00 +00:00
2004-06-13 14:23:00 +00:00
2004-03-23 19:48:54 +00:00
2004-03-23 19:48:54 +00:00
2004-03-23 19:48:54 +00:00
2004-03-23 19:48:54 +00:00
2004-01-03 14:24:42 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2012-02-15 03:57:27 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-11-07 14:43:12 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2005-11-07 14:43:12 +00:00
2005-10-14 03:11:30 +00:00
2005-10-14 03:11:30 +00:00
2008-04-27 07:07:20 +00:00
2005-10-14 03:11:30 +00:00
2008-11-08 15:04:58 +00:00
2008-11-08 15:04:58 +00:00
2005-10-15 15:28:31 +00:00
2011-10-09 08:48:22 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2002-09-23 09:36:25 +00:00
2009-03-13 05:38:01 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:59:00 +00:00
2004-01-16 02:15:23 +00:00
2004-01-16 02:15:23 +00:00
2004-01-16 02:15:23 +00:00
2004-01-16 02:15:23 +00:00
2004-01-16 02:15:23 +00:00
2004-01-16 02:15:23 +00:00
2004-01-16 02:15:23 +00:00
2009-07-13 07:02:26 +00:00
2009-07-13 07:02:26 +00:00
2009-07-13 07:02:26 +00:00
2004-02-15 16:15:05 +00:00
2004-02-15 16:15:05 +00:00
2004-02-15 16:15:05 +00:00
2005-03-15 01:41:08 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:23:45 +00:00
2005-03-10 23:23:45 +00:00
2006-10-17 11:09:03 +00:00
2005-03-13 05:10:08 +00:00
2005-03-13 05:10:08 +00:00
2005-03-13 05:10:08 +00:00
2006-10-17 01:28:48 +00:00
2005-06-30 04:41:56 +00:00
2006-10-17 01:28:48 +00:00
2005-06-30 04:41:56 +00:00
2009-07-24 05:16:31 +00:00
2009-07-24 05:16:31 +00:00
2009-07-24 05:16:31 +00:00
2005-03-10 23:59:00 +00:00
2005-03-10 23:59:00 +00:00
2005-03-10 23:59:00 +00:00
2011-09-10 18:28:57 +00:00
2004-01-21 01:27:27 +00:00
2004-01-21 01:27:27 +00:00
2005-03-10 23:23:45 +00:00
2011-05-06 21:02:55 +00:00
2009-08-03 01:38:56 +00:00
2009-08-03 01:38:56 +00:00
2009-08-03 01:38:56 +00:00