]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
9 years agoUse standard mtx(9), rwlock(9), sx(9) system initialization macros
glebius [Sun, 9 Nov 2014 11:11:08 +0000 (11:11 +0000)]
Use standard mtx(9), rwlock(9), sx(9) system initialization macros
instead of doing initialization manually.

Sponsored by: Nginx, Inc.
Sponsored by: Netflix

9 years agoMFV r274272 and diff reduction with upstream.
delphij [Sun, 9 Nov 2014 07:37:00 +0000 (07:37 +0000)]
MFV r274272 and diff reduction with upstream.

Illumos issue:
    5244 zio pipeline callers should explicitly invoke next stage

Tested with: ztest plus ZFS over GELI configuration
MFC after: 1 month

9 years agoApply upstream 13597:3eac1e8e0f4c (git: illumos-gate@aa846ad9):
delphij [Sun, 9 Nov 2014 01:42:28 +0000 (01:42 +0000)]
Apply upstream 13597:3eac1e8e0f4c (git: illumos-gate@aa846ad9):

Initialize tqent_flags in the userland taskq implementation.  Without
this the assertion of tq->tq_freelist != NULL may fail in taskq_destroy.

The problem is that tqent_flags is never initialized in the userland
implementation while the kernel one does initialize it.  Without proper
initialization, the flag may have its lowest bit set, making it treated
as TQENT_FLAG_PREALLOC and never removing taskq_ent_t from tq_freelist.

MFC after: 2 weeks

9 years agoRemove ip6_getdstifaddr() and all functions to work with auxiliary data.
ae [Sat, 8 Nov 2014 19:38:34 +0000 (19:38 +0000)]
Remove ip6_getdstifaddr() and all functions to work with auxiliary data.
It isn't safe to keep unreferenced ifaddrs. Use in6ifa_ifwithaddr() to
determine ifaddr corresponding to destination address. Since currently
we keep addresses with embedded scope zone, in6ifa_ifwithaddr is called
with zero zoneid and marked with XXX.

Also remove route and lle lookups from ip6_input. Use in6ifa_ifwithaddr()
instead.

Sponsored by: Yandex LLC

9 years agoRevert r274200. Implicitly setting DEBUG_FLAGS when WITH_CTF is true is
markj [Sat, 8 Nov 2014 18:16:39 +0000 (18:16 +0000)]
Revert r274200. Implicitly setting DEBUG_FLAGS when WITH_CTF is true is
not the right way to do this.

Requested by: kan

9 years agoAdd llvm patch corresponding to r274286.
dim [Sat, 8 Nov 2014 16:37:59 +0000 (16:37 +0000)]
Add llvm patch corresponding to r274286.

9 years agoAfter r274246 make the tree compile again.
bz [Sat, 8 Nov 2014 14:41:32 +0000 (14:41 +0000)]
After r274246 make the tree compile again.

gcc requires variables to be initialised in two places.  One of them
is correctly  used only under the same conditional though.

For module builds properly check if the kernel supports INET or INET6,
as otherwise various mips kernels without IPv6 support would fail to build.

9 years agoPull in r201784 from upstream llvm trunk (by Benjamin Kramer):
dim [Sat, 8 Nov 2014 13:19:48 +0000 (13:19 +0000)]
Pull in r201784 from upstream llvm trunk (by Benjamin Kramer):

  AsmParser: Disable Darwin-style macro argument expansion on non-darwin targets.

  There is code in the wild that relies on $0 not being expanded.

This fixes some cases of using $ signs in literals being incorrectly
assembled.

Reported by: Richard Henderson
Upstream PR: http://llvm.org/PR21500
MFC after: 3 days

9 years agoMFi386 r253328:
kib [Sat, 8 Nov 2014 11:56:26 +0000 (11:56 +0000)]
MFi386 r253328:
Create a proper stack frame for amd64 version of bcopy().  Note that
this also makes the stack properly aligned in the function, despite it
is not strictly needed.

Sponsored by: The FreeBSD Foundation
MFC after: 1 week

9 years agoImprove wording in ctl.conf(5).
trasz [Sat, 8 Nov 2014 07:54:34 +0000 (07:54 +0000)]
Improve wording in ctl.conf(5).

Differential Revision: https://reviews.freebsd.org/D1020
Reviewed by: bcr@ (earlier version), wblock@
MFC after: 1 month
Sponsored by: The FreeBSD Foundation

9 years agoctld(8) doesn't require -lcam or -lssl; remove those from DPADD and LDADD.
trasz [Sat, 8 Nov 2014 07:50:57 +0000 (07:50 +0000)]
ctld(8) doesn't require -lcam or -lssl; remove those from DPADD and LDADD.

MFC after: 1 month
Sponsored by: The FreeBSD Foundation

9 years agoMFV r274271:
delphij [Sat, 8 Nov 2014 07:30:40 +0000 (07:30 +0000)]
MFV r274271:

