135935 Commits

Author SHA1 Message Date
ume
b787f17ecc Merge BIND 9.4.2 into main chunk. 2007-12-03 15:13:44 +00:00
ume
c98e1a2037 This commit was generated by cvs2svn to compensate for changes in r174223,
which included commits to RCS files with non-trunk default branches.
2007-12-03 15:07:58 +00:00
ume
488e5a6dee Vendor import of BIND 9.4.2 2007-12-03 15:07:58 +00:00
rwatson
0c4e2d79d0 When a symbol name can't be resolved, return "??" as the name, rather
than "Unknown func", in order to avoid putting spaces in what ideally
is a string separated by white space.
2007-12-03 14:44:35 +00:00
des
e6b2882442 Since jb@ fixed the type of dd_lock in <dirent.h>, these casts are no
longer required.
2007-12-03 14:33:51 +00:00
ariff
b629c07846 Fix audio playback aborted with SNDCTL_DSP_SETTRIGGER, affecting
PortAudio version 19.

PR:		kern/118395
Submitted by:	Henrik Gulbrandsen <henrik at gulbra dot net>
MFC after:	3 days
2007-12-03 14:26:56 +00:00
kib
4be0c75a36 Do not allow the SNPSTTY ioctl for the snoop device that has a tty
attached. Otherwise, the snp->snp_tty would be overwritten, while the
tty line discipline still set to the snpdisc. Then snplwrite() causes
panic because ttytosnp() cannot find the snp.

MFC after:	1 week
2007-12-03 14:02:27 +00:00
kib
7d7c312284 Restore the branding of the ELF executables. The structure was optimized out.
MFC after:	3 days
2007-12-03 13:21:21 +00:00
rwatson
633b64a51d Catch up pc98 for i386 stack(9) changes:
Add stub stack.h for pc98 that includes i386 pc98.

  Add i386 stack_machdep.c to files.pc98.

Spotted by:	tinderbox
2007-12-03 11:38:28 +00:00
jkoshy
86277bac23 Add callchain parsing to -lpmc.
Sponsored by:	FreeBSD Foundation and Google Inc.
2007-12-03 11:15:46 +00:00
jkoshy
8304a663db Add userland definitions for parsing callchain records.
Sponsored by:	FreeBSD Foundation and Google Inc.
2007-12-03 11:11:08 +00:00
jkoshy
ca4d74c30f Replace a spurious cross-reference to hwpmc(4) with correct text. 2007-12-03 10:59:23 +00:00
kevlo
4c075c0fb6 zic(8) should exit the loop when the end of the string is reached due
to the call to error(). The problem found by doing fuzz testing.

MFC after: 3 days
2007-12-03 10:45:44 +00:00
jkoshy
4244e63960 When printing the contents of a HWPMC log in human readable form:
- Print a warning if the version number recorded in the log is not what the
  tool expects.
- Print a tidier error message when an unrecognized event is encountered
  in the log.
- Don't print a spurious 'Unknown error: 0' when exiting after a parse
  error.
2007-12-03 10:29:49 +00:00
dougb
4a9c2dfe51 This commit was generated by cvs2svn to compensate for changes in r174206,
which included commits to RCS files with non-trunk default branches.
2007-12-03 08:26:34 +00:00
dougb
0f328cea25 Update this file so that BIND on ARM can actually work. I quote:
The problem was, isc_atomic_cmpxchg() is almost like our
	atomic_cmpset_32(), except it expects the old value to be
	returned, whereas our atomic_cmpset_32 returns 1 on success,
	or 0 on failure. So I re-implemented something suitable.

Submitted by:	cognet
Reviewed by:	bsdimp
2007-12-03 08:26:34 +00:00
das
994e05ec27 Tests for rounding, and for the leading 0's bug. 2007-12-03 07:18:47 +00:00
das
3f2a2dba4d In scanf, round according to the current rounding mode. 2007-12-03 07:17:33 +00:00
yongari
bfeab92a37 Always honor promiscuous flag prior to programming Rx multicast
filter. This fixes a regression introduced in rev 1.89.

PR:	114632
MFC after:	3 days
2007-12-03 01:28:08 +00:00
rwatson
b039548864 Connect procstat(1) to the build. 2007-12-02 23:32:03 +00:00
rwatson
88563131a0 Add procstat(1), a process inspection utility. This provides both some
of the missing functionality from procfs(4) and new functionality for
monitoring and debugging specific processes.  procstat(1) operates in
the following modes:

  -b  Display binary information for the process.
  -c  Display command line arguments for the process.
  -f  Display file descriptor information for the process.
  -k  Display the stacks of kernel threads in the process.
  -s  Display security credential information for the process.
  -t  Display thread information for the process.
  -v  Display virtual memory mappings for the process.

