Commit Graph

18773 Commits

Author SHA1 Message Date
imp
974e9d9ccc Add Lua as a scripting langauge to /boot/loader
liblua glues the lua run time into the boot loader. It implements all
the runtime routines that lua expects. In addition, it has a few
standard 'C' headers that nueter various aspects of the LUA build that
are too specific to lua to be in libsa. Many refinements from the
original code to improve implementation and the number of included lua
libraries. Use int64_t for lua_Number. Have "/boot/lua" be the default
module path. Numerous cleanups from the original GSoC project,
including hacking libsa to allow lua to be built with only one change
outside luaconf.h.

Add the final bit of lua glue to bring in liblua and plug into the
multiple interpreter framework, previously committed.

Add LOADER_LUA option, currently off by default.

Presently, this is an experimental option. One must opt-in to using
this by defining WITH_LOADER_LUA and WITHOUT_FORTH. It's been
lightly tested, so keep a backup copy of your old loader handy.
The menu code, coming in the next commit, hasn't been exhaustively
tested. A LUA boot loader is 60k larger than a FORTH one, which is
80k larger than a no-interpreter one. Subtle changes in size
may tip things past some subtle limit (the binary is ~430k now
when built with LUA). A future version may offer coexistance.

Bump FreeBSD version to 1200058 to mark the milestone.

Pedro Souza's 2014 Summer of Code project. Rui Paulo, Pedro Arthur,
Zakary Nafziger and Wojciech A. Koszek also contributed. Warner Losh
reworked it extensively into its current form.

Obtained from: https://wiki.freebsd.org/SummerOfCode2014/LuaLoader
Sponsored by: Google Summer of Code
Relnotes: Yes
MFC After: 1 month
Differential Review: https://reviews.freebsd.org/D14295
2018-02-12 15:31:53 +00:00
cem
c4503b16c3 device_add_child.9: reference logical opposite, device_delete_child(9) 2018-02-11 22:09:07 +00:00
feld
68e923a039 Add Thomas Zander to ports-secteam 2018-02-11 16:12:55 +00:00
dteske
5c84c782df Fix typo in dtrace_tcp(4)
Using args[2]->tcps_state as-documented results in error:
operator -> cannot be applied to pointer to type "void"

This error is accurate as the synopsis for tcp:::state-change is:
tcp:::state-change(void *, csinfo_t *, void *, tcpsinfo_t *, void *,
    tcplsinfo_t *);

args[2] refers to the third argument which is always NULL (as-
documented). The to-state for the TCP connection state transition is
actually in the fourth argument, args[3]->tcps_state.
2018-02-11 03:02:29 +00:00
cem
06c909c2e4 Document syscall_helper_register(9), syscall_helper_unregister(9) 2018-02-10 20:34:09 +00:00
emaste
c1acc483b7 Regen src.conf.5 after r329093, WITH_/WITHOUT_LLVM_COV 2018-02-10 00:27:29 +00:00
emaste
b93a9fbc91 Promote llvm-cov to a standalone option
Introduce WITH_/WITHOUT_LLVM_COV to match GCC's WITH_/WITHOUT_GCOV.
It is intended to provide a superset of the interface and functionality
of gcov.

It is enabled by default when building Clang, similarly to gcov and GCC.

This change moves one file in libllvm to be compiled unconditionally.
Previously it was included only when WITH_CLANG_EXTRAS was set, but the
complexity of a new special case for (CLANG_EXTRAS | LLVM_COV) is not
worth avoiding a tiny increase in build time.

Reviewed by:	dim, imp
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D142645
2018-02-10 00:22:35 +00:00
imp
231d8bbc0a We don't actually need env here, so drop it. All shells allow setting
of shell variables for the next command like this.
2018-02-09 15:50:32 +00:00
jeb
159baa56c9 Add myself to committers-src.dot
Reviewed by:	erj (mentor)
Approved by:	erj (mentor)
2018-02-08 00:14:20 +00:00
emaste
384cc05095 add retpoline compiler and linker feature flags
These features indicate that the compiler and linker support the
retpoline speculative execution vulnerability (CVE-2017-5715)
mitigation.

Reviewed by:	dim, imp
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D14228
2018-02-07 14:50:06 +00:00
imp
dab91cf329 Avoid find -s, use find | sort instead.
find -s was introduced to make the metalog more
deterministic. However, find -s is not portable. find | sort is
portable and accomplishes the same goals, even if it isn't
pedantically the same. TZS is the same before / after the change so
any fussy differences between the two are moot and there won't be
METALOG churn across this change.

Differential Revision: https://reviews.freebsd.org/D14231
2018-02-06 23:12:16 +00:00
amdmi3
13936f4958 - Document new ${name}_limits rc.conf option
Approved by:	cy
MFC after:	2 weeks (along with 328331 which introduced this option)
Differential Revision:	https://reviews.freebsd.org/D14028
2018-02-06 15:30:17 +00:00
bapt
2061b410c7 Remove libreadline from the source tree, all consumers but gdb
has been switched to libedit long ago, libreadline was built as an
internallib for a while and kept only for gdbtui which was broken using
libreadline.