Improve zdb -b performance:

 - Reduce gethrtime() call to 1/100th of blkptr's;
 - Skip manipulating the size-ordered tree;
 - Issue more (10, previously 3) async reads;
 - Use lighter weight testing in traverse_visitbp();

Illumos issue:
    5243 zdb -b could be much faster

MFC after: 2 weeks

9 years agoifindex_alloc_locked() never fails and doesn't have no-lock version,
glebius [Sat, 8 Nov 2014 07:23:01 +0000 (07:23 +0000)]
ifindex_alloc_locked() never fails and doesn't have no-lock version,
so change the prototype.

Sponsored by: Netflix
Sponsored by: Nginx, Inc.

9 years agoFix build race in Makefile.inc1 after r274226 by adding lib/libm__L dependency
ngie [Sat, 8 Nov 2014 04:24:54 +0000 (04:24 +0000)]
Fix build race in Makefile.inc1 after r274226 by adding lib/libm__L dependency
for gnu/lib/libdialog

Sponsored by: EMC / Isilon Storage Division

9 years agoUse PROGS instead of PROG and remove unnecessary SRCS?= assignment
ngie [Sat, 8 Nov 2014 03:20:56 +0000 (03:20 +0000)]
Use PROGS instead of PROG and remove unnecessary SRCS?= assignment

Using PROG instead of PROGS will in cases of high -j with -DNO_ROOT cause
the PROG to show up more than once as it's handling the SCRIPTS install case
in a recursive manner, separate from the non-recursive case

After the recent batch of commits to bsd.progs.mk to fix behavior with how
variables are defaulted to, explicitly setting SRCS for a PROG is no longer
required

MFC after: 1 week
Reviewed by: asomers
Phabric: D1130
Sponsored by: EMC / Isilon Storage Division

9 years agosh(1): Mention portability issue with shifting zero positional parameters.
jilles [Fri, 7 Nov 2014 21:30:16 +0000 (21:30 +0000)]
sh(1): Mention portability issue with shifting zero positional parameters.

Per Austin Group issue #459, shifting zero positional parameters may or may
not be considered an operand error (which causes the shell to exit in most
cases).

9 years agoFix LUN resize broken by r272911 commit.
mav [Fri, 7 Nov 2014 20:42:15 +0000 (20:42 +0000)]
Fix LUN resize broken by r272911 commit.

MFC after: 3 days

9 years agoFix random.ko module.
kib [Fri, 7 Nov 2014 20:23:43 +0000 (20:23 +0000)]
Fix random.ko module.
- Remove duplicated sources between standard part of the kernel and
  module.  In particular, it caused duplicated lock initialization and
  sysctl registration, both having bad consequences.
- Add missed source files to module.
- Static part of the kernel provides randomdev module, not
  random_adaptors.  Correct dependencies.
- Use cdev modules declaration macros.

Approved by: secteam (delphij)
Reviewed by: markm

9 years agoAdd DEV_MODULE_ORDERED().
kib [Fri, 7 Nov 2014 20:15:23 +0000 (20:15 +0000)]
Add DEV_MODULE_ORDERED().

Sponsored by: The FreeBSD Foundation
MFC after: 1 week

9 years agoSimplify assembler in ivy.c. Move the copying of the random bits into
kib [Fri, 7 Nov 2014 20:10:09 +0000 (20:10 +0000)]
Simplify assembler in ivy.c.  Move the copying of the random bits into
buffer from asm to C, which reduces amount of arguments for inline asm
and simplifies constraints.  Use unsigned types consistently.

Submitted by: bde
Approved by: secteam (delphij)
Reviewed by: markm
MFC after: 1 week

9 years agoAvoid panic in ofwbus caused by not released resource list entry
zbb [Fri, 7 Nov 2014 19:34:10 +0000 (19:34 +0000)]
Avoid panic in ofwbus caused by not released resource list entry

After resource allocation and release, resource list entry
stays non-NULL. This causes panic in ofwbus_alloc_resource()
on subsequent resource allocation.
Clean appropriate list entry on release to avoid this.

Obtained from: Semihalf
Reviewed by: ian
Sponsored by: The FreeBSD Foundation

9 years agoRemove unused assignments, noticed by Clang analyzer.
mav [Fri, 7 Nov 2014 19:32:10 +0000 (19:32 +0000)]
Remove unused assignments, noticed by Clang analyzer.

MFC after: 1 week

9 years agoOverhaul if_gre(4).
ae [Fri, 7 Nov 2014 19:13:19 +0000 (19:13 +0000)]
Overhaul if_gre(4).

Split it into two modules: if_gre(4) for GRE encapsulation and
if_me(4) for minimal encapsulation within IP.

gre(4) changes:
* convert to if_transmit;
* rework locking: protect access to softc with rmlock,
  protect from concurrent ioctls with sx lock;
