]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
10 years agoThese three files appeared in 6.0p1, which was imported into the vendor
Dag-Erling Smørgrav [Mon, 9 Sep 2013 13:56:58 +0000 (13:56 +0000)]
These three files appeared in 6.0p1, which was imported into the vendor
branch but never merged to head.  They were inadvertantly left out when
6.1p1 was merged to head.  It didn't make any difference at the time,
because they were unused, but one of them is required for DNS-based host
key verification.

Approved by: re (blanket)

10 years agoRevert r255420. This seems to break some Powermac systems and will be
Nathan Whitehorn [Mon, 9 Sep 2013 13:40:53 +0000 (13:40 +0000)]
Revert r255420. This seems to break some Powermac systems and will be
revisited much later.

Pointy hat to: me
Approved by: re (kib, implicit due to breakage 10 minutes ago)

10 years agoAttach only on hardware that is actually supported as opposed to hardware
Nathan Whitehorn [Mon, 9 Sep 2013 12:54:08 +0000 (12:54 +0000)]
Attach only on hardware that is actually supported as opposed to hardware
that seems like it has some of the problems we might want.

Approved by: re (kib)

10 years agoRaise artificial limits on number of CPUs and number of interrupts.
Nathan Whitehorn [Mon, 9 Sep 2013 12:52:34 +0000 (12:52 +0000)]
Raise artificial limits on number of CPUs and number of interrupts.

Approved by: re (kib)

10 years agoAdd POWER CPUs to the kernel's knowledge. This does not imply we currently
Nathan Whitehorn [Mon, 9 Sep 2013 12:51:24 +0000 (12:51 +0000)]
Add POWER CPUs to the kernel's knowledge. This does not imply we currently
actually run on any machines with POWER CPUs but avoids closing that door
unnecessarily.

Approved by: re (kib)

10 years agoAdd hook called when every new processor is brought online -- including the
Nathan Whitehorn [Mon, 9 Sep 2013 12:49:19 +0000 (12:49 +0000)]
Add hook called when every new processor is brought online -- including the
BSP -- so that platform modules have a chance to add the new CPU to any
internal bookkeeping.

Approved by: re (kib)

10 years agoUse a spin lock instead of a mutex to gate RTAS. This is required if RTAS
Nathan Whitehorn [Mon, 9 Sep 2013 12:45:41 +0000 (12:45 +0000)]
Use a spin lock instead of a mutex to gate RTAS. This is required if RTAS
calls are involved in interrupt handling.

Approved by: re (kib)

10 years agoUse the canonical bits for wired, etc. in the PTE. This is important for
Nathan Whitehorn [Mon, 9 Sep 2013 12:44:48 +0000 (12:44 +0000)]
Use the canonical bits for wired, etc. in the PTE. This is important for
interactions with certain kinds of hypervisors that look into the PTEs
more closely than they should.

Approved by: re (kib)

10 years agoRemove unneeded mappings from libmap32.conf. Move it up one level and
Dag-Erling Smørgrav [Mon, 9 Sep 2013 06:02:30 +0000 (06:02 +0000)]
Remove unneeded mappings from libmap32.conf.  Move it up one level and
install it on powerpc64 in addition to amd64.

Reviewed by: kib
Approved by: re (blanket)

10 years agoIn r243868, the error message buffer errmsg have been changed from
Xin LI [Mon, 9 Sep 2013 05:01:18 +0000 (05:01 +0000)]
In r243868, the error message buffer errmsg have been changed from
an on-stack array to a pointer and therefore sizeof(errmsg) would
become 4 or 8 bytes depending on the architecture.

Fix this by using ERRMSGL in place of sizeof().

Submitted by: J David <j.david.lists@gmail.com>
MFC after: 3 days
Approved by: re (kib)

10 years agoRework the tx credit mechanism between the cxgbe/tom driver
Navdeep Parhar [Mon, 9 Sep 2013 04:38:57 +0000 (04:38 +0000)]
Rework the tx credit mechanism between the cxgbe/tom driver
and the card.  This helps smooth out some burstiness in the
exchange.

Approved by: re (glebius)

10 years agoFix a miscalculation that caused cxgbe/tom to auto-increment
Navdeep Parhar [Mon, 9 Sep 2013 00:16:59 +0000 (00:16 +0000)]
Fix a miscalculation that caused cxgbe/tom to auto-increment
a TOE socket's tx buffer size too aggressively.

Approved by: re (delphij)

10 years agoPrior to r254304, we only began scanning the active page queue when the
Alan Cox [Sun, 8 Sep 2013 21:30:53 +0000 (21:30 +0000)]
Prior to r254304, we only began scanning the active page queue when the
amount of free memory was close to the point at which we would begin
reclaiming pages.  Now, we continuously scan the active page queue,
regardless of the amount of free memory.  Consequently, we are continuously
calling pmap_ts_referenced() on active pages.

