History log of /external/valgrind/coregrind/m_libcfile.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
4ac3621177f991fdf5df8f3b10e2ccd31d3ed5fd 13-May-2015 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> Changes for tilegx: Use VKI_AT_FDCWD not AT_FDCWD.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15227 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
112711afefcfcd43680c7c4aa8d38ef180e8811e 10-Apr-2015 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Add a port to Linux/TileGx. Zhi-Gang Liu (zliu@tilera.com)
Valgrind aspects, to match vex r3124.

See bug 339778 - Linux/TileGx platform support to Valgrind



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15080 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
d6edbc94a7a68333423cd06cc75f07fbc812f1ca 09-Feb-2015 mjw <mjw@a5019735-40e9-0310-863c-91ae7b9d1cf9> Bug #343967 Don't warn about setuid/setgid/setcap exec for dirs.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14922 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
3130eab8c67d0c720cb1a86906cc057daa9700cc 14-Nov-2014 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> Minor non-functional cleanups.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14723 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
87c8abb11cf6b50cd15fe081ffc956b723c9d28c 09-Nov-2014 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> Change VG_(mkstemp) such that
(a) the 2nd argument must not be NULL
This was true anyhow and requiring it allows us to simplify the function
by eliminating the local buffer.
(b) the memory pointed to by the 2nd argument is always initialised
In the past the output file name was not initialised in case VG_(open)
failed 10 times in a row. The call sites in m_main.c and m_gdbserver/target.c
were reading the uninitialised filename unconditionally. This was spotted
by IBM's BEAM checker.
Fix call sites, eliminate some magic constants along the way.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14706 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
a175ffb9ffa4fd250611582a611333d11c835de2 14-Oct-2014 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merge revisions 14210 and 14626 from the BUF_REMOVAL branch to trunk.
Change VG_(resolve_filename) to not truncate the result which is returned
in a static buffer now. Fix callsites.
Simplify VG_(di_notify_pdb_debuginfo) to use VG_(resolve_filename).
Fix VG_(readlink) prototype.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14628 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
94086c7ad4f7115c19a17ee10246595cfdb78070 30-Sep-2014 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merge revisions 14216,14591,14593 from the BUF_REMOVAL branch to trunk.
Chang the semantics of VG_(getgroups) to support querying the number
of supplementary group IDs which simplifies obtaining them and gets
rid of fixed size buffers.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14594 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
29d82f6e5ff3af28950ef6071d231b9633f82a49 27-Sep-2014 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merge 14206,14207,14261,14577,14578 from BUF_REMOVAL branch to trunk.
This changes VG_(record_startup_wd) to dynamically allocate a large
enough buffer for the directory name. As the dynamic memory manager has
started up a while ago, this is quite safe. Also rewrite VG_(get_startup_wd)
to simply return the directory name. No more messing with copying it
around. Adapt call sites.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14579 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
58946e936476d805bd0d311a791c6eb8cff1b879 27-Sep-2014 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merge revisions 14203,14574,14575 from the BUF_REMOVAL
branch to trunk.
This change eliminates the fixed size buffers in VG_(basename)
and VG_(dirname).


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14576 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
b69cd964e10e03cf8997f3828b08b3e9c466b78b 02-Sep-2014 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> VG_(getdents64) is only needed on Linux, and causes build problems
on Darwin, so make it exist only on Linux.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14421 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
495c6563114d60a67caa5824a03dc4892cc86adb 29-Aug-2014 mjw <mjw@a5019735-40e9-0310-863c-91ae7b9d1cf9> Use getdents64 syscall on linux.

getdents has been deprecated since linux 2.4 and newer arches (arm64)
might no longer provide the getdents syscall. Use getdents64 for reading
the /proc/self/fd/ dir so --track-fds=yes works reliable on all arches.
Without this the none/tests/fdleak*vgtest might fail.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14384 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
603722682edfa1a55114f6da815b4ff24646915d 09-Aug-2014 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> Use mkstemp_format in VG_(mkstemp). That way nothing breaks should
the format change.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14252 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
d47676f6f42555387973cbc3bdb0261650551aac 09-Aug-2014 philippe <philippe@a5019735-40e9-0310-863c-91ae7b9d1cf9> Mark argument of VG_(mkstemp) as const.
Fix comment in pub_core_libcfile.h (and make it the only copy)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14247 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
cae0cc22b83ffb260ee8379e92099c5a701944cb 08-Aug-2014 carll <carll@a5019735-40e9-0310-863c-91ae7b9d1cf9> This commit is for Bugzilla 334384. The Bugzilla contains patch 1 of 3
to add PPC64 LE support. The other two patches can be found in Bugzillas
334834 and 334836. The commit does not have a VEX commit associated with it.