* correct interface accounting for outgoing datagramms (count only payload size);
* implement generic support for using IPv6 as delivery header;
* make implementation conform to the RFC 2784 and partially to RFC 2890;
* add support for GRE checksums - calculate for outgoing datagramms and check
  for inconming datagramms;
* add support for sending sequence number in GRE header;
* remove support of cached routes. This fixes problem, when gre(4) doesn't
  work at system startup. But this also removes support for having tunnels with
  the same addresses for inner and outer header.
* deprecate support for various GREXXX ioctls, that doesn't used in FreeBSD.
  Use our standard ioctls for tunnels.

me(4):
* implementation conform to RFC 2004;
* use if_transmit;
* use the same locking model as gre(4);

PR: 164475
Differential Revision: D1023
No objections from: net@
Relnotes: yes
Sponsored by: Yandex LLC

9 years agoRemove struct arpcom. It is unused by most interface types, that allocate
glebius [Fri, 7 Nov 2014 15:14:10 +0000 (15:14 +0000)]
Remove struct arpcom. It is unused by most interface types, that allocate
it, except Ethernet, where it carried ng_ether(4) pointer.
For now carry the pointer in if_l2com directly.

Sponsored by: Netflix
Sponsored by: Nginx, Inc.

9 years agoPass mbuf to pfil processing before stripping outer IP header as it
ae [Fri, 7 Nov 2014 12:05:20 +0000 (12:05 +0000)]
Pass mbuf to pfil processing before stripping outer IP header as it
is described in if_enc(4).

MFC after: 2 week
Sponsored by: Yandex LLC

9 years agoAfter r274205 unbreak NOIP kernels. vsi is now also used outside
bz [Fri, 7 Nov 2014 11:34:06 +0000 (11:34 +0000)]
After r274205 unbreak NOIP kernels.  vsi is now also used outside
address family specific blocks so move it out from under the condition.

MFC after: 6 days
X-MFC with: r274205

9 years agoAdd new USB IDs.
hselasky [Fri, 7 Nov 2014 11:04:27 +0000 (11:04 +0000)]
Add new USB IDs.

Submitted by: G'abor Zahemszky <gabor@zahemszky.hu>
MFC after: 1 week

9 years agolibdialog has to be linked to libncursesw and libm
bapt [Fri, 7 Nov 2014 10:49:54 +0000 (10:49 +0000)]
libdialog has to be linked to libncursesw and libm

9 years agoRemove SYSCTL_VNET_* macros, and simply put CTLFLAG_VNET where needed.
glebius [Fri, 7 Nov 2014 09:39:05 +0000 (09:39 +0000)]
Remove SYSCTL_VNET_* macros, and simply put CTLFLAG_VNET where needed.

Sponsored by: Nginx, Inc.

9 years agoRemove useless structure ifindex_entry.
glebius [Fri, 7 Nov 2014 09:15:39 +0000 (09:15 +0000)]
Remove useless structure ifindex_entry.

Sponsored by: Nginx, Inc.
Sponsored by: Netflix

9 years agoRemove VNET_SYSCTL_ARG(). The generic sysctl(9) code handles that.
glebius [Fri, 7 Nov 2014 08:58:05 +0000 (08:58 +0000)]
Remove VNET_SYSCTL_ARG(). The generic sysctl(9) code handles that.

Reviewed by: ae
Sponsored by: Nginx, Inc.

9 years agoAdd header file missing from last commit.
jfv [Fri, 7 Nov 2014 04:47:46 +0000 (04:47 +0000)]
Add header file missing from last commit.

Submitted by: jfv
MFC after: 1 week

9 years agoAdd libxo, now needed by df(1).
marcel [Fri, 7 Nov 2014 04:39:01 +0000 (04:39 +0000)]
Add libxo, now needed by df(1).

Pointed out by: rodrigc@ (thanks!)

9 years agoSeveral minor changes to hopefully complete the VirtIO console driver
bryanv [Fri, 7 Nov 2014 03:36:28 +0000 (03:36 +0000)]
Several minor changes to hopefully complete the VirtIO console driver

  - Support the KDB alt break sequence to enter the debugger,
    panic, reboot, etc. [1]
  - Provide emergency write feature description. Note that QEMU
    does not implement this feature.
  - Make the VTCON_FLAG_* defines sequential once again.
  - When the multiple port feature is not negotiated, query the
    rows and columns of the one console during the device attach
    when the size feature is negotiated.
  - Report failure to the device if hot plugging a port fails.
  - Acknowledge the console port event with an open event. This
    is required by the spec, but QEMU doesn't seem to care.

Submitted by: Juniper [1]
MFC after: 1 month

9 years agoDocument that df(1) supports libxo(3).
marcel [Fri, 7 Nov 2014 03:07:10 +0000 (03:07 +0000)]
Document that df(1) supports libxo(3).

9 years agoConvert to use libxo.
marcel [Fri, 7 Nov 2014 03:03:25 +0000 (03:03 +0000)]
Convert to use libxo.

Obtained from:  Phil Shafer <phil@juniper.net>
Sponsored by:   Juniper Networks, Inc.

