Commit Graph

65 Commits

Author SHA1 Message Date
Ed Schouten
ae824d80f2 Fix warnings found by -Wmising-variable-declarations.
This self-written compiler warning, which is hopefully going to be
committed into LLVM sources soon, warns about potentially missing
`static' keywords, similar to -Wmissing-prototypes.

- bin/pax: Move external declaration of chdname and s_mask into extern.h.
- bin/setfacl: Move setfacl.c-specific stuff out of setfacl.h.
- sbin/mount_fusefs: Remove char *progname; use getprogname().
- others: add `static' where possible.
2012-10-19 05:43:38 +00:00
Dimitry Andric
07b202a847 Define several extra macros in bsd.sys.mk and sys/conf/kern.pre.mk, to
get rid of testing explicitly for clang (using ${CC:T:Mclang}) in
individual Makefiles.

Instead, use the following extra macros, for use with clang:
- NO_WERROR.clang       (disables -Werror)
- NO_WCAST_ALIGN.clang  (disables -Wcast-align)
- NO_WFORMAT.clang	(disables -Wformat and friends)
- CLANG_NO_IAS		(disables integrated assembler)
- CLANG_OPT_SMALL	(adds flags for extra small size optimizations)

As a side effect, this enables setting CC/CXX/CPP in src.conf instead of
make.conf!  For clang, use the following:

CC=clang
CXX=clang++
CPP=clang-cpp

MFC after:	2 weeks
2012-02-28 18:30:18 +00:00
Dimitry Andric
7be5a1fbf4 In lib/libthread_db/arch/i386/libpthread_md.c, clang gives two incorrect
warnings about alignment, so turn -Wcast-align off for now.

MFC after:	1 week
2011-12-16 15:00:56 +00:00
Marius Strobl
ef6f47c4ae Change lwp to int64_t as thr_pread_long() always uses a 64-bit value
in order to account for LP64 targets when cross-debugging on ILP32,
allowing r224683 to compile on ILP32.
Note that thr_p{read,write}_{long,ptr}() still incorrectly use the size
of the respective types on the host rather than that on the target when
accessing the target address space which still needs to be fixed. This
means that r224683 alone may not be sufficient to solve the problem it's
intended to fix when cross-debugging.

Approved by:	re (hrs)
2011-08-07 15:52:13 +00:00
Marius Strobl
70b9a9a9f6 Implement
Reviewed by:	marcel
Approved by:	re (kib)
MFC after:	1 week
2011-08-06 17:50:37 +00:00
Marius Strobl
21a305d4af Use the size of struct fpreg rather than of the pointer to it when copying
the FPU state.

Reviewed by:	marcel
Approved by:	re (kib)
MFC after:	1 week
2011-08-06 17:49:21 +00:00
Marius Strobl
e31fe879a8 The tid member of struct pthread actually is long so read it as such.
Accessing it as an int causes failure on big-endian LP64, i.e. mips64be,
powerpc64 and sparc64.

Reviewed by:	marcel
Approved by:	re (kib)
MFC after:	1 week
2011-08-06 17:48:30 +00:00
Nathan Whitehorn
b12277d1d4 Repair some build breakage introduced in r211725 and garbage collect some
code made obsolete in the same commit.
2010-08-28 15:03:11 +00:00
Warner Losh
25faff346c MFtbemd:
Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you want
to test of all the CPUs of a given family conform.
2010-08-23 22:24:11 +00:00
Nathan Whitehorn
65801ce52d Powerpc64 thread libraries support. 2010-07-10 15:13:49 +00:00
Konstantin Belousov
098d0537f2 Extend the td_thrinfo_t to include siginfo for the signal that stopped
the target. Take care of ABI.

Suggested by:	davidxu
MFC after:	2 weeks
2010-07-04 12:08:04 +00:00
Ed Schouten
daaf575910 Build lib/ with WARNS=6 by default.
Similar to libexec/, do the same with lib/. Make WARNS=6 the norm and
lower it when needed.

I'm setting WARNS?=0 for secure/. It seems secure/ includes the
Makefile.inc provided by lib/. I'm not going to touch that directory.
Most of the code there is contributed anyway.
2010-01-02 09:58:07 +00:00
Dag-Erling Smørgrav
18860a1cdf Revert r181651, which changed the ABI, and use a temp variable instead.
Suggested by:	attilio
2009-06-09 12:32:10 +00:00
Attilio Rao
8655c70597 libc_r_* library is no more required, so just axe it.
Approved by:	marcel, emaste
Sponsored by:	Sandvine Incorporated
2009-03-05 18:27:16 +00:00
Marcel Moolenaar
03fad2ad5f Allow psaddr_t to be widened by using thr_pread_{int,long,ptr},
where critical. Some places still use ps_pread/ps_pwrite directly,
but only need changed when byte-order comes into the picture.
Also, change th_p in td_event_msg_t from a pointer type to
psaddr_t, so that events also work when psaddr_t is widened.
2008-09-14 16:07:21 +00:00
David E. O'Brien
3337af98b4 Add the needed libpthread_md.c for MIPS.
Obtained from:	Juniper Networks
2008-08-28 15:41:12 +00:00
Marcel Moolenaar
fc0053df42 Change the type of ti_traceme from a char to an int as its
address is passed to ps_pread for reading sizeof(int) bytes.
2008-08-13 00:03:35 +00:00
Marcel Moolenaar
f60a5b31c8 Cleanup for WARNS 6. 2008-08-06 03:14:18 +00:00
Marcel Moolenaar
8d4e4b790a Add thr_pread_{int,long,ptr} and thr_pwrite_{int,long,ptr} to
help abstract the sizes and endianness of the primary types of
the target.  These currently use the native characteristics.
2008-07-31 20:25:52 +00:00
Marcel Moolenaar
820c1c554f Cleanup for WARNS 3. 2008-07-31 16:26:58 +00:00
Marcel Moolenaar
2f6a179eb9 Cleanup for WARNS 2. 2008-07-31 05:25:52 +00:00
Marcel Moolenaar
16b0c20c82 Change the type of psaddr_t from void* to uintptr_t. A pointer
type cannot be made wider to allow ILP32 platforms to target
LP64 platforms.
2008-07-30 00:59:19 +00:00
Jeff Roberson
fbb275f59d - Restore kse.h in this directory so other tools don't find it by mistake.
- Restore the ability to debug kse coredumps in 8.0.

