Commit Graph

214 Commits

Author SHA1 Message Date
Julian Seward
6a00071217 ppc32-linux: enable __NR_statfs
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5594
2006-01-26 14:25:51 +00:00
Julian Seward
da90c31368 Enable message-queue syscalls.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5589
2006-01-23 04:34:22 +00:00
Julian Seward
c53cdd12af Handle __NR_madvise.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5577
2006-01-20 21:46:03 +00:00
Julian Seward
94e2a571bc More syscalls.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5551
2006-01-19 03:36:13 +00:00
Julian Seward
e9d09cb891 Allow more syscalls.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5544
2006-01-18 04:15:42 +00:00
Julian Seward
69cd1990e5 Even more ppc64-linux syscalls.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5503
2006-01-05 14:13:14 +00:00
Julian Seward
c70190e6da More syscalls ...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5498
2006-01-04 15:40:16 +00:00
Cerion Armour-Brown
9e96cc2540 Tidy up some ppc64 assembly & comments a little.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5490
2006-01-03 14:28:02 +00:00
Julian Seward
cf20ba8f52 Signal-related syscall support.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5485
2006-01-03 04:10:13 +00:00
Julian Seward
d452d6b62d casting paranoia (harmless)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5484
2006-01-03 04:09:27 +00:00
Julian Seward
e76e55b1f1 Enable various syscalls.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5477
2006-01-02 19:06:37 +00:00
Julian Seward
c3ab4db931 Oops, fix interrupted-syscall snafu.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5476
2006-01-02 19:06:08 +00:00
Julian Seward
a5f29945c9 Fun n games making sys_clone() work.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5474
2006-01-02 16:25:31 +00:00
Julian Seward
bcb975cf44 A couple more ppc64-linux syscalls.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5463
2005-12-30 22:49:24 +00:00
Julian Seward
d5f6f1b38a More ppc64-linux syscalls.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5461
2005-12-30 15:02:49 +00:00
Julian Seward
9ce31fccaf Check that the two sigprocmasks haven't failed.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5444
2005-12-27 01:44:33 +00:00
Julian Seward
852ae71da8 Use rt_sigprocmask, and check for errors correctly. (Not yet done: amd64-linux).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5414
2005-12-22 23:13:27 +00:00
Julian Seward
c5afdabb3a Add enough syscalls to run bzip2 on ppc64-linux.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5412
2005-12-22 20:24:12 +00:00
Julian Seward
67b31745a5 Properly return error codes resulting from sigprocmask failures.
Not yet done: amd64, ppc32.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5411
2005-12-22 20:16:00 +00:00
Julian Seward
70556adb45 Comment-only changes
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5410
2005-12-22 20:14:57 +00:00
Julian Seward
e28aaa1d45 Make async-style syscalls work on ppc64, by using rt_sigprocmask
instead of sigprocmask.

In the process, discover that error handling for
ML_(do_syscall_for_client_WRK) on all platforms has always been
broken, in the sense that the sigprocmasks (which are important) could
silently fail.  This commit fixes that up too (only on ppc64-linux at
the moment, so all other platforms are probably broken now).



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5407
2005-12-22 19:28:37 +00:00
Julian Seward
67cd3dc9e6 More ppc64-linux syscalls.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5406
2005-12-22 19:25:51 +00:00
Cerion Armour-Brown
4d4bc5d1f6 fixed up ppc64 assembly with .opd sections
do_syscall_for_client_WRK() needed a bigger stack to avoid the linkage area.

always use dot_prefix for label calls

not wrapping assembly with
.section ".text"
...
.previous
 - ppc64 doesn't like it... seems we can't 'stack' more than one section to pop off with .previous ?





git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5405
2005-12-22 15:53:12 +00:00
Julian Seward
d953cd832c Make a start adding syscalls.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5400
2005-12-22 03:35:12 +00:00
Cerion Armour-Brown
b714685c63 Take ppc64 startup further along the road
- fixed launcher.c to recognise ppc32/64-linux platforms properly
 - lots of assembly fixes to handle func descriptors, toc references, 64bit regs.
 - fixed var types in vki-ppc64-linux

Now gets as far as VG_(translate), but dies from a case of invalid orig_addr.