9 years agoFix a SIGSEGV when emitting XML or JSON when reading stdin. In that
marcel [Fri, 7 Nov 2014 01:36:20 +0000 (01:36 +0000)]
Fix a SIGSEGV when emitting XML or JSON when reading stdin. In that
case the file variable is NULL.

9 years agoFor really fast machines, an edge-case may exist where dpv(3) may be
dteske [Fri, 7 Nov 2014 00:59:40 +0000 (00:59 +0000)]
For really fast machines, an edge-case may exist where dpv(3) may be
built before contrib dependency, dialog(3). Add dialog(3) to the list
of _prebuild_libs to ensure that this does not happen.

Tested on: 11.0-CURRENT amd64 @ r274205
Thanks to: kargl, Larry Rosenman <ler@lerctr.org>, ngie, markj
Recommended by: ngie
Reviewed by: ngie, markj
MFC after: 21 days
X-MFC-to: stable/10 stable/9
X-MFC-with: 274116 274120 274121 274123 274144 274146 274192 274203

9 years agoSynchronize medium rotation rate in legacy Rigid Disk Drive Geometry mode
mav [Fri, 7 Nov 2014 00:10:07 +0000 (00:10 +0000)]
Synchronize medium rotation rate in legacy Rigid Disk Drive Geometry mode
page with modern Block Device Characteristics VPD page.

MFC after: 1 week

9 years agoUpdate the Intel i40e drivers, ixl version 1.2.8, ixlv version 1.1.18
jfv [Thu, 6 Nov 2014 23:45:05 +0000 (23:45 +0000)]
Update the Intel i40e drivers, ixl version 1.2.8, ixlv version 1.1.18
-Improved VF stability, thanks to changes from Ryan Stone,
 and Juniper.
- RSS fixes in the ixlv driver
- link detection in the ixlv driver
- New sysctl's added in ixl and ixlv
- reset timeout increased for ixlv
- stability fixes in detach
- correct media reporting
- Coverity warnings fixed
- Many small bug fixes
- VF Makefile modified - nvm shared code needed
- remove unused sleep channels in ixlv_sc struct

Submitted by: Eric Joyner (committed by jfv)
MFC after: 1 week