Since gdb has been mostly deorbitted in all arches, gdbtui was only installed
on arm and sparc64, given it has been removed, gdb has been switched to use
libedit, no consumers are left for libreadline. Thus this removal
2018-02-06 12:22:42 +00:00
bryanv
d35b5b4d3d Correct structure name used in bus_map_resource(9) example
Reviewed by:	jhb
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D14188
2018-02-06 04:28:21 +00:00
landonf
601b99882d bwn(4): migrate bwn(4) to the native bhnd(9) interface, and drop siba_bwn.
- Remove the shim interface that allowed bwn(4) to use either siba_bwn or
  bhnd(4), replacing all siba_bwn calls with their bhnd(4) bus equivalents.
- Drop the legay, now-unused siba_bwn bus driver.
- Clean up bhnd(4) board flag defines referenced by bwn(4).

Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D13518
2018-02-05 23:38:15 +00:00
jhb
b6eb156df9 Fix a typo. 2018-02-05 23:29:50 +00:00
eadler
07a9882d0e pthread: adding missing header to man page
Reported by:	swildner@DragonFlyBSD.org
2018-02-03 20:50:46 +00:00
arichardson
ff02ce5bc8 Revert r326375 since the warning has been turned off by default in clang
See https://reviews.llvm.org/D41512 and https://reviews.llvm.org/rL322901

Approved By:	brooks (mentor)

Differential Revision: https://reviews.freebsd.org/D14171
2018-02-02 22:09:36 +00:00
rgrimes
fb045b8c04 Fold constants and unify vnc variable names.
Approved by:	grehan (mentor)
MFC after:	3 days
2018-02-02 17:52:09 +00:00
rgrimes
1e7f8ba4c7 Clean up long lines.
Approved by:	grehan (mentor)
MFC after:	3 days
2018-02-02 16:35:17 +00:00
rgrimes
e64615c951 Add -n <network device emulation type> to usage synopsis
forgotten in r328695.

Fix long lines in usage.
Consistently use "default:" rather than "default is"

Approved by:	grehan (mentor)
MFC after:	3 days
2018-02-01 19:39:33 +00:00
rgrimes
6222c5d229 Add option '-n' network device emulation type which has a default of virtio-net
PR:		225558
Submitted by:	Johannes Lundberg <johalun0@gmail.com>
Approved by:	grehan (mentor)
MFC after:	3 days
2018-02-01 17:59:14 +00:00
imp
3678a5a2a6 Bump .Dd 2018-01-31 23:16:54 +00:00
imp
39ee7baf20 Add the new armv7 architecture. 2018-01-31 23:16:19 +00:00
trasz
f673d5b3e6 Document the new hw.usb.template behaviour.
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
2018-01-30 10:10:02 +00:00
trasz
412540081c Remove mention of sys/boot/ from hier(7), it doesn't exist anymore.
MFC after:	2 weeks
2018-01-27 00:09:43 +00:00
eadler
d1c0773604 example cdev: use make_dev_s
Make use of make_dev_s in the example cdev. While here, fix warnings.

Reviewed by:	rpokala
2018-01-26 04:24:39 +00:00
emaste
e34cbdb137 vt: add Ctrl+/ key mapping
This matches Xorg's handling of Ctrl+/ and may be useful as a tmux
escape.

PR:		212197
Submitted by:	martin at sugioarto.com
Tested by:	Arshan Khanifar <arshankhanifar_gmail.com>
MFC after:	2 weeks
Relnotes:	Yes
2018-01-25 21:13:42 +00:00
imp
dfbfead820 Bump .Dd date for c99 change 2018-01-25 15:55:58 +00:00
imp
1b4e4b3669 Add info about c99 designationed initializers.
Differential Revision: https://reviews.freebsd.org/D13975
2018-01-25 15:42:21 +00:00
emaste
74486f8174 uefi.8: describe architecture-specific default path
Sponsored by:	The FreeBSD Foundation
2018-01-25 14:36:47 +00:00
emaste
9f8c0f4fe8 Install uefi.8 also on arm64
Our standard boot method for arm64 is via UEFI, so install the man page
that describes the boot process.

MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
2018-01-25 13:51:20 +00:00
lwhsu
75378705ca Fix manual page install on non-amd64
Reviewed by:	emaste, imp
Differential Revision:	https://reviews.freebsd.org/D14038
2018-01-25 05:15:44 +00:00
emaste
5bd3d3a67e Add efi.8 as a man page link to uefi.8
FreeBSD and industry has been inconsistent in the use of UEFI and EFI.
They are essentially just different versions of the same specification
and are often used interchangeably.  Make it easier for users to find
information by making efi(8) an alias for uefi(8).