Prior to this change, pmap_ts_referenced() would always demote superpage
mappings in order to obtain finer-grained reference information.  This made
sense because we were coming under memory pressure and would soon have to
begin reclaiming pages.  Now, however, with continuous scanning of the
active page queue, these demotions are taking a toll on performance.  For
example, on one of my test machines, the running time for the HPCC Random
Access benchmark (also known as GUPS) has increased by 54%.  To address this
problem, I have replaced the demotion with a heuristic for periodically
clearing the reference flag on superpage mappings.

Reviewed by: kib
Approved by: re (glebius)
Sponsored by: EMC / Isilon Storage Division

10 years agoHook host(1) up to the build in the LDNS case.
Dag-Erling Smørgrav [Sun, 8 Sep 2013 20:48:23 +0000 (20:48 +0000)]
Hook host(1) up to the build in the LDNS case.

Approved by: re (blanket)

10 years agoImport Magerya Vitaly's ldns-host, and build it instead of the BIND version
Dag-Erling Smørgrav [Sun, 8 Sep 2013 19:40:32 +0000 (19:40 +0000)]
Import Magerya Vitaly's ldns-host, and build it instead of the BIND version
in the WITH_LDNS_UTILS case.

Approved by: re (blanket)

10 years agoLDNS needs OpenSSL. This wasn't a problem as long as it was only build
Dag-Erling Smørgrav [Sun, 8 Sep 2013 19:39:18 +0000 (19:39 +0000)]
LDNS needs OpenSSL.  This wasn't a problem as long as it was only build
statically, since any program using it would have to link with it anyway.

Approved by: re (blanket)

10 years agoUse correct type for the vmx vlan filter table
Bryan Venteicher [Sun, 8 Sep 2013 19:13:06 +0000 (19:13 +0000)]
Use correct type for the vmx vlan filter table

Approved by: re (glebius, gjb)

10 years agoRelese the interface in the last.
Mikolaj Golub [Sun, 8 Sep 2013 18:19:40 +0000 (18:19 +0000)]
Relese the interface in the last.

Reviewed by: glebius
Approved by: re (kib)

10 years agoDrain for the xbusy state for two places which potentially do
Konstantin Belousov [Sun, 8 Sep 2013 17:51:22 +0000 (17:51 +0000)]
Drain for the xbusy state for two places which potentially do
pmap_remove_all(). Not doing the drain allows the pmap_enter() to
proceed in parallel, making the pmap_remove_all() effects void.

The race results in an invalidated page mapped wired by usermode.

Reported and tested by: pho
Reviewed by: alc
Sponsored by: The FreeBSD Foundation
Approved by: re (glebius)

10 years agoMFV (r255387): undo autoprop damage
Dag-Erling Smørgrav [Sun, 8 Sep 2013 16:56:17 +0000 (16:56 +0000)]
MFV (r255387): undo autoprop damage

Approved by: re (glebius)

10 years agoFix verbose output line; needs <NL>
Mark Murray [Sun, 8 Sep 2013 16:48:03 +0000 (16:48 +0000)]
Fix verbose output line; needs <NL>

Submitted by: Sean Bruno <sean_bruno@yahoo.com>
Approved by: re (glebius)

10 years agoDamn autoprops!
Dag-Erling Smørgrav [Sun, 8 Sep 2013 11:21:08 +0000 (11:21 +0000)]
Damn autoprops!

10 years agoMake libldns and libssh private.
Dag-Erling Smørgrav [Sun, 8 Sep 2013 10:04:26 +0000 (10:04 +0000)]
Make libldns and libssh private.

Approved by: re (blanket)

10 years agoAdd a stock libmap32.conf for amd64. The first two lines have no effect
Dag-Erling Smørgrav [Sun, 8 Sep 2013 09:46:22 +0000 (09:46 +0000)]
Add a stock libmap32.conf for amd64.  The first two lines have no effect
except to document the hardcoded standard library search path for 32-bit
binaries.  The third line performs the equivalent substitution for the
private library directory.

Ironically, these entries rely on functionality which is only available
in the COMPAT_32BIT version of rtld-elf.

Approved by: re (blanket)

10 years agoCreate a private library directory (LIBPRIVATEDIR) for libraries which
Dag-Erling Smørgrav [Sun, 8 Sep 2013 09:40:23 +0000 (09:40 +0000)]
Create a private library directory (LIBPRIVATEDIR) for libraries which
we don't want to expose but which can't or shouldn't be static.