9 years agoSUBDIR_DEPENDS__ in lib/Makefile is not working out so well for me.
dteske [Thu, 6 Nov 2014 22:53:50 +0000 (22:53 +0000)]
SUBDIR_DEPENDS__ in lib/Makefile is not working out so well for me.
Add to using _prebuild_libs in (top-level) Makefile.inc1.
NB: Unbreak build yet again (we'll get this right eventually)

Reviewed by: markj, ngie
Thanks to: ian, markj, ngie, Nikolai Lifanov <lifanov@mail.lifanov.com>
MFC after: 21 days
X-MFC-to: stable/10 stable/9
X-MFC-with: 274116 274120 274121 274123 274144 274146 274192

9 years agoAutomatically build with debug symbols when building with WITH_CTF.
markj [Thu, 6 Nov 2014 22:46:40 +0000 (22:46 +0000)]
Automatically build with debug symbols when building with WITH_CTF.
Otherwise there's nothing for ctfconvert to do, and it ends up emitting an
error for each object file. Also remove some redundant checks from
bsd.prog.mk and bsd.lib.mk.

Differential Revision: https://reviews.freebsd.org/D1111
Reviewed by: imp

9 years agoAdd a quick and dirty script to check validity of links in elf files
bapt [Thu, 6 Nov 2014 22:45:03 +0000 (22:45 +0000)]
Add a quick and dirty script to check validity of links in elf files

9 years agoWhen mode isn't explicitly specified (wildcard) and inner protocol isn't
ae [Thu, 6 Nov 2014 20:23:57 +0000 (20:23 +0000)]
When mode isn't explicitly specified (wildcard) and inner protocol isn't
IPv4 or IPv6, assume it is the transport mode.

Reported by: jmg
MFC after: 1 week
Sponsored by: Yandex LLC

9 years agoRe-enable dpv(1,3): Introduced via r274116; temporarily disabled
dteske [Thu, 6 Nov 2014 19:28:01 +0000 (19:28 +0000)]
Re-enable dpv(1,3): Introduced via r274116; temporarily disabled
shortly thereafter via r274124 until I could get the right recipe
down w/respect to SUBDIR_DEPEND.

Thanks to:      ngie, ian
Reviewed by:    ian
MFC after:      21 days
X-MFC-to: stable/10 stable/9
X-MFC-with:     274116 274120 274121 274123 274144 274146

9 years agoStrengthen the sanity checking of busdma tag parameters.
ian [Thu, 6 Nov 2014 19:14:58 +0000 (19:14 +0000)]
Strengthen the sanity checking of busdma tag parameters.

It turns out an alignment of zero can lead to an endless loop in the
vm reservations code, so specifically disallow that.  The manpage says
hardware which can do dma at any address should use a value of one, which
hints at the forbiddeness of zero without exactly saying it.  Several
other conditions which could lead to insanity in working with the tag are
also checked now.

Every existing call to bus_dma_tag_create() (about 680 of them) was
eyeballed for violations of these things, and two alignment=0 glitches
were fixed.  It's possible something was missed, but overall this
shouldn't lead to any arm users suddenly experiencing failures.

9 years agoBackout 274170 it breaks for mips
bapt [Thu, 6 Nov 2014 18:50:59 +0000 (18:50 +0000)]
Backout 274170 it breaks for mips

9 years agoA dma tag alignment should be 1 (not 0) when a device can dma at any address.
ian [Thu, 6 Nov 2014 18:15:16 +0000 (18:15 +0000)]
A dma tag alignment should be 1 (not 0) when a device can dma at any address.

9 years agoA dma tag alignment should be 1 (not 0) when a device can dma at any address.
ian [Thu, 6 Nov 2014 18:14:12 +0000 (18:14 +0000)]
A dma tag alignment should be 1 (not 0) when a device can dma at any address.

9 years agoFix build.
melifaro [Thu, 6 Nov 2014 17:50:35 +0000 (17:50 +0000)]
Fix build.

Pointy hat to: melifaro

9 years agoIgnore errors from rm -rf to support high -j builds. This is, at best,
imp [Thu, 6 Nov 2014 17:19:41 +0000 (17:19 +0000)]
Ignore errors from rm -rf to support high -j builds. This is, at best,
a kludge. However, it also effectively works around the issues for
high -j builds on systems that do not have the rm fixes.

A better fix would be to rmdir here, and fix the places where we're
sloppy and not list all the files we create in CLEANFILES, should
anybody have the time to chase them all to ground.

9 years agoThese don't belong in the modules directory.
imp [Thu, 6 Nov 2014 16:52:51 +0000 (16:52 +0000)]
These don't belong in the modules directory.

9 years agoRetire the '@' symlink. It isn't really needed and causes more
imp [Thu, 6 Nov 2014 16:48:37 +0000 (16:48 +0000)]
Retire the '@' symlink. It isn't really needed and causes more
problems than it solves. SYSDIR is already defined almost always and
can be used instead. Working around the one case where it isn't is
much easier than working around the fact that @ may not exist in 18
other places.

Differential Revision: https://reviews.freebsd.org/D1100

9 years agoclean removes @ and machine now, so no need to do it again.
imp [Thu, 6 Nov 2014 16:48:35 +0000 (16:48 +0000)]
clean removes @ and machine now, so no need to do it again.

9 years agoSeparate references by a comma.
marcel [Thu, 6 Nov 2014 16:19:21 +0000 (16:19 +0000)]
Separate references by a comma.

9 years agoSort the references in "SEE ALSO" by section first; then alphabetically.
marcel [Thu, 6 Nov 2014 16:17:41 +0000 (16:17 +0000)]
Sort the references in "SEE ALSO" by section first; then alphabetically.

Pointed out by: brueffer@

9 years agoFinish r274118#2: commit forgotten uipc_debug.c
melifaro [Thu, 6 Nov 2014 15:17:04 +0000 (15:17 +0000)]
Finish r274118#2: commit forgotten uipc_debug.c

9 years agoFinish r274118: remove useless fields from struct domain.
melifaro [Thu, 6 Nov 2014 14:39:04 +0000 (14:39 +0000)]
Finish r274118: remove useless fields from struct domain.

Sponsored by: Yandex LLC

9 years agofifolog_writer does not depend on libutil
bapt [Thu, 6 Nov 2014 13:13:47 +0000 (13:13 +0000)]
fifolog_writer does not depend on libutil

9 years agoMake checks for rt_mtu generic:
melifaro [Thu, 6 Nov 2014 13:13:09 +0000 (13:13 +0000)]
Make checks for rt_mtu generic:

Some virtual if drivers has (ab)used ifa ifa_rtrequest hook to enforce
route MTU to be not bigger that interface MTU. While ifa_rtrequest hooking
might be an option in some situation, it is not feasible to do MTU checks
there: generic (or per-domain) routing code is perfectly capable of doing
this.

We currrently have 3 places where MTU is altered:

1) route addition.
 In this case domain overrides radix _addroute callback (in[6]_addroute)
 and all necessary checks/fixes are/can be done there.

2) route change (especially, GW change).
 In this case, there are no explicit per-domain calls, but one can
 override rte by setting ifa_rtrequest hook to domain handler
 (inet6 does this).

3) ifconfig ifaceX mtu YYYY
 In this case, we have no callbacks, but ip[6]_output performes runtime
 checks and decreases rt_mtu if necessary.

Generally, the goals are to be able to handle all MTU changes in
 control plane, not in runtime part, and properly deal with increased
 interface MTU.

