Commit Graph

224445 Commits

Author SHA1 Message Date
matt bc6b9cafff If we just want _end, load it directly and skip the gp 2014-02-06 19:20:11 +00:00
christos 61a4b10e07 fix vax build. 2014-02-06 18:48:09 +00:00
christos fc571bb579 fix the second copy of this file. XXX: merge them. 2014-02-06 18:45:35 +00:00
christos de6d10c297 add missing prototype; remove names from args 2014-02-06 18:43:41 +00:00
christos d5946430b1 bump 2014-02-06 18:36:15 +00:00
matt 700fb1c20d Always supply LIB_PATH in case one of the included scripts set it to
something inappropriate.
2014-02-06 18:28:28 +00:00
hannken b9c5e8c0f7 Remove an annoying printf. And to answer the question: VFS_VGET() gets
used by NFS V3 server for readdirplus.
2014-02-06 16:18:38 +00:00
msaitoh ab7eb80a2f USE PCI_BAR[0-5]. Part of PR#48016. 2014-02-06 15:51:02 +00:00
rmind aac4ad500b bump the date 2014-02-06 15:50:40 +00:00
rmind 290732ce3d cdbw(3) man page: fix the header file name and use .Fa for function arguments. 2014-02-06 15:47:20 +00:00
matt b3a8421d95 Don't unset LIB_PATH, just override it. 2014-02-06 15:40:47 +00:00
joerg d9eddbbe61 Pass the correct buffer size. 2014-02-06 14:57:16 +00:00
hannken 59e42c388a Move fstrans_start()/fstrans_done() into genfs_insane_rename() to protect
the complete rename operation like we do for all other vnode operations.
2014-02-06 10:57:12 +00:00
wiz 83d796ca12 Update count. Add serial comma. 2014-02-06 07:36:36 +00:00
riastradh 6c0ad81464 __HAVE_ATOMIC_AS_MEMBAR is spelled with two leading underscores.
This underscores the need to replace this error-prone cpp API by
unconditionally defined {pre,post}atomic_membar_*.

This change should only remove unnecessary membar_producers on x86.
2014-02-06 03:47:16 +00:00
rmind ffcdc4af8d Add support for CDB based NPF tables. 2014-02-06 02:51:28 +00:00
dsl 17a304eec5 Apparantly clang doesn't like -mno-80387 or -mno-fp-ret-in-387
-msoft-float is equivalent to the former, the latter is probably unlikely
to stop anything not picked up elsewhere.
2014-02-05 23:10:41 +00:00
christos 9718726c93 fix incorrect variable; (hi matt) 2014-02-05 19:09:06 +00:00
christos 76c86da9ec make this compile. 2014-02-05 19:07:16 +00:00
christos 19629127f3 put back line accidentally deleted before (hi matt) 2014-02-05 19:03:45 +00:00
dsl 8c82df1430 Change the compiler options to explicitly specify:
-mno-mmx -mno-sse -mno-avx -mno-80387 -mno-fp-ret-in-387
Since no-sse implies no-sse2 that should ensure that the compiler really
  doesn't emit any instructions that might trap trying to use the FPU.
On amd64 at least some of those are needed to stop the compiler
  saving the registers to stack on every varargs function.
It might be that -mno-sse did that before.
2014-02-05 18:52:22 +00:00
skrll 03dbd38792 Err on the safe side for small memory allocations and provide 4byte
alignment by default.  Override this to 8byte alignment for alpha and arm
eabi.

Someone (tm) can review this change once the standards and compiler(s)
have sorted themselves out.
2014-02-05 11:32:15 +00:00
rmind e43f79569a npftest: fix previous harder - pass and use libc's random(3). 2014-02-05 03:49:48 +00:00
rmind bb1fedd189 npftest: fix the failure of NAT test -- adjust for RUMP's conversion to
the in-kernel CPRNG (hi pooka!).
2014-02-05 03:30:13 +00:00
matt 4b43c5a40c Add another set of parens 2014-02-05 01:59:58 +00:00
matt bfd343aba6 mask the shift by __n with NBBY*sizeof(uintmax-t)-1
to suppress the following diagnostic from clang:
error: shift count >= width of type [-Werror,-Wshift-count-overflow]
    PAR_ATTR            = __BITS(63,56),// F=0 memory attributes
                          ^~~~~~~~~~~~~