To mark a library as private, define PRIVATELIB in its Makefile.  It
will be installed in LIBPRIVATEDIR, which is normally /usr/lib/private
(or /usr/lib32/private for 32-bit libraries on 64-bit platforms).

To indicate that a program or library depends on a private library,
define USEPRIVATELIB in its Makefile.  The correct version of
LIBPRIVATEDIR will be added to its run-time library search path.

Approved by: re (blanket)

10 years agoFix the build; Certain linkable symbols need to always be present.
Mark Murray [Sat, 7 Sep 2013 22:07:36 +0000 (22:07 +0000)]
Fix the build; Certain linkable symbols need to always be present.

Pass the pointy hat please.

Also unblock the software (Yarrow) generator for now. This will be
reverted; Yarrow needs to block until secure, not this behaviour
of serving as soon as asked.

Folks with specific requiremnts will be able to (can!) unblock this
device with any write, and are encouraged to do so in /etc/rc.d/*
scripting. ("Any" in this case could be "echo '' > /dev/random" as
root).

10 years agoFix error in r252115: space for the softc needs to be allocated. This
Nathan Whitehorn [Sat, 7 Sep 2013 20:52:31 +0000 (20:52 +0000)]
Fix error in r252115: space for the softc needs to be allocated. This
seemed to be working by chance on most systems.

10 years agoTweak wording.
Dag-Erling Smørgrav [Sat, 7 Sep 2013 20:25:22 +0000 (20:25 +0000)]
Tweak wording.

10 years agoUpdate to OpenPAM Nummularia.
Dag-Erling Smørgrav [Sat, 7 Sep 2013 19:43:39 +0000 (19:43 +0000)]
Update to OpenPAM Nummularia.

10 years agoMerge upstream r743: caught_signal should be static.
Dag-Erling Smørgrav [Sat, 7 Sep 2013 19:27:58 +0000 (19:27 +0000)]
Merge upstream r743: caught_signal should be static.

10 years agoSort properly.
Pawel Jakub Dawidek [Sat, 7 Sep 2013 19:16:02 +0000 (19:16 +0000)]
Sort properly.

10 years agoAdjust optional obsolete files with new MK_GNUCXX
Antoine Brodin [Sat, 7 Sep 2013 19:04:28 +0000 (19:04 +0000)]
Adjust optional obsolete files with new MK_GNUCXX

10 years agoFix panic in cap_rights_is_valid() when invalid rights are provided -
Pawel Jakub Dawidek [Sat, 7 Sep 2013 19:03:16 +0000 (19:03 +0000)]
Fix panic in cap_rights_is_valid() when invalid rights are provided -
the right_to_index() function should assert correctness in this case.

Improve other assertions.

Reported by: pho
Tested by: pho

10 years agoThis was a good idea that never went anywhere.
Dag-Erling Smørgrav [Sat, 7 Sep 2013 18:55:52 +0000 (18:55 +0000)]
This was a good idea that never went anywhere.

10 years agoExport a function to allow BCM2835's peripheral devices to enable their
Luiz Otavio O Souza [Sat, 7 Sep 2013 18:48:15 +0000 (18:48 +0000)]
Export a function to allow BCM2835's peripheral devices to enable their
altenate pin function (from GPIO pins) as needed.

Approved by: adrian (mentor)

10 years agoMFV (r255364): move the code around in preparation for Nummularia.
Dag-Erling Smørgrav [Sat, 7 Sep 2013 18:46:35 +0000 (18:46 +0000)]
MFV (r255364): move the code around in preparation for Nummularia.

10 years agoNetlogic XLP network driver update
Jayachandran C. [Sat, 7 Sep 2013 18:26:16 +0000 (18:26 +0000)]
Netlogic XLP network driver update

Changes are to
- update board and network interface detection logic
- fix reading onboard CPLD in little-endian config
- print NAE frequency conrrectly for Bx chips
- update XAUI config to disable Rx/Tx until interface is up

Submitted by: Venkatesh J V <venkatesh.vivekanandan@broadcom.com>

10 years agoUse a better version of memcpy/bcopy for mips kernel.
Jayachandran C. [Sat, 7 Sep 2013 16:31:30 +0000 (16:31 +0000)]
Use a better version of memcpy/bcopy for mips kernel.

Use a variant of mips libc memcpy for kernel. This implementation uses
64-bit operations when compiled for 64-bit, and is significantly faster
in that case.

Submitted by: Tanmay Jagdale <tanmayj@broadcom.com>

10 years agoVendor import of OpenPAM Nummularia..
Dag-Erling Smørgrav [Sat, 7 Sep 2013 16:15:30 +0000 (16:15 +0000)]
Vendor import of OpenPAM Nummularia..

10 years agoPrepare for OpenPAM Nummularia by reorganizing to match its new directory
Dag-Erling Smørgrav [Sat, 7 Sep 2013 16:10:15 +0000 (16:10 +0000)]
Prepare for OpenPAM Nummularia by reorganizing to match its new directory
structure.

10 years agoMicro-optimize cpu_search(), allowing compiler to use more efficient inline
Alexander Motin [Sat, 7 Sep 2013 15:16:30 +0000 (15:16 +0000)]
Micro-optimize cpu_search(), allowing compiler to use more efficient inline
ffsl() implementation, when it is available, instead of homegrown iteration.

On dual-E5645 amd64 system (2x6x2 cores) under heavy I/O load that reduces
time spent inside cpu_search() from 19% to 13%, while IOPS increased by 5%.

10 years agoBring in some behind-the-scenes development, mainly By Arthur Mesh,
Mark Murray [Sat, 7 Sep 2013 14:15:13 +0000 (14:15 +0000)]
Bring in some behind-the-scenes development, mainly By Arthur Mesh,
the rest by me.

o Namespace cleanup; the Yarrow name is now restricted to where it
  really applies; this is in anticipation of being augmented or
  replaced by Fortuna in the future. Fortuna is mentioned, but behind
  #if logic, and is ignorable for now.

o The harvest queue is pulled out into its own modules.

o Entropy harvesting is emproved, both by being made more conservative,
  and by separating (a bit!) the sources. Available entropy crumbs are
  marginally improved.

o Selection of sources is made clearer. With recent revelations,
  this will receive more work in the weeks and months to come.

Submitted by:  Arthur Mesh (partly) <arthurmesh@gmail.com>

10 years agoOn ARM EABI double precision floating point values are stored in the
Andrew Turner [Sat, 7 Sep 2013 14:04:10 +0000 (14:04 +0000)]
On ARM EABI double precision floating point values are stored in the
endian the CPU is in, i.e. little-endian on most ARM cores.

This allows ARMv4 and ARMv5 boards to boot with the ARM EABI.

10 years agoDon't clear the unused SI_CHEAPCLONE flag in tap_create()/tuncreate().
Davide Italiano [Sat, 7 Sep 2013 13:50:13 +0000 (13:50 +0000)]
Don't clear the unused SI_CHEAPCLONE flag in tap_create()/tuncreate().

Reviewed by: kib

10 years ago- Use make_dev_credf(MAKEDEV_REF) instead of the race-prone make_dev()+
Davide Italiano [Sat, 7 Sep 2013 13:45:44 +0000 (13:45 +0000)]
- Use make_dev_credf(MAKEDEV_REF) instead of the race-prone make_dev()+
dev_ref() in the clone handlers that still use it.
- Don't set SI_CHEAPCLONE flag, it's not used anywhere neither in devfs
(for anything real)

Reviewed by: kib

10 years agowait(2): Add some possible caveats to standards section.
Jilles Tjoelker [Sat, 7 Sep 2013 11:41:52 +0000 (11:41 +0000)]
wait(2): Add some possible caveats to standards section.

10 years agoDo not try to remove directories that are part of BSD.include.dist
Antoine Brodin [Sat, 7 Sep 2013 11:02:38 +0000 (11:02 +0000)]
Do not try to remove directories that are part of BSD.include.dist

10 years agoRevert parts of r245132 and r245175. We don't need to write to the
Hans Petter Selasky [Sat, 7 Sep 2013 10:42:00 +0000 (10:42 +0000)]
Revert parts of r245132 and r245175. We don't need to write to the
IMAN register to clear the pending interrupt status bits. This patch
tries to solve problems seen on the MacBook Air, as reported by
Johannes Lundberg <johannes@brilliantservice.co.jp>

MFC after: 1 week

10 years agoFix !INET6 build.
Gleb Smirnoff [Sat, 7 Sep 2013 09:47:18 +0000 (09:47 +0000)]
Fix !INET6 build.

10 years agoAdd more leftovers from gcc.
Gleb Smirnoff [Sat, 7 Sep 2013 09:45:43 +0000 (09:45 +0000)]
Add more leftovers from gcc.

10 years agoMFC
Mark Murray [Sat, 7 Sep 2013 07:58:29 +0000 (07:58 +0000)]
MFC

10 years agoFix of r255318: move sf_buf_alloc()/sf_buf_free() out of #ifdef
Gleb Smirnoff [Sat, 7 Sep 2013 07:56:55 +0000 (07:56 +0000)]
Fix of r255318: move sf_buf_alloc()/sf_buf_free() out of #ifdef
ARM_USE_SMALL_ALLOC.

10 years agoAdd a vtprintf. It is to tprintf what vprintf is to printf.
Navdeep Parhar [Sat, 7 Sep 2013 07:53:21 +0000 (07:53 +0000)]
Add a vtprintf.  It is to tprintf what vprintf is to printf.

Reviewed by: kib

10 years agoAdd note in UPDATING about the no-gcc-by-default switch.
David Chisnall [Sat, 7 Sep 2013 07:26:51 +0000 (07:26 +0000)]
Add note in UPDATING about the no-gcc-by-default switch.

10 years agoDisable USB 3.0 streams mode by default, hence not all XHCI chipsets
Hans Petter Selasky [Sat, 7 Sep 2013 06:53:59 +0000 (06:53 +0000)]
Disable USB 3.0 streams mode by default, hence not all XHCI chipsets
implement it to avoid undefined behaviour.

10 years ago- Begin sentence on a new line.
Joel Dahl [Sat, 7 Sep 2013 05:44:53 +0000 (05:44 +0000)]
- Begin sentence on a new line.
- Minor language fixes.

10 years agoAllocate VPIDs by using the unit number allocator to keep do the bookkeeping.
Neel Natu [Sat, 7 Sep 2013 05:30:34 +0000 (05:30 +0000)]
Allocate VPIDs by using the unit number allocator to keep do the bookkeeping.

Also deal with VPID exhaustion by allocating out of a reserved range as the
last resort.

10 years agoMask off the vector from the MSI-x data word.
Peter Grehan [Sat, 7 Sep 2013 03:33:36 +0000 (03:33 +0000)]
Mask off the vector from the MSI-x data word.
Some o/s's set the trigger-mode level bit which
results in an invalid vector and pass-thru interrupts
not being delivered.

10 years agoRemove unnecessary mediaClose (FTP operations are done with either ftp(1)
Devin Teske [Sat, 7 Sep 2013 03:27:13 +0000 (03:27 +0000)]
Remove unnecessary mediaClose (FTP operations are done with either ftp(1)
or fetch(1), neither of which are stateful, compared to how sysinstall(8)
did FTP operations, maintaining an open session until mediaClose).

10 years agoLong URLs don't always appear even with autosizing and other tricks. So,
Devin Teske [Sat, 7 Sep 2013 03:24:22 +0000 (03:24 +0000)]
Long URLs don't always appear even with autosizing and other tricks. So,
add some whitespace to put the URL on a line by itself, maximizing view.

10 years agonewfs_msdos: fix inaccurate comments.
Pedro F. Giffuni [Sat, 7 Sep 2013 03:10:12 +0000 (03:10 +0000)]
newfs_msdos: fix inaccurate comments.

The fields from deMTime and deMDate in the DOS directory entry
are actually the last-modified time/date.

According to some online documentation these are the only
timestamps available in FAT12/FAT16.

MFC after: 3 days

10 years agoext2fs: temporarily disable htree directory index.
Pedro F. Giffuni [Sat, 7 Sep 2013 02:45:51 +0000 (02:45 +0000)]
ext2fs: temporarily disable htree directory index.

Our code does not consider yet the case of hash collisions. This
is a rather annoying situation where two or more files that
happen to have the same hash value will not appear accessible.

The situation is not difficult to work-around but given that things
will just work without enabling htree we will save possible
embarrassments for the next release.

Reported by: Kevin Lo

10 years agoWhen computing the partial delivery point, take the
Michael Tuexen [Sat, 7 Sep 2013 00:45:24 +0000 (00:45 +0000)]
When computing the partial delivery point, take the
receiver socket buffer size correctly into account.

MFC after: 1 week

10 years agolibc: Make resolver sockets close-on-exec (SOCK_CLOEXEC).
Jilles Tjoelker [Fri, 6 Sep 2013 23:49:54 +0000 (23:49 +0000)]
libc: Make resolver sockets close-on-exec (SOCK_CLOEXEC).

Although the resolver's sockets are exposed to applications via res_state,
I do not expect them to pass the sockets across execve().

10 years agoRemove the hardcoded limit for the number of gpio_pins that can be used.
Luiz Otavio O Souza [Fri, 6 Sep 2013 23:47:50 +0000 (23:47 +0000)]
Remove the hardcoded limit for the number of gpio_pins that can be used.
Allocate it dynamically.

Approved by: adrian (mentor)

10 years agoFix an off-by-one bug in ar71xx_gpio and bcm2835_gpio which makes the last
Luiz Otavio O Souza [Fri, 6 Sep 2013 23:39:56 +0000 (23:39 +0000)]
Fix an off-by-one bug in ar71xx_gpio and bcm2835_gpio which makes the last
pin unavailable.

Reported and tested by: sbruno (ar71xx)
Approved by: adrian (mentor)
Pointy hat to: loos

10 years agoIntermittent crashes in the NLM (rpc.lockd) code during system
Rick Macklem [Fri, 6 Sep 2013 23:14:31 +0000 (23:14 +0000)]
Intermittent crashes in the NLM (rpc.lockd) code during system
shutdown was reporetd via email. The crashes occurred because the
client side NLM would attempt to use its socket after it had been
destroyed. Looking at the code, it would soclose() once the reference
count on the socket handling structure went to 0. Unfortunately,
nlm_host_get_rpc() will simply allocate a new socket handling structure
when none exists and use the now soclose()d socket. Since there doesn't
seem to be a safe way to determine when the socket is no longer needed,
this patch modifies the code so that it never soclose()es the socket.
Since there is only one socket ever created, this does not introduce a
leak when the rpc.lockd is stopped/restarted. The patch also disables
unloading of the nfslockd module, since it is not safe to do so (and
has never been safe to do so, from what I can see).

Reported by: mav
Tested by: mav
MFC after: 2 weeks

10 years agoUpdate ipfilter 4.1.28 --> 5.1.2.
Cy Schubert [Fri, 6 Sep 2013 23:11:19 +0000 (23:11 +0000)]
Update ipfilter 4.1.28 --> 5.1.2.

Approved by: glebius (mentor)
BSD Licensed by: Darren Reed <darrenr@reed.wattle.id.au> (author)

10 years agoImplement PV IPIs for PVHVM guests and further converge PV and HVM
Justin T. Gibbs [Fri, 6 Sep 2013 22:17:02 +0000 (22:17 +0000)]
Implement PV IPIs for PVHVM guests and further converge PV and HVM
IPI implmementations.

Submitted by: Roger Pau Monné
Sponsored by: Citrix Systems R&D
Submitted by: gibbs (misc cleanup, table driven config)
Reviewed by:  gibbs
MFC after: 2 weeks

sys/amd64/include/cpufunc.h:
sys/amd64/amd64/pmap.c:
Move invltlb_globpcid() into cpufunc.h so that it can be
used by the Xen HVM version of tlb shootdown IPI handlers.

sys/x86/xen/xen_intr.c:
sys/xen/xen_intr.h:
Rename xen_intr_bind_ipi() to xen_intr_alloc_and_bind_ipi(),
and remove the ipi vector parameter.  This api allocates
an event channel port that can be used for ipi services,
but knows nothing of the actual ipi for which that port
will be used.  Removing the unused argument and cleaning
up the comments surrounding its declaration helps clarify
its actual role.

sys/amd64/amd64/mp_machdep.c:
sys/amd64/include/cpu.h:
sys/i386/i386/mp_machdep.c:
sys/i386/include/cpu.h:
Implement a generic framework for amd64 and i386 that allows
the implementation of certain CPU management functions to
be selected at runtime.  Currently this is only used for
the ipi send function, which we optimize for Xen when running
on a Xen hypervisor, but can easily be expanded to support
more operations.

sys/x86/xen/hvm.c:
Implement Xen PV IPI handlers and operations, replacing native
send IPI.

sys/amd64/include/pcpu.h:
sys/i386/include/pcpu.h:
sys/i386/include/smp.h:
Remove NR_VIRQS and NR_IPIS from FreeBSD headers.  NR_VIRQS
is defined already for us in the xen interface files.
NR_IPIS is only needed in one file per Xen platform and is
easily inferred by the IPI vector table that is defined in
those files.

sys/i386/xen/mp_machdep.c:
Restructure to more closely match the HVM implementation by
performing table driven IPI setup.

10 years agoBump .Dd after r255307 and r255310
Bryan Venteicher [Fri, 6 Sep 2013 21:26:36 +0000 (21:26 +0000)]
Bump .Dd after r255307 and r255310

Requested by: joel

10 years agoRetire netisr.netisr_direct and netisr.netisr_direct_force sysctls.
Davide Italiano [Fri, 6 Sep 2013 21:02:43 +0000 (21:02 +0000)]
Retire netisr.netisr_direct and netisr.netisr_direct_force sysctls.
These were used to control/export dispatch policy but they're not anymore.
This commit cannot be MFC'ed to 9 because old netstat(9) binary relies
on such sysctl to work. On the other hand, there's no real reason to
keep'em around in 10.

10 years agolibc: Use SOCK_CLOEXEC for various internal file descriptors.
Jilles Tjoelker [Fri, 6 Sep 2013 21:02:06 +0000 (21:02 +0000)]
libc: Use SOCK_CLOEXEC for various internal file descriptors.

This change avoids undesirably passing some internal file descriptors to a
process created (fork+exec) by another thread.

Kernel support for SOCK_CLOEXEC was added in r248534, March 19, 2013.

10 years agoRegenerate after unhooking gcc/g++ from the default build for some arches.
Niclas Zeising [Fri, 6 Sep 2013 20:51:15 +0000 (20:51 +0000)]
Regenerate after unhooking gcc/g++ from the default build for some arches.

10 years agoAdd WITH_GCC alongside WITHOUT_GCC.
Niclas Zeising [Fri, 6 Sep 2013 20:49:48 +0000 (20:49 +0000)]
Add WITH_GCC alongside WITHOUT_GCC.
Remove the comment from WITHOUT_GCC about this not working without an
alternate toolchain, we have clang now.

10 years agoDon't delete c++filt when doing a make delete-old if GCC is not built but
David Chisnall [Fri, 6 Sep 2013 20:46:07 +0000 (20:46 +0000)]
Don't delete c++filt when doing a make delete-old if GCC is not built but
C++ is.

10 years agoOnly set -Wno-c++11-extensions if we're building with clang, so bootstrapping
David Chisnall [Fri, 6 Sep 2013 20:42:14 +0000 (20:42 +0000)]
Only set -Wno-c++11-extensions if we're building with clang, so bootstrapping
clang with gcc doesn't fail.

10 years agoAdd vmx device to the i386 and amd64 NOTES files
Bryan Venteicher [Fri, 6 Sep 2013 20:24:21 +0000 (20:24 +0000)]
Add vmx device to the i386 and amd64 NOTES files

10 years agoFix use of MACHINE_ARCH where MACHINE was intended for pc98 detection.
David Chisnall [Fri, 6 Sep 2013 20:23:15 +0000 (20:23 +0000)]
Fix use of MACHINE_ARCH where MACHINE was intended for pc98 detection.

Reported by: nwhitehorn

10 years agoOn platforms where clang is the default compiler, don't build gcc or libstdc++.
David Chisnall [Fri, 6 Sep 2013 20:08:03 +0000 (20:08 +0000)]
On platforms where clang is the default compiler, don't build gcc or libstdc++.
To enable them, set WITH_GCC and WITH_GNUCXX in src.conf.
Make clang default to using libc++ on FreeBSD 10.
Bumped __FreeBSD_version for the change.

GCC is still enabled on PC98, because the PC98 bootloader requires GCC to build
(or, at least, hard-codes the use of gcc into its build).

Thanks to everyone who helped make the ports tree ready for this (and bapt
for coordinating them all).  Also to imp for reviewing this and working on the
forward-porting of the changes in our gcc so that we're getting to a much
better place with regard to external toolchains.

Sorry to all of the people who helped who I forgot to mention by name.

Reviewed by: bapt, imp, dim, ...

10 years agoReturn BUS_PROBE_DEFAULT instead of BUS_PROBE_SPECIFIC.
Xin LI [Fri, 6 Sep 2013 18:41:57 +0000 (18:41 +0000)]
Return BUS_PROBE_DEFAULT instead of BUS_PROBE_SPECIFIC.

This change is a 9.2-RELEASE candidate.

Approved by: HighPoint Technologies

10 years agoYarrow wants entropy estimations to be conservative; the usual idea
Mark Murray [Fri, 6 Sep 2013 17:51:52 +0000 (17:51 +0000)]
Yarrow wants entropy estimations to be conservative; the usual idea
is that if you are certain you have N bits of entropy, you declare
N/2.

10 years agoFix build with gcc. Move sf_buf_alloc()/sf_buf_free() declarations
Gleb Smirnoff [Fri, 6 Sep 2013 17:44:13 +0000 (17:44 +0000)]
Fix build with gcc. Move sf_buf_alloc()/sf_buf_free() declarations
to MD headers.

10 years agoMFC
Mark Murray [Fri, 6 Sep 2013 17:42:12 +0000 (17:42 +0000)]
MFC

10 years agoKeep PRIV_KMEM_READ permitted inside jails as it is on the outside.
Jamie Gritton [Fri, 6 Sep 2013 17:32:29 +0000 (17:32 +0000)]
Keep PRIV_KMEM_READ permitted inside jails as it is on the outside.

10 years agocomment out some stale loader configurations.
Luigi Rizzo [Fri, 6 Sep 2013 17:19:57 +0000 (17:19 +0000)]
comment out some stale loader configurations.

10 years agogenerate multiple host keys and do that unconditionally
Luigi Rizzo [Fri, 6 Sep 2013 17:18:43 +0000 (17:18 +0000)]
generate multiple host keys and do that unconditionally

10 years agor253616 nuked BINMAKE so we need to adapt to the new definition
Luigi Rizzo [Fri, 6 Sep 2013 17:16:33 +0000 (17:16 +0000)]
r253616 nuked BINMAKE so we need to adapt to the new definition

10 years agoOnly lock pvh_global_lock read-only for pmap_page_wired_mappings(),
Konstantin Belousov [Fri, 6 Sep 2013 16:53:48 +0000 (16:53 +0000)]
Only lock pvh_global_lock read-only for pmap_page_wired_mappings(),
pmap_is_modified() and pmap_is_referenced(), same as it was done for
pmap_ts_referenced().

Consolidate identical code for pmap_is_modified() and
pmap_is_referenced() into helper pmap_page_test_mappings().

Reviewed by: alc
Tested by: pho (previous version)
Sponsored by: The FreeBSD Foundation

10 years agoIn pmap_ts_referenced(), when restarting the loop due to pv list
Konstantin Belousov [Fri, 6 Sep 2013 16:48:34 +0000 (16:48 +0000)]
In pmap_ts_referenced(), when restarting the loop due to pv list
generation changed, do not drop and immediately relock the pv list.

Suggested and reviewed by: alc
Sponsored by: The FreeBSD Foundation

10 years agoAdd firmware downloading support for Samsung drives
Bryan Venteicher [Fri, 6 Sep 2013 16:34:09 +0000 (16:34 +0000)]
Add firmware downloading support for Samsung drives

Tested on Samsung SM1625 SSDs.

10 years agoMake SES driver adequately react on simple enclosure devices -- read Short
Alexander Motin [Fri, 6 Sep 2013 15:41:37 +0000 (15:41 +0000)]
Make SES driver adequately react on simple enclosure devices -- read Short
Enclosure status to enclosure status field, clear previous state and exit.

10 years agoAdd camcontrol support for the SCSI sanitize command
Bryan Venteicher [Fri, 6 Sep 2013 15:19:57 +0000 (15:19 +0000)]
Add camcontrol support for the SCSI sanitize command

Reviewed by: ken, mjacob (eariler version)
Sponsored by: Netapp

10 years agoBump __FreeBSD_version to 1000053 after cap_rights_t change.
Pawel Jakub Dawidek [Fri, 6 Sep 2013 14:34:20 +0000 (14:34 +0000)]
Bump __FreeBSD_version to 1000053 after cap_rights_t change.

Suggested by: danfe

10 years agoFix kernel panic if cache->nelms is zero.
Alexander Motin [Fri, 6 Sep 2013 14:31:52 +0000 (14:31 +0000)]
Fix kernel panic if cache->nelms is zero.

MFC after: 2 weeks

10 years agolibc/stdio: Allow fopen/freopen modes in any order (except initial r/w/a).
Jilles Tjoelker [Fri, 6 Sep 2013 13:47:16 +0000 (13:47 +0000)]
libc/stdio: Allow fopen/freopen modes in any order (except initial r/w/a).

Austin Group issue #411 requires 'e' to be accepted before and after 'x',
and encourages accepting the characters in any order, except the initial
'r', 'w' or 'a'.

Given that glibc accepts the characters after r/w/a in any order and that
diagnosing this problem may be hard, change our libc to behave that way as
well.

10 years agolibc/stdio: Run mkostemp test using prove.
Jilles Tjoelker [Fri, 6 Sep 2013 12:59:48 +0000 (12:59 +0000)]
libc/stdio: Run mkostemp test using prove.

10 years agolibc/stdio: Provide proper TAP output for fmemopen/open_[w]memstream.
Jilles Tjoelker [Fri, 6 Sep 2013 12:56:49 +0000 (12:56 +0000)]
libc/stdio: Provide proper TAP output for fmemopen/open_[w]memstream.

A *.t file should provide Test Anything Protocol output so that it can be
run using the Perl "prove" tool.

10 years agoFix the leakage of dma tags on if_arge. The leak occur when arge_start()
Luiz Otavio O Souza [Fri, 6 Sep 2013 12:47:14 +0000 (12:47 +0000)]
Fix the leakage of dma tags on if_arge.  The leak occur when arge_start()
add some packet(s) to tx ring and arge_stop() is called before receive the
sent packet interrupt from hardware.  Fix arge_stop() to unload the in use
dma tags and free the associated mbuf.

PR: 178319, 163670
Approved by: adrian (mentor)

10 years agoUse Makefile.inc instead of .export.
David Chisnall [Fri, 6 Sep 2013 10:40:38 +0000 (10:40 +0000)]
Use Makefile.inc instead of .export.

10 years agoFix the namespace pollution caused by iconv.h including stdbool.h
David Chisnall [Fri, 6 Sep 2013 09:46:44 +0000 (09:46 +0000)]
Fix the namespace pollution caused by iconv.h including stdbool.h
This broke any C89 ports that defined bool themselves, including things
like gcc, gtk, and so on.