Commit Graph

224497 Commits

Author SHA1 Message Date
christos
3c501c2028 remove unneeded code, and kill parens from return 2014-02-10 16:30:54 +00:00
christos
72d54c1762 PR/48585: Henning Petersen: Always set errno when returning NULL. 2014-02-10 16:29:30 +00:00
hannken
8653615804 Change layerfs_vget(), layerfs_fhtovp() and the various layer xxx_mount()
functions to unlock/relock the node for the call to layer_node_create().

Finally remove dirty hacks (LK_NOWAIT, kpause) from layer_node_find().
2014-02-10 11:23:14 +00:00
apb
5c6a475640 Move the "-U or -E must be set for build as an unprivileged user."
test from sanitycheck() to validatemakeparams().  If MKUNPRIVED is set
in mk.conf (and not on the build.sh command line) then it's not yet
available for use in the sanitycheck function.

Also move some other code for consistency.
2014-02-10 08:20:05 +00:00
pedro
6ef01c7afe add myself 2014-02-10 06:36:53 +00:00
chs
49d6a7c368 in update_db(), extract the full list of files to update from the db
before actually updating anything, since changing the db while the query
that extracts the list of files is still in progress results in
the extraction query failing before it finds everything.
2014-02-10 00:23:36 +00:00
dsl
a83194ed78 Steal the table from i386/isa/npx.c than selects the highest priority
floating point error when raising a signal.
Multiple errors bits can easily be set if different sub-fields of an
xmm simd operation generate different errors.
2014-02-09 23:02:25 +00:00
dsl
01540ebaad Tidy up and correct some comments.
Replace the hand generated 28 lines that initialised fpetable[]
  with some pre-processor expressions.
The latter was verified to give the same table entries.
2014-02-09 22:47:04 +00:00
dsl
75e68238c2 Simplify fputrap() considerably.
There is no need to save the fpu state here, and definitely no need
  to initialise the fpu.
The code is running with interrupts disabled having trapped on either
  an x87 instruction (the one after the one that generated the error)
  or on an SSE (etc) instruction that caused the error.
So all it needs to do it obtain the 'error' bits from the relevant
  status register, clear the bits, and then raise any signal.
