Commit Graph

195264 Commits

Author SHA1 Message Date
Poul-Henning Kamp
32dbae6619 Face the fact that we have no idea where the ports tree really lives. 2014-12-01 10:17:23 +00:00
Gleb Kurtsou
c5f8185b36 Update tools/shlib-compat.
- Update dwarfdump / compiler support.
  Use hex instead of decimal for integers.
  Add boolean and restrict type definitions.
  Add options for specifing dwarfdump and objdump executables.

- Fix reporting missing symbol definitions as matching.

- Compare external variable definitions.

- Exclude special symbols like _init, _end by default.

- Fix test build.
2014-12-01 08:14:25 +00:00
Konstantin Belousov
95c4bf756a Provide mutual exclusion between zone allocation/destruction and
uma_reclaim().  Reclamation code must not see half-constructed or
destructed zones.  Do this by bracing uma_zcreate() and uma_zdestroy()
into a shared-locked sx, and take the sx exclusively in uma_reclaim().

Usually zones are not created/destroyed during the system operation,
but tmpfs mounts do cause zone operations and exposed the bug.

Another solution could be to only expose a new keg on uma_kegs list
after the corresponding zone is fully constructed, and similar
treatment for the destruction.  But it probably requires more risky
code rearrangement as well.

Reported and tested by:	pho
Discussed with:	avg
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
2014-11-30 20:20:55 +00:00
Jilles Tjoelker
e753a1effb sh: Remove special case for '=' in set -x; always quote it in outqstr().
I plan to make set -x output always printable using $'...'; avoiding quoting
words containing '=' is not worth the extra complexity.
2014-11-30 20:12:47 +00:00
Justin T. Gibbs
2c6bf3d90b Remove trailing whitespace. 2014-11-30 19:32:00 +00:00
Andrew Turner
b4ce9f7856 There is no need to use FUNC_END with aeabi_ldiv0 or aeabi_idiv0 as they
are aliases.

Sponsored by:	ABT Systems Ltd
2014-11-30 17:29:49 +00:00
Andrew Turner
da063e9d8c Use llabs when getting the absolute value of a long long.
Sponsored by:	ABT Ststems Ltd
2014-11-30 17:27:24 +00:00
Bryan Venteicher
abec64bc76 Cleanup and performance improvement of the virtio_blk driver
- Add support for GEOM direct completion. Depending on the benchmark,
    this tends to give a ~30% improvement w.r.t IOPs and BW.
  - Remove an invariants check in the strategy routine. This assertion
    is caught later on by an existing panic.
  - Rename and resort various related functions to make more sense.

MFC after:	1 month
2014-11-30 16:36:26 +00:00
Gleb Smirnoff
2cbcd3c198 Merge from projects/sendfile:
- Provide pru_ready function for TCP.
- Don't call tcp_output() from tcp_usr_send() if no ready data was put
  into the socket buffer.
- In case of dropped connection don't try to m_freem() not ready data.

Sponsored by:	Nginx, Inc.
Sponsored by:	Netflix
2014-11-30 13:43:52 +00:00
Gleb Smirnoff
c80ea19b38 Merge from projects/sendfile:
Provide pru_ready for AF_LOCAL sockets.  Local sockets sendsdata directly
to the receive buffer of the peer, thus pru_ready also works on the peer
socket.

Sponsored by:	Netflix
Sponsored by:	Nginx, Inc.
2014-11-30 13:40:58 +00:00
Hans Petter Selasky
78328f86e2 Fix building of some infiniband utilities by updating some header file
locations and compiler include directives.

MFC after:	3 days
Sponsored by:	Mellanox Technologies
2014-11-30 13:27:58 +00:00
Gleb Smirnoff
651e4e6a30 Merge from projects/sendfile: extend protocols API to support
sending not ready data:
o Add new flag to pru_send() flags - PRUS_NOTREADY.
o Add new protocol method pru_ready().

Sponsored by:	Nginx, Inc.
Sponsored by:	Netflix
2014-11-30 13:24:21 +00:00
Hans Petter Selasky
dcf58f92e2 Add missing libraries when linking.
MFC after:	3 days
Sponsored by:	Mellanox Technologies
2014-11-30 13:13:46 +00:00
Gleb Smirnoff
0f9d0a73a4 Merge from projects/sendfile:
o Introduce a notion of "not ready" mbufs in socket buffers.  These
mbufs are now being populated by some I/O in background and are
referenced outside.  This forces following implications:
- An mbuf which is "not ready" can't be taken out of the buffer.
- An mbuf that is behind a "not ready" in the queue neither.
- If sockbet buffer is flushed, then "not ready" mbufs shouln't be
  freed.