src/sys/sys/cdefs.h:554:4: note: expanded from macro '__BITS'
        ((__BIT(MAX((__m), (__n)) + 1) - 1) ^ (__BIT(MIN((__m), (__n))) - 1))
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/sys/sys/cdefs.h:550:73: note: expanded from macro '__BIT'
    (((uintmax_t)(__n) >= NBBY * sizeof(uintmax_t)) ? 0 : ((uintmax_t)1 << (uintmax_t)(__n)))
                                                                        ^  ~~~~~~~~~~~~~~~~
2014-02-05 00:18:09 +00:00
dsl 5e9aed4314 Now that the sv_xmm and sv_87 fields in the pcb are the same size as the
hardware ones, and those in the mcontext, ptrace and core files we
  can really safely cast and copy between the types.
Remove a couple of temporary buffers and add CTASSERT()s that the sizes
  do actually match.
2014-02-04 22:48:26 +00:00
christos d39376afb9 Wait for all the interfaces specified on the command line to be configured
before daemonizing, not just the first one. Perhaps we should introduce a
separate flag for this behavior?
2014-02-04 22:34:39 +00:00
dsl f0aa8ebfcc Remove the fields from 'struct save87' and 'struct fxsave' that were used
to save the control word and tag word on fp faults.
Nothing I could find looked at them before I removed the code that wrote them.
It might appear that these fields got exported to userspace (via mcontext),
  but that code carefully avoided those fields.
I've also deleted some very historic fields from the union inside __fpregset_t
  this doesn't affect its size.
The __fpregset_t fields are now the same size as the ones in the pcb.
Which is good because they get cast to each other in a few places.
2014-02-04 22:21:35 +00:00
dsl b2f9af25a4 There is no need to check for recursive calls into fpudna().
Rename the associated ci_fpsaving field to 'unused'.
I'm not sure they could ever happen, you could get unwanted calls into
  the fpu trap code while saving state when using INT13 - but these are
  different.
The return value from the i386 fpudna() was always 1 - possibly a historic
  relic of the kernel fp emulation. Remove and don't check in trap.S.
The amd64 and i386 fpudna() code is now almost identical.
2014-02-04 21:09:23 +00:00
wiz 47c7c18d7f Correct number of output files in example.
From Jason McIntyre <jmc@OpenBSD>.

While here, also explain about the extra file in the example and
put .Ex into its own section in the correct place. Bump date.
2014-02-04 19:48:48 +00:00
matt 6c558ed386 _setsoftintr is long dead. reap any leftovers from arm. 2014-02-04 18:51:16 +00:00
njoly a935b103a7 Handle another declaration after statement case for lint in c99 mode.
Add the corresponding testcase.
2014-02-04 08:08:59 +00:00
agc 7302906d58 When building up a PGP public key from an ssh key, do not use the key
file's mtime as the birthtime of the signature - rather, just zero
this value (the key birthtime is an inherent part of calculating the
key id)