The signal code will save the fp state if the signal itself isn't masked.
It also passes the FP state to the signal handler - which can modify it.
(I suspect that wasn't thecase when this code was written.)
Seems to work for both 64bit and 32bit 'divide by zero' errors.
For the xmm trap, the xmm registers are updated for the result of the
  instruction, but the trap returns to re-execute the instruction!
This makes it difficult for the signal handler to do anything sensible.

I've also changed the code to only use unmasked error bits when deciding
the signal code.
2014-02-09 22:19:02 +00:00
jmmv
e110dcc954 Use compiler builtins instead of atf_arch and atf_machine.
The atf_arch and atf_machine configuration variables were removed from
atf-0.19 without me realizing that some tests were querying them directly.

Instead of reintroducing those variables, just rely on compiler builtins
as many other tests already do.

Should fix PR bin/48582.
2014-02-09 21:26:07 +00:00
dsl
0f9c83d312 Best if x86_stmxcsr executes stmxcsr. 2014-02-09 19:42:04 +00:00
hannken
c95ccd223d Adjust comment and change vput() to vrele(). This change got missed
when changing vnode creation operations to return unlocked result.
2014-02-09 17:18:38 +00:00
hannken
ad55c847dd When layer_node_alloc() finds another thread already inserted the node
into the hashlist and discards the now unneeded node it will raise a
panic "dead but not clean".

Reorder the initialization and use ungetnewvnode() to discard the node.
2014-02-09 17:15:51 +00:00
dsl
2736f96cdb Add x86_stmxcsr for amd64. 2014-02-09 17:07:41 +00:00
chs
e5a75de98e account for the 16 bytes of AT_RANDOM data in the stack setup. fixes PR 48518.
use cprng_strong32() instead of random().  add AT_RANDOM support for linux32.
2014-02-09 16:41:42 +00:00
maxv
52673c8d59 Reorder code to avoid using an uninitialized variable: if
sysctl_copyin fails, 'tmp' is not initialized. This bug is
harmless since only the return value will be different;
it does not expose kernel memory unless diagnostic is enabled.

ok agc@ martin@
2014-02-09 14:51:13 +00:00
dsl
43beae7c02 Add compatibility for some userspace code (eg firefox) that seems to look
inside the ucontext structure passed to signal handlers to modify the
  xmm registers.
This should make the code compile - I'm not at all sure it works as expected,
  the interactions between FP and signal handlers aren't at all clear.
AFAICT the FP state is saved on the user stack when the handler is called,
  however the FP trap code can already done odd things to the FPU....
2014-02-09 14:44:42 +00:00
jmmv
fd82d5173d Update for atf 0.19. 2014-02-09 14:02:39 +00:00
maxv
897b0b47db Fix error message; argv[1] could be NULL 2014-02-09 13:40:59 +00:00
njoly
9d9871abbe Revert previous revision. It bkeaks profiling kernel builds.
LIBISPRIVATE unconditionnally set MKPROFILE to no, preventing
profiling kernel library.
2014-02-09 12:53:30 +00:00
mrg
7db440fedd - bump man page date
- strip :80 off virtual host names as they're the default
2014-02-09 12:32:32 +00:00
njoly
3541adf977 Remove a few noisy debug printf. 2014-02-09 12:27:37 +00:00
mrg
ca768e99f0 some fixes for virtual hosting support from Rajeev V. Pillai:
- memory leaks in virtual host plugged
- ensure hr_host is only the host/port part when the request
  contains the hostname in the URI not Host: header.


also update the references to the old http/1.1 draft rev 06
to RFC 2616 (fortunately, most sections hadn't moved.)
2014-02-09 01:46:10 +00:00
dsl
36d637262e Add bit defs for more of the x87 status register. 2014-02-08 22:36:50 +00:00
jmmv
dc7b86517b Adjust directories for atf 0.19 import. 2014-02-08 19:45:51 +00:00
jmmv
614f5b07c5 Note import of atf 0.19. 2014-02-08 19:18:39 +00:00
jmmv
c973eabc21 Update file lists for atf 0.19.
This has been tested with both MKKYUA=no (the default) and MKKYUA=yes, as
well as with a non-clean tree and a clean build.  Hopefully I got the
details right... but they were tricky!
2014-02-08 19:17:42 +00:00
jmmv
152d2ecbea Adjust reachover Makefiles for atf-0.19.
The main change here is that the atf-config, atf-report, atf-run and
atf-version tools no longer depend on libatf-c nor libatf-c++.  Instead,
they depend on an internal libtools.a that contains code specifically
for these tools and nothing else, making them self-contained.
2014-02-08 19:15:33 +00:00
jmmv
97bff2045d Merge atf-0.19. 2014-02-08 19:13:43 +00:00
jmmv
d780102efe Import atf 0.19:
Changes in version 0.19
***********************

Experimental version released on February 7th, 2014.

This is the last release to bundle the code for the deprecated tools.
The next release will drop their code and will stop worrying about
backwards compatibility between the ATF libraries and what the old tools
may or may not support.

If you still require the old tools for some reason, grab a copy of the
'tools' directory now.  The code in this directory is standalone and
does not depend on any internal details of atf-c++ any longer.

* Various fixes and improvements to support running as part of the FreeBSD
  test suite.

* Project hosting moved from Google Code (as a subproject of Kyua) to
  GitHub (as a first-class project).  The main reason for the change is
  the suppression of binary downloads in Google Code on Jan 15th, 2014.
  See https://github.com/jmmv/atf/

* Removed builtin help from atf-sh(1) and atf-check(1) for simplicity
  reasons.  In other words, their -h option is gone.

* Moved the code of the deprecated tools into a 'tools' directory and
  completely decoupled their code from the internals of atf-c++.  The
  reason for this is to painlessly allow a third-party to maintain a
  copy of these tools after we delete them because upcoming changes to
  atf-c++ would break the stale tools.


Changes in version 0.18
***********************

Experimental version released on November 16th, 2013.

* Issue 45: Added require.memory support in atf-run for FreeBSD.

* Fixed an issue with the handling of cin with libc++.

* Issue 64: Fixed various mandoc formatting warnings.

* NetBSD PR bin/48284: Made atf-check flush its progress message to
  stdout so that an interrupted test case always shows the last message
  being executed.

* NetBSD PR bin/48285: Fixed atf_check examples in atf-sh-api(3).
2014-02-08 19:11:29 +00:00
jmmv
01fb61d6eb Adjust for import of atf 0.19.
- Delete some unnecessary files.
- Print out both the list of deleted files and added files in the import.
  Useful when adjusting file lists and the reachover Makefiles.
2014-02-08 19:06:05 +00:00
maxv
472e7df239 add myself 2014-02-08 15:50:29 +00:00
rmind
c5b92e4a87 Sync some NPF config examples with the reality. 2014-02-08 01:32:19 +00:00
rmind
8b83480d27 NPF:
- Adjust the syntax - remove "inet" keyword in favour of more explicit
  "inet4" for the address family.  Consistent with "inet6" for IPv6.
- Adjust and improve the man page a little bit.
2014-02-08 01:20:09 +00:00
rmind
8274d601f9 NPF: add support for static (stateless) NAT. 2014-02-07 23:45:22 +00:00
dsl
f2491100df Add cpu_extended_state.h 2014-02-07 23:18:04 +00:00
dsl
519a61193d Convert the amd64 build to use x86/cpu_extended_state.h so that the fpu
definitions match those of i386.
Mostly just structure and field renames, in addition:
1) process_xmm_to_s87() and process_s87_to_xmm() moved into
   x86/convert_xmm_s87.c so they can be used by amd64's netbsd32 code.
2) The linux signal code simplified to use a structure copy for ths fxsave
   data - it matches the hardware definition and won't change.