This commit changes the following:
* removes hooks setting MTU from drivers side
* adds proper per-doman MTU checks for case 1)
* adds generic MTU check for case 2)

* The latter is done by using new dom_ifmtu callback since
 if_mtu denotes L3 interface MTU, e.g. maximum trasmitted _packet_ size.
 However, IPv6 mtu might be different from if_mtu one (e.g. default 1280)
 for some cases, so we need an abstract way to know maximum MTU size
 for given interface and domain.
* moves rt_setmetrics() before MTU/ifa_rtrequest hooks since it copies
  user-supplied data which must be checked.
* removes RT_LOCK_ASSERT() from other ifa_rtrequest hooks to be able to
  use this functions on new non-inserted rte.

More changes will follow soon.

MFC after: 1 month
Sponsored by: Yandex LLC

9 years agofifolog_reader does not depend on libutil
bapt [Thu, 6 Nov 2014 13:12:12 +0000 (13:12 +0000)]
fifolog_reader does not depend on libutil

9 years agoAfter the changes in r274118 make NOIP kernels compile by hiding an
bz [Thu, 6 Nov 2014 12:19:39 +0000 (12:19 +0000)]
After the changes in r274118 make NOIP kernels compile by hiding an
otherwise unused variable declaration behind INET6 || INET.

MFC after: 27 days
X-MFS with: r274118

9 years agofix l2arc compression buffers leak
avg [Thu, 6 Nov 2014 11:08:02 +0000 (11:08 +0000)]
fix l2arc compression buffers leak

We have observed that arc_release() can be called concurrently with a
l2arc in-flight write.
Also, we have observed that arc_hdr_destroy() can be called from
arc_write_done() for a zio with ZIO_FLAG_IO_REWRITE flag in similar
circumstances.

Previously the l2arc headers would be freed while leaking their
associated compression buffers.  Now the buffers are placed on
l2arc_free_on_write list for delayed freeing.  This is similar to what
was already done to arc buffers that were supposed to be freed
concurrently with in-flight writes of those buffers.

In addition to fixing the discovered leaks this change also adds some
protective code to assert that a compression buffer associated with a
l2arc header is never leaked.

A new kstat l2_cdata_free_on_write is added.  It keeps a count of
delayed compression buffer frees which previously would have been leaks.

Tested by: Vitalij Satanivskij <satan@ukr.net> et al
Requested by: many
MFC after: 2 weeks
Sponsored by: HybridCluster / ClusterHQ

9 years agoiscsid does not need to link to libssl
bapt [Thu, 6 Nov 2014 10:30:10 +0000 (10:30 +0000)]
iscsid does not need to link to libssl

9 years agosntp does not depend on libm
bapt [Thu, 6 Nov 2014 10:16:05 +0000 (10:16 +0000)]
sntp does not depend on libm

9 years agorpcbind does not need to be linked to libutil
bapt [Thu, 6 Nov 2014 10:07:26 +0000 (10:07 +0000)]
rpcbind does not need to be linked to libutil

9 years agoAdd sysctl kern.proc.cwd
mjg [Thu, 6 Nov 2014 08:12:34 +0000 (08:12 +0000)]
Add sysctl kern.proc.cwd

It returns only current working directory of given process which saves a lot of
overhead over kern.proc.filedesc if given proc has a lot of open fds.

Submitted by: Tiwei Bie <btw mail.ustc.edu.cn> (slightly modified)
X-Additional: JuniorJobs project

9 years agofiledesc: avoid taking fdesc_mtx when not necessary in fddrop
mjg [Thu, 6 Nov 2014 07:44:10 +0000 (07:44 +0000)]
filedesc: avoid taking fdesc_mtx when not necessary in fddrop

No functional changes.

9 years agofiledesc: just free old tables without altering the list which is freed anyway
mjg [Thu, 6 Nov 2014 07:37:31 +0000 (07:37 +0000)]
filedesc: just free old tables without altering the list which is freed anyway

No functional changes.

9 years agoremove comment about the bug... I don't remeber what it was...
jmg [Thu, 6 Nov 2014 07:27:14 +0000 (07:27 +0000)]
remove comment about the bug... I don't remeber what it was...
It may be an issue w/ using awk which is in /usr (and isn't always
present), or another issue...

Suggestion by: brooks

9 years agoAdd include missed in r274154, breaking the buildworld.
mav [Thu, 6 Nov 2014 04:13:28 +0000 (04:13 +0000)]
Add include missed in r274154, breaking the buildworld.

9 years agoBump __FreeBSD_version after SA-14:23, SA-14:24,
gjb [Thu, 6 Nov 2014 02:41:38 +0000 (02:41 +0000)]
Bump __FreeBSD_version after SA-14:23, SA-14:24,
SA-14:25.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

9 years agoUpon second-thought (following r274144), remove spurious (unused)
dteske [Thu, 6 Nov 2014 01:46:33 +0000 (01:46 +0000)]
Upon second-thought (following r274144), remove spurious (unused)
line-noise (libdialog never lived in lib/ -- but rather the noise
came from translating a comment that was introduced 16 years ago
via r40306; translation from comment to code occurred via r267511).