Further revision and modes are expected.

Testing, ideas, etc:	cognet, sam, Skip Ford <skip at menantico dot com>
			Wesley Shields <wxs at atarininja dot org>
2007-12-02 23:31:45 +00:00
dougb
2cfd49de5b One more glue update for BIND 9.4.2 2007-12-02 22:21:30 +00:00
rwatson
e891688481 Add another new sysctl in support of the forthcoming procstat(1) to
support its -k argument:

kern.proc.kstack - dump the kernel stack of a process, if debugging
  is permitted.

This sysctl is present if either "options DDB" or "options STACK" is
compiled into the kernel.  Having support for tracing the kernel
stacks of processes from user space makes it much easier to debug
(or understand) specific wmesg's while avoiding the need to enter
DDB in order to determine the path by which a process came to be
blocked on a particular wait channel or lock.
2007-12-02 21:52:18 +00:00
rwatson
47c0478314 Remove duplicate $FreeBSD$ tag. 2007-12-02 21:07:49 +00:00
rwatson
99285f7544 Break out stack(9) from ddb(4):
- Introduce per-architecture stack_machdep.c to hold stack_save(9).
- Introduce per-architecture machine/stack.h to capture any common
  definitions required between db_trace.c and stack_machdep.c.
- Add new kernel option "options STACK"; we will build in stack(9) if it is
  defined, or also if "options DDB" is defined to provide compatibility
  with existing users of stack(9).

Add new stack_save_td(9) function, which allows the capture of a stacktrace
of another thread rather than the current thread, which the existing
stack_save(9) was limited to.  It requires that the thread be neither
swapped out nor running, which is the responsibility of the consumer to
enforce.

Update stack(9) man page.

Build tested:	amd64, arm, i386, ia64, powerpc, sparc64, sun4v
Runtime tested:	amd64 (rwatson), arm (cognet), i386 (rwatson)
2007-12-02 20:40:35 +00:00
scottl
e6e32be1d5 Provide unqiue malloc types instead of using M_DEVBUF. 2007-12-02 19:54:45 +00:00
scottl
8497469369 Refactor completion handlers so that they can be combined into a single
function.  Add missing locking.
2007-12-02 19:50:01 +00:00
dougb
a826585f40 These files are not part of the distribution.
Brought to you by:	PEBCAK
2007-12-02 19:21:31 +00:00
dougb
4632e549b6 This commit was generated by cvs2svn to compensate for changes in r174190,
which included commits to RCS files with non-trunk default branches.
2007-12-02 19:17:26 +00:00
dougb
848cf5c2a5 This file is no longer in BIND 9.4.2 2007-12-02 19:17:26 +00:00
dougb
475b1eb4b2 Update glue for BIND 9.4.2 2007-12-02 19:13:58 +00:00
dougb
a71024a14b Vendor import of BIND 9.4.2 2007-12-02 19:10:41 +00:00
dougb
28c10a1644 This commit was generated by cvs2svn to compensate for changes in r174187,
which included commits to RCS files with non-trunk default branches.
2007-12-02 19:10:41 +00:00
scottl
93b6867794 Make a pass at style.9 compliance 2007-12-02 18:48:17 +00:00
scottl
acca560de6 Fix a typo that was hidden by AMR_DEBUG. 2007-12-02 18:47:31 +00:00
scottl
4ab6a743b6 Fix printf format bugs that where hidden by AMR_DEBUG. 2007-12-02 18:45:37 +00:00
scottl
d277ab6960 The AR_SCSI_PASSTHROUGH conditional no longer exists, remove it from the
makefile.
2007-12-02 18:39:38 +00:00
ariff
27cd3dfe0d Headphone / speakers automute fixup for Acer Aspire 4710 @ ALC268 laptop.
Tested by:	Liyu, She
2007-12-02 16:38:28 +00:00
cognet
9e1fb6a88b Fix a potential bug in pmap :
We used to allocate the domains 0-14 for userland, and leave the domain 15
for the kernel. Now supersections requires the use of domain 0, so we
switched the kernel domain to 0, and use 1-15 for userland.
How it's done currently, the kernel domain could be allocated for a
userland process.
So switch back to the previous way we did things, set the first available
domain to 0, and just add 1 to get the real domain number in the struct pmap.

