Commit Graph

198892 Commits

Author SHA1 Message Date
jilles
a3c80349e7 libc/stdio: Fail fdopen() on an execute-only fd.
An execute-only fd (opened with O_EXEC) allows neither read() nor write()
and is therefore incompatible with all stdio modes. Therefore, the [EINVAL]
error applies.

Also adjust the similar check in freopen() with a NULL path, even though
this checks an fd which is already from a FILE.
2014-04-21 17:40:23 +00:00
gjb
08414b8dda urndis(4) will first appear in 9.3-RELEASE.
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
2014-04-21 16:35:19 +00:00
jilles
c446600420 libc: Add fopen() test to regression Makefile. 2014-04-21 12:39:35 +00:00
andrew
d3cdd1efb1 Rename the fp{get,set}* files so they no longer conflict with the softfloat
version of these files. Keep them within this directory so they can be used
to implement the armv6 version of these functions.
2014-04-21 09:43:22 +00:00
adrian
613ea3ba08 Rewrite the cleanup code to, well, actually work right.
The existing cleanup code was based on the Atheros reference driver
from way back and stuff that was in Linux ath9k.  It turned out to be ..
rather silly.

Specifically:

* The whole method of determining whether there's hardware-queued frames
  was fragile and the BAW would never quite work right afterwards.

* The cleanup path wouldn't correctly pull apart aggregate frames in the
  queue, so frames would not be freed and the BAW wouldn't be correctly
  updated.

So to implement this:

* Pull the aggregate frames apart correctly and handle each separately;
* Make the atid->incomp counter just track the number of hardware queued
  frames rather than try to figure it out from the BAW;
* Modify the aggregate completion path to handle it as a single frame
  (atid->incomp tracks the one frame now, not the subframes) and
  remove the frames from the BAW before completing them as normal frames;
* Make sure bf->bf_next is NULled out correctly;
* Make both aggregate session and non-aggregate path frames now be
  handled via the incompletion path.

TODO:

* kill atid->incomp; the driver tracks the hardware queued frames
  for each TID and so we can just use that.

This is a stability fix that should be merged back to stable/10.

Tested:

* AR5416, STA

MFC after:	7 days
2014-04-21 06:07:08 +00:00
adrian
614c44f1d6 * Modify the debugging output from pause/resume to note the TID and STA
MAC
* Now that the paused < 0 bugs have been identified, make the DPRINTF()
  a device_printf() again.  Anything else that shows up here needs to be
  fixed immediately.

Tested:

* AR5416, STA mode

MFC after:	7 days
2014-04-21 02:09:14 +00:00
adrian
af79794fb4 Make sure bf_next is NULL'ed out when we're completing up an aggregate
frame through the cleanup path.

Whilst here, fix the indenting for something I messed up.

Tested:

