SVNews

NOTE: This service is experimental and subject to change! Use at your own risk!

Year:   Month: - or - Filter committers: - or -
Filter paths:
Include diffs if smaller than lines.

2012 - 02 - 04   (today)
13:45:39 - r230980
( 16 minutes ago)
by rmh
Affects:  /head/sys/amd64/conf/WITHOUT_SOURCELESS_UCODE
/head/sys/i386/conf/WITHOUT_SOURCELESS_UCODE
Add "nodevice adw" to WITHOUT_SOURCELESS_UCODE.

Approved by:    kib (mentor)
MFC after:      13 days
13:37:31 - r230979
( 24 minutes ago)
by jh
Affects:  /head/usr.bin/touch/touch.1
/head/usr.bin/touch/touch.c
Remove useless and potentially dangerous rw() function which tries to
update access and modification times by reading and writing the file.
chmod(2) in rw() doesn't help because utimes(2) allow owner and the
super-user to change times. Using just utimes(2) should be sufficient.

The -f option becomes no-op.

Reviewed by:    jilles
13:12:52 - r230978
( 48 minutes ago)
by kib
Affects:  /head/usr.sbin/boot0cfg/boot0cfg.8
Be as explicit as possible when describing relation between the -m mask
argument and slices. Adjust example for the same reason.

Submitted by:   Valentin Nechayev <netch netch kiev ua>
MFC after:      3 days
08:03:01 - r230977
(5 hours 58 minutes ago)
by joel
Affects:  /head/share/man/man7/hier.7
Add /usr/src/cddl/ to the hierarchy.
07:59:12 - r230976
(6 hours 2 minutes ago)
by pjd
Affects:  /head/sbin/hastd/parse.y
Fix typo in comment.

MFC after:      3 days
04:31:28 - r230975
(9 hours 30 minutes ago)
by pfg
Affects: 
(2 files)
/stable/9/lib/libvgl/simple.c
MFC:    r229415, r229516

Integrate the line drawing algorithm from the book "Graphic Gems 1".

http://www.graphicsgems.org/

At the time it claimed to be 3-4 times faster than the traditional
algorithm.

Make sure this doesn't give problems to clang.