This allows public key files to be copied to other file systems, machines
or directories, and still produce the same key id.
2014-02-04 01:46:38 +00:00
christos f1dcab14ad consistency fixes. 2014-02-04 00:52:47 +00:00
pgoyette f496b70ec7 Undo previous - it still needs a lot more work.
For now, we'll use the hand-crafted cf* structures and directly
call all the config routines.
2014-02-03 23:11:40 +00:00
dsl 27e029a426 Since we always run with CR0.NE set (internal fpu using vector 0x10)
npxintr() is only generated when a process executes an FP instruction
and the TS set interrupt takes precedence - so we know the current lwp
owns the fp registers.
It is also then impossible to get a splurious error while saving
the registers.
Ths lets the npxintr() code be simplified somewhat.
XXX: I'm not at all sure it really DTRT if the process actually wished
to fixup anything in the signal handler (or even if the signal is masked).
2014-02-03 23:00:32 +00:00
martin 39ae3c2126 Provide scalbnl, scalbnf, logbl, logbf, fmaxl for vax. 2014-02-03 21:22:21 +00:00
wiz 97cd0ff474 From Igor Sobrado in private email (based on his OpenBSD commit):
improve POSIX compliance by continuing to process the remaining file
    operands after not finding an input file.

    from the IEEE Std 1003.1-2008 (``POSIX.1'') rationale:

    "Unlike other utilities, some historical implementations of cut
    exit after not finding an input file, rather than continuing to
    process the remaining file operands.  This behavior is prohibited
    by this volume of POSIX.1-2008, where only the exit status is
    affected by this problem."

    joint work with jmc@, who identified the compliance issue, and millert@

    ok millert@, jmc@
2014-02-03 20:22:19 +00:00
matt ecd212e672 Provide a simple version of _bus_dmamap_load_raw. If each segments can
be mapped by XKPHYS/KSEGn, then the load will succeed.  If it would
require a bounce buffer or being mapped into the kernel's address space,
the load will fail.
2014-02-03 19:18:59 +00:00
manu f59b4d840e Properly translate struct swapent for COMPAT_NETBSD32 (missing commit) 2014-02-03 17:03:16 +00:00
rmind 2e17c78b61 pthread__mutex_lock_slow: fix the handling of a potential race with the
non-interlocked CAS in the fast unlock path -- it is unsafe to test for
the waiters-bit while the owner thread is running, we have to spin for
the owner or its state change to be sure about the presence of the bit.
Split off the logic into the pthread__mutex_setwaiters() routine.

This is a partial fix to the named lockup problem (also see PR/44756).
It seems there is another race which can be reproduced on faster CPUs.
2014-02-03 15:51:01 +00:00
wiz 1193e8963a Try improving a comment. 2014-02-03 14:15:07 +00:00
joerg 1b87ac407e For ancient GCC, disable the missing prototype warning completely. 2014-02-03 13:30:10 +00:00
manu d7670a176d Properly translate struct swapent for COMPAT_NETBSD32 2014-02-03 13:20:20 +00:00
msaitoh 3443d04260 Carefully set IFF_OACTIVE in mvgbe_start(). Even if mvgbe_encap()
returns other than 0, the TX ring might not full. Check whether
the TX ring has one or more packets. If the ring is empty,
dont' set IFF_OACTIVE because an TX complete interrupt never
occur and IFF_OACTIVE flags is left. The interface's timer
isn't reset, so a device timeout desn't occur.

 Fixes a bug that IFF_OACTIVE flag is left on heavy load.
Part of PR#48568.
2014-02-03 05:56:23 +00:00
rmind 55b0c96054 - npfctl: fix table IDs (breakage since the table naming was added).
- libnpf: remove npf_table_exists_p() from public API.
2014-02-03 02:21:52 +00:00
christos fef7521afe remove stale comment and explain what we are doing. thanks dsl 2014-02-02 23:17:54 +00:00
dsl 52252605c4 Minor fpu initialisation cleanups:
Set default CR) so that the FPU is enabled (unset CR0_EM) and initialise
  i386_fpu_present to 1.
No need to call the npx trap indirectly, rename to fpunda() to match amd64.
Remove the i386_fpu_exception variable and sysctl (It used to indicate
  which irq was used for fpu exceptions, but we only support 'internal'
  now).  Hopefully no one cares.
fpuinit() now only needs to clear TS before the fninit(). Apart from the
  checks for 486SX and the 'fdiv bug' this matches the amd64 version.
Exclude fpuinit() from XEN kernels, they don't call it - which rather begs
  the question as to whether it is needed at all!
2014-02-02 22:41:20 +00:00
christos cf1ad84b0d Fix threading bug again. 2014-02-02 22:00:38 +00:00