summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* - Create the buildworld object directories with mtree instead of variousgabor2009-03-152-32/+8
| | | | | | mkdir calls - Remove the ugly workaroung from libc NLS, which was to create some of these directories
* Correct a number of evolved problems with inp_vflag and inp_flags:rwatson2009-03-1510-110/+108
| | | | | | | | | | | | | | | | | | | | | certain flags that should have been in inp_flags ended up in inp_vflag, meaning that they were inconsistently locked, and in one case, interpreted. Move the following flags from inp_vflag to gaps in the inp_flags space (and clean up the inp_flags constants to make gaps more obvious to future takers): INP_TIMEWAIT INP_SOCKREF INP_ONESBCAST INP_DROPPED Some aspects of this change have no effect on kernel ABI at all, as these are UDP/TCP/IP-internal uses; however, netstat and sockstat detect INP_TIMEWAIT when listing TCP sockets, so any MFC will need to take this into account. MFC after: 1 week (or after dependencies are MFC'd) Reviewed by: bz
* - Wrap lock profiling state variables in #ifdef LOCK_PROFILING blocks.jeff2009-03-154-14/+34
|
* - Implement a new mechanism for resetting lock profiling. We nowjeff2009-03-153-25/+111
| | | | | | | | | | | | | | | | | guarantee that all cpus have acknowledged the cleared enable int by scheduling the resetting thread on each cpu in succession. Since all lock profiling happens within a critical section this guarantees that all cpus have left lock profiling before we clear the datastructures. - Assert that the per-thread queue of locks lock profiling is aware of is clear on thread exit. There were several cases where this was not true that slows lock profiling and leaks information. - Remove all objects from all lists before clearing any per-cpu information in reset. Lock profiling objects can migrate between per-cpu caches and previously these migrated objects could be zero'd before they'd been removed Discussed with: attilio Sponsored by: Nokia
* Don't adjust ranges at all for subtractive bridges. The simple-mindedimp2009-03-151-0/+4
| | | | stuff we're doing is too simple-minded, so back it out for now.
* Generalize the workaround for the Hitachi HT-4840-11. The Contecimp2009-03-151-6/+7
| | | | | | | | | C-NET(PC) has a cfe at location 1 that has both an odd irq mask (it matches pc98 machines, so maybe it was a flag for pc98 operation) as well as a memory map. Since this driver doesn't know how to cope, we start with cfe2, which is purely an I/O space mapped and that seems to make it work. I say 'seems' here, because the card I have doesn't seem to have the right dongle for full testing...
* no need to for gnu89 any moresam2009-03-151-2/+0
|
* remove gcc-ism; tsinfo isn't used anywaysam2009-03-151-1/+1
|
* Opps.. I missed a file on the commit :-)rrs2009-03-141-1/+2
|
* Fix build breakage due to the interplay between r189801 and r189824.das2009-03-142-0/+3
| | | | | | | In particular, vendor sources that aren't ready for gnu99 should still be compiled with gnu89. (Before r189824, these would have generated warnings if you tried to compile them in gnu99 mode, but the warnings went unheeded due to -Wno-error.)
* Oops. Correct comment in the LICENSE file.pjd2009-03-141-1/+1
|
* Regression tests for mac_portacl(4).pjd2009-03-144-0/+242
|
* - Correct logic in if statement - we want to allocate temporary bufferpjd2009-03-141-1/+3
| | | | | | | | | | when someone is passing new rules, not when he only want to read them. Because of this bug, even if the given rules were incorrect, they ended up in rule_string. - Add missing protection for rule_string when coping it. Reviewed by: rwatson MFC after: 1 week
* Namespace: Defining htonl() and friends here instead of arpa/inet.h isdas2009-03-141-2/+2
| | | | a BSD extension.
* Fix the visibility of several prototypes. Also move pthread_kill() anddas2009-03-143-3/+19
| | | | | | | | | | pthread_sigmask() to signal.h. In principle, this shouldn't break anything, since they're already in signal.h on other systems, and the FreeBSD manpage says that both pthread.h and signal.h need to be included to get these functions. Add a hack to declare pthread_t in the P1003.1-2008 namespace in signal.h.
* Hide dbopen() in the POSIX namespace, and use standard type namesdas2009-03-141-33/+35
| | | | throughout so that this compiles in strict POSIX mode.
* Hide numerous BSD extensions in the POSIX namespace.das2009-03-141-24/+30
|
* Bump __FreeBSD_version to 800071 for gcc patch to add support for C99das2009-03-141-1/+1
| | | | inline functions in c99 and gnu99 mode.
* Make gcc use C99 inline semantics in c99 and gnu99 mode. This was thedas2009-03-146-139/+212
| | | | | | | | | | | | | | | | | | | | | original intent, but the functionality wasn't implemented until after gcc 4.2 was released. However, if you compiled a program that would behave differently before and after this change, gcc 4.2 would have warned you; hence, everything currently in the base system is unaffected by this change. This patch also adds additional warnings about certain inline function-related bogosity, e.g., using a static non-const local variable in an inline function. These changes were merged from a snapshot of gcc mainline from March 2007, prior to the GPLv3 switch. I then ran the regression test suite from a more recent gcc snapshot and fixed the important bugs it found. I also squelched the following warning unless -pedantic is specified: foo is static but used in inline function bar which is not static This is consistent with LLVM's behavior, but not consistent with gcc 4.3. Reviewed by: arch@
* Namespace: aio_waitcomplete() is a BSD extension.das2009-03-141-1/+4
| | | | Also, don't pollute the namespace by including <sys/time.h>.
* Namespace: adjtime(), futimes(), futimesat(), lutimes(), and settimeofday()das2009-03-141-5/+13
| | | | | | | are BSD extensions. Also include <sys/select.h> in user code, since this header is also supposed to define most of the symbols there.
* Namespace: abort2() is a BSD extension.das2009-03-141-1/+1
|
* Namespace: endpwent, getpwent, and setpwent are XSI extensions.das2009-03-141-1/+4
|
* Namespace: dprintf() and getline() are in P1003.1-2008.das2009-03-141-2/+2
|
* Various namespace cleanups, including exposing fchmod() and fchmodat()das2009-03-142-5/+11
| | | | | | | in the POSIX namespace, and hiding eaccess() and setproctitle(). Also move mknodat() from unistd.h to sys/stat.h where it belongs. The *at() syscalls are only in CURRENT, so this shouldn't cause problems.
* Namespace: preadv() and pwritev() are extensions.das2009-03-141-0/+2
|
* Namespace: vsyslog() is a BSD extension.das2009-03-141-0/+2
|
* Namespace: semsys() and shmsys() aren't standard.das2009-03-142-0/+4
|
* Use namespace visibility macros instead of checking for _POSIX_SOURCE.das2009-03-141-2/+2
|
* Namespace: setgrent() is an XSI extension.das2009-03-141-1/+3
|
* Don't prototype _tolower() and _toupper(). They're not supposed to bedas2009-03-141-2/+0
| | | | functions, and there's no implementation of them in any case.
* Namespace: memccpy() and memchr() are XSI, and memrchr() is a BSD extension.das2009-03-141-1/+3
|
* Namespace: dbm_forder() and dbm_dirfno() are BSD extensions.das2009-03-141-0/+4
|
* Namespace: _setjmp() and _longjmp() are XSI extensions.das2009-03-141-1/+1
|
* Namespace: inet_ntoa_r() is a BSD extension.das2009-03-141-1/+1
|
* Namespace: scalb() is withdrawn from POSIX.das2009-03-141-1/+4
|
* Multibyte character support for cal(1).das2009-03-142-38/+52
| | | | PR: 131578
* Eliminate __real__ and __imag__ gccisms.das2009-03-144-15/+42
|
* Switch over to gnu99 compilation on default for userland.rdivacky2009-03-146-15/+19
| | | | | | | | Tested by: make universe Tested by: ports exp build (done by pav) Reviewed by: ru Reviewed by: silence on arch Approved by: ed (mentor)
* remove stray ;sam2009-03-141-1/+1
|
* Rework MAC Framework synchronization in a number of ways in order torwatson2009-03-1420-327/+410
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | improve performance: - Eliminate custom reference count and condition variable to monitor threads entering the framework, as this had both significant overhead and behaved badly in the face of contention. - Replace reference count with two locks: an rwlock and an sx lock, which will be read-acquired by threads entering the framework depending on whether a give policy entry point is permitted to sleep or not. - Replace previous mutex locking of the reference count for exclusive access with write acquiring of both the policy list sx and rw locks, which occurs only when policies are attached or detached. - Do a lockless read of the dynamic policy list head before acquiring any locks in order to reduce overhead when no dynamic policies are loaded; this a race we can afford to lose. - For every policy entry point invocation, decide whether sleeping is permitted, and if not, use a _NOSLEEP() variant of the composition macros, which will use the rwlock instead of the sxlock. In some cases, we decide which to use based on allocation flags passed to the MAC Framework entry point. As with the move to rwlocks/rmlocks in pfil, this may trigger witness warnings, but these should (generally) be false positives as all acquisition of the locks is for read with two very narrow exceptions for policy load/unload, and those code blocks should never acquire other locks. Sponsored by: Google, Inc. Obtained from: TrustedBSD Project Discussed with: csjp (idea, not specific patch)
* MFamd64 r189785alc2009-03-141-0/+2
| | | | | | | Update the pmap's resident page count when a page table page is freed in pmap_remove_pde() and pmap_remove_pages(). MFC after: 6 weeks
* Two fixes:imp2009-03-142-18/+14
| | | | | | | | | | | | | | (1) Fix pcib_read/write_config prototypes. (2) When contrainting a resource request for a 'subtractive' bridge, it is important to select a range outside the base/limit registers, since those are the only values known to not possibly work. On my HP laptop, the base bridge excludes I/O ports 0xa000-0xafff, however that was the range we were passing up the tree. Instead, when a range spans the "hole" we now arbitrarily pick the range just above the hole to allocate from. All of my rl and xl cards, at a minimum, started working again on this laptop with those fixes.
* Fixes several PR-SCTP releated bugs.rrs2009-03-148-143/+361
| | | | | | | | - When sending large PR-SCTP messages over a lossy link we would incorrectly calculate the fwd-tsn - When receiving large multipart pr-sctp packets we would incorrectly send back a SACK that would renege improperly on already received packets thus causing unneeded retransmissions.
* - When a mutex is destroyed while locked we need to inform lock profilingjeff2009-03-141-0/+1
| | | | that it has been released.
* - Call lock_profile_release when we're transitioning a lock to be owned byjeff2009-03-141-1/+3
| | | | | | LK_KERNPROC. Discussed with: attilio
* - Fix an error that occurs when mp_ncpu is an odd number. steal_threshjeff2009-03-141-4/+9
| | | | | | | | | | | | | | is calculated as 0 which causes errors elsewhere. Submitted by: KOIE Hidetaka <koie@suri.co.jp> - When sched_affinity() is called with a thread that is not curthread we need to handle the ON_RUNQ() case by adding the thread to the correct run queue. Submitted by: Justin Teller <justin.teller@gmail.com> MFC after: 1 Week
* Update the pmap's resident page count when a page table page is freed inalc2009-03-141-0/+2
| | | | | | pmap_remove_pde() and pmap_remove_pages(). MFC after: 6 weeks
* Correct accounting errors in _pmap_allocpte(). Specifically, the pmap'salc2009-03-141-5/+9
| | | | | | | resident page count and the global wired page count were not correctly maintained when page table page allocation failed. MFC after: 6 weeks
* r189349 removed mktemp() from the XSI namespace whendas2009-03-141-1/+1
| | | | | | | __XOPEN_SOURCE >= 700, since mktemp() was withdrawn from the standard. However, __XSI_VISIBLE is set to 700 in the default BSD envrionment, where mktemp() should still exist; hence, check for this.
OpenPOWER on IntegriCloud