PR:             18769
Approved by:    jhb (mentor)
03:08:23 - r230974
(10 hours 53 minutes ago)
by rmacklem
Affects: 
(4 files)
/projects/nfsv4.1-client/sys/fs/nfs/*
/projects/nfsv4.1-client/sys/fs/nfsclient/*
Replace length with end offset in the nfsclflayout structure and keep
the layouts that can be used for writing on a separate list from the
ones that are for reading. These changes make it easier to find the
correct layout(s) to use for reading or writing from/to the DS.
This layout handling code is not yet tested.
02:00:33 - r230973
(12 hours 1 minute ago)
by rmacklem
Affects: 
(5 files)
/projects/nfsv4.1-client/sys/fs/nfs/*
/projects/nfsv4.1-client/sys/fs/nfsclient/nfs_clcomsubs.c
Add NFSPROC_WRITEDS to be used for a write to an NFSv4.1 Data Server (DS).
This is needed, since NFSPROC_WRITE includes a Getattr operation and
Getattr is not supported by a DS.
00:54:43 - r230972
(13 hours 6 minutes ago)
by rmh
Affects: 
(14 files)
/head/share/mk/bsd.own.mk
/head/sys/*
/head/tools/build/options/*
Add MK_SOURCELESS build option. Setting MK_SOURCELESS to "no" will disable
kernel modules that include binary-only code.

More fine-grained control is provided via MK_SOURCELESS_HOST (for native code
that runs on host CPU) and MK_SOURCELESS_UCODE (for microcode).

Reviewed by:    julian, delphij, freebsd-arch
Approved by:    kib (mentor)
MFC after:      2 weeks
2012 - 02 - 03   (yesterday)
23:36:08 - r230971
(14 hours 25 minutes ago)
by dim
Affects:  /stable/9/Makefile.inc1
MFC r230622:

When the buildkernel stage 2.3 (build tools) runs, the PATH is still set
to the default from the top-level Makefile.  Therefore, invocations of
lex and yacc (used during building of aicasm) will use the executables
in /usr/bin, not those optionally built during the previous buildworld
or kernel-toolchain.  This makes kernel builds from older FreeBSD
releases more difficult than necessary.

Fix this by setting PATH to ${BPATH}:${PATH} in stage 2.3, so the
bootstrap tools directories are searched before the regular ones.

Silence from:   svn-src-{all,head}
23:35:39 - r230970
(14 hours 26 minutes ago)
by pfg
Affects: 
(3 files)
/stable/8/sbin/newfs_msdos/newfs_msdos.8
/stable/8/sbin/newfs_msdos/newfs_msdos.c
MFC:    r228740

Many style fixes.
Remove C99 initializers: they don't help in this case.
Set errno to 0 before strtoll() (from NetBSD).

PR:             151850
Suggested by:   bde
Approved by:    jhb (Mentor)
23:32:22 - r230969
(14 hours 29 minutes ago)
by dim
Affects: 
(2 files)
/stable/9/contrib/llvm/lib/Target/X86/X86InstrCompiler.td
MFC r230393:

Pull in r148240 from upstream llvm trunk:

  Make sure the non-SSE lowering for fences correctly clobbers EFLAGS.
  PR11768.

In particular, this fixes segfaults during the build of devel/icu on
i386.  The __sync_synchronize() builtin used for implementing icu's
internal barrier could lead to incorrect behaviour.
23:27:07 - r230968
(14 hours 34 minutes ago)
by dim
Affects: 
(2 files)
/stable/7/sys/contrib/rdma/ib_addr.h
MFC r229753:

In sys/contrib/rdma/ib_addr.h, bump MAX_ADDR_LEN to 20 bytes (the same
value used in sys/ofed/include/linux/netdevice.h), so there will be no
buffer overruns in the rest of the inline functions in this file.

Reviewed by:    kmacy
23:08:58 - r230967
(14 hours 52 minutes ago)
by dim
Affects: 
(2 files)
/stable/8/sys/contrib/rdma/ib_addr.h
MFC r229753:

In sys/contrib/rdma/ib_addr.h, bump MAX_ADDR_LEN to 20 bytes (the same
value used in sys/ofed/include/linux/netdevice.h), so there will be no
buffer overruns in the rest of the inline functions in this file.

Reviewed by:    kmacy
23:07:26 - r230966
(14 hours 54 minutes ago)
by dim
Affects: 
(2 files)
/stable/9/sys/contrib/rdma/ib_addr.h
MFC r229753:

In sys/contrib/rdma/ib_addr.h, bump MAX_ADDR_LEN to 20 bytes (the same
value used in sys/ofed/include/linux/netdevice.h), so there will be no
buffer overruns in the rest of the inline functions in this file.

Reviewed by:    kmacy
23:00:28 - r230965
(15 hours 1 minute ago)
by pfg
Affects: 
(12 files)
/stable/8/sys/*
MFC:     r229981, r230898

Replace a GPL'd header in the emu10kx snd driver code.

This uses the emuxkireg.h already used in the emu10k1
snd driver. Special thanks go to Alexander Motin as
he was able to find some errors and reverse engineer
some wrong values in the emuxkireg header.

While here also merge some cleanups to the module Makefile.

PR:             153901
Obtained from:  NetBSD
Approved by:    core (mentor implicit)
22:39:04 - r230964
(15 hours 22 minutes ago)
by pfg
Affects: 
(13 files)
/stable/9/sys/*
MFC:     r229981, r230898

Replace a GPL'd header in the emu10kx snd driver code.

This uses the emuxkireg.h already used in the emu10k1
snd driver. Special thanks go to Alexander Motin as
he was able to find some errors and reverse engineer
some wrong values in the emuxkireg header.

While here also merge some cleanups to the module Makefile.

PR:             153901
Obtained from:  NetBSD
Approved by:    core (mentor implicit)
22:13:36 - r230963
(15 hours 48 minutes ago)
by pfg
Affects: 
(6 files)
/stable/8/sys/conf/files
/stable/8/sys/dev/sound/pci/*
/stable/8/sys/modules/sound/driver/emu10k1/Makefile
MFC:     r229430, r229980

Replace a GPL'd header in the emu10k1 snd driver code.

This brings in the emuxkireg.h from NetBSD (dev/pci) which
is used for the same purpose but is smaller. The emu10k1
is now free from the GPL.

While here also merge some cleanups to the module Makefile.

PR:             153901
Obtained from:  NetBSD
Approved by:    core (mentor implicit)
22:06:27 - r230962
(15 hours 55 minutes ago)
by pfg
Affects: 
(7 files)
/stable/9/sys/conf/files
/stable/9/sys/dev/sound/pci/*
/stable/9/sys/modules/sound/driver/emu10k1/Makefile
MFC:     r229430, r229980

Replace a GPL'd header in the emu10k1 snd driver code.

This brings in the emuxkireg.h from NetBSD (dev/pci) which
is used for the same purpose but is smaller. The emu10k1
is now free from the GPL.

While here also merge some cleanups to the module Makefile.

PR:             153901
Obtained from:  NetBSD
Approved by:    core (mentor implicit)
21:38:23 - r230961
(16 hours 23 minutes ago)
by pfg
Affects: 
(2 files)
/stable/9/usr.bin/printf/printf.c
MFC:    r230027

Style cleanups for printf.

PR:             bin/152934
Approved by:    jhb (mentor)
Obtained from:  Illumos
21:30:31 - r230960
(16 hours 31 minutes ago)
by pfg
Affects: 
(16 files)
/stable/8/contrib/libstdc++/*
MFC:    r228780

Update libstdc++ with small changes up to the latest rev. (135556)
from the gcc 4.2 branch.
The libraries in the gcc-4_2-branch remained under the LGPLv2.

Reviewed by:    mm
Approved by:    jhb (mentor)
21:26:25 - r230959
(16 hours 35 minutes ago)
by pfg
Affects: 
(3 files)
/stable/8/contrib/gcc/ChangeLog.gcc43
/stable/8/contrib/gcc/builtins.c
MFC:    r228756

Clean an inconsistency with -ffinite-math-only.
Backported from the gcc-4_3-branch, revision (118001)
under the GPLv2.
This issue was also fixed in Apple's gcc.

PR:             157025
Reviewed by:    mm
Approved by:    jhb (mentor)
21:24:28 - r230958
(16 hours 37 minutes ago)
by jkim
Affects:  /head/sys/amd64/acpica/acpi_switch.S
Restore callee saved registers later and micro-optimize.
21:21:00 - r230957
(16 hours 40 minutes ago)
by jkim
Affects:  /head/sys/amd64/acpica/acpi_wakeup.c
Fix a function prototype to reflect reality.  No functional change.
20:27:14 - r230956
(17 hours 34 minutes ago)
by jilles
Affects: 
(2 files)
/stable/9/tools/regression/pipe/pipe-reverse2.c
MFC r228512: Add test for r228510 (MFC'ed as r230955).
20:24:18 - r230955
(17 hours 37 minutes ago)
by jilles
Affects: 
(2 files)
/stable/9/sys/kern/sys_pipe.c
MFC r228510: Fix select/poll/kqueue for write on reverse direction before
first write.

The reverse direction of a pipe is lazily allocated on the first write in
that direction (because pipes are usually used in one direction only).  A
special case is needed to ensure the pipe appears writable before the first
write because there are 0 bytes of pending data in 0 bytes of buffer space
at that point, leaving 0 bytes of data that can be written with the normal
code.

Note that the first write returns [ENOMEM] if kern.ipc.maxpipekva is
exceeded and does not block or return [EAGAIN], so selecting true for write
is correct even in that case.

PR:             kern/93685
20:20:30 - r230954
(17 hours 41 minutes ago)
by kib
Affects:  /svnadmin/conf/mentors
tijl is on his own now.

Approved by:    core (implicit)
18:48:40 - r230953
(19 hours 13 minutes ago)
by ed
Affects: 
(3 files)
/stable/9/sys/net/if.h
/stable/9/sys/netinet/tcp.h
MFC r226610:

  Add missing #includes.

  According to POSIX, these two header files should be able to be included
  by themselves, not depending on other headers. The <net/if.h> header
  uses struct sockaddr when __BSD_VISIBLE=1, while <netinet/tcp.h> uses
  integer datatypes (u_int32_t, u_short, etc).
17:50:39 - r230952
(20 hours 11 minutes ago)
by ed
Affects: 
(2 files)
/stable/9/lib/libpam/modules/pam_lastlog/pam_lastlog.c
MFC r227314:

  Ensure pam_lastlog removes the /dev/ component of the TTY name.

  Some consumers of PAM remove the /dev/ component (i.e. login), while
  others don't (i.e. su). We must ensure that the /dev/ component is
  removed to ensure that the utmpx entries properly work with tools such
  as w(1).
17:36:32 - r230951
(20 hours 25 minutes ago)
by ed
Affects: 
(2 files)
/stable/9/Makefile.inc1
MFC r226785:

  Attempt to fix build logic for gensnmptree.

  There are two problems with the existing logic. It builds gensnmptree
  on <700018, even if WITHOUT_BSNMP is set, but more importantly, we must
  not forget to build gensnmptree on systems that have originally been
  built without. This causes a buildworld on those systems to fail.
15:39:13 - r230950
(22 hours 22 minutes ago)
by bz
Affects:  /projects/multi-fibv6/head/sys/netinet/sctp_os_bsd.h
Document the fact that multi-FIB support for SCTP had been backed out
in r179783 as (ab)using the concept of VRFs for this had not worked.
At this point SCTP in FreeBSD does not support multi-FIB, neither for
IPv4 nor for IPv6.

Discussed with: rrs
Sponsored by:   Cisco Systems, Inc.
15:33:55 - r230949
(22 hours 27 minutes ago)
by bz
Affects:  /projects/multi-fibv6/head/share/man/man4/faith.4
Document the fact that faith(4) is only available on the default FIB.

Sponsored by:   Cisco Systems, Inc.
15:31:47 - r230948
(22 hours 29 minutes ago)
by bz
Affects:  /projects/multi-fibv6/head/etc/rc.d/routing
Install the IPv6 reject routes we do for the default FIB to all FIBs.

Sponsored by:   Cisco Systems, Inc.
15:26:55 - r230947
(22 hours 34 minutes ago)
by bz
Affects:  /projects/multi-fibv6/head/usr.bin/netstat/route.c
Teach netstat -r (display contents of routing tables) about multi-FIB for
IPv6 in addition to IPv4.
While here harmonize naming of variables a bit with what we use in kernel.

Sponsored by:   Cisco Systems, Inc.
13:54:25 - r230946
(1 day ago)
by bz
Affects:  /projects/multi-fibv6/head/contrib/pf/pfctl/parse.y
Fix the upper limit bounds checking for the "rtables" keyword wrapping
it in a function to dynamically query the currently supported number
of FIBs by the kernel for FreeBSD.

Sponsored by:   Cisco Systems, Inc.
13:40:51 - r230945
(1 day ago)
by mm
Affects:  /head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c
Revert r230913 and r230914.

The initialization was correct, the problem needs deeper analysis.
13:20:48 - r230944
(1 day ago)
by bz
Affects: 
(5 files)
/projects/multi-fibv6/head/sys/contrib/pf/net/*
Extend IPv6 routing lookups in pf(4) to use the new multi-FIB KPI.

Try to make the "rtable" handling work but the current version of
pf(4) does not fully support it yet as especially callers of
PF_MISMATCHAW() are not fully FIB-aware.  OpenBSD seems to have
fixed this in a later version.  Prepare as much as possible.

Sponsored by:   Cisco Systems, Inc.
13:12:42 - r230943
(1 day ago)
by bz
Affects:  /projects/multi-fibv6/head/sys/netinet/ipfw/ip_fw2.c
Make ipfw verify_path6() multi-FIB aware.

The "fib" and "setfib" keywords implementations need no adjustments.

Sponsored by:   Cisco Systems, Inc.
13:08:44 - r230942
(1 day ago)
by bz
Affects: 
(22 files)
/projects/multi-fibv6/head/sys/*
Add multi-FIB IPv6 support to the core network stack supplementing
the original IPv4 implementation from r178888:

- Use RT_DEFAULT_FIB in the IPv4 implementation where noticed.
- Use rt*fib() KPI with explicit RT_DEFAULT_FIB where applicable in
  the NFS code.
- Use the new in6_rt* KPI in TCP, gif(4), and the IPv6 network stack
  where applicable.
- Split in6_rtqtimo() and in6_mtutimo() as done in IPv4 and equally
  prevent multiple initializations of callouts in in6_inithead().
- Use wrapper functions where needed to preserve the current KPI to
  ease MFCs.  Use BURN_BRIDGES to indicate expected future cleanup.
- Fix (related) comments (both technical or style).
- Convert to rtinit() where applicable and only use custom loops where
  currently not possible otherwise.
- Multicast group, most neighbor discovery address actions and faith(4)
  are locked to the default FIB.  Individual IPv6 addresses will only
  appear in the default FIB, however redirect information and prefixes
  of connected subnets are automatically propagated to all FIBs by
  default (mimicking IPv4 behavior as closely as possible).

Sponsored by:   Cisco Systems, Inc.
12:39:04 - r230941
(1 day 1 hour ago)
by gabor
Affects: 
(5 files)
/user/gabor/tre-integration/contrib/tre/lib/*
/user/gabor/tre-integration/include/mregex.h
- Add some work-in-progress code for the multiple pattern interface and the
  Wu-Manber algorithm
12:25:14 - r230940
(1 day 1 hour ago)
by bz
Affects:  /projects/multi-fibv6/head/sys/net/route.c
/projects/multi-fibv6/head/sys/net/route.h
Move a comment from rtinit1() to the top of the file where dealing with
the (maximum) number of FIBs trying to clarify that evetually FIBs
should probably attached to domain(9) specific storage. [1]

Add a comment on a limitimation on the rt_add_addr_allfibs option.

Use RT_DEFAULT_FIB instead of 0 where applicable.

Add empty line to functions without local variables per style.

Put public yet unused in-tree function rtinit_fib() under BURN_BRIDGES
to indicate that it might go away in the future.

No functional change.

Discussed with: julian [1] (clarification on what the original one meant)
Sponsored by:   Cisco Systems, Inc.
11:20:11 - r230939
(1 day 2 hours ago)
by bz
Affects:  /projects/multi-fibv6/head/sys/net/route.c
Minor optimization doing input validation with a possible early return
before doing further work.

Sponsored by:   Cisco Systems, Inc.
11:00:53 - r230938
(1 day 3 hours ago)
by bz
Affects:  /projects/multi-fibv6/head/sys/kern/uipc_socket.c
/projects/multi-fibv6/head/sys/netinet6/ip6_output.c
/projects/multi-fibv6/head/sys/netinet6/raw_ip6.c
Add SO_SETFIB option support on PF_INET6 sockets and allow inheriting the
FIB number from the process, as set by setfib(2), on socket creation.

Sponsored by:   Cisco Systems, Inc.
10:17:34 - r230937
(1 day 3 hours ago)
by bz
Affects:  /projects/multi-fibv6/head/sys/net/flowtable.c
/projects/multi-fibv6/head/sys/net/route.c
Fix FLOWTABLE IPv6 handling in route.c missed in r205066.

While doing so, for consistency with the rtalloc_ign_fib(9) interface
called, remove the "in_" prefix from rtalloc_ign_wrapper() no longer
indicating that it would only handle the INET case.

Sponsored by:   Cisco Systems, Inc.
09:33:58 - r230936
(1 day 4 hours ago)
by bz
Affects:  /projects/multi-fibv6/head/sys/netinet6/in6_rmx.c
/projects/multi-fibv6/head/sys/netinet6/in6_var.h
Provide the IPv6 counterpart to the extended IPv4 rtalloc(9) KPI.

Sponsored by:   Cisco Systems, Inc.
09:23:55 - r230935
(1 day 4 hours ago)
by bz
Affects:  /projects/multi-fibv6/head/sys/net/route.c
Allow for IPv6 to allocate (and in the VIMAGE case free) as many routing
tables (FIBs) as IPv4.
Prepare various general rt* functions for multi-FIB IPv6 handling in
addition to already existing multi-FIB IPv4 cases.

Sponsored by:   Cisco Systems, Inc.
09:07:53 - r230934
(1 day 4 hours ago)
by pluknet
Affects:  /head/usr.bin/fstat/fstat.c
Print the owner process for unix domain sockets when restricted to the
specified files.

PR:             bin/143962
MFC after:      2 weeks
09:06:24 - r230933
(1 day 4 hours ago)
by bz
Affects:  /projects/multi-fibv6/head/sys/net/route.h
Rather than putting magic 0s as FIB argument into the rt* calls, provide
a macro RT_DEFAULT_FIB defined to 0 to more easily identify the cases
tied to the default FIB.

Sponsored by:   Cisco Systems, Inc.
08:50:19 - r230932
(1 day 5 hours ago)
by bz
Affects:  /projects/multi-fibv6/head/sys/netinet6/in6.c
In preparation for multi-FIB IPv6 support, factor the code for joining
and leaving multicast groups out from in6_update_ifa() and in6_purgeaddr().

Sponsored by:   Cisco Systems, Inc.
05:00:43 - r230931
(1 day 9 hours ago)
by jfv
Affects: 
(4 files)
/stable/8/sys/dev/ixgbe/*
MFC did not get the new files...
03:41:43 - r230930
(1 day 10 hours ago)
by rmacklem
Affects: 
(7 files)
/stable/8/sys/*
MFC: r230345
Martin Cracauer reported a problem to freebsd-current@ under the
subject "Data corruption over NFS in -current". During investigation
of this, I came across an ugly bogusity in the new NFS client where
it replaced the cr_uid with the one used for the mount. This was
done so that "system operations" like the NFSv4 Renew would be
performed as the user that did the mount. However, if any other
thread shares the credential with the one doing this operation,
it could do an RPC (or just about anything else) as the wrong cr_uid.
This patch fixes the above, by using the mount credentials instead of
the one provided as an argument for this case. It appears
to have fixed Martin's problem.
This patch is needed for NFSv4 mounts and NFSv3 mounts against
some non-FreeBSD servers that do not put post operation attributes
in the NFSv3 Statfs RPC reply.
03:11:08 - r230929
(1 day 10 hours ago)
by bz
Affects: 
(2 files)
/projects/multi-fibv6/head
Create a working branch for the implementation of multi-FIB IPv6 support.

Sponsored by:   Cisco Systems, Inc.
03:05:41 - r230928
(1 day 10 hours ago)
by rmacklem
Affects: 
(15 files)
/stable/9/sys/*
MFC: r230345
Martin Cracauer reported a problem to freebsd-current@ under the
subject "Data corruption over NFS in -current". During investigation
of this, I came across an ugly bogusity in the new NFS client where
it replaced the cr_uid with the one used for the mount. This was
done so that "system operations" like the NFSv4 Renew would be
performed as the user that did the mount. However, if any other
thread shares the credential with the one doing this operation,
it could do an RPC (or just about anything else) as the wrong cr_uid.
This patch fixes the above, by using the mount credentials instead of
the one provided as an argument for this case. It appears
to have fixed Martin's problem.
This patch is needed for NFSv4 mounts and NFSv3 mounts against
some non-FreeBSD servers that do not put post operation attributes
in the NFSv3 Statfs RPC reply.

Tested by:      cracauer at cons.org, dim
02:15:59 - r230927
(1 day 11 hours ago)
by rmacklem
Affects:  /projects/nfsv4.1-client/sys/fs/nfsclient/nfs_clrpcops.c
/projects/nfsv4.1-client/sys/fs/nfsclient/nfs_clstate.c
Add the macro that does mtx_destroy() to the code that frees up
Date Server (DS) information structures.
02:06:14 - r230926
(1 day 11 hours ago)
by rpaulo
Affects:  /head/sys/net80211/ieee80211_mesh.c
Whitespace removal.
01:59:16 - r230925
(1 day 12 hours ago)
by rmacklem
Affects:  /projects/nfsv4.1-client/sys/fs/nfsclient/nfs_clrpcops.c
Fix a couple of "if (error)" cases for the new NFSv4.1 code.
01:36:02 - r230924
(1 day 12 hours ago)
by jfv
Affects: 
(28 files)
/stable/8/sys/*
MFC of the latest ixgbe driver.

Revisions included:
209602,209603,209607,209609,209622,215911,
215913,215914,215924,217129,217556,222588,
222592,225405,229767,230329,230775,230790
2012 - 02 - 02   (2 days ago)
21:04:24 - r230923
(1 day 16 hours ago)
by adrian
Affects:  /head/tools/tools/ath/athradar/athradar.c
Add some missing radar config parameters to athradar.
19:03:29 - r230922
(1 day 18 hours ago)
by ken
Affects: 
(31 files)
/stable/8/sys/*
MFC 230592:

Bring in the LSI-supported version of the mps(4) driver.

This involves significant changes to the mps(4) driver, but is not a
complete rewrite.

Some of the changes in this version of the driver:
 - Integrated RAID (IR) support.
 - Support for WarpDrive controllers.
 - Support for SCSI protection information (EEDP).
 - Support for TLR (Transport Level Retries), needed for tape drives.
 - Improved error recovery code.
 - ioctl interface compatible with LSI utilities.

mps.4:          Update the mps(4) driver man page somewhat for the driver
                changes.  The list of supported hardware still needs to be
                updated to reflect the full list of supported cards.

conf/files:     Add the new driver files.

mps/mpi/*:      Updated version of the MPI header files, with a BSD style
                copyright.

mps/*:          See above for a description of the new driver features.

modules/mps/Makefile:
                Add the new mps(4) driver files.

Submitted by:   Kashyap Desai <Kashyap.Desai@lsi.com>
Sponsored by:   LSI, Spectra Logic
Reviewed by:    ken
19:02:15 - r230921
(1 day 18 hours ago)
by mav
Affects:  /head/sys/cam/ata/ata_da.c
/head/sys/cam/scsi/scsi_da.c
Insert ordered command every 1/4 of the current command timeout, not 1/4
of the default one.

Without this change setting kern.cam.ada.default_timeout to 1 instead of 30
allowed me to trigger several false positive command timeouts under heavy
ZFS load on a SiI3132 siis(4) controller with 5 HDDs on a port multiplier.

MFC after:      1 week
19:01:41 - r230920
(1 day 18 hours ago)
by ken
Affects: 
(40 files)
/stable/9/sys/*
MFC 230592:

Bring in the LSI-supported version of the mps(4) driver.

This involves significant changes to the mps(4) driver, but is not a
complete rewrite.

Some of the changes in this version of the driver:
 - Integrated RAID (IR) support.
 - Support for WarpDrive controllers.
 - Support for SCSI protection information (EEDP).
 - Support for TLR (Transport Level Retries), needed for tape drives.
 - Improved error recovery code.
 - ioctl interface compatible with LSI utilities.

mps.4:          Update the mps(4) driver man page somewhat for the driver
                changes.  The list of supported hardware still needs to be
                updated to reflect the full list of supported cards.

conf/files:     Add the new driver files.

mps/mpi/*:      Updated version of the MPI header files, with a BSD style
                copyright.

mps/*:          See above for a description of the new driver features.

modules/mps/Makefile:
                Add the new mps(4) driver files.

Submitted by:   Kashyap Desai <Kashyap.Desai@lsi.com>
Sponsored by:   LSI, Spectra Logic
Reviewed by:    ken
18:25:12 - r230919
(1 day 19 hours ago)
by trociny
Affects: 
(3 files)
/stable/9/usr.bin/limits/limits.1
/stable/9/usr.bin/limits/limits.c
MFC r230549:

Add -P option to allow get and set limits for other processes.

Submitted by:   Andrey Zonov <andrey at zonov.org>
18:22:25 - r230918
(1 day 19 hours ago)
by trociny
Affects: 
(6 files)
/stable/9/usr.bin/procstat/*
MFC r227956, r228090, r228446, r230471, r230548:

r227956:

Add -l flag to display resource limits.

PR:             bin/161257
Reviewed by:    kib

r228090:

Update SYNOPSIS to include the flags added recently.

Spotted by:     jhb

r228446:

Make procstat -l output similar to the output of limits(1).

Suggested by:   jhb

r230471, r230548:

Make procstat -l to work with the new version of kern.proc.rlimit.

Submitted by:   Andrey Zonov <andrey at zonov.org>
18:17:49 - r230917
(1 day 19 hours ago)
by trociny
Affects: 
(7 files)
/stable/9/usr.bin/procstat/*
MFC r227838, r227873, r228025, r228049, r228289, r228447, r230753:

r227838, r227873:

Add new options, -e and -x, to display process environment variables
and ELF auxiliary vectors.

r228025, r228049:

Make proctstat -x output more readable.

This also fixes the issue, spotted by mdf, with values that were
printed as decimal and had hex prefixes.

Discussed with: kib, rwatson

r228289:

Don't output a warning if kern.proc.auxv sysctl has returned EPERM.
After r228288 this is rather a normal situation.

r228447:

Make 64-bit procstat output ELF auxiliary vectors for 32-bit processes.

Reviewed by:    kib

r230753:

Always return 0 if the sysctl failed.

This fixes the bug: when procstat -xa was run and the sysctl for a
process returned ESRCH or EPERM, for this process procstat output the
result collected for the previous successful process.
17:54:35 - r230916
(1 day 20 hours ago)
by ken
Affects: 
(4 files)
/head/sys/conf/files
/head/sys/dev/xen/netback/netback.c
/head/sys/i386/include/xen/*
Fix the netback driver build for i386.

netback.c:      Add missing VM includes.

xen/xenvar.h,
xen/xenpmap.h:  Move some XENHVM macros from <machine/xen/xenpmap.h> to
                <machine/xen/xenvar.h> on i386 to match the amd64 headers.

conf/files:     Add netback to the build.

Submitted by:   jhb
MFC after:      3 days
17:25:39 - r230915
(1 day 20 hours ago)
by joel
Affects:  /head/sys/modules/sound/driver/emu10k1/Makefile
/head/sys/modules/sound/driver/emu10kx/Makefile
Remove leftovers from previous commits.

Approved by:    jhb
16:33:58 - r230914
(1 day 21 hours ago)
by mm
Affects:  /head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c
Add copyright information on last commits to comply with CDDL.

Discussed with: pluknet@
MFC after:      3 days
16:18:40 - r230913
(1 day 21 hours ago)
by mm
Affects:  /head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c
Fix out of bounds write causing random panics,
uncovered by the change in r230256

Reviewed by:    pluknet@
MFC after:      3 days
14:17:58 - r230912
(1 day 23 hours ago)
by mav
Affects:  /head/sys/cam/ata/ata_xpt.c
Make CAM ATA honor old hw.ata.ata_dma and hw.ata.atapi_dma tunables.

Even having more specific hint.ata.X.mode controls, global ones are
still could be useful from some points, including compatibility.

PR:             kern/164651
MFC after:      1 week
12:22:22 - r230911
(2 days 1 hour ago)
by gber
Affects:  /projects/armv6/sys/arm/arm/cpufunc.c
/projects/armv6/sys/arm/arm/cpufunc_asm_armv7.S
Fix getting cache level of coherency and remove Marvell specific code.

Submitted by:   Damjan Marion
11:18:34 - r230910
(2 days 2 hours ago)
by netchild
Affects: 
(23 files)
/user/netchild/linuxulator-dtrace/src/sys/amd64/*
/user/netchild/linuxulator-dtrace/src/sys/compat/linux/*
/user/netchild/linuxulator-dtrace/src/sys/i386/*
Preliminary patch for DTracifying the linuxulator:
 - internal locks
 - linux_dummy.c
 - linux_futex.c
 - linux_emul.c
 - linux_mib.c
 - linux_sysctl.c
 - linux_util.c
 - linux_uid16.c
 - linux_time.c
 - D script to check internal locks
 - D script to trace futexes
 - D script to generate stats for DTracified linuxulator parts
 - D script to check for errors:
   + emulation errors (unsupportet stuff, unknown stuff, ...)
   + kernel errors (resource shortage, ...)
   + programming errors (errors which can happen, but should not happen)

Not to be included in a MTC:
 - enabled DTRACE hooks and CTF compile in GENERIC

Make sure the linuxulator is compiled in or loaded as a module before sdt.ko.
You will get a panic if this is not respected (bug in dtrace-sdt to be
fixed before MTC).
10:40:24 - r230909
(2 days 3 hours ago)
by netchild
Affects:  /user/netchild/linuxulator-dtrace/src/sys
Overwrite my 3 year outdated linuxulator-dtrace branch with a full sys from
HEAD.
10:39:59 - r230908
(2 days 3 hours ago)
by netchild
Affects:  /user/netchild/linuxulator-dtrace/src
Create src directory.
10:37:35 - r230907
(2 days 3 hours ago)
by netchild
Affects:  /user/netchild/linuxulator-dtrace/src
Remove all sources to have a clean state.
10:35:39 - r230906
(2 days 3 hours ago)
by netchild
Affects:  /user/netchild/linuxulator-dtrace/src/sys/sys
Filehqndling in SVN sucks... remove.
10:34:04 - r230905
(2 days 3 hours ago)
by netchild
Affects:  /user/netchild/linuxulator-dtrace/src/sys/sys
Overwrite my 3 year outdated linuxulator-dtrace branch with a full sys from
HEAD.
10:33:17 - r230904
(2 days 3 hours ago)
by netchild
Affects:  /user/netchild/linuxulator-dtrace/sys
Ooops, missing subdirectory in server side copy, remove.
10:31:49 - r230903
(2 days 3 hours ago)
by netchild
Affects:  /user/netchild/linuxulator-dtrace/sys
Overwrite my 3 year outdated linuxulator-dtrace branch with a full sys from
HEAD.
07:38:40 - r230902
(2 days 6 hours ago)
by ken
Affects:  /head/sys/conf/files
Unbreak the i386 full PV (XEN kernel) build by reverting rev 230878 and
taking the netback driver out of the build temporarily.
06:39:33 - r230901
(2 days 7 hours ago)
by kib
Affects: 
(2 files)
/stable/8/sys/sys/elf_common.h
MFC r230783:
Add definition for PT_GNU_RELRO.
06:18:41 - r230900
(2 days 7 hours ago)
by kib
Affects: 
(2 files)
/stable/9/sys/sys/elf_common.h
MFC r230783:
Add definition for PT_GNU_RELRO.
04:20:33 - r230899
(2 days 9 hours ago)
by rmacklem
Affects:  /projects/nfsv4.1-client/sys/fs/nfs/nfsproto.h
/projects/nfsv4.1-client/sys/fs/nfsclient/nfs_clcomsubs.c
Add a flag to nfsm_stateidtom() so that it will put the stateid
on the wire with a seqid == 0. This is needed for NFSv4.1, where
stateid.seqid == 0 defines the stateid as the most recent
incarnation of the stateid.
00:10:20 - r230898
(2 days 13 hours ago)
by pfg
Affects:  /head/sys/modules/sound/driver/emu10k1/Makefile
/head/sys/modules/sound/driver/emu10kx/Makefile
/head/sys/modules/sound/driver/maestro3/Makefile
Cleanup some sound headers that don't need to be in the modules makefiles.

Approved by:    jhb (mentor)
MFC after:      1 week
2012 - 02 - 01   (3 days ago)
21:38:01 - r230897
(2 days 16 hours ago)
by pfg
Affects: 
(5 files)
/head/sys/conf/files
/head/sys/dev/sound/pci/*
/head/sys/gnu/dev
Use new OSS-based BSD-licensed header for cs sound driver.

The cs driver requires a table with firmware values. An
alternative firmware is available in a similar Open Sound
System driver. This is actually a partial revert of
Revision 77504.

Special thanks to joel@ for patiently testing several
replacement attempts.

The csa driver and the complete sound system are now free
of the GPL.

Tested by:      joel
Approved by:    jhb (mentor)
MFC after:      3 weeks
21:31:46 - r230896
(2 days 16 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r227980

Move to SCHED_ULE by default. Since r226057 SCHED_ULE and sparc64 are
compatible with each other and since r227539 the last issue seen when
using SCHED_ULE is fixed (MFC'ed to stable/9 in r230691 and r227714
respectively). At least on UP and 2-way machines SCHED_4BSD still
performs better than SCHED_ULE, however, the optimizations done in
r225889 (MFC'ed to stable/9 in r230673) pretty much compensate that so
there's at least no net regression.
Thanks go to Peter Jeremy for extensive testing.
21:28:16 - r230895
(2 days 16 hours ago)
by marius
Affects: 
(8 files)
/stable/8/sys/*
MFC: r230664

As it turns out r227960 (MFC'ed to stable/8 in r228145) may still be
insufficient with PREEMPTION so try harder to get the CDMA sync
interrupt delivered and also in a more efficient way:
- wrap the whole process of sending and receiving the CDMA sync
  interrupt in a critical section so we don't get preempted,
- send the CDMA sync interrupt to the CPU that is actually waiting
  for it to happen so we don't take a detour via another CPU,
- instead of waiting for up to 15 seconds for the interrupt to
  trigger try the whole process for up to 15 times using a one
  second timeout (the code was also changed to just ignore belated
  interrupts of a previous tries should they appear).

According to testing done by Peter Jeremy with the debugging also
added as part of this commit the first two changes apparently are
sufficient to now properly get the CDMA sync interrupts delivered
at the first try though.
21:28:13 - r230894
(2 days 16 hours ago)
by marius
Affects: 
(16 files)
/stable/9/sys/*
MFC: r230664

As it turns out r227960 (MFC'ed to stable/9 in r228126) may still be
insufficient with PREEMPTION so try harder to get the CDMA sync
interrupt delivered and also in a more efficient way:
- wrap the whole process of sending and receiving the CDMA sync
  interrupt in a critical section so we don't get preempted,
- send the CDMA sync interrupt to the CPU that is actually waiting
  for it to happen so we don't take a detour via another CPU,
- instead of waiting for up to 15 seconds for the interrupt to
  trigger try the whole process for up to 15 times using a one
  second timeout (the code was also changed to just ignore belated
  interrupts of a previous tries should they appear).

According to testing done by Peter Jeremy with the debugging also
added as part of this commit the first two changes apparently are
sufficient to now properly get the CDMA sync interrupts delivered
at the first try though.
21:24:06 - r230893
(2 days 16 hours ago)
by marius
Affects: 
(7 files)
/stable/8/sys/*
MFC: r230662

Fully disable interrupts while we fiddle with the FP context in the
VIS-based block copy/zero implementations. While with 4BSD it's
sufficient to just disable the tick interrupts, with ULE+PREEMPTION
it's otherwise also possible that these are preempted via IPIs.
21:24:03 - r230892
(2 days 16 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r230662

Fully disable interrupts while we fiddle with the FP context in the
VIS-based block copy/zero implementations. While with 4BSD it's
sufficient to just disable the tick interrupts, with ULE+PREEMPTION
it's otherwise also possible that these are preempted via IPIs.
21:19:54 - r230891
(2 days 16 hours ago)
by marius
Affects: 
(11 files)
/stable/8/sys/*
MFC: r230633, r230634

Now that we have a working OF_printf() since r230631 and a OF_panic()
helper since r230632 (MFC'ed to stable/8 in r230885 and r230887
respectively), use these for output and panicing during the early
cycles and move cninit() until after the static per-CPU data has
been set up. This solves a couple of issue regarding the non-
availability of the static per-CPU data:
- panic() not working and only making things worse when called,
- having to supply a special DELAY() implementation to the low-level
  console drivers,
- curthread accesses of mutex(9) usage in low-level console drivers
  that aren't conditional due to compiler optimizations (basically,
  this is the problem described in r227537 but in this case for
  keyboards attached via uart(4)). [1]

PR:     164123 [1]
21:19:52 - r230890
(2 days 16 hours ago)
by marius
Affects: 
(19 files)
/stable/9/sys/*
MFC: r230633, r230634

Now that we have a working OF_printf() since r230631 and a OF_panic()
helper since r230632 (MFC'ed to stable/9 in r230884 and r230886
respectively), use these for output and panicing during the early
cycles and move cninit() until after the static per-CPU data has
been set up. This solves a couple of issue regarding the non-
availability of the static per-CPU data:
- panic() not working and only making things worse when called,
- having to supply a special DELAY() implementation to the low-level
  console drivers,
- curthread accesses of mutex(9) usage in low-level console drivers
  that aren't conditional due to compiler optimizations (basically,
  this is the problem described in r227537 but in this case for
  keyboards attached via uart(4)). [1]

PR:     164123 [1]
21:15:27 - r230889
(2 days 16 hours ago)
by marius
Affects: 
(7 files)
/stable/8/sys/*
MFC: r230628

Mark cpu_{halt,reset}() as __dead2 as appropriate.
21:15:24 - r230888
(2 days 16 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r230628

Mark cpu_{halt,reset}() as __dead2 as appropriate.
21:14:07 - r230887
(2 days 16 hours ago)
by marius
Affects: 
(8 files)
/stable/8/sys/*
MFC: r230632

- Now that we have a working OF_printf() since r230631 (MFC'ed to stable/8
  in r230885), use it for implementing a simple OF_panic() that may be used
  during the early cycles when panic() isn't available, yet.
- Mark cpu_{exit,shutdown}() as __dead2 as appropriate.
21:14:04 - r230886
(2 days 16 hours ago)
by marius
Affects: 
(16 files)
/stable/9/sys/*
MFC: r230632

- Now that we have a working OF_printf() since r230631 (MFC'ed to stable/9
  in r230884), use it for implementing a simple OF_panic() that may be used
  during the early cycles when panic() isn't available, yet.
- Mark cpu_{exit,shutdown}() as __dead2 as appropriate.
21:11:09 - r230885
(2 days 16 hours ago)
by marius
Affects: 
(7 files)
/stable/8/sys/*
MFC: r230631

Implement OF_printf() using kvprintf() directly, avoiding to use a
buffer and allowing to handle newlines properly.
21:11:06 - r230884
(2 days 16 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r230631

Implement OF_printf() using kvprintf() directly, avoiding to use a
buffer and allowing to handle newlines properly.
21:10:00 - r230883
(2 days 16 hours ago)
by marius
Affects: 
(7 files)
/stable/8/sys/*
MFC: r230630

For machines where the kernel address space is unrestricted increase
VM_KMEM_SIZE_SCALE to 2, awaiting more insight from alc@. As it turns
out, the VM apparently has problems with machines that have large holes
in the physical address space, causing the kmem_suballoc() call in
kmeminit() to fail with a VM_KMEM_SIZE_SCALE of 1. Using a value of 2
allows these, namely Blade 1500 with 2GB of RAM, to boot.

PR:     164227
21:09:59 - r230882
(2 days 16 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r230630

For machines where the kernel address space is unrestricted increase
VM_KMEM_SIZE_SCALE to 2, awaiting more insight from alc@. As it turns
out, the VM apparently has problems with machines that have large holes
in the physical address space, causing the kmem_suballoc() call in
kmeminit() to fail with a VM_KMEM_SIZE_SCALE of 1. Using a value of 2
allows these, namely Blade 1500 with 2GB of RAM, to boot.

PR:     164227
21:08:35 - r230881
(2 days 16 hours ago)
by marius
Affects: 
(8 files)
/stable/8/sys/*
MFC: r230627

Using ATA_CAM along with ATAPI DMA causes data corruption with ALI_NEW
and CMD controllers for reasons unknown so disable it.

PR:     164226
21:08:33 - r230880
(2 days 16 hours ago)
by marius
Affects: 
(16 files)
/stable/9/sys/*
MFC: r230627

Using ATA_CAM along with ATAPI DMA causes data corruption with ALI_NEW
and CMD controllers for reasons unknown so disable it.

PR:     164226
20:19:33 - r230879
(2 days 17 hours ago)
by ken
Affects:  /head/sys/xen/interface/io/netif.h
Add the GSO prefix descriptor define.

MFC after:      3 days
20:18:57 - r230878
(2 days 17 hours ago)
by ken
Affects:  /head/sys/conf/files
Add the netback driver to the build.

MFC after:      3 days
20:12:44 - r230877
(2 days 17 hours ago)
by mav
Affects:  /head/sys/vm/swap_pager.c
Fix NULL dereference panic on attempt to turn off (on system shutdown)
disconnected swap device.

This is quick and imperfect solution, as swap device will still be opened
and GEOM will not be able to destroy it. Proper solution would be to
automatically turn off and close disconnected swap device, but with existing
code it will cause panic if there is at least one page on device, even if
it is unimportant page of the user-level process. It needs some work.

Reviewed by:    kib@
MFC after:      1 week
19:46:12 - r230876
(2 days 18 hours ago)
by davide
Affects:  /head/share/misc/committers-src.dot
/head/usr.bin/calendar/calendars/calendar.freebsd
Add myself to the relevant docs.

Approved by: alc, gnn (mentors)
18:05:54 - r230875
(2 days 19 hours ago)
by mav
Affects: 
(7 files)
/stable/8/sys/*
MFC r228820, r228851:
Merge to da driver quirks hinting 4K physical sector sizes for SATA disks
connected via SAS or USB. Unluckily I've found that SAS (mps) and USB-SATA
I have translate models in different ways, requiring twice more quirks.
Unluckily for Hitachi, their model names are trimmed on SAS, making
impossible to identify 4K sector drives that way.
18:03:21 - r230874
(2 days 19 hours ago)
by trociny
Affects:  /head/usr.bin/sockstat/sockstat.c
Try to avoid ambiguity when sysctl returns ENOMEM additionally
checking the returned oldlen: when ENOMEM is due to the supplied
buffer being too short the return oldlen is equal to buffer size.

Without this additional check sockstat gets stuck in loop leaking the
memory if the returned ENOMEM was due the exceeded memorylocked
limit. This is easily can be observed running `limits -l 1k sockstat'.

Submitted by:   Andrey Zonov <andrey zonov org>
MFC after:      1 week
18:02:13 - r230873
(2 days 19 hours ago)
by trociny
Affects:  /head/lib/libkvm/kvm_proc.c
Try to avoid ambiguity when sysctl returns ENOMEM additionally
checking the returned oldlen: when ENOMEM is due to the supplied
buffer being too short the return oldlen is equal to buffer size.

Without this additional check kvm_getprocs() gets stuck in loop if the
returned ENOMEM was due the exceeded memorylocked limit. This is
easily can be observed running `limits -l 1k top'.

Submitted by:   Andrey Zonov <andrey zonov org>
MFC after:      1 week
17:56:38 - r230872
(2 days 20 hours ago)
by mav
Affects: 
(15 files)
/stable/9/sys/*
MFC r228820, r228851:
Merge to da driver quirks hinting 4K physical sector sizes for SATA disks
connected via SAS or USB. Unluckily I've found that SAS (mps) and USB-SATA
I have translate models in different ways, requiring twice more quirks.
Unluckily for Hitachi, their model names are trimmed on SAS, making
impossible to identify 4K sector drives that way.
17:07:29 - r230871
(2 days 20 hours ago)
by jh
Affects: 
(2 files)
/stable/7/share/man/man9/sbuf.9
MFC r228359:

sbuf_data() hasn't returned NULL for overflowed buffers since r71721.
17:04:14 - r230870
(2 days 20 hours ago)
by jh
Affects: 
(2 files)
/stable/7/share/man/man9/sbuf.9
Partially MFC r228358: Fix markup.
16:40:59 - r230869
(2 days 21 hours ago)
by ghelmer
Affects:  /head/usr.sbin/daemon/daemon.8
Change the notes about the pidfile to include Doug's preference
for pre-creating the pidfile with appropriate owner and permissions.

Requested by dougb
15:57:49 - r230868
(2 days 22 hours ago)
by glebius
Affects: 
(7 files)
/stable/9/sys/contrib/pf/net/*
/stable/9/sys/netinet/in_proto.c
Merge some cleanups and bugfixes to pfsync(4) and pf(4) from head. Merged
revisions: r229773,229777,229849-229853,229857,229959,229961-229964,229976.

r229777:
  Merge from OpenBSD:
    revision 1.170
    date: 2011/10/30 23:04:38;  author: mikeb;  state: Exp;  lines: +6 -7
    Allow setting big MTU values on the pfsync interface but not larger
    than the syncdev MTU.  Prompted by the discussion with and tested
    by Maxim Bourmistrov;  ok dlg, mpf

  Consistently use sc_ifp->if_mtu in the MTU check throughout the
  module. This backs out r228813.

r229849:
  o Fix panic on module unload, that happened due to mutex being
    destroyed prior to pfsync_uninit(). To do this, move all the
    initialization to the module_t method, instead of SYSINIT(9).
  o Fix another panic after module unload, due to not clearing the
    m_addr_chg_pf_p pointer.
  o Refuse to unload module, unless being unloaded forcibly.
  o Revert the sub argument to MODULE_DECLARE, to the stable/8 value.

r229850:
  Bunch of fixes to pfsync(4) module load/unload:

  o Make the pfsync.ko actually usable. Before this change loading it
    didn't register protosw, so was a nop. However, a module /boot/kernel
    did confused users.
  o Rewrite the way we are joining multicast group:
    - Move multicast initialization/destruction to separate functions.
    - Don't allocate memory if we aren't going to join a multicast group.
    - Use modern API for joining/leaving multicast group.
    - Now the utterly wrong pfsync_ifdetach() isn't needed.
  o Move module initialization from SYSINIT(9) to moduledata_t method.
  o Refuse to unload module, unless asked forcibly.
  o Improve a bit some FreeBSD porting code:
    - Use separate malloc type.
    - Simplify swi sheduling.

r229857:
  Can't pass MSIZE to m_cljget(), an mbuf can't be attached as external storage
  to another mbuf.

r229963:
  Add necessary locking in pfsync_in_ureq().

r229976:
  Redo r226660:
   - Define schednetisr() to swi_sched.
   - In the swi handler check if there is some data prepared,
     and if true, then call pfsync_sendout(), however tell it
     not to schedule swi again.
   - Since now we don't obtain the pfsync lock in the swi handler,
     don't use ifqueue mutex to synchronize queue access.

r229773, r229851, r229959, r229961, r229962, r229964 - minor cleanups.
15:04:27 - r230867
(2 days 22 hours ago)
by pluknet
Affects: 
(15 files)
/stable/9/sys/*
MFC r230545: Clarify and improve the boot menu with some small changes.

PR:             misc/160818
Submitted by:   Warren Block <wblock wonkity com>
14:34:52 - r230866
(2 days 23 hours ago)
by kib
Affects:  /head/sys/kern/subr_log.c
Add kqueue support to /dev/klog.

Submitted by:   Mateusz Guzik <mjguzik gmail com>
PR:       kern/156423
MFC after:      1 weeks
13:39:52 - r230865
(3 days ago)
by raj
Affects:  /head/sys/dev/mvs/mvs.h
/head/sys/dev/mvs/mvs_soc.c
Adjust mvs(4) to handle interrupt cause reg depending on the actual number of
channels available

- current code treats bits 4:7 in 'SATAHC interrupt mask' and 'SATAHC
  interrupt cause' as flags for SATA channels 2 and 3

- for embedded SATA controllers (SoC) these bits have been marked as reserved
  in datasheets so far, but for some new and upcoming chips they are used for
  purposes other than SATA

Submitted by:   Lukasz Plachno
Reviewed by:    mav
Obtained from:  Semihalf
MFC after:      2 weeks
13:33:53 - r230864
(3 days ago)
by kib
Affects: 
(9 files)
/head/lib/libc/*
/head/sys/sys/ucontext.h
Make the sys/ucontext.h self-contained by changing the return type
of __getcontextx_size(3) from size_t to int.

PR:     ports/164654
MFC after:      1 month
11:07:41 - r230863
(3 days 2 hours ago)
by glebius
Affects:  /head/sys/netinet/ip_carp.c
o Provide functions carp_ifa_addroute()/carp_ifa_delroute()
  to cleanup routes from a single ifa.
o Implement carp_addroute()/carp_delroute() via above functions.
o Call carp_ifa_delroute() in the carp_detach() to avoid
  junk routes left in routing table, in case if user
  removes an address in a MASTER state. [1]

Reported by:    az [1]
10:59:19 - r230862
(3 days 3 hours ago)
by netchild
Affects: 
(238 files)
/head/tools/kerneldoc/subsys/*
- remove non-existent input directories from the configs
- add the target-arch to the project name where applicable (arch dependend code)
- fix comment for __FreeBSD__ [1]

Noticed by:     bz      [1]
09:28:16 - r230861
(3 days 4 hours ago)
by ae
Affects:  /head/sys/geom/part/g_part.c
The scheme code may not know about some inconsistency in the metadata.
So, add an integrity check after recovery attempt.

MFC after:      1 week
03:49:56 - r230860
(3 days 10 hours ago)
by gonzo
Affects:  /projects/armv6/sys/arm/ti/omap_machdep.c
Use pcpu0_init in order to initialize pcpu properly
03:42:14 - r230859
(3 days 10 hours ago)
by jhibbits
Affects:  /head/sys/modules/Makefile
Enable the pccard/cardbus modules for powerpc.

Approved by:    nwhitehorn (mentor)
03:28:19 - r230858
(3 days 10 hours ago)
by emaste
Affects: 
(2 files)
/stable/9/usr.sbin/wpa/wpa_supplicant/Makefile
MFC r230293:

  Add missing line continuation \.  It did not cause any issue because
  the same path is already being included in ../Makefile.inc.

  PR:           164192
  Submitted by: Devin Teske <dteske vicor com>
02:53:06 - r230857
(3 days 11 hours ago)
by davidxu
Affects:  /head/sys/kern/vfs_aio.c
/head/sys/sys/signal.h
If multiple threads call kevent() to get AIO events on same kqueue fd,
it is possible that a single AIO event will be reported to multiple
threads, it is not threading friendly, and the existing API can not
control this behavior.
Allocate a kevent flags field sigev_notify_kevent_flags for AIO event
notification in sigevent, and allow user to pass EV_CLEAR, EV_DISPATCH
or EV_ONESHOT to AIO kernel code, user can control whether the event
should be cleared once it is retrieved by a thread. This change should
be comptaible with existing application, because the field should have
already been zero-filled, and no additional action will be taken by
kernel.

PR:     kern/156567
02:16:15 - r230856
(3 days 11 hours ago)
by gonzo
Affects: 
(19 files)
/projects/armv6/sys/arm/conf/PANDABOARD
/projects/armv6/sys/arm/omap
/projects/armv6/sys/arm/ti/*
Change directory layout: use manufacturer as a top-level directory,
    not SoC family. The plan is to get more TI products on board.

Suggested by:   Damjan Marion
01:36:46 - r230855
(3 days 12 hours ago)
by emaste
Affects: 
(2 files)
/stable/8/usr.sbin/wpa/wpa_supplicant/Makefile
Revert r230854 as the change does not apply to stable/8.
01:28:35 - r230854
(3 days 12 hours ago)
by emaste
Affects: 
(2 files)
/stable/8/usr.sbin/wpa/wpa_supplicant/Makefile
MFC r230293:

  Add missing line continuation \.  It did not cause any issue because
  the same path is already being included in ../Makefile.inc.

  PR:           164192
  Submitted by: Devin Teske <dteske vicor com>
2012 - 01 - 31   (4 days ago)
23:24:46 - r230853
(3 days 14 hours ago)
by marius
Affects:  /stable/8/sys/conf/files.sun4v
/stable/8/sys/sun4v/include/md_var.h
- Hook up VTOC8 geometry adjustments.
- Remove some unused externs.

This is a direct commit to stable/8 in order to unbreak the build with
r230666 in place.
23:20:17 - r230852
(3 days 14 hours ago)
by marius
Affects:  /stable/7/sys/sun4v/include/tlb.h
Add more sparc64 compatibility macros for the shared loader.
This is a direct commit to stable/7 in order to unbreak the build with
224371 in place.
23:20:14 - r230851
(3 days 14 hours ago)
by marius
Affects:  /stable/8/sys/sun4v/include/tlb.h
Add more sparc64 compatibility macros for the shared loader.
This is a direct commit to stable/8 in order to unbreak the build with
r224370 in place.
23:09:27 - r230850
(3 days 14 hours ago)
by ken
Affects: 
(10 files)
/stable/8/sys/*
MFC: 230000, 230544

Fix a race condition in CAM peripheral free handling, locking
in the CAM XPT bus traversal code, and a number of other periph level
issues.

  r230544 | ken | 2012-01-25 10:58:47 -0700 (Wed, 25 Jan 2012) | 9 lines

  Fix a bug introduced in r230000.  We were eliminating all LUNs on a target
  in response to CAM_DEV_NOT_THERE, instead of just the LUN in question.

  This will now just eliminate the specified LUN in response to
  CAM_DEV_NOT_THERE.

  Reported by:  Richard Todd <rmtodd@servalan.servalan.com>

  r230000 | ken | 2012-01-11 17:41:48 -0700 (Wed, 11 Jan 2012) | 72 lines

  Fix a race condition in CAM peripheral free handling, locking
  in the CAM XPT bus traversal code, and a number of other periph level
  issues.

  cam_periph.h,
  cam_periph.c: Modify cam_periph_acquire() to test the CAM_PERIPH_INVALID
                flag prior to allowing a reference count to be gained
                on a peripheral.  Callers of this function will receive
                CAM_REQ_CMP_ERR status in the situation of attempting to
                reference an invalidated periph.  This guarantees that
                a peripheral scheduled for a deferred free will not
                be accessed during its wait for destruction.

                Panic during attempts to drop a reference count on
                a peripheral that already has a zero reference count.

                In cam_periph_list(), use a local sbuf with SBUF_FIXEDLEN
                set so that mallocs do not occur while the xpt topology
                lock is held, regardless of the allocation policy of the
                passed in sbuf.

                Add a new routine, cam_periph_release_locked_buses(),
                that can be called when the caller already holds
                the CAM topology lock.

                Add some extra debugging for duplicate peripheral
                allocations in cam_periph_alloc().

                Treat CAM_DEV_NOT_THERE much the same as a selection
                timeout (AC_LOST_DEVICE is emitted), but forgo retries.

  cam_xpt.c:    Revamp the way the EDT traversal code does locking
                and reference counting.  This was broken, since it
                assumed that the EDT would not change during
                traversal, but that assumption is no longer valid.

                So, to prevent devices from going away while we
                traverse the EDT, make sure we properly lock
                everything and hold references on devices that
                we are using.

                The two peripheral driver traversal routines should
                be examined.  xptpdperiphtraverse() holds the
                topology lock for the entire time it runs.
                xptperiphtraverse() is now locked properly, but
                only holds the topology lock while it is traversing
                the list, and not while the traversal function is
                running.

                The bus locking code in xptbustraverse() should
                also be revisited at a later time, since it is
                complex and should probably be simplified.

  scsi_da.c:    Pay attention to the return value from cam_periph_acquire().

                Return 0 always from daclose() even if the disk is now gone.

                Add some rudimentary error injection support.

  scsi_sg.c:    Fix reference counting in the sg(4) driver.

                The sg driver was calling cam_periph_release() on close,
                but never called cam_periph_acquire() (which increments
                the reference count) on open.

                The periph code correctly complained that the sg(4)
                driver was trying to decrement the refcount when it
                was already 0.

  Sponsored by: Spectra Logic
23:04:58 - r230849
(3 days 14 hours ago)
by ken
Affects: 
(19 files)
/stable/9/sys/*
MFC: 230000, 230544

Fix a race condition in CAM peripheral free handling, locking
in the CAM XPT bus traversal code, and a number of other periph level
issues.

  r230544 | ken | 2012-01-25 10:58:47 -0700 (Wed, 25 Jan 2012) | 9 lines

  Fix a bug introduced in r230000.  We were eliminating all LUNs on a target
  in response to CAM_DEV_NOT_THERE, instead of just the LUN in question.

  This will now just eliminate the specified LUN in response to
  CAM_DEV_NOT_THERE.

  Reported by:  Richard Todd <rmtodd@servalan.servalan.com>

  r230000 | ken | 2012-01-11 17:41:48 -0700 (Wed, 11 Jan 2012) | 72 lines

  Fix a race condition in CAM peripheral free handling, locking
  in the CAM XPT bus traversal code, and a number of other periph level
  issues.

  cam_periph.h,
  cam_periph.c: Modify cam_periph_acquire() to test the CAM_PERIPH_INVALID
                flag prior to allowing a reference count to be gained
                on a peripheral.  Callers of this function will receive
                CAM_REQ_CMP_ERR status in the situation of attempting to
                reference an invalidated periph.  This guarantees that
                a peripheral scheduled for a deferred free will not
                be accessed during its wait for destruction.

                Panic during attempts to drop a reference count on
                a peripheral that already has a zero reference count.

                In cam_periph_list(), use a local sbuf with SBUF_FIXEDLEN
                set so that mallocs do not occur while the xpt topology
                lock is held, regardless of the allocation policy of the
                passed in sbuf.

                Add a new routine, cam_periph_release_locked_buses(),
                that can be called when the caller already holds
                the CAM topology lock.

                Add some extra debugging for duplicate peripheral
                allocations in cam_periph_alloc().

                Treat CAM_DEV_NOT_THERE much the same as a selection
                timeout (AC_LOST_DEVICE is emitted), but forgo retries.

  cam_xpt.c:    Revamp the way the EDT traversal code does locking
                and reference counting.  This was broken, since it
                assumed that the EDT would not change during
                traversal, but that assumption is no longer valid.

                So, to prevent devices from going away while we
                traverse the EDT, make sure we properly lock
                everything and hold references on devices that
                we are using.

                The two peripheral driver traversal routines should
                be examined.  xptpdperiphtraverse() holds the
                topology lock for the entire time it runs.
                xptperiphtraverse() is now locked properly, but
                only holds the topology lock while it is traversing
                the list, and not while the traversal function is
                running.

                The bus locking code in xptbustraverse() should
                also be revisited at a later time, since it is
                complex and should probably be simplified.

  scsi_da.c:    Pay attention to the return value from cam_periph_acquire().

                Return 0 always from daclose() even if the disk is now gone.

                Add some rudimentary error injection support.

  scsi_sg.c:    Fix reference counting in the sg(4) driver.

                The sg driver was calling cam_periph_release() on close,
                but never called cam_periph_acquire() (which increments
                the reference count) on open.

                The periph code correctly complained that the sg(4)
                driver was trying to decrement the refcount when it
                was already 0.

  Sponsored by: Spectra Logic
22:47:10 - r230848
(3 days 15 hours ago)
by jfv
Affects: 
(30 files)
/stable/8/sys/dev/e1000/*
MFC of e1000 drivers

The following revs are merged:
212303,212304,213234,214363,214441,217556,219902,221505,
223676,226436,227309,228386,228387,228405,228415,228788,
228803,229606,229767,230023,230024,230742
22:31:16 - r230847
(3 days 15 hours ago)
by adrian
Affects:  /head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c
/head/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c
Support AR9281/AR5B91 - a 1x2 stream device based on the AR9280.

* Override the TX/RX stream count if the EEPROM reports a single RX or
  TX stream, rather than assuming the device will always be a 2x2 strea
  device.

* For AR9280 devices, don't hard-code 2x2 stream.  Instead, allow the
  ar5416FillCapabilityInfo() routine to correctly determine things.

The latter should be done for all 11n chips now that
ar5416FillCapabilityInfo() will set the TX/RX stream count based on the
active TX/RX chainmask in the EEPROM.

Thanks to Maciej Milewski for donating some AR9281 NICs to me for
testing.
22:27:35 - r230846
(3 days 15 hours ago)
by adrian
Affects:  /head/sys/dev/ath/if_ath.c
Correctly fetch the TX/RX stream count from the HAL.

Pointy hat to: me
21:46:28 - r230845
(3 days 16 hours ago)
by mav
Affects:  /head/sys/dev/sound/pcm/buffer.c
/head/sys/dev/sound/pcm/buffer.h
/head/sys/dev/sound/pcm/channel.c
Make sound(4) more flexible in setting soft buffer and block sizes when
hardware imposes strict limitations on hard buffer and block sizes.

Previous code set soft buffer to be no smaller then hard buffer. On some
cards with fixed 64K physical buffer that caused up to 800ms play latency.
New code allows to set soft buffer size down to just two blocks of the hard
buffer and to not write more then that size ahead to the hardware buffer.
As result of that change I was able to reduce full practically measured
record-playback loop delay in those conditions down to only about 115ms
with theoretical playback latency of only about 50ms.

New code works fine for both vchans and direct cases. In both cases sound(4)
tries to follow hw.snd.latency_profile and hw.snd.latency values and
application-requested buffer and block sizes as much as limitation of two
hardware blocks allows.

Reviewed by:    silence on multimedia@
19:45:32 - r230844
(3 days 18 hours ago)
by jamie
Affects:  /projects/jailconf/usr.sbin/jail/jail.8
Better communicate the purpose of "-r *".
19:38:18 - r230843
(3 days 18 hours ago)
by jimharris
Affects: 
(16 files)
/head/MAINTAINERS
/head/share/man/man4/*
/head/sys/*
Add isci(4) driver for amd64 and i386 targets.

The isci driver is for the integrated SAS controller in the Intel C600
(Patsburg) chipset.  Source files in sys/dev/isci directory are
FreeBSD-specific, and sys/dev/isci/scil subdirectory contains
an OS-agnostic library (SCIL) published by Intel to control the SAS
controller.  This library is used primarily as-is in this driver, with
some post-processing to better integrate into the kernel build
environment.

isci.4 and a README in the sys/dev/isci directory contain a few
additional details.

This driver is only built for amd64 and i386 targets.

Sponsored by: Intel
Reviewed by: scottl
Approved by: scottl
19:07:08 - r230842
(3 days 18 hours ago)
by jhb
Affects: 
(2 files)
/stable/8/lib/libc/stdtime/localtime.c
MFC 226828: Fix a memory leak in tzload().
19:02:33 - r230841
(3 days 18 hours ago)
by glebius
Affects: 
(2 files)
/stable/9/share/man/man9/Makefile
Merge 228500:
  More MLINKS for rtalloc.9
19:00:01 - r230840
(3 days 19 hours ago)
by glebius
Affects: 
(2 files)
/stable/9/share/man/man9/rtalloc.9
Merge r228499:
  Update this page to describe modern interfaces.
18:48:54 - r230839
(3 days 19 hours ago)
by nwhitehorn
Affects:  /projects/pseries/powerpc/aim/nexus.c
/projects/pseries/powerpc/pseries/xics.c
Properly handle the multi-domain interrupt system found on pSeries
hardware by providing aliases for the XICP on all XICS nodes. This should
all the cross-routing working. Note that this involves the creation of
multiple interrupt domains with 24-bit ranges, meaning that some devices
will get extraordinarily high IRQs (in the 100000000 range) assigned to
them. Should MAP_IRQ start just returning vector numbers, like on Linux?
18:44:01 - r230838
(3 days 19 hours ago)
by delphij
Affects:  /vendor/libz/1.2.6
Tag 1.2.6.
18:43:19 - r230837
(3 days 19 hours ago)
by delphij
Affects: 
(30 files)
/vendor/libz/dist/*
Vendor import of zlib 1.2.6.
18:42:22 - r230836
(3 days 19 hours ago)
by kib
Affects: 
(3 files)
/stable/9/sys/vm/vm_page.c
/stable/9/sys/vm/vm_page.h
MFC r228133:
Hide the internals of vm_page_lock(9) from the loadable modules.
18:37:26 - r230835
(3 days 19 hours ago)
by gnn
Affects:  /vendor/libpcap/1.2.1
Create a new tag for 1.2.1 to clear up the issues with the previously
botched tag.
18:36:42 - r230834
(3 days 19 hours ago)
by gnn
Affects:  /vendor/libpcap/1.2.1
Remove a broken import/tag so we can re do it.
18:24:51 - r230833
(3 days 19 hours ago)
by gnn
Affects:  /vendor/libpcap/1.2.1/dist
Retag the 1.2.1 import to get the adds/removes correct.
18:24:25 - r230832
(3 days 19 hours ago)
by gnn
Affects: 
(20 files)
/vendor/libpcap/dist/*
Add, remove and move files for the 1.2.1 import of libpcap

Submitted by:   wxs
18:13:49 - r230831
(3 days 19 hours ago)
by gibbs
Affects: 
(6 files)
/stable/8/sys/*
MFC r225708 into stable/8:

Modify the netfront driver so it can successfully attach to
PV devices with the ioemu attribute set.

sys/dev/xen/netfront/netfront.c:
        o If a mac address for the interface cannot be found
          in the front-side XenStore tree, look for an entry
          in the back-side tree.  With ioemu devices, the
          emulator does not populate the front side tree and
          neither does Xend.
        o Return an error rather than panic when an attach
          attempt fails.

Reported by:    Janne Snabb (fix inspired by patch provided)
PR:             kern/154302
17:51:30 - r230830
(3 days 20 hours ago)
by jkim
Affects:  /head/sys/amd64/acpica/acpi_switch.S
/head/sys/amd64/acpica/acpi_wakecode.S
/head/sys/amd64/acpica/acpi_wakeup.c
- Restore XCR0 before restoring extended FPU states.
- Update my copyright dates.

Reviewed by:    kib
17:24:08 - r230829
(3 days 20 hours ago)
by gnn
Affects:  /vendor/libpcap/1.2.1
Create a tag for version 1.2.1 of libpcap.
17:22:07 - r230828
(3 days 20 hours ago)
by gnn
Affects: 
(61 files)
/vendor/libpcap/dist/*
Update sources to 1.2.1

Submitted by:   wxs@
15:53:54 - r230827
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/arm/mp_machdep.c
Properly update mp_naps and smp_cpus.

Obtained from: Marvell, Semihalf
15:53:11 - r230826
(3 days 22 hours ago)
by gber
Affects: 
(4 files)
/projects/armv6/sys/arm/arm/*
/projects/armv6/sys/arm/include/*
Fix set/get pcpu for pre-armv6 cores.

- bring back old pcpu function for pre-armv6 cores
- move pcpu related functions to common file.

Obtained from: Marvell, Semihalf
15:52:17 - r230825
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/include/pmap.h
Split pmap settings between arm archs.

Obtained from: Marvell, Semihalf
15:51:34 - r230824
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/share/mk/bsd.cpu.mk
/projects/armv6/sys/arm/include/atomic.h
/projects/armv6/sys/arm/include/cpuconf.h
Correct building world with/without CPUTYPE=armv6

Obtained from: Marvell, Semihalf
15:50:18 - r230823
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/arm/cpufunc.c
/projects/armv6/sys/arm/arm/cpufunc_asm_pj4b.S
Remove pj4b_sleep function

WFI instruction requires snoop filter and coherency fabric disabled before
entering low power mode.
This fix is temporary workaround over problems when SMP with WBWA cache is
enabled.

Submitted by: Lukasz Plachno
Obtained from: Marvell, Semihalf
15:48:40 - r230822
(3 days 22 hours ago)
by jhb
Affects:  /head/sys/dev/pci/pcireg.h
Fix a spelling mistake in the surprise link down error constant.

Submitted by:   glebius
15:48:33 - r230821
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/arm/mp_machdep.c
Refactor infinitive loops

If additional cores won't signal startup, notification will be sent instead of
hangup.

Submitted by: Lukasz Plachno
Obtained from: Marvell, Semihalf
15:47:15 - r230820
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/arm/mp_machdep.c
Initialize cpuset structure with zero value before using it

Submitted by: Lukasz Plachno
Obtained from: Marvell, Semihalf
15:46:29 - r230819
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/mv/mpic.c
mpic: Fix IPI sending

- Change Target List Filter to All And Self from All No Self (val = 0x00000000),
  sending interrupt to core causing it should not be disabled by default
- CPUISSET return 1 if core is present in cpuset structure, so should not be
negated
- Remove setting all cores as signal receivers (ipi | 0xf00)

Submitted by: Lukasz Plachno
Obtained from: Marvell, Semihalf
15:45:10 - r230818
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/arm/cpufunc_asm_pj4b.S
pj4b: Add memory barriers to cache operations

Submitted by: Lukasz Plachno
Obtained from: Marvell, Semihalf
15:41:31 - r230817
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/arm/locore.S
Add flag shared to page table

Page table may be used by more than one processor,so flag shared must be set.

Submitted by: Lukasz Plachno
Obtained from: Marvell, Semihalf
15:40:18 - r230816
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/mv/armadaxp/armadaxp_mp.c
pj4b: Add workaround for hangup after releasing AP's in WT mode

Submitted by: Lukasz Plachno
Obtained from: Marvell, Semihalf
15:39:06 - r230815
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/arm/cpufunc_asm_armv7.S
armv7: Fix TTB setup, little cleanup

When TTB is written to CP15 register, proper memory model must be set.

Submitted by: Lukasz Plachno
Obtained from: Marvell, Semihalf
15:38:06 - r230814
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/arm/cpufunc_asm_pj4b.S
/projects/armv6/sys/arm/arm/locore.S
Fix TTB setup

When multiprocessor system is used,
shareable flag must be set when TTB is stored in CP15 register.

Submitted by: Lukasz Plachno
Obtained from: Marvell, Semihalf
15:36:21 - r230813
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/arm/mp_machdep.c
/projects/armv6/sys/arm/include/smp.h
/projects/armv6/sys/arm/mv/armadaxp/armadaxp_mp.c
Change AP cores startup procedure

Cores were initialized and started one-by-one, thus causing problems with
coherency fabric initialization.
Now all AP cores are started at the same moment.

Submitted by: Lukasz Plachno
Obtained from: Marvell, Semihalf
15:32:05 - r230812
(3 days 22 hours ago)
by emaste
Affects:  /head/sbin/reboot/nextboot.8
/head/sbin/reboot/nextboot.sh
Add -e to set arbitrary kernel environment variables.

Nextboot(8) can now set any combination of kernel name (-k), kernel
options (-o), and environment strings (-e).  As a result of this change
-k also becomes optional.

Reviewed by:    freebsd-current (Ian Lepore, pluknet@, jhb@)
15:25:00 - r230811
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/mv/armadaxp/armadaxp_mp.c
armadaxp: Fix generation of mask for coherency fabric initialization

Mask was set for wrong number of cores (one less than real number),
thus causing problems with proper initialization.

Submitted by: Lukasz Plachno
Obtained from: Marvell, Semihalf
15:23:45 - r230810
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/arm/mp_machdep.c
Remove unnecessary clean and invalidate cache operations

Submitted by: Lukasz Plachno
Obtained from: Marvell, Semihalf
15:19:02 - r230809
(3 days 22 hours ago)
by gber
Affects:  /projects/armv6/sys/arm/arm/cpufunc_asm_pj4b.S
pj4b: Fix data corruption in WB mode

pj4b_idcache_wbinv_range function cleaned and invalidated wrong data range,
thus causing data corruption.

Submitted by: Lukasz Plachno
Obtained from: Marvell, Semihalf
13:00:40 - r230808
(4 days 1 hour ago)
by pluknet
Affects:  /head/sys/dev/ie/if_ie.c
/head/sys/sys/types.h
Isolate v_caddr_t in the ie driver.

Submitted by:   Bruce Evans on net@
12:57:21 - r230807
(4 days 1 hour ago)
by mav
Affects:  /head/sys/dev/sound/pci/hda/hdac.c
Just in case, clear stream interrupts before enabling them.
11:00:33 - r230806
(4 days 3 hours ago)
by kib
Affects: 
(2 files)
/stable/9/share/man/man9/VOP_VPTOCNP.9
MFC r227698:
Update the manpage for r227697.
10:46:51 - r230805
(4 days 3 hours ago)
by pluknet
Affects: 
(5 files)
/stable/7/sys/cddl/contrib/opensolaris
/stable/7/sys/contrib/*
/stable/7/sys/netinet6/nd6.c
MFC r230531: Remove unused variable.
05:49:49 - r230804
(4 days 8 hours ago)
by kevlo
Affects:  /head/usr.sbin/bsdinstall/scripts/netconfig_ipv4
Fix a whitespace nit

Reviewed by:    bz
03:58:26 - r230803
(4 days 10 hours ago)
by rmacklem
Affects:  /head/sys/fs/nfsclient/nfs_clvfsops.c
/head/sys/nfsclient/nfs_vfsops.c
When a "mount -u" switches an NFS mount point from TCP to UDP,
any thread doing an I/O RPC with a transfer size greater than
NFS_UDPMAXDATA will be hung indefinitely, retrying the RPC.
After a discussion on freebsd-fs@, I decided to add a warning
message for this case, as suggested by Jeremy Chadwick.

Suggested by:   freebsd at jdc.parodius.com (Jeremy Chadwick)
MFC after:      2 weeks
02:30:47 - r230802
(4 days 11 hours ago)
by jhibbits
Affects: 
(2 files)
/stable/9/etc/devd/apple.conf
MFC r230640:

Remove the notify match from a couple devd apple events, the events don't
include notify tags.

Approved by:    nwhitehorn (mentor)
02:11:05 - r230801
(4 days 11 hours ago)
by rmacklem
Affects:  /head/sys/nlm/nlm_prot_impl.c
jwd@ reported a problem via email to freebsd-fs@ on Aug 25, 2011
under the subject "F_RDLCK lock to FreeBSD NFS fails to R/O target file".
This occurred because the server side NLM always checked for VWRITE
access, irrespective of the type of lock request. This patch
replaces VOP_ACCESS(..VWRITE..) with one appropriate to
the lock operation. It allows unlock and lock cancellation
to be done without a check of VOP_ACCESS(), so that files
can't be left locked indefinitely after the file permissions
have been changed.

Discussed with: zack
Submitted by:   jwd (earlier version)
Reviewed by:    dfr
MFC after:      2 weeks
01:51:30 - r230800
(4 days 12 hours ago)
by attilio
Affects: 
(5 files)
/stable/9/sys/dev/ppbus/*
MFC r227814:
- Use ppb_assert_locked() rather than using explicit mtx_assert call
- Make ppbus code agnostic in regard of INVARIANTS option
01:45:20 - r230799
(4 days 12 hours ago)
by attilio
Affects: 
(18 files)
/stable/9/sys/*
MFC r227758,227759,227788:
Introduce macro stubs in the mutex and sxlock implementation that will
be always defined and will allow consumers, willing to provide options,
file and line to locking requests, to not worry about options
redefining the interfaces.
This is typically useful when there is the need to build another
locking interface on top of the mutex one.

Requested by:   kib
01:43:03 - r230798
(4 days 12 hours ago)
by wblock
Affects: 
(3 files)
/stable/8/sbin/geom/class/part/gpart.8
MFC r217314 (ae):
Fix up the grammar.

MFC r217342 (maxim):
o Typo fixes.

MFC r217343 (maxim):
o Start each sentence on a new line.  No content changes.

MFC r222359 (ae):
Add example how to create MBR and BSD schemes and install boot code.

MFC r222495 (ae):
Document kern.geom.part.check_integrity sysctl variable.

MFC r222599 (uqs):
mdoc: fix markup

MFC r222646 (ru):
Generally clean up markup.

MFC r222778 (gavin):
Rework parts of this man page to improve grammar.

MFC r225003 (ae):
Add new section "BOOTSTRAPPING" to the gpart(8), that describes
bootstrap code images used to boot from MBR, GPT, BSD and VTOC8
schemes.

MFC r227774:
Add a section that explicitly describes partitioning schemes.  Modify
existing sections to refer to the new one.  Rearrange partitioning scheme
list so MBR and EBR types are together.  Also add several corrections for
grammar, clarity, and consistency.

MFC r227777:
Fix date.

MFC r227800:
Correct and expand BSD partitioning scheme description.
Correct GUID to GPT in RECOVERING section.

MFC r229838:
Clarity improvements.

MFC r229847:
Whitespace-only fix.

Approved by:    gjb (mentor)
00:49:34 - r230797
(4 days 13 hours ago)
by dougb
Affects: 
(3 files)
/stable/7/lib/bind/config.mk
/stable/7/lib/bind/isc/isc/platform.h
MFC r217071 and r217213:

Make the setting of the BIND CFLAG -DWORDS_BIGENDIAN conditional on the
TARGET_ENDIANNESS knob from bsd.endian.mk so that we can avoid having to
special-case each arch.

MFC r224093 (in part):

Stop claiming that we support atomic ops except on arches where we know
that they work. Many users have reported problems on the other arches,
so until they can get fixed we'll take the safe route.
00:49:04 - r230796
(4 days 13 hours ago)
by dougb
Affects: 
(3 files)
/stable/8/lib/bind/config.mk
/stable/8/lib/bind/isc/isc/platform.h
MFC r217071 and r217213:

Make the setting of the BIND CFLAG -DWORDS_BIGENDIAN conditional on the
TARGET_ENDIANNESS knob from bsd.endian.mk so that we can avoid having to
special-case each arch.

MFC r224093 (in part):

Stop claiming that we support atomic ops except on arches where we know
that they work. Many users have reported problems on the other arches,
so until they can get fixed we'll take the safe route.
00:32:37 - r230795
(4 days 13 hours ago)
by jkim
Affects: 
(8 files)
/head/usr.sbin/makefs/*
Allow contents of multiple directories to be merged to the current image.
Note this patch was submitted to NetBSD and they already adopted it.

http://mail-index.netbsd.org/source-changes/2012/01/28/msg031078.html

MFC after:      1 week
00:12:51 - r230794
(4 days 13 hours ago)
by jimharris
Affects: 
(210 files)
/user/jimharris/isci/*
Rebase user/jimharris/isci branch from head.
00:03:49 - r230793
(4 days 13 hours ago)
by adrian
Affects:  /head/sys/conf/options
/head/sys/net80211/ieee80211_dfs.c
/head/sys/net80211/ieee80211_dfs.h
Add a DFS debugging mode which is useful when doing automated DFS
compliance testing.

In order to allow for radar pattern matching to occur, the DFS CAC/NOL
handling needs to be made configurable.  This commit introduces a new
sysctl, "net.wlan.dfs_debug", which controls which DFS debug mode
net80211 is in.

* 0 = default, CSA/NOL handling as per normal.
* 1 = announce a CSA, but don't add the channel to the non-occupy list
  (NOL.)
* 2 = disable both CSA and NOL - only print that a radar event occured.

This code is not compiled/enabled by default as it breaks regulatory
handling.  A user must enable IEEE80211_DFS_DEBUG in their kernel
configuration file for this option to become available.

Obtained from:  Atheros
2012 - 01 - 30   (5 days ago)
23:37:17 - r230792
(4 days 14 hours ago)
by jimharris
Affects:  /user/jimharris/isci/sys/dev/isci/scil/scic_sds_stp_packet_request.c
/user/jimharris/isci/sys/dev/isci/scil/scic_sds_stp_request.c
Fix ATAPI code path to ensure bus_dma_segment structures are only used
within bus_dmamap_load context.

Sponsored by: Intel
Reported by: Sohaib Ahsan <sohaib dot ahsan intel com>
23:07:27 - r230791
(4 days 14 hours ago)
by adrian
Affects: 
(5 files)
/head/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c
/head/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c
/head/sys/dev/ath/ath_hal/ar5212/*
Radar API related fixes.

* For legacy NICs, the combined RSSI should be used.
  For earlier AR5416 NICs, use control chain 0 RSSI rather than combined
  RSSI.
  For AR5416 > version 2.1, use the combined RSSI again.

* Add in a missing AR5212 HAL method (get11nextbusy) which may be called
  by radar code.

This serves no functional change for what's currently in FreeBSD.
23:03:21 - r230790
(4 days 14 hours ago)
by jfv
Affects:  /head/sys/dev/ixgbe/ixgbe_osdep.h
Wrap the bool typedef
22:47:02 - r230789
(4 days 15 hours ago)
by imp
Affects:  /head/sys/dev/fe/if_fe.c
Improve media status reporting, when the driver knows...
22:32:54 - r230788
(4 days 15 hours ago)
by jhibbits
Affects: 
(18 files)
/stable/9/etc/devd/apple.conf
/stable/9/sys/*
MFC r228270,228277:

Add a devd notification for closing/opening the lid on PowerBooks and iBooks.

Approved by:    nwhitehorn (mentor)
21:02:25 - r230787
(4 days 16 hours ago)
by brueffer
Affects:  /head/share/man/man9/Makefile
/head/share/man/man9/buf_ring.9
/head/share/man/man9/drbr.9
Manpages for the buf_ring and drbr interfaces.

Submitted by:   kmacy (aeons ago)
MFC after:      1 week
20:19:28 - r230786
(4 days 17 hours ago)
by imp
Affects:  /head/Makefile.inc1
Allow specification of build shell for the buildenv target.

Submitted by:   ian lepore
20:00:29 - r230785
(4 days 18 hours ago)
by kib
Affects:  /head/sys/kern/subr_syscall.c
A debugger which requested PT_FOLLOW_FORK should get the notification
about new child not only when doing PT_TO_SCX, but also for PT_CONTINUE.
If TDB_FORK flag is set, always issue a stop, the same as is done for
TDB_EXEC.

Reported by:    Dmitry Mikulin <dmitrym juniper net>
MFC after:      1 week
19:52:17 - r230784
(4 days 18 hours ago)
by kib
Affects:  /head/libexec/rtld-elf/map_object.c
/head/libexec/rtld-elf/rtld.c
/head/libexec/rtld-elf/rtld.h
Add support for GNU RELRO.

Submitted by:   John Marino <draco marino st>
MFC after:      2 weeks
19:50:13 - r230783
(4 days 18 hours ago)
by kib
Affects:  /head/sys/sys/elf_common.h
Add definition for PT_GNU_RELRO.

MFC after:      3 days
19:35:15 - r230782
(4 days 18 hours ago)
by jhb
Affects:  /head/sys/kern/vfs_vnops.c
Refine the implementation of POSIX_FADV_NOREUSE for the read(2) case such
that instead of using direct I/O it allows read-ahead similar to
POSIX_FADV_NORMAL, but invokes VOP_ADVISE(POSIX_FADV_DONTNEED) after the
read(2) has completed to purge just-read data.  The write(2) path continues
to use direct I/O for POSIX_FADV_NOREUSE for now.  Note that NOREUSE works
optimally if an application reads and writes full fs blocks.
19:34:41 - r230781
(4 days 18 hours ago)
by trociny
Affects: 
(3 files)
/stable/9/bin/ps/ps.1
/stable/9/bin/ps/ps.c
MFC r227840, r227846:

r227840:

No need in procfs(5).

r227846

Remove yet another outdated note about procfs(5) being required.

Spotted by:     arundel
19:32:33 - r230780
(4 days 18 hours ago)
by trociny
Affects: 
(3 files)
/stable/9/lib/libkvm/kvm_getprocs.3
/stable/9/lib/libkvm/kvm_proc.c
MFC r227839, r230146:

r227839:

Now kvm_getenvv() and kvm_getargv() don't need procfs(5).

r230146:

In kvm_argv(), the case when the supplied buffer was too short to hold the
requested value was handled incorrectly, and the function retuned NULL
instead of the truncated result.

Fix this and also remove unnecessary check for buf != NULL, which alway
retuns true.
19:31:17 - r230779
(4 days 18 hours ago)
by kib
Affects:  /head/sys/powerpc/aim/mmu_oea64.c
Fix build for the case of powerpc64 kernel without COMPAT_FREEBSD32.

MFC after:      2 months
19:19:22 - r230778
(4 days 18 hours ago)
by ambrisko
Affects:  /head/sys/kern/vfs_aio.c
When detaching an AIO or LIO requests grab the lock and tell knlist_remove
that we have the lock now.  This cleans up a locking panic ASSERT when
knlist_empty is called without a lock when INVARIANTS etc. are turned.

Reviewed by:    kib jhb
MFC after:      1 week
18:28:56 - r230777
(4 days 19 hours ago)
by jkim
Affects:  /head/sys/amd64/acpica/acpi_wakecode.S
Naturally align a newly added wakeup_fpusave.
17:17:31 - r230776
(4 days 20 hours ago)
by nwhitehorn
Affects:  /projects/pseries/powerpc/aim/nexus.c
/projects/pseries/powerpc/powerpc/intr_machdep.c
/projects/pseries/powerpc/pseries/xics.c
Allow up to 2^24 IRQs on xics PICs, as the spec requires. Also use multipass
to make sure xics is registered first so that the interrupt layer knows to
expect potentially very large IRQ numbers. Some more rototilling is in order
here later.
16:42:02 - r230775
(4 days 21 hours ago)
by jfv
Affects: 
(24 files)
/head/sys/conf/files
/head/sys/dev/ixgbe/*
/head/sys/modules/ixgbe/Makefile
New hardware support:  Intel X540 adapter support added.
Some shared code reorganization along with the new adapter.
Sync changes to OACTIVE in igb into this driver.
Misc small fixes.
15:09:03 - r230774
(4 days 22 hours ago)
by jhb
Affects:  /head/sys/dev/pci/pcireg.h
Add a constant for the PCI-e surprise link down uncorrectable error.
12:32:22 - r230773
(5 days 1 hour ago)
by pluknet
Affects: 
(3 files)
/stable/7/lib/libc/stdtime
/stable/7/lib/libc/sys/mmap.2
MFC r230613:
Remove a left-over reference to make.conf(5) for now-defunct -DVM_STACK
12:29:51 - r230772
(5 days 1 hour ago)
by pluknet
Affects: 
(3 files)
/stable/8/lib/libc/stdtime
/stable/8/lib/libc/sys/mmap.2
MFC r230613:
Remove a left-over reference to make.conf(5) for now-defunct -DVM_STACK
12:28:22 - r230771
(5 days 1 hour ago)
by pluknet
Affects: 
(3 files)
/stable/9/lib/libc/stdtime
/stable/9/lib/libc/sys/mmap.2
MFC r230613:
Remove a left-over reference to make.conf(5) for now-defunct -DVM_STACK
12:13:51 - r230770
(5 days 1 hour ago)
by pluknet
Affects: 
(6 files)
/stable/8/sys/*
MFC r230531: Remove unused variable.
12:10:37 - r230769
(5 days 1 hour ago)
by pluknet
Affects: 
(15 files)
/stable/9/sys/*
MFC r230531: Remove unused variable.
09:59:33 - r230768
(5 days 4 hours ago)
by mav
Affects:  /head/sys/dev/sound/pci/hda/hdac.h
Fix typo in comments.
07:56:00 - r230767
(5 days 6 hours ago)
by kib
Affects: 
(4 files)
/head/sys/i386/i386/initcpu.c
/head/sys/kern/imgact_elf.c
/head/sys/powerpc/*
Finally, try to enable the nxstacks on amd64 and powerpc64 for both 64bit
and 32bit ABIs. Also try to enable nxstacks for PAE/i386 when supported,
and some variants of powerpc32.

MFC after:      2 months (if ever)
07:53:33 - r230766
(5 days 6 hours ago)
by kib
Affects:  /head/sys/amd64/amd64/fpu.c
/head/sys/amd64/include/cpufunc.h
Move xrstor/xsave/xsetbv into fpu.c and reorder them.

Requested by:   bde
MFC after:      1 month
07:51:52 - r230765
(5 days 6 hours ago)
by kib
Affects:  /head/sys/amd64/include/signal.h
/head/sys/i386/include/signal.h
Synchronize the struct sigcontext definitions on x86 with mcontext_t.

Pointed out by: bde
MFC after:      1 month
07:23:53 - r230764
(5 days 6 hours ago)
by truckman
Affects: 
(3 files)
/stable/8/sys/geom/part/g_part_ebr.c
/stable/8/sys/geom/part/g_part_mbr.c
MFC r230064:

Allow an MBR primary or extended Linux swap partition to be specified
as the system dump device.  This was already allowed for GPT.  The Linux
swap metadata at the beginning of the partition should not be disturbed
because the crash dump is written at the end.

Reviewed by:    alfred, pjd, marcel
07:20:52 - r230763
(5 days 6 hours ago)
by truckman
Affects: 
(3 files)
/stable/9/sys/geom/part/g_part_ebr.c
/stable/9/sys/geom/part/g_part_mbr.c
MFC r230064:

Allow an MBR primary or extended Linux swap partition to be specified
as the system dump device.  This was already allowed for GPT.  The Linux
swap metadata at the beginning of the partition should not be disturbed
because the crash dump is written at the end.

Reviewed by:    alfred, pjd, marcel
05:45:11 - r230762
(5 days 8 hours ago)
by mckusick
Affects: 
(6 files)
/stable/8/sys/*
MFC r230101:

Convert FFS mount error messages from kernel printf's to using the
vfs_mount_error error message facility provided by the nmount
interface.

Clean up formatting of mount warnings which still need to use
kernel printf's since they do not return errors.

Requested by: Craig Rodrigues <rodrigc@crodrigues.org>
00:27:02 - r230761
(5 days 13 hours ago)
by rmacklem
Affects: 
(212 files)
/projects/nfsv4.1-client/sys/*
Merge in an up to date head/sys.
2012 - 01 - 29   (6 days ago)
23:04:29 - r230760
(5 days 14 hours ago)
by mckusick
Affects: 
(15 files)
/stable/9/sys/*
MFC r230101:

Convert FFS mount error messages from kernel printf's to using the
vfs_mount_error error message facility provided by the nmount
interface.

Clean up formatting of mount warnings which still need to use
kernel printf's since they do not return errors.

Requested by: Craig Rodrigues <rodrigc@crodrigues.org>
22:20:28 - r230759
(5 days 15 hours ago)
by mm
Affects: 
(3 files)
/head/contrib/libarchive/libarchive/archive_read_support_format_iso9660.c
Uupdate code to vendor rev. 4183 (release/2.8)

Fixes vendor issue 224:
"Mishandling CD9660 images with RockRidge extensions from FreeBSD makefs"

References:
http://code.google.com/p/libarchive/issues/detail?id=224

MFC after:      1 week
22:12:48 - r230758
(5 days 15 hours ago)
by mm
Affects:  /vendor/libarchive/dist/libarchive/archive_read_support_format_iso9660.c
Update to vendor revision 4183

Obtained from:  http://libarchive.googlecode.com/svn/release/2.8
21:58:18 - r230757
(5 days 16 hours ago)
by trociny
Affects: 
(2 files)
/stable/8/sys/compat/linprocfs/linprocfs.c
MFC r228268:

Protect process environment variables with p_candebug().

Discussed with: jilles, kib, rwatson
21:44:25 - r230756
(5 days 16 hours ago)
by alc
Affects:  /svnadmin/conf/access
Welcome Davide Italiano (davide) as a src committer.  Davide has been
working on improvements to our hardware performance monitoring and
virtual memory systems.  Davide will be mentored by gnn@ and me.

Approved by:    core
21:13:36 - r230755
(5 days 16 hours ago)
by trociny
Affects: 
(2 files)
/stable/9/sys/compat/linprocfs/linprocfs.c
MFC r228268:

Protect process environment variables with p_candebug().

Discussed with: jilles, kib, rwatson
21:08:24 - r230754
(5 days 16 hours ago)
by trociny
Affects: 
(8 files)
/stable/9/sys/*
MFC r227833, r227834, r227836, r227874, r227955, r228029, r228030, r228046,
 r228264, r228288, r228302, r228648, r228666, r230145, r230470, r230550:

New kern.proc sysctls.

r227833, r227874:

Add new sysctls, KERN_PROC_ENV and KERN_PROC_AUXV, to return
environment strings and ELF auxiliary vectors from a process stack.

Make sysctl_kern_proc_args to read not cached arguments from the
process stack.

Export proc_getargv() and proc_getenvv() so they can be reused by
procfs and linprocfs.

Suggested by:   kib
Reviewed by:    kib
Discussed with: kib, rwatson, jilles
Tested by:      pho

MFC r227834:

In procfs_doproccmdline() if arguments are not cashed read them from
the process stack.

Suggested by:   kib
Reviewed by:    kib
Tested by:      pho

MFC r227836:

Retire linprocfs_doargv(). Instead use new functions, proc_getargv()
and proc_getenvv(), which were implemented using linprocfs_doargv() as
a reference.

Suggested by:   kib
Reviewed by:    kib
Approved by:    des (linprocfs maintainer)

r227955:

Add sysctl to get process resource limits.

Reviewed by:    kib

r228029:

In sysctl_kern_proc_auxv the process was released too early: we still
need to hold it when checking process sv_flags.

r228030, r228046:

Add sysctl to retrieve ps_strings structure location of another process.

Suggested by:   kib
Reviewed by:    kib

r228264:

In sysctl_kern_proc_ps_strings() there is no much sense in checking
for P_WEXIT and P_SYSTEM flags.

Reviewed by:    kib

r228288, r228302:

Protect kern.proc.auxv and kern.proc.ps_strings sysctls with p_candebug().

Citing jilles:

If we are ever going to do ASLR, the AUXV information tells an attacker
where the stack, executable and RTLD are located, which defeats much of
the point of randomizing the addresses in the first place.

Given that the AUXV information seems to be used by debuggers only anyway,
I think it would be good to move it to p_candebug() now.

The full virtual memory maps (KERN_PROC_VMMAP, procstat -v) are already
under p_candebug().

Suggested by:   jilles
Discussed with: rwatson

r228648:

On start most of sysctl_kern_proc functions use the same pattern:
locate a process calling pfind() and do some additional checks like
p_candebug(). To reduce this code duplication a new function pget() is
introduced and used.

As the function may be useful not only in kern_proc.c it is in the
kernel name space.

Suggested by:   kib
Reviewed by:    kib

r228666:

Fix style and white spaces.

MFC r230145:

Abrogate nchr argument in proc_getargv() and proc_getenvv(): we always want
to read strings completely to know the actual size.

As a side effect it fixes the issue with kern.proc.args and kern.proc.env
sysctls, which didn't return the size of available data when calling
sysctl(3) with the NULL argument for oldp.

Note, in get_ps_strings(), which does actual work for proc_getargv() and
proc_getenvv(), we still have a safety limit on the size of data read in
case of a corrupted procces stack.

Suggested by:   kib

r230470:

Change kern.proc.rlimit sysctl to:

- retrive only one, specified limit for a process, not the whole
  array, as it was previously (the sysctl has been added recently and
  has not been backported to stable yet, so this change is ok);

- allow to set a resource limit for another process.

Submitted by:   Andrey Zonov <andrey at zonov.org>
Discussed with: kib
Reviewed by:    kib

r230550:

Fix CTL flags in the declarations of KERN_PROC_ENV, AUXV and
PS_STRINGS sysctls: they are read only.
20:39:42 - r230753
(5 days 17 hours ago)
by trociny
Affects:  /head/usr.bin/procstat/procstat_auxv.c
Always return 0 if the sysctl failed.

This fixes the bug: when procstat -xa was run and the sysctl for a
process returned ESRCH or EPERM, for this process procstat output the
result collected for the previous successful process.
19:35:40 - r230752
(5 days 18 hours ago)
by adrian
Affects:  /head/sys/net80211/ieee80211_hwmp.c
Missing code for receiving MESH PREP that should be part of r230409.

Submitted by:   <monthadar@gmail.com>
18:54:25 - r230751
(5 days 19 hours ago)
by jhibbits
Affects: 
(24 files)
/stable/9/etc/devd/*
/stable/9/share/man/man4/man4.powerpc/*
/stable/9/sys/*
MFC r226449:

Add support for special keys (volume/brightness/eject) on Apple laptops with
ADB keyboards.

Approved by:    nwhitehorn (mentor)
16:44:21 - r230750
(5 days 21 hours ago)
by attilio
Affects:  /user/attilio/vmcontention/sys/vm/vm_radix.c
/user/attilio/vmcontention/sys/vm/vm_radix.h
Fix a bug in vm_radix_leaf() where the shifting start address can
wrap-up at some point.
This bug is triggered very easilly by indirect blocks in UFS which grow
negative resulting in very high counts.

In collabouration with: flo
16:29:06 - r230749
(5 days 21 hours ago)
by attilio
Affects:  /user/attilio/vmcontention/sys/vm/vm_radix.c
Fix format string for the pindex members as they should be treated
as uintmax_t for compatibility among 32/64 bits.
16:11:25 - r230748
(5 days 21 hours ago)
by attilio
Affects:  /user/attilio/vmcontention/sys/vm/vm_page.c
Make an assertion stronger and improve the printout for easier bug
catching when it is not possible to dump
15:00:31 - r230747
(5 days 23 hours ago)
by marius
Affects: 
(6 files)
/stable/8/sys/*
MFC: r204556

Update a comment to reflect reality and explain why we're using the
medany code model.
15:00:31 - r230746
(5 days 23 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r228858

Update a comment to reflect reality and explain why we're using the
medany code model.
14:58:54 - r230745
(5 days 23 hours ago)
by marius
Affects: 
(50 files)
/stable/8/contrib/*
MFC: r204556

Move csup away from contrib/ and into usr.bin/. Software is no longer
contributed, and main development is happening in the FreeBSD repo.
14:55:38 - r230744
(5 days 23 hours ago)
by marius
Affects: 
(159 files)
/stable/8/usr.bin/*
o MFC: r204556, r204628

  Move csup away from contrib/ and into usr.bin/. Software is no longer
  contributed, and main development is happening in the FreeBSD repo.

o MFC: r204558

  Unmark authentication support as a TODO item.

o MFC: r204629

  Remove unused include path.

o MFC: r204639

  Include CURDIR in case the makefile is not run from the same directory.

o MFC: r204664

  Fix spelling.

o MFC: r206621

  Add and expand $FreeBSD$ keyword to allow committing to this file.

o MFC: r206622 (partial)

  mdoc: order prologue macros consistently by Dd/Dt/Os

  Although groff_mdoc(7) gives another impression, this is the ordering
  most widely used and also required by mdocml/mandoc.

o MFC: r208291 (partial)

  mdoc: consistently spell our email addresses <foo@FreeBSD.org>

o MFC: r210874

  Don't point users at the old csup homepage.

o MFC: r213300

  If an RCS file is truncated, rcsfile_getdelta() will return NULL.  Instead
  of faulting, check for NULL.  However, returning an error would cause csup
  to just abort the entire update.  Instead, break out of the loop and
  return ok.  The attempts to update the file will trigger a MD5 failure which
  will cause csup to download the entire file as a fixup.

o MFC: r213573 (partial)

  mdoc: drop redundant .Pp and .LP calls

  They have no effect when coming in pairs, or before .Bl/.Bd

o MFC: r216370 (partial)

  Remove the advertising clause from UCB copyrighted files in usr.bin.  This
  is in accordance with the information provided at
  ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change

  Also add $FreeBSD$ to a few files to keep svn happy.

o MFC: r216542

  Signal that data should not be modified.

o MFC: r217858

  Remove dead code.

o MFC: r225535

  Fix csup to allow case insensitive server names in the auth file,
  just as advertised in the manpage.

  PR:   158652

o MFC: r225536

  Fix typos in error messages.

o MFC: r225979

  Update the comment to reflect what is actually going on.

o MFC: r225980

  Handle the situation where fixups_close() has been called but more fixups
  are still available on the queue.

o MFC: r228625

  In usr.bin/csup/auth.c, use the correct number of bytes for zeroing the
  shared secret, and use long long format to snprintf a time_t.

o MFC: r228626

  In usr.bin/csup/proto.c, use the correct printf length modifier to print
  an off_t.

o MFC: r228667

  In usr.bin/csup/auth.c, cast time_t to intmax_t instead, and use the
  corresponding printf length modifier.

o MFC: r228857

  On FreeBSD just use the MD5 implementation of libmd rather than that of
  libcrypto so we don't need to relinquish csup when world is built without
  OpenSSL.
14:55:20 - r230743
(5 days 23 hours ago)
by marius
Affects: 
(36 files)
/stable/9/usr.bin/*
MFC: r228857

On FreeBSD just use the MD5 implementation of libmd rather than that of
libcrypto so we don't need to relinquish csup when world is built without
OpenSSL.
14:52:42 - r230742
(5 days 23 hours ago)
by eadler
Affects:  /head/sys/dev/e1000/README
GS105v3 exhibit the same behavior

PR:                     docs/135999
Submitted by:   Boris Kochergin <spawky@acm.poly.edu>
No objection from:      jfv
Approved by:    cperciva
MFC after:              3 days
12:58:07 - r230741
(6 days 1 hour ago)
by marius
Affects: 
(6 files)
/stable/8/sys/*
MFC: r228211

It doesn't make much sense to check whether child is NULL after already
having dereferenced it. We either should generally check the device_t's
supplied to bus functions before using them (which we seem to virtually
never do) or just assume that they are not NULL.
While at it make this code fit 78 columns.

Found with:     Coverity Prevent(tm)
CID:            4230
12:58:06 - r230740
(6 days 1 hour ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r228211

It doesn't make much sense to check whether child is NULL after already
having dereferenced it. We either should generally check the device_t's
supplied to bus functions before using them (which we seem to virtually
never do) or just assume that they are not NULL.
While at it make this code fit 78 columns.

Found with:     Coverity Prevent(tm)
CID:            4230
12:56:21 - r230739
(6 days 1 hour ago)
by marius
Affects: 
(6 files)
/stable/8/sys/*
MFC: r228209

- In device_probe_child(9) check the return value of device_set_driver(9)
  when actually setting a driver as especially ENOMEM is fatal in these
  cases.
- Annotate other calls to device_set_devclass(9) and device_set_driver(9)
  without the return value being checked and that are okay to fail.

Reviewed by:    yongari (slightly earlier version)
12:56:18 - r230738
(6 days 1 hour ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r228209

- In device_probe_child(9) check the return value of device_set_driver(9)
  when actually setting a driver as especially ENOMEM is fatal in these
  cases.
- Annotate other calls to device_set_devclass(9) and device_set_driver(9)
  without the return value being checked and that are okay to fail.

Reviewed by:    yongari (slightly earlier version)
12:54:36 - r230737
(6 days 1 hour ago)
by marius
Affects: 
(8 files)
/stable/8/sys/*
MFC: r228027

Move the scsi_da_bios_params() prototype from pc98_machdep.h to md_var.h
where the prototype for pc98_ata_disk_firmware_geom_adjust() also lives
in order to avoid an #ifdef'ed include in cam(4).
12:54:31 - r230736
(6 days 1 hour ago)
by marius
Affects: 
(17 files)
/stable/9/sys/*
MFC: r228027

Move the scsi_da_bios_params() prototype from pc98_machdep.h to md_var.h
where the prototype for pc98_ata_disk_firmware_geom_adjust() also lives
in order to avoid an #ifdef'ed include in cam(4).
12:52:36 - r230735
(6 days 1 hour ago)
by marius
Affects: 
(6 files)
/stable/8/sys/*
MFC: r228024

Update comment.
12:52:34 - r230734
(6 days 1 hour ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r228024

Update comment.
12:50:43 - r230733
(6 days 1 hour ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r228005

Change another instance of amd(4) to esp(4) missed in r227006 (MFC'ed to
stable/9 in r227305).

Submitted by:   Garrett Cooper
12:49:43 - r230732
(6 days 1 hour ago)
by marius
Affects: 
(6 files)
/stable/8/sys/*
MFC: r228005

Change another instance of amd(4) to esp(4) missed in r227006 (MFC'ed to
stable/8 in r227306).

Submitted by:   Garrett Cooper
12:26:09 - r230731
(6 days 1 hour ago)
by mm
Affects: 
(2 files)
/stable/8/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c
MFC r230449:
Merge illumos revisions 13540, 13562:

illumos rev 13540 [1]:
Removal of pyzfs broke delegation for volumes

illumos rev 13562 [2]:
zfs allow arguments not parsed correctly after pyzfs removal

References:
https://www.illumos.org/issues/1726 [1]
https://www.illumos.org/issues/1977 [2]

Obtained from:  illumos (issues #1726, #1977)
12:25:21 - r230730
(6 days 1 hour ago)
by mm
Affects: 
(2 files)
/stable/9/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c
MFC r230449:
Merge illumos revisions 13540, 13562:

illumos rev 13540 [1]:
Removal of pyzfs broke delegation for volumes

illumos rev 13562 [2]:
zfs allow arguments not parsed correctly after pyzfs removal

References:
https://www.illumos.org/issues/1726 [1]
https://www.illumos.org/issues/1977 [2]

Obtained from:  illumos (issues #1726, #1977)
11:00:00 - r230729
(6 days 3 hours ago)
by dumbbell
Affects: 
(2 files)
/stable/8/sbin/dhclient/dhclient-script
MFC r229002:
Set svn:executable on dhclient-script

Sponsored by:   Yakaz (http://www.yakaz.com)
10:55:19 - r230728
(6 days 3 hours ago)
by dumbbell
Affects: 
(2 files)
/stable/9/sbin/dhclient/dhclient-script
MFC r229002:
Set svn:executable on dhclient-script

Sponsored by:   Yakaz (http://www.yakaz.com)
09:12:34 - r230727
(6 days 4 hours ago)
by nyan
Affects:  /head/sbin/camcontrol/Makefile
Fix build when RELEASE_CRUNCH is defined.
08:33:34 - r230726
(6 days 5 hours ago)
by hrs
Affects:  /head/etc/rc.d/netif
Perform IPv6 DAD only in ifn_start.
08:03:45 - r230725
(6 days 5 hours ago)
by mckusick
Affects: 
(33 files)
/stable/9/sys/*
MFC r230249:

Make sure all intermediate variables holding mount flags (mnt_flag)
and that all internal kernel calls passing mount flags are declared
as uint64_t so that flags in the top 32-bits are not lost.

MFC r230250:

There are several bugs/hangs when trying to take a snapshot on a UFS/FFS
filesystem running with journaled soft updates. Until these problems
have been tracked down, return ENOTSUPP when an attempt is made to
take a snapshot on a filesystem running with journaled soft updates.
04:44:52 - r230724
(6 days 9 hours ago)
by kib
Affects: 
(2 files)
/stable/8/lib/libc/sys/close.2
MFC r230460:
Clarify the implementation-defined behaviour in case of close(2)
returning error.
04:42:19 - r230723
(6 days 9 hours ago)
by kib
Affects: 
(2 files)
/stable/9/lib/libc/sys/close.2
MFC r230460:
Clarify the implementation-defined behaviour in case of close(2)
returning error.
02:13:01 - r230722
(6 days 11 hours ago)
by andrew
Affects:  /projects/arm_eabi/contrib/libstdc++/include/std/std_limits.h
Fix a warning where a left shift is greater than the width of an unsigned
type in __glibcxx_{min,max}. The code is unused because __glibcxx_signed
is false.

__glibcxx_max came from libstdc++ r138078, the last GPLv2 revision.
01:50:26 - r230721
(6 days 12 hours ago)
by rmacklem
Affects:  /projects/nfsv4.1-client/sys/fs/nfs/nfsproto.h
Add the rest of the NFSv4.1 error codes to nfsproto.h.
01:40:39 - r230720
(6 days 12 hours ago)
by marius
Affects: 
(9 files)
/stable/8/sys/*
MFC: r227912

- Just use cam_calc_geometry(9) on newer version of FreeBSD rather than
  duplicating it.
- In hptmv(4) and hptrr(4) use __FBSDID and DEVMETHOD_END.
01:40:37 - r230719
(6 days 12 hours ago)
by marius
Affects: 
(18 files)
/stable/9/sys/*
MFC: r227912

- Just use cam_calc_geometry(9) on newer version of FreeBSD rather than
  duplicating it.
- In hptmv(4) and hptrr(4) use __FBSDID and DEVMETHOD_END.
01:35:14 - r230718
(6 days 12 hours ago)
by marius
Affects: 
(37 files)
/stable/8/sys/*
MFC: r227908

Use DEVMETHOD_END.
01:32:24 - r230717
(6 days 12 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r227907, r22791 (for diff reduction)

Add BCM5785 but wrap it in #ifdef notyet for now. According to yongari@ there
are issues probably needing workarounds in bge(4) when brgphy(4) handles this
PHY. Letting ukphy(4) handle it instead results in a working configuration,
although likely with performance penalties.
01:29:31 - r230716
(6 days 12 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r227906

Sync with NetBSD rev. 1.104

Obtained from:  NetBSD
01:27:39 - r230715
(6 days 12 hours ago)
by marius
Affects: 
(32 files)
/stable/8/sys/*
MFC: r226173, r227848

s,KOBJMETHOD_END,DEVMETHOD_END,g in order to fully hide the explicit mention
of kobj(9) from device drivers.
01:22:48 - r230714
(6 days 12 hours ago)
by marius
Affects: 
(139 files)
/stable/8/sys/*
MFC: r227843 (partial)

- There's no need to overwrite the default device method with the default
  one. Interestingly, these are actually the default for quite some time
  (bus_generic_driver_added(9) since r52045 and bus_generic_print_child(9)
  since r52045) but even recently added device drivers do this unnecessarily.
  Discussed with: jhb, marcel
- While at it, use DEVMETHOD_END.
  Discussed with: jhb
- Also while at it, use __FBSDID.
01:01:41 - r230713
(6 days 12 hours ago)
by rmacklem
Affects: 
(6 files)
/projects/nfsv4.1-client/sys/fs/nfs/*
/projects/nfsv4.1-client/sys/fs/nfsclient/*
Try and fix the NFSv4.1 client so that it performs server crash
recovery correctly. Mainly required the addition of NFSERR_BADSESSION
to the NFSv4.0 errors (NFSERR_STALECLIENTID, NFSERR_STALESTATEID)
that indicate recovery is required. Also needed to re-initialize
the session slot fields and an extra argument to nfsrpc_setclient(),
so that it doesn't do a RECLAIM_COMPLETE for the recovery case.
Tested minimally against the Linux NFSv4.1 server.
01:01:35 - r230712
(6 days 13 hours ago)
by marius
Affects: 
(7 files)
/stable/8/sys/*
MFC: r227688

There's no need export the device interface methods of miibus(4).
01:01:32 - r230711
(6 days 13 hours ago)
by marius
Affects: 
(16 files)
/stable/9/sys/*
MFC: r227688

There's no need export the device interface methods of miibus(4).
01:00:16 - r230710
(6 days 13 hours ago)
by marius
Affects: 
(6 files)
/stable/8/sys/*
MFC: r227687, r228290 (partial)

- Add a hint.miibus.X.phymask hint, allowing do individually exclude PHY
  addresses from being probed and attaching something including ukphy(4)
  to it. This is mainly necessarily for PHY switches that create duplicate
  or fake PHYs on the bus that can corrupt the PHY state when accessed or
  simply cause problems when ukphy(4) isolates the additional instances.
- Change miibus(4) to be a hinted bus, allowing to add child devices via
  hints and to set their attach arguments (including for automatically
  probed PHYs). This is mainly needed for PHY switches that violate IEEE
  802.3 and don't even implement the basic register set so we can't probe
  them automatically. However, the ability to alter the attach arguments
  for automatically probed PHYs is also useful as for example it allows
  to test (or tell a user to test) new variant of a PHY with a specific
  driver by letting an existing driver attach to it via manipulating the
  IDs without the need to touch the source code or to limit a Gigabit
  Ethernet PHY to only announce up to Fast Ethernet in order to save
  energy  by limiting the capability mask. Generally, a driver has to
  be hinted via hint.phydrv.X.at="miibusY" and hint.phydrv.X.phyno="Z"
  (which already is sufficient to add phydrvX at miibusY at PHY address
  Z). Then optionally the following attach arguments additionally can
  be configured:
  hint.phydrv.X.id1
  hint.phydrv.X.id2
  hint.phydrv.X.capmask
- Some minor cleanup.

Reviewed by:    adrian, ray
01:00:11 - r230709
(6 days 13 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r227687, r228290

- Add a hint.miibus.X.phymask hint, allowing do individually exclude PHY
  addresses from being probed and attaching something including ukphy(4)
  to it. This is mainly necessarily for PHY switches that create duplicate
  or fake PHYs on the bus that can corrupt the PHY state when accessed or
  simply cause problems when ukphy(4) isolates the additional instances.
- Change miibus(4) to be a hinted bus, allowing to add child devices via
  hints and to set their attach arguments (including for automatically
  probed PHYs). This is mainly needed for PHY switches that violate IEEE
  802.3 and don't even implement the basic register set so we can't probe
  them automatically. However, the ability to alter the attach arguments
  for automatically probed PHYs is also useful as for example it allows
  to test (or tell a user to test) new variant of a PHY with a specific
  driver by letting an existing driver attach to it via manipulating the
  IDs without the need to touch the source code or to limit a Gigabit
  Ethernet PHY to only announce up to Fast Ethernet in order to save
  energy  by limiting the capability mask. Generally, a driver has to
  be hinted via hint.phydrv.X.at="miibusY" and hint.phydrv.X.phyno="Z"
  (which already is sufficient to add phydrvX at miibusY at PHY address
  Z). Then optionally the following attach arguments additionally can
  be configured:
  hint.phydrv.X.id1
  hint.phydrv.X.id2
  hint.phydrv.X.capmask
- Some minor cleanup.

Reviewed by:    adrian, ray
00:52:07 - r230708
(6 days 13 hours ago)
by marius
Affects: 
(6 files)
/stable/8/sys/*
MFC: r227686

There's no need to read DC_10BTSTAT twice in dcphy_status().
00:52:04 - r230707
(6 days 13 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r227686

There's no need to read DC_10BTSTAT twice in dcphy_status().
00:50:50 - r230706
(6 days 13 hours ago)
by marius
Affects: 
(6 files)
/stable/8/sys/*
MFC: r227685

- There's no need to ignore the return value of mii_attach(9) when attaching
  dcphy(4) (CID 9283).
- In dc_detach(), check whether ifp is NULL as dc_attach() may call the
  former without ifp being allocated (CID 4288).

Found with:     Coverity Prevent(tm)
00:50:41 - r230705
(6 days 13 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r227685

- There's no need to ignore the return value of mii_attach(9) when attaching
  dcphy(4) (CID 9283).
- In dc_detach(), check whether ifp is NULL as dc_attach() may call the
  former without ifp being allocated (CID 4288).

Found with:     Coverity Prevent(tm)
00:49:14 - r230704
(6 days 13 hours ago)
by marius
Affects: 
(6 files)
/stable/8/sys/*
MFC: r227043

Sprinkle some const.
00:49:12 - r230703
(6 days 13 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r227043

Sprinkle some const.
00:47:14 - r230702
(6 days 13 hours ago)
by marius
Affects: 
(6 files)
/stable/8/sys/*
MFC: r226950

Add multiple inclusion protection.
00:47:11 - r230701
(6 days 13 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r226950

Add multiple inclusion protection.
00:45:54 - r230700
(6 days 13 hours ago)
by marius
Affects: 
(6 files)
/stable/8/sys/*
MFC: r226948

Remove unnecessary DMA constraints.
00:45:52 - r230699
(6 days 13 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r226948

Remove unnecessary DMA constraints.
00:42:54 - r230698
(6 days 13 hours ago)
by marius
Affects: 
(7 files)
/stable/8/sys/*
MFC: r226270

- Remove unused remnants of MII bitbang'ing.
- Sprinkle const.
00:42:54 - r230697
(6 days 13 hours ago)
by marius
Affects: 
(16 files)
/stable/9/sys/*
MFC: r226270

- Remove unused remnants of MII bitbang'ing.
- Sprinkle const.
00:41:08 - r230696
(6 days 13 hours ago)
by marius
Affects: 
(6 files)
/stable/8/sys/*
MFC: r226175

In device_get_children() avoid malloc(0) in order to increase portability
to other operating systems.

PR:     154287
00:40:39 - r230695
(6 days 13 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r226175

In device_get_children() avoid malloc(0) in order to increase portability
to other operating systems.

PR:     154287
00:35:22 - r230694
(6 days 13 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r226171

Sprinkle const.
00:35:22 - r230693
(6 days 13 hours ago)
by marius
Affects: 
(6 files)
/stable/8/sys/*
MFC: r226171

Sprinkle const.
00:34:19 - r230692
(6 days 13 hours ago)
by marius
Affects: 
(8 files)
/stable/8/sys/*
MFC: r226118

Sync with ahc(4)/ahd(4)/sym(4) etc:
Zero any sense not transferred by the device as the SCSI specification
mandates that any untransferred data should be assumed to be zero.

Reviewed by:    ken
00:32:37 - r230691
(6 days 13 hours ago)
by marius
Affects: 
(15 files)
/stable/9/sys/*
MFC: r226057

- Currently, sched_balance_pair() may cause a CPU to send an IPI_PREEMPT to
  itself, which sparc64 hardware doesn't support. One way to solve this
  would be to directly call sched_preempt() instead of issuing a self-IPI.
  However, quoting jhb@:
  "On the other hand, you can probably just skip the IPI entirely if we are
  going to send it to the current CPU.  Presumably, once this routine
  finishes, the current CPU will exit softlock (or will do so "soon") and
  will then pick the next thread to run based on the adjustments made in
  this routine, so there's no need to IPI the CPU running this routine
  anyway.  I think this is the better solution.  Right now what is probably
  happening on other platforms is as soon as this routine finishes the CPU
  processes its self-IPI and causes mi_switch() which will just switch back
  to the softclock thread it is already running."
- With r226054 (MFC'ed to stable/9 in r230690) and the the above change in
  place, sparc64 now no longer is incompatible with ULE and vice versa.
  However, powerpc/E500 still is.

Submitted by:   jhb
Reviewed by:    jeff
00:24:46 - r230690
(6 days 13 hours ago)
by marius
Affects: 
(17 files)
/stable/9/sys/*
MFC: r226054

- Use atomic operations rather than sched_lock for safely assigning pm_active
  and pc_pmap for SMP. This is key to allowing adding support for SCHED_ULE.
  Thanks go to Peter Jeremy for additional testing.
- Add support for SCHED_ULE to cpu_switch().
00:19:19 - r230689
(6 days 13 hours ago)
by kmacy
Affects:  /head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c
always exclude data bufs regardless of debug settings
00:00:15 - r230688
(6 days 14 hours ago)
by marius
Affects: 
(30 files)
/stable/8/sys/*
MFC: r225931, r225932, r227000

Make sparc64 compatible with NEW_PCIB and enable it:
- Implement bus_adjust_resource() methods as far as necessary and in non-PCI
  bridge drivers as far as feasible without rototilling them.
- As NEW_PCIB does a layering violation by activating resources at layers
  above pci(4) without previously bubbling up their allocation there, move
  the assignment of bus tags and handles from the bus_alloc_resource() to
  the bus_activate_resource() methods like at least the other NEW_PCIB
  enabled architectures do. This is somewhat unfortunate as previously
  sparc64 (ab)used resource activation to indicate whether SYS_RES_MEMORY
  resources should be mapped into KVA, which is only necessary if their
  going to be accessed via the pointer returned from rman_get_virtual() but
  not for bus_space(9) as the later always uses physical access on sparc64.
  Besides wasting KVA if we always map in SYS_RES_MEMORY resources, a driver
  also may deliberately not map them in if the firmware already has done so,
  possibly in a special way. So in order to still allow a driver to decide
  whether a SYS_RES_MEMORY resource should be mapped into KVA we let it
  indicate that by calling bus_space_map(9) with BUS_SPACE_MAP_LINEAR as
  actually documented in the bus_space(9) page. This is implemented by
  allocating a separate bus tag per SYS_RES_MEMORY resource and passing the
  resource via the previously unused bus tag cookie so we later on can call
  rman_set_virtual() in sparc64_bus_mem_map(). As a side effect this now
  also allows to actually indicate that a SYS_RES_MEMORY resource should be
  mapped in as cacheable and/or read-only via BUS_SPACE_MAP_CACHEABLE and
  BUS_SPACE_MAP_READONLY respectively.
- Do some minor cleanup like taking advantage of rman_init_from_resource(),
  factor out the common part of bus tag allocation into a newly added
  sparc64_alloc_bus_tag(), hook up some missing newbus methods and replace
  some homegrown versions with the generic counterparts etc.
- While at it, let apb_attach() (which can't use the generic NEW_PCIB code
  as APB bridges just don't have the base and limit registers implemented)
  regarding the config space registers cached in pcib_softc and the SYSCTL
  reporting nodes set up.

 


Powered by Python FreeBSD support by secnetix GmbH & Co. KG

Page generated in 32 ms, 293 revisions printed. Current time is 2012-02-04 14:01:40. All times are in UTC/GMT.