2014-02-07 22:40:22 +00:00
dsl
a3bf2d1fce Userspace (especially libkvm) build better is cpu_extended_state.h
is exported.
2014-02-07 21:52:46 +00:00
wiz
557040bb7e gdb-7.7 out. 2014-02-07 21:37:28 +00:00
christos
10b0462e36 don't lie about function signatures. 2014-02-07 20:20:56 +00:00
dsl
27a8f3e1e9 Move all the hardware register layout for the x86 cpus into a header
that can also be used by amd64.
Add in skeleton definitions for XSAVE and AVX.
Update some comments to match reality.
2014-02-07 19:36:15 +00:00
dsl
7cd0ae66b2 Remove the splurious check for EN_SW_DATACHAIN when looking at mxcsr traps.
The relevant bit is always masked out higher up.
The only place I can find a reference to a 'datachain' error is for the
  weitek 1167 fpu. Even the 8087 has the corresponding bit of the x87
  status reserved.
Quite why it has appeared here is anybodies guess.
2014-02-07 19:32:50 +00:00
pooka
9f33b0ead1 Use Var_Value() instead of getenv() to obtain MAKEOBJDIR{,PREFIX}.
Fixes "make -X MAKEOBJDIR=foo".  Purely uncoincidentally, build.sh
creates the nbmake wrapper with MAKEFLAGS -X on FreeBSD.
2014-02-07 17:23:35 +00:00
wiz
0ccfefc58a Mark up author name with An. 2014-02-07 16:57:05 +00:00
msaitoh
1f7f7f0d8b Check _BYTE_ORDER. 2014-02-07 15:49:40 +00:00
hannken
97834f7ba0 Change vnode operation lookup to return the resulting vnode *vpp unlocked.
Change cache_lookup() to return an unlocked vnode.

Discussed on tech-kern@

Welcome to 6.99.31
2014-02-07 15:29:20 +00:00
hannken
f106eaceb6 Change vnode operation lookup to return the resulting vnode *vpp unlocked.
Change cache_lookup() to return an unlocked vnode.

Discussed on tech-kern@
2014-02-07 15:26:42 +00:00
msaitoh
62342f9d4d s/mesage/message/ 2014-02-07 11:51:00 +00:00
phx
f2a6e499cb Replaced enable/disable_intr by splhigh/splx. 2014-02-07 09:22:02 +00:00
phx
9f8b6ff2ae Remove enable_intr() and disable_intr(), which are unused. 2014-02-07 08:51:34 +00:00