Reported by:	imp, jhb
2018-01-24 21:39:40 +00:00
emaste
f58dfc7370 uefi.8: add .Xr cross references to new efi tools 2018-01-24 21:26:01 +00:00
emaste
e832e79683 uefi.8: note that UEFI and EFI are used interchangeably 2018-01-24 21:20:24 +00:00
emaste
7fc51ed629 uefi.8: update HISTORY and remove incomplete AUTHORS
- EFI support appeared in 5.0 for ia64
- arm64 UEFI support added in 11.0

The AUTHORS section included the folks responsible for the bulk of the
work to bring UEFI support to amd64, but missed those who did the
original work on ia64, the initial port to i386, the ports to arm64 and
arm, and have generally maintained and improved general UEFI support
since then.  It's unwieldly to include everyone and would quickly become
outdated again anyhow, so just remove the AUTHORS section.

Reviewed by:	manu
Discussed with:	jhb
Differential Revision:	https://reviews.freebsd.org/D14033
2018-01-24 21:11:35 +00:00
cem
2b1bc6707d malloc(9): Change nominal size to size_t to match standard C
No functional change -- size_t matches unsigned long on all platforms.

Reported by:	bde
Discussed with:	jhb
Sponsored by:	Dell EMC Isilon
2018-01-24 19:37:18 +00:00
delphij
89605f7eb2 Document how to load nmdm(4) from a kernel module.
Submitted by:	kevlo
MFC after:	2 weeks
2018-01-23 03:36:49 +00:00
phk
4acf4a5e01 Add skeleton manual page for bcm283x_pwm
(Feel free to improve this)
2018-01-22 07:43:54 +00:00
kevans
8d872ae8f8 Add libregex, connect it to the build
libregex is a regex(3) implementation intended to feature GNU extensions and
any other non-POSIX compliant extensions that are deemed worthy.

These extensions are separated out into a separate library for the sake of
not cluttering up libc further with them as well as not deteriorating the
speed (or lack thereof) of the libc implementation.

libregex is implemented as a build of the libc implementation with LIBREGEX
defined to distinguish this from a libc build. The reasons for
implementation like this are two-fold:

1.) Maintenance- This reduces the overhead induced by adding yet another
regex implementation to base.

2.) Ease of use- Flipping on GNU extensions will be as simple as linking
against libregex, and POSIX-compliant compilations can be guaranteed with a
REG_POSIX cflag that should be ignored by libc/regex and disables extensions
in libregex. It is also easier to keep REG_POSIX sane and POSIX pure when
implemented in this fashion.

Tests are added for future functionality, but left disconnected for the time
being while other testing is done.

Reviewed by:	cem (previous version)
Differential Revision:	https://reviews.freebsd.org/D12934
2018-01-22 02:44:41 +00:00
eadler
f10d0bd4d4 termcap: add xterm-termite
Obtained from:	DragonFly
MFC After:	1 week
2018-01-20 22:24:45 +00:00
trasz
f3e0d3d831 Add sysctls to control device side USB identifiers. This makes it
possible to change string and numeric vendor and product identifiers,
as well as anything else there might be to change for a particular
device side template, eg the MAC address.

Reviewed by:	hselasky@
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D13920
2018-01-20 13:58:34 +00:00
landonf
e23dd6b815 bhnd/bwn(4): Define a bhnd(4) softmodem device class for the v.90 modem
codec core, and mark the core as unpopulated on all BCM4306 bwn(4) devices.

Sponsored by:	The FreeBSD Foundation
2018-01-19 22:43:08 +00:00
imp
b3b999d2ab No need for the zero width space now that I put the comma in. 2018-01-18 22:23:16 +00:00
imp
3f3ea6f0fa Make igor happier with this file:
o Don't use contractions.
o Add common after e.g. where needed
2018-01-18 22:20:30 +00:00
kevans
985393e493 stand: Add /boot/overlays to allow separation of overlays from base FDT
This matches directory structure used commonly in Linux-land, and it's
cleaner than mixing overlays into the existing module paths. Overlays are
still mixed in by specifying fdt_overlays in loader.conf(5).

Reviewed by:	manu
Differential Revision:	https://reviews.freebsd.org/D13922
2018-01-18 04:58:54 +00:00
bapt
821c3605c6 Update pciids to 2018.01.14
MFC after:	3 days
2018-01-17 13:25:41 +00:00
kevans
401a722a1a wsp(4): Update to reflect new sysctl from r314467
r314467 introduced hw.usb.wsp.enable_single_tap_clicks to enable/disable
single-tap left click behavior. Update the man page to reflect the new
sysctl.

PR:		196624
MFC after:	3 days
X-MFC-With:	r314467
2018-01-15 21:53:33 +00:00
grehan
c99f9e4f32 The vmm(4) man page is conditional on MK_BHYVE.
Submitted by:	kevlo
2018-01-15 04:52:12 +00:00