POWER PC, add initial Little Endian support

The IBM POWER processor now supports both Big Endian and Little Endian.
This patch renames the #defines with the name ppc64 to ppc64be for the BE
specific code. This patch adds the Little Endian #define ppc64le to the

Additionally, a few functions are renamed to remove BE from the name if the
function is used by BE and LE. Functions that are BE specific have BE put
in the name.

The goals of this patch is to make sure #defines, function names and
variables consistently use PPC64/ppc64 if it refers to BE and LE,
PPC64BE/ppc64be if it is specific to BE, PPC64LE/ppc64le if it is LE
specific. The patch does not break the code for PPC64 Big Endian.

The test files memcheck/tests/atomic_incs.c, tests/power_insn_available.c
and tests/power_insn_available.c are also updated to the new #define
definition for PPC64 BE.

Signed-off-by: Carl Love <carll@us.ibm.com>


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14238 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
39d013e3758a25aa8c13738dbdbd3264fe27a8a6 20-Jun-2014 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Remove fd_exists(), as it is never used.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14065 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
b7c2f9d6cecf2e39f243a6c9acf3e6728bc51000 22-May-2014 tom <tom@a5019735-40e9-0310-863c-91ae7b9d1cf9> Check for setcap executables, as we already do for setuid and
setgid ones, and refuse to run them in the same way. BZ#335143.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13990 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
0eb0d5a73655b8ed1b6c93d7032311a5d102a8f0 12-Feb-2014 philippe <philippe@a5019735-40e9-0310-863c-91ae7b9d1cf9> Fix or implement various things to have V gdbsrv working on arm64
* better handle error recovery when calling remote_desc_activity
(avoid exhausting safe fd range)
* fix small error in m_gdbserver/README_DEVELOPERS
* implemented mknod and poll syscall on mknodat and ppoll
(mknod and poll are not directly supported on arm64)
* implement or fix various gdbsrv specific things needed for arm64
* changed assert condition in aspacemgr to VKI_SHMLBA >= VKI_PAGE_SIZE

With these changes, gdbserver integration seems to be basically working.
However, when breakpoints are placed or removed, discard_translations
causes an assert as the unchain has not been implemented yet for arm64 :

--1118:1:gdbsrv remove software_breakpoint at addr 0x400DE74 0x400DE74: _dl_debug_state (in /usr/lib64/ld-2.17.so)
--1118:2:transtab discard_translations(0x400de74, 2) req by m_gdbserver breakpoint remove
--1118:2:transtab FAST, ec = 27