MFC after: 3 days
Reviewed by: ngie
X-MFC-to: stable/10

9 years agoAdd to CTL support for logical block provisioning threshold notifications.
mav [Thu, 6 Nov 2014 00:48:36 +0000 (00:48 +0000)]
Add to CTL support for logical block provisioning threshold notifications.

For ZVOL-backed LUNs this allows to inform initiators if storage's used or
available spaces get above/below the configured thresholds.

MFC after: 2 weeks
Sponsored by: iXsystems, Inc.

9 years agoDocument that w(1) supports libxo(3).
marcel [Wed, 5 Nov 2014 23:59:52 +0000 (23:59 +0000)]
Document that w(1) supports libxo(3).

9 years agoConvert to use libxo.
marcel [Wed, 5 Nov 2014 23:54:33 +0000 (23:54 +0000)]
Convert to use libxo.

Obtained from:  Phil Shafer <phil@juniper.net>
Sponsored by:   Juniper Networks, Inc.

9 years agoCreate a directory for the PAM tests.
markj [Wed, 5 Nov 2014 22:50:33 +0000 (22:50 +0000)]
Create a directory for the PAM tests.

9 years agofsirand does not actually use libutil
bapt [Wed, 5 Nov 2014 22:46:11 +0000 (22:46 +0000)]
fsirand does not actually use libutil

9 years agoBalance DPADD against LDADD for dpv(1,3).
dteske [Wed, 5 Nov 2014 20:58:25 +0000 (20:58 +0000)]
Balance DPADD against LDADD for dpv(1,3).

Thanks to: ngie
MFC after: 21 days
X-MFC-to: stable/10 stable/9
X-MFC-with: 274116 274120 274121 274123 274144

9 years agoStaticize the test plans.
des [Wed, 5 Nov 2014 20:13:18 +0000 (20:13 +0000)]
Staticize the test plans.

9 years agoFix code-typo; introduced by r267511
dteske [Wed, 5 Nov 2014 19:54:14 +0000 (19:54 +0000)]
Fix code-typo; introduced by r267511

MFC after: 3 days
X-MFC-to: stable/10

9 years agoExpect lib.libc.sys.getcontext_test.setcontext_link to fail on amd64; add
ngie [Wed, 5 Nov 2014 16:38:57 +0000 (16:38 +0000)]
Expect lib.libc.sys.getcontext_test.setcontext_link to fail on amd64; add
additional debugging to make the underlying problem more visible

Calling setcontext(2) on amd64 as shown in the test program is failing on
amd64, not i386, with a return code of -1 and an errno of EINVAL

Further investigation is being done in the PR to determine the root cause for
the failure

PR: 194828
Tested with the following configuration:
- amd64/i386
- 11.0-CURRENT @ r273153
- 100 times in a tight loop as root with the following commands...
-- kyua test lib/libc
-- kyua test lib/libc/sys
-- kyua test lib/libc/sys/getcontext_test

9 years agoRemove expected failure from lib.libc.sys.t_mincore:mincore_resid
ngie [Wed, 5 Nov 2014 16:30:02 +0000 (16:30 +0000)]
Remove expected failure from lib.libc.sys.t_mincore:mincore_resid

The failure was added based on observation seen on 11.0-CURRENT @ r273153, not
based on internal testing at EMC/Isilon

PR: 194829
Tested with the following configuration:
- amd64/i386
- 11.0-CURRENT @ r273153
- 100 times in a tight loop as root with the following commands...
-- kyua test lib/libc
-- kyua test lib/libc/sys
-- kyua test lib/libc/sys/mincore_test

9 years agoHook up OpenPAM's own unit tests to the build.
des [Wed, 5 Nov 2014 16:13:42 +0000 (16:13 +0000)]
Hook up OpenPAM's own unit tests to the build.

9 years agoftp(1) uses nothing from libutil, do not link to it
bapt [Wed, 5 Nov 2014 15:32:57 +0000 (15:32 +0000)]
ftp(1) uses nothing from libutil, do not link to it

9 years agoid(1) only uses getaudit(2) from the BSM which is part of the libc
bapt [Wed, 5 Nov 2014 15:03:58 +0000 (15:03 +0000)]
id(1) only uses getaudit(2) from the BSM which is part of the libc

9 years agoNothing in iconv(1) uses symbols from libcrypt
bapt [Wed, 5 Nov 2014 14:55:01 +0000 (14:55 +0000)]
Nothing in iconv(1) uses symbols from libcrypt

