Commit Graph

212684 Commits

Author SHA1 Message Date
delphij
5ec82107b6 Use exit() instead of return in main().
MFC after:	2 weeks
2015-08-28 00:44:58 +00:00
markj
fe7bb6d1cd Remove weighted page handling from vm_page_advise().
This was added in r51337 as part of the implementation of
madvise(MADV_DONTNEED).  Its objective was to ensure that the page daemon
would eventually reclaim other unreferenced pages (i.e., unreferenced pages
not touched by madvise()) from the active queue.

Now that the pagedaemon performs steady scanning of the active page queue,
this weighted handling is unnecessary.  Instead, always "cache" clean pages
by moving them to the head of the inactive page queue.  This simplifies the
implementation of vm_page_advise() and eliminates the fragmentation that
resulted from the distribution of pages among multiple queues.

Suggested by:	alc
Reviewed by:	alc
Sponsored by:	EMC / Isilon Storage Division
Differential Revision:	https://reviews.freebsd.org/D3401
2015-08-28 00:44:17 +00:00
markj
251669654a Re-apply r274569. It was reverted in r276848 since that appeared to fix
some ctfmerge crashes that started to occur on i386 weeks after r274569 was
committed. Some later investigation indicated that the crashes were caused
by malformed CTF info that led to a stack overflow. The issue with CTF
info in i386 kernels seems to have been resolved by r261246, which updated
libdwarf and libelf.

r274569 fixes a bug which caused duplicate types to appear in the kernel's
CTF info. This duplication generally does not cause problems when using
DTrace, but makes it easier to hit the limit of 2^15 - 1 distinct type
definitions in a CTF container.

MFC after:	2 weeks
2015-08-28 00:38:18 +00:00
markj
c72177e471 Remove an unneeded instruction.
MFC after:	1 week
2015-08-28 00:17:21 +00:00
markj
4b928cd56c nv.h lives in sys/ as of r279439. 2015-08-28 00:12:59 +00:00
imp
d1be0bf24e Use CFLAGS_NO_SIMD in preference to varying lists of -mno-xxxx flags.
Go ahead and defined -D_STANDALONE for all targets (only strictly
needed for some architecture, but harmless on those it isn't required
for). Also add -msoft-float to all architectures uniformly rather
that higgley piggley like it is today.

Differential Revision: https://reviews.freebsd.org/D3496
2015-08-27 23:46:42 +00:00
imp
05c9f26dff New 1-Wire bus implementation. 1-Wire controller is abstracted, though
only gpiobus configured via FDT is supported. Bus enumeration is
supported. Devices are created for each device found. 1-Wire
temperature controllers are supported, but other drivers could be
written. Temperatures are polled and reported via a sysctl.  Errors
are reported via sysctl counters. Mis-wired bus detection is included
for more trouble shooting. See ow(4), owc(4) and ow_temp(4) for
details of what's supported and known issues.

This has been tested on Raspberry Pi-B, Pi2 and Beagle Bone Black
with up to 7 devices.

Differential Revision: https://reviews.freebsd.org/D2956
Relnotes: yes
MFC after: 2 weeks
Reviewed by: loos@ (with many insightful comments)
2015-08-27 23:33:38 +00:00
imp
4ccf42e0ef Document bsd.endian.mk. 2015-08-27 22:42:02 +00:00
kp
2a1a59d8e1 pf: Remove support for 'scrub fragment crop|drop-ovl'
The crop/drop-ovl fragment scrub modes are not very useful and likely to confuse
users into making poor choices.
It's also a fairly large amount of complex code, so just remove the support
altogether.

Users who have 'scrub fragment crop|drop-ovl' in their pf configuration will be
implicitly converted to 'scrub fragment reassemble'.

Reviewed by:	gnn, eri
Relnotes:	yes
Differential Revision:	https://reviews.freebsd.org/D3466
2015-08-27 21:27:47 +00:00
mav
c7248d0760 Fix type bug introduced at r286811. 2015-08-27 21:16:24 +00:00
peter
8352e885cd Fix a conversion error in rc.d/jail 2015-08-27 20:52:41 +00:00
alc
02709dd7cd In vm_pageout_scan(), simplify the logic for determining if a page can be
paged out and apply some nearby style fixes.

In collaboration with:	kib
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation, EMC / Isilon Storage Division
2015-08-27 20:38:45 +00:00
jmg
e60631af23 add documentation for timers that silby added in r197244, almost 6 years
ago...
2015-08-27 19:12:42 +00:00
delphij
d87fa0603a die() would never return, mark it as so.
MFC after:	2 weeks
2015-08-27 18:11:00 +00:00
ume
fc5f5f6363 Move setting of LDFLAGS to the modules which require it actually, as
other kerberos5 modules do so.
2015-08-27 17:16:18 +00:00
andrew
52d4a578ff There is no need to get the bus tag or handle.
Sponsored by:	ABT Systems Ltd
2015-08-27 16:27:51 +00:00
andrew
3af96d2320 Limit the speed to the bus frequency.
Sponsored by:	ABT Systems Ltd
2015-08-27 16:24:30 +00:00
andrew
c4f0492e5d Allow the fifo-depth and num-slots to be missing. For the former we read
the value from the hardware, for the latter assume a single slot.