vex: priv/main_main.c:1070 (LibVEX_UnChain): Assertion `0' failed.
vex storage: T total 5480544 bytes allocated
vex storage: P total 0 bytes allocated

valgrind: the 'impossible' happened:
LibVEX called failure_exit().
==1118== at 0x3809E6B8: ??? (in /home/philippe/crossaarch64/trunk/Inst/lib/valgrind/none-arm64-linux)

sched status:
running_tid=1

What remains to be done:
* arm64 xml register description files (allowing shadow registers to be looked at).
* ptrace invoker : currently disabled for both arm and arm64
* cpsr transfer to/from gdb to be looked at (see also arm equivalent code)




git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13800 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
f0c1250e324f6684757c6a15545366447ef1d64f 12-Jan-2014 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Add support for ARMv8 AArch64 (the 64 bit ARM instruction set).


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13770 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
4254584008012b975d47540812612f297ed68d0a 05-Dec-2013 philippe <philippe@a5019735-40e9-0310-863c-91ae7b9d1cf9> Minor tweak in the VG_(poll) syscall and callers: have a way to show
the error in case the poll syscall unexpectedly fails.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13748 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
0f157ddb404bcde7815a1c5bf2d7e41c114f3d73 18-Oct-2013 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Update copyright dates (20XY-2012 ==> 20XY-2013)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13658 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
5d616dfbb8439dfd51a40ddf1dba970938baa1eb 02-Jul-2013 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merge r13421:HEAD from branches/DISRV. This merges the debuginfo-server
stuff into the trunk.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13440 a5019735-40e9-0310-863c-91ae7b9d1cf9
cc64826c2f8de556af52f5dcde42cfdac725ed0a 26-May-2013 philippe <philippe@a5019735-40e9-0310-863c-91ae7b9d1cf9> fix 320211 Stack buffer overflow in ./coregrind/m_main.c with huge TMPDIR
* Addition of a function to compute size of buffer needed for VG_(mkstemp)
* Use it to dimension buffers for all VG_(mkstemp) calls.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13409 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
4df0bfc0614379192c780c944415dc420d9cfe8e 28-Feb-2013 petarj <petarj@a5019735-40e9-0310-863c-91ae7b9d1cf9> mips: adding MIPS64LE support to Valgrind

Necessary changes to Valgrind to support MIPS64LE on Linux.
Minor cleanup/style changes embedded in the patch as well.
The change corresponds to r2687 in VEX.
Patch written by Dejan Jevtic and Petar Jovanovic.

More information about this issue:
https://bugs.kde.org/show_bug.cgi?id=313267


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13292 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
6bd9dc18c043927c1196caba20a327238a179c42 23-Nov-2012 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> Changes to allow compilation with -Wwrite-strings. That compiler option
is not used for testcases, just for valgrind proper.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13137 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
19f91bbaedb4caef8a60ce94b0f507193cc0bc10 10-Nov-2012 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> Fix more Char/HChar mixups. Closing in...


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13119 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
dbb3584f591710a15a437918c0fc27e300993566 27-Oct-2012 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> More Char/HChar fixes and constification.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13088 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
6caac7155359699ced56e1011c5d245eade60462 18-Aug-2012 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> On Darwin, use __NR_poll_nocancel rather than __NR_poll, as per the
comment at the top of the file.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12878 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
03f8d3fc25f5a45c5826259d1b33b7f310117279 05-Aug-2012 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Update copyright dates to include 2012.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12843 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
5db15403e889d4db339b342bc2a824ef0bfaa654 07-Jun-2012 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merge in a port for mips32-linux, by Petar Jovanovic and Dejan Jevtic,
mips-valgrind@rt-rk.com, Bug 270777.

Valgrind: changes to existing files.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12616 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
972316d4e9fc5b7eba6bec6f16ca0b0aed0d7d73 21-Apr-2012 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Fix assertion failure on x86-darwin following r12504 (pread fix)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12523 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
8050bb782a2010d8453d161c7c291f52be4f0cc1 14-Apr-2012 philippe <philippe@a5019735-40e9-0310-863c-91ae7b9d1cf9> 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 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
ec062e8d96a361af9905b5447027819dfbfee01a 23-Oct-2011 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Update all copyright dates, from 20xy-2010 to 20xy-2011.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12206 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
b985e2de52983cafd2d17cc6c9e60064847777fd 29-Sep-2011 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> Remove hardwired /tmp directory in vgdb. Honour VG_TMPDIR
and TMPDIR which was introduced when fixing bugzilla #267020.
Factor out VG_(tmpdir). New function VG_(vgdb_path_prefix).
Partially fixes bugzilla #280757.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12063 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
80fc03beb39266911fbaf5cfdae325aeecfb937a 26-Sep-2011 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Print a slightly less useless failure message if VG_(mkstemp) fails to
create a temp file, as often happens on Android.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12048 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
f9b1d7322c6f228834697344ac141ae678b2932f 13-Jul-2011 tom <tom@a5019735-40e9-0310-863c-91ae7b9d1cf9> Cast llseek argument to avoid warning.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11894 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
c17c6eface247fd7ac318bfaebe291ca5b9a61af 13-Jul-2011 tom <tom@a5019735-40e9-0310-863c-91ae7b9d1cf9> Allow core dumps on 32 bit architectures to go over 2Gb in size. BZ#277610.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11893 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
1763e815a2ae21db24f7a819f0a713ac0cf8a239 12-Jul-2011 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> Make the location for temporary files configurable at runtime.
To that effect observe the environment variable TMPDIR. If defined,
its value takes precedence over VG_TMPDIR.
Because the directory name is no longer a compile time constant,
VG_(err_config_error) was changed to take a variable argument list.
Fixes #267020.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11892 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
9db56aef2b84a2e7cce98abdcc1078b0e5b42603 12-Jul-2011 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Allow selection of an alternative location for temporary files at
configure time, via the --with-tmpdir flag. The configure.in part of
this was mistakenly committed already in r11872 as first hunk of the
configure.in change. Bug 266035 comment 11. (Kenny Root,
kroot@google.com)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11881 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
6e9de463ef677f093e9f24f126e1b11c28cf59fd 28-Jun-2011 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Delete the AIX5 port. The last release this worked for is 3.4.1,
and then only on AIX 5.2 and 5.3.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11842 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
824b397667731e5a2f9fb79d29ef87e65d737368 10-May-2011 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> VG_(mkstemp): fix infinite loop in the case where /tmp isn't
writable. Fixes #223249. (Florian Krohm, britzel@acm.org)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11737 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
3b290486cd4cd601b20e04340e593c9ed9717e5f 06-May-2011 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Implement a GDB server in Valgrind. See #214909.
(Philippe Waroquiers, philippe.waroquiers@skynet.be)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11727 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
b5b87408c0c99f9f6938d8cd921e2a5f420577c4 07-Mar-2011 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Add a port to IBM z/Architecture (s390x) running Linux -- Valgrind
side components. (Florian Krohm <britzel@acm.org> and Christian
Borntraeger <borntraeger@de.ibm.com>). Fixes #243404.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11604 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
9eecbbb9a9cbbd30b903c09a9e04d8efc20bda33 03-May-2010 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Update copyright dates to 2010.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11121 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
59570ffbe31930ab4d678754daaeec0715117a3d 01-Jan-2010 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merge from branches/ARM, all parts of the ARM-Linux port except for
the changes to do with reading and using ELF and DWARF3 info.
This breaks all targets except amd64-linux and x86-linux.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10982 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
9b533f803bec4634f1106e4d4a7063d49c9694e7 25-Aug-2009 bart <bart@a5019735-40e9-0310-863c-91ae7b9d1cf9> Switched back from dynamic detection of whether the proc filesystem
is mounted to compile-time logic in order to minimize the differences
in behavior with Valgrind version 3.5.0.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10868 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
cf3f7181d94bd6f9f060b917c59a976ab899762d 25-Aug-2009 bart <bart@a5019735-40e9-0310-863c-91ae7b9d1cf9> Renamed the function VG_(have_proc_filesystem)() into
VG_(is_procfs_mounted)(). The old name was derived from the name
of the preprocessor macro HAVE_PROC while the new name is a more
accurate description of what this function does.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10867 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
299c2d3b2af94e509b467d9e980308976183d95a 23-Aug-2009 bart <bart@a5019735-40e9-0310-863c-91ae7b9d1cf9> The configure-time test whether the proc filesystem is mounted (introduced
in r10156) broke cross-compilation. This patch converts the configure-time
test into a runtime test. Should fix bug #204843.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10860 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
f76d27a697a7b0bf3b84490baf60623fc96a23af 28-May-2009 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merge the DARWIN branch onto the trunk.

I tried using 'svn merge' to do the merge but it did a terrible job and
there were bazillions of conflicts. So instead I just took the diff between
the branch and trunk at r10155, applied the diff to the trunk, 'svn add'ed
the added files (no files needed to be 'svn remove'd) and committed.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10156 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
bb7af3f7a94d72a0884fcf9ccf8a1b345cb0f65d 22-May-2009 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> DARWIN sync: change the 3rd arg of VG_(fcntl).



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10101 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
0cd5d9737fa3cd7788203c2bf2b4468059eb3dc5 22-May-2009 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> DARWIN sync: export VG_(socket).



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10098 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
4bd96bd00fe5bee884c65ad562ec19eed8a6a9b4 22-May-2009 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Partly revert r10044 -- do use struct vki_sockaddr, and define it for AIX.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10096 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
b143b27543d51a424b7a38451b3f9f034d9585db 22-May-2009 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Avoid struct vki_sockaddr_in in my_connect(), because it's not defined on
all platforms; void* suffices.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10095 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
63e5e6e0b018efe4194daf8f6a8d43ceaa36933b 20-May-2009 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> DARWIN sync: add some 'const' attributes.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10022 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
9c20ece00e07304f66da5f43b87ec45bc9c04550 20-May-2009 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merge r9993, r9995 (comment changes about vg_stat) from the DARWIN branch,
and rename all the vg_stat fields to avoid problems that the old names cause
on Darwin.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9996 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
600239441a331b380493f1adeefcf49f4c15bf3a 19-May-2009 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> comment wibble



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9945 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
cda2f0fbda4c4b2644babc830244be8aed95de1d 18-May-2009 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merged non-Darwin-specific parts of r9397,r9423,r9490, 9461, 9462 from the
DARWIN branch. A big ugly DARWIN/trunk sync commit, mostly to do with
changing the representation of SysRes and vki_sigset_t. Functionality of
the trunk shouldn't be changed by it.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9876 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
dad944add53e6361751c6832066c00c456854622 04-May-2009 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merged r9750, r9751 (remove m_aspacemgr layering violation) from the DARWIN
branch.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9752 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
81b975ce84471039f9d668274fd544419541ebab 28-Apr-2009 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merged r9657 (fdleak fixes) from the DARWIN branch.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9658 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
9f207460d70d38c46c9e81996a3dcdf90961c6db 10-Mar-2009 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Updated copyright years.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9344 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
c4431bfe04c7490ea2d74939d222d87f13f30960 15-Jan-2009 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Introduce a new type, PtrdiffT. Replace lots of uses of OffT (all those
that are memory offsets) with PtrdiffT; OffT should only be used for file
sizes and offsets.

Change Off64T from a ULong to a Long, as it should be. Replace some uses
of ULong in the address space manager with Off64T to match.

Also add a comment explaining the meanings of the basic types like Addr,
OffT, SizeT, etc.

Also fix the prototype for VG_(pread) -- the last arg is an OffT, not an
Int.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8959 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
485ce169b87382a43e5856eaa1898bf790b43abb 22-Oct-2008 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Make VG_(dup2) compile on AIX.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8693 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
fad9837bc7439202a0f1db8d640f0b5990f6ae19 12-Oct-2008 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Patch from Robert O'Callahan:

create and expose 'dup2'


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8667 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
9c606bd8634cd6b67bb41fa645b5c639668cfa2d 18-Sep-2008 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merge all remaining changes from branches/PTRCHECK. These are some
relatively minor extensions to m_debuginfo, a major overhaul of
m_debuginfo/readdwarf3.c to get its space usage under control, and
changes throughout the system to enable heap-use profiling.

The majority of the merged changes were committed into
branches/PTRCHECK as the following revs: 8591 8595 8598 8599 8601 and
8161.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8621 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
4231a856d6ad0388f7bd0ab1642c78b00d0371d9 19-Aug-2008 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Tidy up VG_(stat) usage in VG_(check_executable). Followup to r8522.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8523 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
ec61b6509566cf36ab3968d69226cecf177cb0fe 19-Aug-2008 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Presently, Valgrind (non-client) code that wants to use the stat
family of syscalls is impossible to write in a way that's portable and
correct. On some targets (eg x86-linux) you need to do sys_stat64 and
receive the results in a 'struct vki_stat64'. But on other targets
(eg amd64-linux) neither sys_stat64 nor 'struct vki_stat64' exist.

This commit adds a new type, 'struct vg_stat', which contains 64 bit
fields in all the right places, and makes VG_(stat) and VG_(fstat) use
it. This means callers to the two functions no longer need to worry
about the is-it-64-bit-clean-or-not question, since these routines
reformat the received data into a'struct vg_stat'. Kind of like what
glibc must have been doing for decades.

This (indirectly) fixes a bug on x86-linux, in which m_debuginfo would
sometimes fail to read debug info, due to VG_(di_notify_mmap) using
VG_(stat) (hence sys_stat) on the file, which failed, and when in fact
it should have used sys_stat64. Bug reported and tracked down by
Marc-Oliver Straub.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8522 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
4d474d086188fd1f29fa97dbd84d8ea2e589a9b8 11-Feb-2008 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Update copyright dates ("200X-2007" --> "200X-2008").


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7398 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
c74b3ba6f1d1b269aa2abcad3bd1c58d0d630c9f 17-Nov-2007 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Make handling of setuid executables marginally more sensible, as
suggested in #119404.

Prior to this commit, if the current traced process attempted to
execve a setuid executable, an error was always returned. The revised
behaviour is:

If the current (traced) process attempts to execve a setuid
executable:

* If --trace-children=yes is not in effect, the execve is allowed.

* If --trace-children=yes is in effect, the execve is disallowed
(as at present), but an error message is printed (unless in XML mode),
so at least the execve does not fail silently any more.

As per discussion on #119404 we could probably do a lot better, but
these changes are at least simple, useful and uncontroversial.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7175 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
198f34fa929569172d863f9c33f9686855ca975a 10-Jul-2007 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Get rid of VG_(getcwd) and replace it with a pair of functions,
VG_(record_startup_wd) which records the working directory at startup,
and VG_(get_startup_wd) which later tells you what value was recorded.
This works because all uses of VG_(getcwd) serve only to record the
directory at process start anyway. The motivation is that AIX does
not support sys_getcwd directly, so it's easier for the launcher to
ship in the required value using an environment variable. On Linux
sys_getcwd is used as before.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6764 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
14c7cc5a5fbe9526329f058116f921988efe679e 25-Feb-2007 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Get rid of the type XArrayStrings in m_clientstate and use new generic
equivalents in module m_xarray instead. A suprisingly pervasive
change.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6616 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
9ebd6e0c607fa30301b1325874eb8de871c21cc5 08-Jan-2007 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Update copyright dates.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6488 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
45406ef235d494310325c149712de1d8f3b80863 18-Oct-2006 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Use house types.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6315 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
26b872876d608c38916f176454be6936bad6db92 17-Oct-2006 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> AIX build fixes.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6308 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
9a66bb9368586daff5dea0c37d7be02185c1edf2 17-Oct-2006 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Merge r6130:

- AIX implementations of various stuff, nothing surprising.

- For all platforms: make VG_(read) and VG_(write) return (negative)
actual error values rather than producing -1 for all failures.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6267 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
4cfea4f9480393ed6799db463b2e0fb8865a1a2f 14-Oct-2006 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Create a new module, m_vki, and move all knowledge about the kernel
interface, except for the syscall numbers, into that. Mostly this
means moving include/vki-*.h to include/vki/vki-*.h.

include/pub_tool_basics.h previously dragged in the entire kernel
interface. I've done away with that, so that modules which need to
see the kernel interface now have to include pub_{core,tool}_vki.h
explicitly. This is why there are many modified .c files -- they have
all acquired an extra #include line.

This certainly breaks all platforms except x86. Will fix shortly.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6225 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
4eee476691a0648b893665d3227277eb60f30cdf 14-Oct-2006 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Create a new module, m_vkiscnums, and move all the system call numbers
into that. Mostly this means moving vki_unistd-<plat>.h to
include/vki/vki-scnums-<plat>.h.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6224 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
a346c26eb486ad73f4d62026d91eb66a85a77b3e 29-Sep-2006 tom <tom@a5019735-40e9-0310-863c-91ae7b9d1cf9> Use stat64 instead of stat when it is available. Fixes bug #134727.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6084 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
574b893549e985c554e8143abfc33cbe35f8225e 05-Jul-2006 tom <tom@a5019735-40e9-0310-863c-91ae7b9d1cf9> Use fstat64 to work out the size of a file if it is available as it
copes with a wider range of filesystems than the old fstat call.

Fixes bug #130020.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5979 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
e4b0bf07b0ee0a18eacc5aba91686ab5fc1d327b 06-Jun-2006 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Update copyright dates.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5954 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
2c48c7b0a453d32375a4df17e153011b797ef28c 29-Nov-2005 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Add framework for ppc64 support. Apologies in advance for the
inevitable breakage to other platforms.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5250 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
a4a4f410c0d018d3047fdb0e538eedfde7db3bd1 17-Nov-2005 tom <tom@a5019735-40e9-0310-863c-91ae7b9d1cf9> Provide a full set of ntohl/htonl/ntohs/htons routines in the
valgrind C library.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5162 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
f4c231081a5c8ff6f24b3fa1980349199f1d9ea3 31-Oct-2005 tom <tom@a5019735-40e9-0310-863c-91ae7b9d1cf9> Get core dumping working again - the architecture specific code that
was in the sigframe module has been moved into the coredump module
where it belongs and things fixed up to compiler again.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4970 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
a1c4bfb9917163eb804a7b0b5592b3fad096c99d 18-Oct-2005 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Fix socket stuff on ppc32, so that --log-socket actually works.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4940 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
7375061f0ecd9534a27ade9bb4fbe47ddce41298 14-Oct-2005 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Overhaul the way programs are loaded at startup and exec() works. Now the
checking of programs done in these two places are combined, which avoids
duplicate code and greatly reduces the number of cases in which exec()
fails causing Valgrind to bomb out.

Also, we can now load some programs we could not previously, such as scripts
lacking a "#!" line at the start. Also, the startup failure messages for
bad programs match the shell's messages very closely.

And I added a whole bunch of regtests to test all this.




git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4918 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
60a4b0b77180f0c54ddca5c8d9ca20a877637f01 12-Oct-2005 tom <tom@a5019735-40e9-0310-863c-91ae7b9d1cf9> Fix statement-before-declaration warnings for the core code.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4906 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
21ccba885167baf42cf38c870183f3403bde41e0 08-Oct-2005 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Make --log-socket= work on ppc32.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4893 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
1e866560a73a8dbcbfd41cabda8513c4d7b0ed6a 28-Sep-2005 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Make --log-socket= work on amd64-linux.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4811 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
fdf91b45b672e5e45db7db6df62c448a37dae88b 28-Sep-2005 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Small cleanups, mostly of m_main:

- Move VG_(fd_{soft,hard}_limit) into m_clientstate
- m_main: clean up auxv handling. Get rid of scan_auxv().
- m_main: move scan_colsep() to somewhere more sensible.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4799 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
45f4e7c91119c7d01a59f5e827c67841632c9314 27-Sep-2005 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> This commit merges in changes from branches/ASPACEM (specifically,
changes from r4341 through r4787 inclusive). That branch is now dead.
Please do not commit anything else to it.

For the most part the merge was not troublesome. The main areas of
uncertainty are:

- build system: I had to import by hand Makefile.core-AM_CPPFLAGS.am
and include it in a couple of places. Building etc seems to still
work, but I haven't tried building the documentation.

- syscall wrappers: Following analysis by Greg & Nick, a whole lot of
stuff was moved from -generic to -linux after the branch was created.
I think that is satisfactorily glued back together now.

- Regtests: although this appears to work, no .out files appear, which
is strange, and makes it hard to diagnose regtest failures. In
particular memcheck/tests/x86/scalar.stderr.exp remains in a
conflicted state.

- amd64 is broken (slightly), and ppc32 will be unbuildable. I'll
attend to the former shortly.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4789 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
6c93c4f72b8abaf910023006ddd9adbaf3f106de 05-Aug-2005 tom <tom@a5019735-40e9-0310-863c-91ae7b9d1cf9> If the pre-handler for the execve system call fails to state the file
being executed then propagate the error from the stat instead of just
return ENOACCES all the time. Fixes bug #110208.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4330 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
9264559eba4aa5d397a278b4e1a50c03de30693f 23-Jul-2005 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> A commit which is almost all trivial change.

- m_main: if --log-file-qualifier applies, do not add ".pid"
at the end of the name

- Fix the logic which detected whether the just-devised name
already existed. This was broken (by me) because it could not
distinguish the reasons for failing to open the logfile.

Doing this required changing the return type of VG_(open)
from Int to SysRes (to make failure reasons visible) and
that's the cause of most of the changes.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4228 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
8a85128556a560d93ad9df61ffa4a34a4f057ad8 02-Jul-2005 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Implement VG_(getsockname), VG_(getpeername), VG_(getsockopt) for ppc32-linux.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4080 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
f845f8ffb1d2fac86714e32f4e279700b07722df 23-Jun-2005 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Removed some repetition in the way VG_(record_fd_open)() is called.
As part of this, VG_(resolve_filename)() no longer calls VG_(malloc)()
and so m_libcfile no longer depends on m_mallocfree.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4001 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
57ca7abfcefb38c62a60fb41aa91227303dd2db6 22-Jun-2005 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Remove VG_(getcwd_alloc)(), which can be done otherwise pretty easily.
This halves m_libcfile's dependence on m_mallocfree.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3995 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
351d006b8fa2d3ab8cabc362954c42de19aab3c7 22-Jun-2005 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Move VKI_SIGVGKILL and VKI_SIGVGRTUSERMAX out of vki-linux.h since they're
not really from the kernel and they're defined in terms of VG_(max_signal),
which is in m_signals. Renamed them with the VG_ prefix too, since they're
now not part of the kernel interface.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3990 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
85665ca6fa29dd64754dabe50eb98f25896e752a 20-Jun-2005 cerion <cerion@a5019735-40e9-0310-863c-91ae7b9d1cf9> Finally, valgrind on ppc32.
Plenty still to do, but simple programs like ls seem to run ok

Thanks, Paul, for having your ppc port of valgrind 2.4 to work from!




git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3969 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
24a6efb2f94eb0cb5d53174d580e1dc00893a6d6 20-Jun-2005 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Remove some unnecessary #includes, comment some others.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3966 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
ae7359bd2f3d19db01c9bcbb399b8356a50e0206 19-Jun-2005 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Moved VG_(resolve_filename{,_nodup}) from m_syswrap into m_libcfile,
so that m_aspacemgr doesn't depend on m_syswrap any more.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3960 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
c7561b931e249acf3768ead77638545b0ccaa8f1 19-Jun-2005 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Final commit for the initial modularisation pass:

- Broke part of m_scheduler off into a new module m_threadstate. It
contains ThreadState, VG_(threads)[] and some basic operations on the
thread table. All simple stuff, the complex stuff stays in m_scheduler.
This avoids lots of circular dependencies between m_scheduler and other
modules.

- Managed to finally remove core.h and tool.h, double hurrah!

- Introduced pub_tool_basics.h and pub_core_basics.h, one of which is
include by every single C file.

- Lots of little cleanups and changes related to the above.

- I even did a small amount of documentation updating.




git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3944 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
9abd608244d8123868d027f616fa928156615d5a 17-Jun-2005 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Moved the basic syscall stuff out of m_libcbase.c into a new module
m_syscall.c. Plus some associated cleanups.

Moved VG_(sigreturn) into m_signals.c and made it local.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3922 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
327fe8af403416e58df70e3a2ad857f43e0e7be1 12-Jun-2005 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Move VG_(fcntl) into m_libcfile.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3895 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
af1d7dfc9412c09d24ea10118f3fd1082f92e49d 11-Jun-2005 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Having moved VG_(arena_strdup)() out of core.h, core.h no longer
needs to #include pub_core_mallocfree.h. As a result, we need
to #include it explicitly everywhere else.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3881 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
63004dc4f731e086a146a25f323b1dc32506b070 11-Jun-2005 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Moved VG_(fd_{hard,soft}_limit) into a better spot.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3871 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
a5c9e4a7e883876ca482f8de9f035a64f5f8b83d 09-Jun-2005 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> Fix some socket-related functionality on amd64. This means file
descriptor leak checks now work on amd64.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3857 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
a8d8e239876796bc194636b8bb4b3b3c86db8528 07-Jun-2005 sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> A major overhaul of all machinery to do with syscalls, but mostly of
the m_syscalls module. Fundamentally the aim of the overhaul is to
clean up the logic and abstractions surrounding syscalls in order that
we can cleanly support ppc32 and other new targets. Aims in detail:

* To further decouple the syscall PRE/POST wrappers from specifics of
how those values are stored on a given platform. The wrappers look
the same as they did before, mostly (eg, references to ARGn and
RES are unchanged), but now those macros refer to values in structs
SyscallArgs and SyscallStatus (see priv_types_n_macros.h).

* Complete overhaul of the driver logic for syscalls. The resulting
logic is algorithmically identical to what we had before, but is
more documented, and deals with moving arg/result data between
platform specific representations and the canonical forms in
structs SyscallArgs and SyscallStatus.

* Also as a result of this change, remove problems in the old logic
due to assignments of RES in PRE wrappers trashing the ARGs whilst
we still need to see them.

* Lots of other cleanups and documentation. There is extensive
commentary in syscalls-main.c.

The driver logic has been placed in its own file, syscalls-main.c.

New/deleted files in m_syscalls:

* syscalls.c is divided up into syscalls-main.c, containing driver
logic, and syscalls-generic.c, containing generic Unix wrappers.

* priv_syscalls.h is chopped up into priv_types_n_macros.h
and priv_syscalls-{generic,main}.h.

------------

All the above changes are in m_syscalls. However there is one
system-wide change as a result of all this.

The x86-linux assumption that syscall return values in the range -4095
.. -1 are errors and all others are values, has been done away with
everywhere. Instead there is a new basic type SysRes which holds a
system call result in a platform-neutral way.

Everywhere that previously an Int would have held a system call
result, there is now a SysRes in its place.

------------

Almost everything works on SuSE 9.1 (LinuxThreads) again. NPTL will
still be majorly broken; I will commit fixes shortly. AMD64 is also
totalled. I will get to that too.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3849 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c
eb8896b58301a0a7a34281384d705072994369f0 04-Jun-2005 njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> Modularised file and socket libc stuff in m_libcfile.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3844 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/coregrind/m_libcfile.c