Reported by:	Mark Tinguely <tinguely AT casselton DOT net>
MFC After:	3 days
2007-12-02 15:26:30 +00:00
cognet
375dcebc07 Move the strongarm-specific files from conf/files.arm to sa11x0/files.sa11xO.
Submitted by:	Rafal Jaworowski <raj AT semihalf DOT com>
2007-12-02 13:12:21 +00:00
cognet
507e28d936 Cleanup : make nexus standard, as it is mandatory anyway.
Garbage-collect unused nexus_io.c and nexus_io_asm.S

Submitted by:	Rafal Jaworowski <raj AT semihalf DOT com>
2007-12-02 13:10:42 +00:00
guido
e371eead9f Consider the following situation:
1. A packet comes in that is to be forwarded
2. The destination of the packet is rewritten by some firewall code
3. The next link's MTU is too small
4. The packet has the DF bit set

Then the current code is such that instead of setting the next
link's MTU in the ICMP error, ip_next_mtu() is called and a guess
is sent as to which MTU is supposed to be tried next. This is because
in this case ip_forward() is called with srcrt set to 1. In that
case the ia pointer remains NULL but it is needed to get the MTU
of the interface the packet is to be sent out from.
Thus, we always set ia to the outgoing interface.

MFC after:	2 weeks
2007-12-02 13:00:47 +00:00
cognet
db18da5d15 Close a race.
The RAS implementation would set the end address, then the start
address.  These were used by the kernel to restart a RAS sequence if
it was interrupted.  When the thread switching code ran, it would
check these values and adjust the PC and clear them if it did.

However, there's a small flaw in this scheme.  Thread T1, sets the end
address and gets preempted.  Thread T2 runs and also does a RAS
operation.  This resets end to zero.  Thread T1 now runs again and
sets start and then begins the RAS sequence, but is preempted before
the RAS sequence executes its last instruction.  The kernel code that
would ordinarily restart the RAS sequence doesn't because the PC isn't
between start and 0, so the PC isn't set to the start of the sequence.
So when T1 is resumed again, it is at the wrong location for RAS to
produce the correct results.  This causes the wrong results for the
atomic sequence.

The window for the first race is 3 instructions.  The window for the
second race is 5-10 instructions depending on the atomic operation.
This makes this failure fairly rare and hard to reproduce.

Mutexs are implemented in libthr using atomic operations.  When the
above race would occur, a lock could get stuck locked, causing many
downstream problems, as you might expect.

Also, make sure to reset the start and end address when doing a syscall, or
a malicious process could set them before doing a syscall.

Reviewed by: imp, ups (thanks guys)
Pointy hat to:	cognet
MFC After:	3 days
2007-12-02 12:49:28 +00:00
rwatson
c25458da37 Add two new sysctls in support of the forthcoming procstat(1) to support
its -f and -v arguments:

kern.proc.filedesc - dump file descriptor information for a process, if
  debugging is permitted, including socket addresses, open flags, file
  offsets, file paths, etc.

kern.proc.vmmap - dump virtual memory mapping information for a process,
  if debugging is permitted, including layout and information on
  underlying objects, such as the type of object and path.

These provide a superset of the information historically available
through the now-deprecated procfs(4), and are intended to be exported
in an ABI-robust form.
2007-12-02 10:10:27 +00:00
thompsa
663523e681 Hide a debug printf, NDIS_DEBUG is always defined and we test the sysctl.
MFC after:	3 days
2007-12-02 09:03:43 +00:00
thompsa
200d23553e Correct the calculation for the number of 100ns intervals since
January 1, 1601. The 1601 - 1970 period was in seconds rather than 100ns
units.

Remove duplication by having NdisGetCurrentSystemTime call ntoskrnl_time.
2007-12-02 08:54:50 +00:00
alc
cf47268b02 Correct a comment. 2007-12-02 07:43:42 +00:00
thompsa
3f699c4d4e Correct the nwbx_ies field type in struct ndis_wlan_bssid_ex.
PR:		kern/118369
Submitted by:	Weongyo Jeong
2007-12-02 04:04:42 +00:00
alc
ed1f1ac93c Eliminate vfs_page_set_valid()'s unused argument. 2007-12-02 01:28:35 +00:00
jb
fb73d97ef1 Add extra visibility definitions.
See: <http://groups.google.com/group/generic-abi/browse_thread/thread/1a84adc15666164>

These are already in OpenSolaris and DTrace uses STV_ELIMINATE.
2007-12-02 00:05:18 +00:00