Sponsored by:	ABT Systems Ltd
2015-08-27 16:18:22 +00:00
bz
6d4420afb7 get_inpcbinfo() and get_pcblist() are UDP local functions and
do not do what one would expect by name. Prefix them with "udp_"
to at least obviously limit the scope.

This is a non-functional change.

Reviewed by:		gnn, rwatson
MFC after:		2 weeks
Differential Revision:	https://reviews.freebsd.org/D3505
2015-08-27 15:27:41 +00:00
ed
066f63003b Decompose linkat()/renameat() rights to source and target.
To make it easier to understand how Capsicum interacts with linkat() and
renameat(), rename the rights to CAP_{LINK,RENAME}AT_{SOURCE,TARGET}.

This also addresses a shortcoming in Capsicum, where it isn't possible
to disable linking to files stored in a directory. Creating hardlinks
essentially makes it possible to access files with additional rights.

Reviewed by:	rwatson, wblock
Differential Revision:	https://reviews.freebsd.org/D3411
2015-08-27 15:16:41 +00:00
ume
b882529705 Make it buildable with WITH_OPENLDAP, again.
MFC after:	1 week
2015-08-27 15:03:34 +00:00
kan
0c147f0a46 Repair sys/cdefs.h enough to be usable with GCC 5.x
The __alloc_size and __alloc_align need to be defined to
nothingness for lint, but the existing check is deficient
and allows attributes with working __has_attrubute() to
slip through.
2015-08-27 14:00:23 +00:00
kan
7da6a7a55a Make ncurses build with GCC 5.0 and up
Merge the end result of two upstream changes:

Original fix from 20141206:
  + modify MKlib_gen.sh to work around change in development version of
    gcc introduced here:
            https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html
            https://gcc.gnu.org/ml/gcc-patches/2014-07/msg00236.html
    (reports by Marcus Shawcroft, Maohui Lei).

Later fixed in different manner in 20150725:
  + use alternate workaround for gcc 5.x feature (adapted from patch by
    Mikhail Peselnik).
2015-08-27 14:00:20 +00:00
kan
956823f74d Unbreak nvi message catalog generation for 8 bit locales.
Feeding any file encoded in 8 bit locales such as KOI8-RU
to sort utility running under UTF-8 locale produces astonishing
result of recoding the output to UTF-8. To counter that, just
run sort under 'C' locale for now.
2015-08-27 14:00:16 +00:00
andrew
6bd79f6a5a Allow us to select the transfer count. This allows us to work with hardware
that seems to only work with a single block at a time.

Sponsored by:	ABT Systems Ltd
2015-08-27 13:08:45 +00:00
jch
761d6ba633 Silent a compilation warning on callout_stop() 2015-08-27 10:43:35 +00:00
jch
4015a832a3 In callout_stop(), do not forget to initialize not_running variable.
Thanks to hselasky for noticing that.

Differential Revision:	https://reviews.freebsd.org/D3078 (Updated)
Submitted by:		hselasky
Pointy hat to:		jch
2015-08-27 08:58:03 +00:00
glebius
619aca846f Replay r286410. Change KPI of how device drivers that provide wireless
connectivity interact with the net80211 stack.

Historical background: originally wireless devices created an interface,
just like Ethernet devices do. Name of an interface matched the name of
the driver that created. Later, wlan(4) layer was introduced, and the
wlanX interfaces become the actual interface, leaving original ones as
"a parent interface" of wlanX. Kernelwise, the KPI between net80211 layer
and a driver became a mix of methods that pass a pointer to struct ifnet
as identifier and methods that pass pointer to struct ieee80211com. From
user point of view, the parent interface just hangs on in the ifconfig
list, and user can't do anything useful with it.

Now, the struct ifnet goes away. The struct ieee80211com is the only
KPI between a device driver and net80211. Details:

- The struct ieee80211com is embedded into drivers softc.
- Packets are sent via new ic_transmit method, which is very much like
  the previous if_transmit.
- Bringing parent up/down is done via new ic_parent method, which notifies
  driver about any changes: number of wlan(4) interfaces, number of them
  in promisc or allmulti state.
- Device specific ioctls (if any) are received on new ic_ioctl method.
- Packets/errors accounting are done by the stack. In certain cases, when
  driver experiences errors and can not attribute them to any specific
  interface, driver updates ic_oerrors or ic_ierrors counters.