Suggested by:	marcel
2008-03-23 09:38:11 +00:00
David Xu
20b94d8035 Use linker set to collection all target operations. 2008-03-22 05:40:44 +00:00
Jeff Roberson
34147e4308 - Remove libkse and related support code in libpthread from the build.
Don't remove the files yet.  Kernel support will be removed shortly.
2008-03-12 09:49:39 +00:00
Olivier Houchard
ebbcec3ad2 Add arm support in libthread_db. 2007-11-17 21:27:53 +00:00
Xin LI
ec5430045b Include string.h for memcpy() and memcmp(). 2007-05-25 13:43:14 +00:00
Daniel Eischen
419ecd5dee Bump library versions in preparation for 7.0.
Ok'd by:	kan
2007-05-21 02:49:08 +00:00
Daniel Eischen
00fb440c1a Enable symbol versioning by default. Use WITHOUT_SYMVER to disable it.
Warning, after symbol versioning is enabled, going back is not easy
(use WITHOUT_SYMVER at your own risk).

Change the default thread library to libthr.

There most likely still needs to be a version bump for at least the
thread libraries.  If necessary, this will happen later.
2007-05-13 14:12:40 +00:00
Marcel Moolenaar
85999a0155 Roughly implement libpthread support. 2007-05-01 18:28:08 +00:00
Daniel Eischen
5f864214bb Use C comments since we now preprocess these files with CPP. 2007-04-29 14:05:22 +00:00
David Xu
210a647b67 remove libc_r remanent. 2006-10-20 14:15:42 +00:00
David Xu
65c4c80772 Remove libc_r support. 2006-10-05 06:26:31 +00:00
Ruslan Ermilov
2d05c776ef Remove alpha-specific stuff. 2006-08-23 12:12:56 +00:00
Marcel Moolenaar
e4e9813eb9 Add stub functions. This allows libthread_db to be built and installed,
which means that we also have <thread_db.h>.
2006-08-04 17:55:55 +00:00
David Xu
ef39743bc3 Fix return value. 2006-05-17 05:14:45 +00:00
David Xu
2ed66c9390 get thread signal info. 2006-05-17 05:12:42 +00:00
Daniel Eischen
029c3cdf55 Add symbol versioning.
Reviewed by:	davidxu
2006-03-29 14:08:45 +00:00
David Xu
4f7b0f0ee7 Use ps_linfo to retrieve LWP info, current it is used to retrieve
signal mask and pending signals.
2006-02-07 02:55:34 +00:00
David Xu
6ff81bf532 Use ps_linfo to retrieve LWP info. 2006-02-07 02:51:25 +00:00
David Xu
4db106a906 Replace ptrace syscall with ps_lgetgregs to check a LWP's existence. 2006-02-07 02:12:33 +00:00
David Xu
83154c48d6 Always clear thread info buffer to zero. 2006-02-06 11:54:19 +00:00
Ken Smith
a84020c2b9 Bump the shared library version number of all libraries that have not
been bumped since RELENG_5.

Reviewed by:	ru
Approved by:	re (not needed for commit check but in principle...)
2005-07-22 17:19:05 +00:00
Doug Rabson
8d7681bb7f Add support for XMM registers in GDB for x86 processors that support
SSE (or its successors).

Reviewed by: marcel, davidxu
MFC After: 2 weeks
2005-05-31 09:43:04 +00:00
Philippe Charnier
d36dd0b78e Remove unused variables. 2005-05-20 13:09:49 +00:00
David Xu
787e88a3ac o Code cleanup, eliminate private thread id map, directly
use lwpid as thread id.
 o Export tls pointer.
2005-04-13 04:57:38 +00:00
David Xu
b9da3fd798 Fill traceme and events fields. 2005-04-12 23:33:08 +00:00
David Xu
a80845eab1 Sync with debugger code in libthr. 2005-04-12 03:03:16 +00:00
David Xu
2ec2da8602 Export thread address. 2005-04-05 11:38:30 +00:00
David Xu
e65421ba6f Update debugger code for new libthr. 2005-04-02 01:36:21 +00:00