o In struct sockbuf the sb_cc field is split into sb_ccc and sb_acc.
  The sb_ccc stands for ""claimed character count", or "committed
  character count".  And the sb_acc is "available character count".
  Consumers of socket buffer API shouldn't already access them directly,
  but use sbused() and sbavail() respectively.
o Not ready mbufs are marked with M_NOTREADY, and ready but blocked ones
  with M_BLOCKED.
o New field sb_fnrdy points to the first not ready mbuf, to avoid linear
  search.
o New function sbready() is provided to activate certain amount of mbufs
  in a socket buffer.

A special note on SCTP:
  SCTP has its own sockbufs.  Unfortunately, FreeBSD stack doesn't yet
allow protocol specific sockbufs.  Thus, SCTP does some hacks to make
itself compatible with FreeBSD: it manages sockbufs on its own, but keeps
sb_cc updated to inform the stack of amount of data in them.  The new
notion of "not ready" data isn't supported by SCTP.  Instead, only a
mechanical substitute is done: s/sb_cc/sb_ccc/.
  A proper solution would be to take away struct sockbuf from struct
socket and allow protocols to implement their own socket buffers, like
SCTP already does.  This was discussed with rrs@.

Sponsored by:	Netflix
Sponsored by:	Nginx, Inc.
2014-11-30 12:52:33 +00:00
Enji Cooper
abcd412940 Remove duplicate FILESYSTEMS REQUIRE from etc/rc.d/ipmon and etc/rc.d/pflog 2014-11-30 12:34:48 +00:00
Andrew Turner
4c1720fd9a Correctly a few incorrect uses of ENTRY/EENTRY and END/EEND
Sponsored by:	ABT Systems Ltd
2014-11-30 12:25:04 +00:00
Andrew Turner
13fb42aabe Remove extra labels, ENTRY_NP already provides them.
Sponsored by:	ABT Systems Ltd
2014-11-30 12:20:24 +00:00
Gleb Smirnoff
300fa232ee Missed in r274421: use sbavail() instead of bare access to sb_cc. 2014-11-30 12:11:01 +00:00
Gleb Smirnoff
57f43a45a3 - Move sbcheck() declaration under SOCKBUF_DEBUG.
- Improve SOCKBUF_DEBUG macros.
- Improve sbcheck().

Sponsored by:	Netflix
Sponsored by:	Nginx, Inc.
2014-11-30 11:22:39 +00:00
Gleb Smirnoff
8967b220a3 Make sballoc() and sbfree() functions. Ideally, they could be marked
as static, but unfortunately Infiniband (ab)uses them.

Sponsored by:	Nginx, Inc.
2014-11-30 11:02:07 +00:00
Enji Cooper
d0082ce560 Remove duplicate FILESYSTEMS REQUIRE 2014-11-30 10:55:01 +00:00
Enji Cooper
7027385504 Remove duplicate FILESYSTEMS REQUIRE 2014-11-30 10:01:47 +00:00
Enji Cooper
9779edfbd3 Remove the unnecessary glob 2014-11-30 09:04:24 +00:00
Enji Cooper
d370dc47a1 Fix CFLAGS+=-DDEBUG by using the right header for libutil (libutil.h, not
util.h)
2014-11-30 09:03:34 +00:00
Roman Divacky
6e52f863ee Unbreak the code for non-digits below '0' by casting the expression
to unsigned int.

Pointed out by: bde
2014-11-30 08:43:55 +00:00
Enji Cooper
317fdbc621 Build spppcontrol if MK_PPP != no 2014-11-30 08:34:46 +00:00
Enji Cooper
162789296e MFhead @ r275302 2014-11-30 06:48:37 +00:00
Enji Cooper
3c4ee9781a Followup to r275299: add an ObsoleteFiles.inc entry for etc/rc.d/mrouted 2014-11-30 06:46:30 +00:00
Enji Cooper
ebffb67085 Fill in items to remove with relevant knobs, per r275300 2014-11-30 06:44:24 +00:00
Enji Cooper
2b0cb1247a Fill in MK_ACPI, (MK_ACPI && MK_APM), MK_INET6, MK_PPP, and MK_ROUTED
Rework script dependencies to allow everything made optional to more optional
2014-11-30 06:08:22 +00:00
Enji Cooper
b76f9cb7bc Remove etc/rc.d/mrouted
mrouted has been available in ports for the last 8 years as net/mrouted . An
equivalent rc.d script has been present in the port.