Details on interface configuration with new world order:
- A sequence of commands needed to bring up wireless DOESN"T change.
- /etc/rc.conf parameters DON'T change.
- List of devices that can be used to create wlan(4) interfaces is
  now provided by net.wlan.devices sysctl.

Most drivers in this change were converted by me, except of wpi(4),
that was done by Andriy Voskoboinyk. Big thanks to Kevin Lo for testing
changes to at least 8 drivers. Thanks to pluknet@, Oliver Hartmann,
Olivier Cochard, gjb@, mmoll@, op@ and lev@, who also participated in
testing.

Reviewed by:	adrian
Sponsored by:	Netflix
Sponsored by:	Nginx, Inc.
2015-08-27 08:56:39 +00:00
jch
433b16759b In callout_stop(), if a callout is both pending and currently
being serviced return 0 (fail) but it is applicable only
mpsafe callouts.  Thanks to hselasky for finding this.

Differential Revision:	https://reviews.freebsd.org/D3078 (Updated)
Submitted by:		hselasky
Reviewed by:		jch
2015-08-27 08:15:32 +00:00
melifaro
27508342ba Fix packets/bytes accounting on i386.
Spotted by:	julian
2015-08-27 07:53:58 +00:00
delphij
12b0d76c86 Plug a possible memory leak.
MFC after:	2 weeks
2015-08-27 06:28:42 +00:00
bapt
22301795e1 More fixes to the new macros 2015-08-27 05:39:32 +00:00
bapt
a8117f5731 Fix typo in new macros 2015-08-27 05:27:18 +00:00
marcel
22e802147b An error of -1 from parse_mount() indicates that the specification
was invalid. Don't trigger a mount failure (which by default means
a panic), but instead just move on to the next directive in the
configuration. This typically has us ask for the root mount.

PR:		163245
2015-08-27 04:25:27 +00:00
jhibbits
3a15a2ed88 Fix freescale sdhc driver, and add it to the files list.
Also, add it to the mmc DRIVER_MODULE attachment list.
2015-08-27 03:47:56 +00:00
jhibbits
aa68072ffc Use the macro definition for EXC_PGM_TRAP, instead of the magic number. 2015-08-27 03:44:06 +00:00
imp
02dae40cb4 Make sys.mk more compatible with fmake by refraining from using :U
modifiers.

Differential Revision: https://reviews.freebsd.org/D3228
2015-08-27 02:59:48 +00:00
imp
441e2dd32d Automatically append SUBDIR.yes to the SUBDIR variable, and
remove duplicates. We cannot sort SUBDIR because many Makefiles
have .WAIT in the list which is strongly ordering. Rather than
try to second guess when to sort and when to not sort depending
on .WAIT being in the list, just remove duplicates.
2015-08-27 01:55:00 +00:00
imp
979fd50373 For each FOO in FILESLISTS, append the value of FOO.yes, sort, and
remove duplicates.
2015-08-27 01:52:45 +00:00
imp
b82b5280a1 When the kernel is compiled with INVARIANTS, export that as
debug.invariants.

Differential Revision: https://reviews.freebsd.org/D3488
MFC after: 3 days
2015-08-26 23:58:03 +00:00
tuexen
4c1edcc074 Add SCTP support.
PR:		201585
MFC after:	3 weeks
2015-08-26 23:45:06 +00:00
delphij
ccb05b74c8 Replace strndup with OpenBSD's implementation.
MFC after:	2 weeks
2015-08-26 23:28:10 +00:00
tuexen
65536eeb68 Remove a variable which is set but never used.
PR:		201585
MFC after:	3 weeks
2015-08-26 22:52:18 +00:00
tuexen
04611f8b16 Print the status on the first line of a socket description, not at
the last one. This doesn't matter for TCP, but it does for the upcoming
SCTP support.

PR:		201585
MFC after:	3 weeks
2015-08-26 22:50:53 +00:00
bapt
4660922bc1 Merge i915_emit_box_p and i915_emit_box as done in linux 3.8
Reviewed by:	dumbbell
Differential Revision:	https://reviews.freebsd.org/D3495
2015-08-26 22:19:53 +00:00
bapt
b5ec0fa7ab Back out a change which should not have been committed yet 2015-08-26 22:09:12 +00:00
bapt
d096d3b72e backout a change that should not have crept in 2015-08-26 22:00:40 +00:00
bapt
cb293687d9 Reduce diff against linux 3.8
Reviewed by:	dumbbell
Differential Revision:	https://reviews.freebsd.org/D3492
2015-08-26 21:35:16 +00:00
bapt
cca2c8b54c Reduce diff with linux 3.8.13 on i915_drv.c
While here update the list of devices id to match the one in linux 3.8.13

Reviewed by:	dumbbell
Differential Revision:	https://reviews.freebsd.org/D3489
2015-08-26 21:33:43 +00:00
bapt
1082e60059 Add more DRM_* debug macros from linux 3.8.13 2015-08-26 21:31:04 +00:00