9 years agoAvoid installing security.functions with executable bits, periodic(8) will
bapt [Wed, 5 Nov 2014 06:42:07 +0000 (06:42 +0000)]
Avoid installing security.functions with executable bits, periodic(8) will
try to execute all files with an executable bit in /etc/periodic/*/ while
this file is supposed only to be sourced by others

MFC after: 1 week

9 years agoAdd support for netmap in GENERIC by default.
gnn [Wed, 5 Nov 2014 06:22:37 +0000 (06:22 +0000)]
Add support for netmap in GENERIC by default.

9 years agoIn alloc_pread() and kern_pread(), print errors only when DEBUG is
marcel [Wed, 5 Nov 2014 04:18:41 +0000 (04:18 +0000)]
In alloc_pread() and kern_pread(), print errors only when DEBUG is
defined. An error is not fatal and is supposed to be handled by the
caller.

Obtained from: Juniper Networks, Inc.

9 years agoDocument that wc(1) supports libxo(3).
marcel [Wed, 5 Nov 2014 04:09:10 +0000 (04:09 +0000)]
Document that wc(1) supports libxo(3).

9 years agoConvert to use libxo.
marcel [Wed, 5 Nov 2014 04:02:25 +0000 (04:02 +0000)]
Convert to use libxo.

Obtained from: Phil Shafer <phil@juniper.net>
Sponsored by: Juniper Networks, Inc.

9 years agoTemporarily _disable_ compilation of dpv(3) and dpv(1).
dteske [Wed, 5 Nov 2014 02:58:02 +0000 (02:58 +0000)]
Temporarily _disable_ compilation of dpv(3) and dpv(1).
Will revisit this to find out how to solve the ordering
issue in buildworld (potentially `make -j' specific).

Reviewed by: shurd

9 years agoFix buildworld by adding DPADD= to libdpv [dpv(3)] Makefile
dteske [Wed, 5 Nov 2014 02:36:28 +0000 (02:36 +0000)]
Fix buildworld by adding DPADD= to libdpv [dpv(3)] Makefile
NB: Should also address `make -j' building
Remove "+" from "+=" in assignments to DPADD/LDADD while here.
NB: Also move CFLAGS for style measure.

Reviewed by: shurd
MFC after: 21 days
X-MFC-to: stable/10 stable/9
X-MFC-with: 274116 274120 274121

9 years agoExtend struct ucred with group table.
mjg [Wed, 5 Nov 2014 02:08:37 +0000 (02:08 +0000)]
Extend struct ucred with group table.

This saves one malloc + free with typical cases and better utilizes
memory.

Submitted by: Tiwei Bie <btw mail.ustc.edu.cn> (slightly modified)
X-Additional: JuniorJobs project

9 years agoMake libdpv [dpv(3)] WARNS=6 clean for clang on -CURRENT.
dteske [Wed, 5 Nov 2014 01:57:32 +0000 (01:57 +0000)]
Make libdpv [dpv(3)] WARNS=6 clean for clang on -CURRENT.
NB: aka unbreak the build

Reviewed by: shurd
MFC after: 21 days
X-MFC-to: stable/10 stable/9
X-MFC-with: 274116 274120

9 years agoFix build-error (pointy hat; didn't merge full up-to-date code)
dteske [Wed, 5 Nov 2014 01:47:25 +0000 (01:47 +0000)]
Fix build-error (pointy hat; didn't merge full up-to-date code)

MFC after: 21 days
X-MFC-to: stable/10 stable/9
X-MFC-with: 274116

9 years agoAdd EXAMPLES-section entry for new key+=append syntax of sysrc(8).
dteske [Wed, 5 Nov 2014 01:24:44 +0000 (01:24 +0000)]
Add EXAMPLES-section entry for new key+=append syntax of sysrc(8).

MFC after: 3 days
X-MFC-to: stable/10 stable/9
X-MFC-with: 274068
Thanks to: @SeanChittenden

9 years agoRemove old hack abusing domattach from NFS code.
melifaro [Wed, 5 Nov 2014 00:58:01 +0000 (00:58 +0000)]
Remove old hack abusing domattach from NFS code.

According to IANA RPC uaddr registry, there are no AFs
except IPv4 and IPv6, so it's not worth being too abstract here.

Remove ne_rtable[AF_MAX+1] and use explicit per-AF radix tries.
Use own initialization without relying on domattach code.

While I admit that this was one of the rare places in kernel
networking code which really was capable of doing multi-AF
without any AF-depended code, it is not possible anymore to
rely on dom* code.

While here, change terrifying "Invalid radix node head, rn:" message,
to different non-understandable "netcred already exists for given addr/mask",
but less terrifying. Since we know that rn_addaddr() returns NULL if
the same record already exists, we should provide more friendly error.

MFC after: 1 month

9 years agovt(4): Support syscons' SC_HISTORY_SIZE to configure history size
dumbbell [Tue, 4 Nov 2014 23:51:35 +0000 (23:51 +0000)]
vt(4): Support syscons' SC_HISTORY_SIZE to configure history size

Therefore, to set histry size to 2000 lines, add the following line to
your kernel configuration file:
    options SC_HISTORY_SIZE=2000

The default history remains at 500 lines.

MFC after: 1 week