Remove all corresponding variables from etc/defaults/rc.conf

Relnotes: yes
2014-11-30 06:03:59 +00:00
Peter Jeremy
b6e5ca4a88 Cross reference tap(4) and tun(4) and include a short explanation as
to how they differ.  This will assist users in selecting which interface
is more appropriate for their purposes.

Approved by:	grog (co-mentor)
MFC after:	2 week
2014-11-30 04:50:13 +00:00
Enji Cooper
c696ccf200 Followup to r275296: add an ObsoleteFiles.inc entry 2014-11-30 03:02:20 +00:00
Enji Cooper
17441aa848 Remove etc/rc.d/mrouted
The rc.d script has been incorporated into net/mrouted for some time
2014-11-30 03:00:40 +00:00
Enji Cooper
e7d836f78d Make nfs server components conditional according to MK_NFS_SERVER 2014-11-30 02:31:37 +00:00
Enji Cooper
04267db69b Move nfsd requirement in lockd/statd to BEFORE: stanza in nfsd so the nfs
server can be made optional
2014-11-30 02:27:37 +00:00
Enji Cooper
4724dcbfa1 Honor MK_AUDIT with respect to etc/security 2014-11-30 01:42:55 +00:00
Enji Cooper
75ff9cf253 - Fill in MK_FILE, MK_PMC, MK_SQLITE3, and MK_ZONEINFO
- Fill in etc/pam.d entries per r275291
- Fill in lib/libaudit entries
- Fill in more MK_NTP entries
2014-11-30 00:55:50 +00:00
Enji Cooper
ba9cbbdb5a Honor MK_AT, MK_FTP, MK_MAIL, and MK_OPENSSH 2014-11-30 00:51:00 +00:00
Enji Cooper
b4f9f0de1d Install bsm headers if MK_AUDIT != no 2014-11-30 00:49:57 +00:00
Enji Cooper
de93d1a1f5 Honor MK_FILE 2014-11-30 00:49:24 +00:00
Enji Cooper
2ca503d328 Honor MK_AUDIT, MK_FILE, MK_GPIO, and MK_SQLITE3
lib/libgpio is a standalone library, but it seems logical to conditionalize
it with MK_GPIO
2014-11-30 00:49:06 +00:00
Enji Cooper
65ea08621f Add MK_FILE and MK_SQLITE3
- MK_FILE will conditionalize building lib/libmagic and usr.bin/file
- MK_SQLITE3 will conditionalize building lib/libsqlite3, and will disable
  MK_SVN/MK_SVNLITE by proxy
2014-11-30 00:45:33 +00:00
Enji Cooper
010546ec14 Add MK_NTP block to etc/rc.d/Makefile 2014-11-30 00:26:50 +00:00
Enji Cooper
d485a56107 Honor MK_GSSAPI and MK_PKGBOOTSTRAP a bit better in etc/Makefile 2014-11-30 00:25:47 +00:00
Enji Cooper
e052c69ab2 Better honor the following MK_ flags in etc/Makefile and etc/rc.d/Makefile:
- MK_AMD
- MK_ATM
- MK_AUDIT
- MK_BOOT
- MK_GSSAPI
- MK_JAIL
- MK_LPR
- MK_SENDMAIL
- MK_VI
- MK_WIRELESS
- MK_ZFS
2014-11-30 00:23:34 +00:00
Enji Cooper
53ffd84c4d Rework rc.d requirements so zfs and zvol come before relevant services so they
can be decoupled from the build
2014-11-30 00:21:06 +00:00
Enji Cooper
4ea83362cb Make kdc run before SERVERS so kdc can be decoupled from the build 2014-11-30 00:03:27 +00:00
Enji Cooper
59d4588ff5 Make ntpdate run before rpcbind to allow ntpdate to be decoupled from the build 2014-11-29 23:59:51 +00:00
Enji Cooper
5e2b531868 Make gssd come before nfsd so gssd can be decoupled from etc/rc.d/Makefile 2014-11-29 23:57:08 +00:00