git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5299
2005-12-06 19:07:08 +00:00
Dirk Mueller
d8c7166c26 more syscalls for PPC32
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5289
2005-12-05 22:11:02 +00:00
Julian Seward
7ef795beca ppc32-linux: enable sys_{set,get}priority.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5270
2005-12-02 16:45:28 +00:00
Tom Hughes
d7ecda24bb Enable getpriority and setpriority on amd64. Fixes bug #117369.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5256
2005-12-01 09:21:37 +00:00
Julian Seward
8ba9a34088 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
2005-11-29 13:05:56 +00:00
Julian Seward
c7b988eab6 Fix bug observed by Neal Norwitz in which mremap fails for file mappings.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5229
2005-11-23 03:41:41 +00:00
Tom Hughes
85bd6d7d0b Enable a few extra system calls on amd64 as found by the Python test suite.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5227
2005-11-21 13:57:49 +00:00
Julian Seward
19e8e951e5 Counterpart to r5202: restore previous assembler state with .previous
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5204
2005-11-19 02:02:57 +00:00
Julian Seward
418aae5c97 Hmm. Perhaps all those top-level pieces of assembly weren't such a
clever idea.  There's no reason to assume the assembler is in
.text-mode when it encounters them, and as gcc 2.96 rudely
demonstrates, sometimes it isn't.  So put .text in front of all of
them.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5202
2005-11-18 23:50:43 +00:00
Julian Seward
f5b115b77a Enable mq syscalls (untested).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5172
2005-11-17 19:09:02 +00:00
Julian Seward
7039eaa9ac sys_tgkill: hand the syscall to the kernel in the standard way, rather
than doing it inline.  Doing it inline screws up on ppc32-linux if
we're sending an async signal to ourselves (the same thread) because
the kernel immediately hands the signal to async_sighandler() which
then dies at the assertion that this thread's state is VgTs_WaitSys.
From which I conclude this wrapper has always had a race against the
kernel which did not show up on x86 or amd64.  (and/or that I don't
understand this stuff too well)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5169
2005-11-17 14:26:52 +00:00
Julian Seward
8a8c980ba0 Connect properly to the tgkill wrapper.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5168
2005-11-17 14:22:22 +00:00
Tom Hughes
91b44ff30e Use VG_(ntohl) and VG_(ntohs) to decode IP addresses and ports. Note
that this also required reversing the order of the arguments to the
print call as the previous ordering assumed that the address was still
byte swapped.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5163
2005-11-17 12:02:58 +00:00
Julian Seward
c01a097e5b Kludgey endianness fix (for printing only) to stop fdleak_ipv4 failing on
ppc32.  I'm sure there's a Right Way to fix it, and this isn't it.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5161
2005-11-17 11:45:28 +00:00
Julian Seward
2e084e8121 Enable sys_lstat on ppc32.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5160
2005-11-17 11:01:55 +00:00
Julian Seward
4e648a2346 Fix up ppc32-linux handlers for sys_sigreturn and sys_rt_sigreturn. I really
have no idea how these work (what's there is a conceptual transcription of
what we have for x86-linux) and so if those of you more Skilled In The Art 
Of Signals than myself would care to peer at it, that would be appreciated.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5153
2005-11-16 19:15:33 +00:00
Julian Seward
6203fe7cdc Enable sys_rt_sigsuspend. This is needed by LinuxThreads.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5144
2005-11-16 12:51:34 +00:00
Tom Hughes
39e6ec034f Handle some ALSA ioctls that don't have size or direction hints.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5131
2005-11-14 17:03:54 +00:00
Tom Hughes
0cfea5db07 Enable the prctl system call on amd64.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5127
2005-11-14 15:26:03 +00:00
Julian Seward
408f56dbf4 Enable a couple more syscalls.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5112
2005-11-13 02:41:58 +00:00
Tom Hughes
66af8e3222 Enable remaining *xattr system calls on amd64. Fixes bug #116200.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5106
2005-11-13 00:08:03 +00:00
Nicholas Nethercote
9d374f4530 Rename --simulation-hints as --sim-hints for brevity.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5099
2005-11-12 18:21:40 +00:00
Tom Hughes
0d25c745d7 Fix compiler warning.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5084
2005-11-11 12:32:10 +00:00
Tom Hughes
d1c6c1b8d2 Fix compiler warnings.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5081
2005-11-11 11:54:11 +00:00
Julian Seward
202f4dadd7 m_libcsignal is needed here.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5068
2005-11-10 13:15:31 +00:00
Tom Hughes
43eeeace22 Remove redundant conditional - ppc32-linux is already handled.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5067
2005-11-10 12:54:37 +00:00