* AR5416, STA mode
2014-04-21 02:05:51 +00:00
eadler
7f7e4e96be bsd-family-tree: Add missing releases
- NetBSD 6.0.4
- DragonFly 3.6.2
2014-04-21 02:04:37 +00:00
adrian
35123c2dbb Fix a cleanup hang if cleanup gets called _during_ an active cleanup.
During power save testing I noticed that the cleanup code is being
called during a RUN->RUN state transition.  It's because the net80211
stack is treating that (for reasons I don't quitey know yet) as a
reassociation and this calls the node cleanup code.  The reason it's
seeing a RUN->RUN transition is because during active power save
stuff it's possible that the RUN->SLEEP and SLEEP->RUN transitions
happen so quickly that the deferred net80211 vap state code
"loses" a transition, namely the intermediary SLEEP transition.

So, this was causing the node reassociation code to sometimes be called
twice in quick succession and this would result in ath_tx_tid_cleanup()
to be called again.  The code calling it would always call pause, and
then only call resume if the TID didn't have "cleanup_inprogress" set.
Unfortunately it didn't check if it was already set on entry, so it
would pause but not call resume.  Thus, paused would be called more
than once (once before each entry into ath-tx_tid_cleanup()) but resume
would only be called once when the cleanup state was finished.

This doesn't entirely fix all of the issues seen in the cleanup path
but it's a necessary first step.

Since this is a stability fix, it should be merged to stable/10 at some
point.

Tested:

* AR5416, STA mode

MFC after:	7 days
2014-04-21 01:02:49 +00:00
rmacklem
4dfafb6abe Modify the NFSv4 client create/mkdir RPC so that it acquires
post-create/mkdir directory attributes. This allows the RPC to
name cache the newly created directory and reduces the lookup RPC
count for applications creating a lot of directories.

MFC after:	2 weeks
2014-04-20 22:19:00 +00:00
tuexen
0d6ccd58e0 Add consistency checks to ensure that fragments of a user message
have the same U-bit.

MFC after: 3 days
2014-04-20 21:11:39 +00:00
gjb
f68d811d9b Apply a slightly different color hammer to arm/release.sh:
- gcc(1) fails to build usr.bin/dtc
 - lack of WITH_GNUCXX=1 causes cc1plus(1) calls to fail
 - u-boot fails to build with clang (hard-coded gcc(1) calls)

Implement the proper incantation of WITH_/WITHOUT_ knobs
to get arm snapshot builds working again.

Since the cc(1) binary is no longer expected to be clang(1),
remove the chroot(8) post-install cc(1) overwrite.

MFC After:	3 days
X-MFC-With:	r264518,r264697,r264698
Tested on:	stable/10@r264677 RPI-B
Sponsored by:	The FreeBSD Foundation
2014-04-20 20:46:06 +00:00
ian
1c383a30c4 Remove uncessary cache and TLB maintenance ops.
- These were needed on armv4/5 (VIVT cache), not needed on armv6.
 - The wbinv_all call can't be used on SMP systems; cache operations by
   set/way are not broadcast to other cores.
 - The TLB maintenance operations needed for pmap_growkernel() happen in
   pmap_grow_l2_bucket(), so there's no need to flush all TLB entries at
   the end.
 - There may not be any need for the TLB flush at the beginning of
   pmap_release(), but it's left in for now pending more investigation.

Pointed out by:	   Svatopluk Kraus <onwahe@gmail.com>
Discussed with:	   cognet@
2014-04-20 18:21:05 +00:00
tuexen
eaf7d5a955 Send also a packet containing an ABORT chunk in response to an OOTB packet
containing a COOKIE-ECHO chunk.

MFC after: 3 days
2014-04-20 18:15:23 +00:00
gjb
fb156728ea Fix EOL escape.
MFC after:	3 days
X-MFC-With:	r264697
Sponsored by:	The FreeBSD Foundation
2014-04-20 16:34:10 +00:00
gjb
e3796eaa9d When building the 'xdev' target when WITH_GCC=1 and
WITHOUT_CLANG_IS_CC=1, it appears WITHOUT_CLANG=1 must
also be set.

While here, reorder the lines to put the WITH_* and
WITHOUT_* entries on the same line.

MFC After:	3 days
X-MFC-With:	r264518
Tested on:	stable/10@r264677
Sponsored by:	The FreeBSD Foundation
2014-04-20 16:33:28 +00:00
andrew
dabace5570 Add the deprecated fp{get,set}* functions, a few ports use them. 2014-04-20 14:58:14 +00:00
ian
40b5add506 Fix a comment typo; conversion tables are for leap years, not leap seconds. 2014-04-20 13:37:22 +00:00
des
e1e5f20b88 Apply upstream patch for EC calculation bug and bump version addendum. 2014-04-20 11:34:33 +00:00
mm
532d55ab5f Backport from projects/pf r263908:
De-virtualize UMA zone pf_mtag_z and move to global initialization part.

The m_tag struct does not know about vnet context and the pf_mtag_free()
callback is called unaware of current vnet. This causes a panic.

MFC after:	1 week
2014-04-20 09:17:48 +00:00
nyan
37c4ec75f2 MFi386: r257858 (by kib)
Fix signal delivery for the iBCS2 binaries.
2014-04-20 05:40:13 +00:00
eadler
d36f7abf67 bsd-family-tree: Add NetBSD 6.1.4, 6.0.5
Part of 6.0.4 is still missing: this really needs to be automated
2014-04-20 03:27:38 +00:00
jilles
577f6b270e sys/capsicum.h: Remove not very useful visibility guards.
Since <sys/capsicum.h> does not comply to any standards, standards-compliant
applications do not include it and it is not useful to restrict what is
exposed depending on the requested standard.

In addition, the use of types like u_int makes the header fail in strict
standards compliance modes anyway.
2014-04-19 22:18:57 +00:00
tuexen
03865d88ca Use consistently debug output instead of an unconditional printf.
MFC after: 3 days
2014-04-19 20:55:51 +00:00
rmacklem
f068ab6909 Modify the NFSv4 client open/create RPC so that it acquires
post-open/create directory attributes. This allows the RPC to
name cache the newly created file and reduces the lookup RPC
count by about 10% for software builds.

MFC after:	2 weeks
2014-04-19 19:40:20 +00:00
jmg
339861aeea add a TON of missing event handlers with quite possibly bogus
descrptions... If you're one of the many people who forgot to document
their work and don't like my description, well, do your job and update
it...
2014-04-19 19:32:54 +00:00
tuexen
156da197a9 Send the correct error cause, when a DATA chunk with no user data
is received. This bug was reported by Irene Ruengeler.

MFC after: 3 days
2014-04-19 19:21:06 +00:00
jmg
072b24d95e garbage collect something that hasn't been triggered in almost 5 years...
the last consumer was removed a couple years ago...
2014-04-19 19:08:08 +00:00
jilles
952140bbe1 login: Remove broken dialup log message.
For 10 years, the "DIALUP <tty>, <user>" message has required having a
hostname (-h) instead of not having a hostname; therefore, it is never
logged. Given that dialup is obsolete and this has not been fixed, remove
the log message.

Note that LOGALL, which is defined by default, logs a message for all
logins, including dialup logins.
2014-04-19 13:47:32 +00:00
jilles
754adcc08a langinfo.h: Hide YESSTR and NOSTR in strict POSIX mode.
YESSTR and NOSTR are obsolete and are only in old SUS.
2014-04-19 12:38:01 +00:00
hselasky
d463e40e37 Update UMASS manual page to mention newer host controller drivers.
Submitted by:	Aseem Jolly <aseem.jolly@gmail.com>
2014-04-19 06:32:51 +00:00
jkim
ae9378852f Install newly added bsd.mkopt.mk. 2014-04-19 04:59:56 +00:00
jmg
f471702b98 add link to crypto(4)...
MFC after:	1 week
2014-04-19 01:52:03 +00:00
rmacklem
f55eac8e60 Modify the Lookup RPC for NFSv4 so that it acquires directory
attributes. This allows the client to cache directory names
when they are looked up, reducing the Lookup RPC count by
about 40% for software builds.

MFC after:	2 weeks
2014-04-18 22:05:34 +00:00
delphij
b281166740 MFV r264668:
4754 io issued to near-full luns even after setting noalloc threshold
4755 mg_alloc_failures is no longer needed

illumos/illumos@b6240e830b

MFC after:	2 weeks
2014-04-18 22:04:58 +00:00
delphij
aff2f85dda MFV r264667:
4752 fan out read zio taskqs

illumos/illumos-gate@1b497ab83e
2014-04-18 21:35:23 +00:00
delphij
3344ccfa37 MFV r264666:
4374 dn_free_ranges should use range_tree_t

illumos/illumos-gate@bf16b11e8d

MFC after:	2 weeks
2014-04-18 21:15:12 +00:00
imp
ef8414677a Document YES_HESIOD disappearing. 2014-04-18 17:06:18 +00:00
imp
2a59cf69e6 Retire compatibility YES_HESIOD. If you haven't upgraded in the last
decade to WITH_HESIOD, your are in for a rude surprise...
2014-04-18 17:04:34 +00:00
imp
50bc18043c Move the generic part of bsd.opts.mk into bsd.mkopts.mk to allow for
the WITH/WITHOUT_FOO -> MK_FOO={yes,no} stuff to be used elsewhere.
2014-04-18 17:04:26 +00:00
imp
0f9e64ce18 Allow setting of MK_FOO by anybody. There are too many edge cases that
we're preventing now with this policy. However, these edge cases
should be rare and all that set MK_FOO directly.
WITH_FOO and WITHOUT_FOO both being defined now result in the
non-default behavior happening silently. Users needing determinism
here fall into the edge case exception for MK_FOO setting.
2014-04-18 17:04:18 +00:00
imp
2cef401580 Copy bsd.own.mk to bsd.opts.mk and separate out the option setting
code from the rest. Include bsd.opts.mk in bsd.own.mk to preserve
current behavior. Future revisions will replace the inclusion of
bsd.own.mk elsewhere with bsd.opts.mk or a more appropriate new
file that's still being finalized.
2014-04-18 17:04:09 +00:00
imp
05af977d7b Separate out enabling building clang and/or gcc for the system and
building clang and/or gcc as the bootstrap compiler. Normally, the
default compiler is used. WITH_CLANG_BOOTSTRAP and/or
WITH_GCC_BOOTSTRAP will enable building these compilers as part
bootstrap phase.  WITH/WITHOUT_CLANG_IS_CC controls which compiler is
used by default for the bootstrap phase, as well as which compiler is
installed as cc.  buildworld now successfully completes building the
cross compiler with WITHOUT_CLANG=t and WITHOUT_GCC=t and produces a
built system with neither of these included.

Similarlly, MK_BINUTILS_BOOTSTRAP controls whether binutils is built
during this phase.

WITHOUT_CROSS_COMPILER will now force MK_BINUTILS_BOOTSTRAP=no,
MK_CLANG_BOOTSTRAP=no and MK_GCC_BOOTSTRAP=no.

BOOTSTRAP_COMPILER was considered, but rejected, since pc98 needs both
clang and gcc to bootstrap still. It should be revisisted in the
future if this requirement goes away. Values should be gcc, clang or
none. It could also be a list.

The odd interaction with Xfoo cross/external tools needs work, but
is beyond the scope of this change as well.
2014-04-18 17:03:58 +00:00
imp
45481ab583 Convert NO_MANCOMPRESSED to MK_MANCOMPRESSED. 2014-04-18 17:03:49 +00:00
imp
af1f03cbf4 Take out the hack to write -1's to non-NAND. Always do a BIO_DELETE on
the ranges we want to erase. This is nicer to SSDs that want TRIMs
anyway.
2014-04-18 17:03:43 +00:00
imp
dc1d630338 More properly account for free/reserved segments to avoid deadlock or
worse when filling up a device and then trying to erase files to make
space. Without enough space, you can't do that. Also, ensure that the
metadata writes don't generate ENOSPC. They will be retried later
since the buffers are still dirty...

Submitted by: mjg@
2014-04-18 17:03:35 +00:00
imp
60d8af5ab8 An abstracted down version of the NanoBSD config files as used by
FreeNAS and the BSDRP folks.
2014-04-18 17:03:09 +00:00
imp
07fec8a2c0 Add -x to the removal of trees to prevent crossing mount points to
limit the damage from errored out runs and failure to unmount loopback
mounts properly.
2014-04-18 16:53:56 +00:00
imp
3ae993b4b4 Don't build EISA by default anymore. Remove from i386 GENERIC and
create an option that defaults to "no" on all platforms to not build
the EISA bits.

Discussed on: arch@
2014-04-18 16:53:06 +00:00
hselasky
46765ac020 Add new USB quirk.
Submitted by:	kwm @
MFC after:	1 week
2014-04-18 16:19:33 +00:00