Commit Graph

3866 Commits

Author SHA1 Message Date
imp
ddf0a68e29 o Resolve the real path to NANO_OBJ so everything that depends on it
doesn't have lots of ../../foo in it.
o Tweak the powerpc64 variant a bit. This gets us closer to working
  with qemu-system-poewrpc64, but we aren't quite there yet.
2015-12-11 05:15:13 +00:00
ngie
c85e616e29 MFhead @ r292053 2015-12-10 07:38:56 +00:00
cem
0a85f054bd ioat(4): Add ioatcontrol(8) testing for copy_8k
Add -E ("Eight k") and -m ("Memcpy") modes to the ioatcontrol(8) tool.

Prompted by:	rpokala
Sponsored by:	EMC / Isilon Storage Division
2015-12-10 02:05:35 +00:00
ngie
dcd31244e8 MFhead @ r292005 2015-12-09 05:35:46 +00:00
ngie
e6c8600104 Add missing stdlib.h header
Apply some minor style(9) fixes

MFC after: 3 days
Sponsored by: EMC / Isilon Storage Division
2015-12-08 05:27:22 +00:00
ngie
6aac99643e Fix compilation warnings by adding unistd.h #include and missing return
statements

MFC after: 3 days
Sponsored by: EMC / Isilon Storage Division
2015-12-08 05:24:06 +00:00
ngie
a4d2886627 Skip the MAC portacl tests if MAC_PORTACL support is missing instead of
marking them failed

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-12-08 05:17:22 +00:00
imp
314a714ed0 Start to split apart the different image formats that we need to
make. Add support for generating powerpc64 qemu images. We
can generate them, but there's something wrong booting them.
This also simplifies the user config files a bit, and removes
bits no longer true.
2015-12-07 10:24:40 +00:00
imp
850fa54eae Make sure to quote the arg after -n and -z tests. 2015-12-07 10:24:38 +00:00
imp
579f9dfdb8 Document the different config files.
Document how to run qemu for the ones I've run.
Use qcow2 for all qemu images.
2015-12-07 05:13:29 +00:00
imp
78fc7c6d83 Now that we have dedup of mtree elements in nanobsd, remove the
primitive attempt we made here.
2015-12-07 04:02:59 +00:00
imp
0860dcca9b Fix up mtree with additional entries written to it by
nanobsd. implement support for NanoBSD touching a file (and possibly
recording that fact) as well as replacing a directory with a symlink.
Also specify the default uname and gname for files and use that as a
/set command at the top of the generated METALOG file.
2015-12-07 04:02:52 +00:00
imp
5afc1d452d Disable /entropy by default. /var/db/entropy should be enough.
# This eliminates the warning message at boot, but more work may be
# needed.
2015-12-07 04:02:42 +00:00
imp
786f1213e2 imported patch dedup 2015-12-07 04:02:34 +00:00
imp
b5610d01ff Allow the .cfg files to specify the ultimate format for the images
created.
2015-12-07 04:02:32 +00:00
imp
a15f148c65 Generally use shorter, more idiomatic sh expressions in a bunch of
places.
2015-12-07 04:02:31 +00:00
imp
5faced62a1 Default serial connection to 115200. Hardly anybody uses slower these
days, and those that do can use NANO_BOOT2CFG to change it.
2015-12-07 04:02:19 +00:00
ngie
51e48e07fd MFhead@r291879 2015-12-06 00:42:11 +00:00
imp
5c35c857c9 When building no-priv, chmod etc/defaults/rc.conf before appending to
it and then chmod back.  There's no chmod -push / chmod -pop so hard
code 444 as the right permissions here.

Also, fix more stray detritus that crept in (out?) while re-arranging
the deck chairs.
2015-12-05 17:40:11 +00:00
imp
4019e88aee Stupid last minute changes: Add missing } and fi
Pointed out by: Howard Su
2015-12-05 16:28:14 +00:00
imp
d5903f4e62 New config files for embedded boards.
Build with ../nanobsd.sh -c rpi.cfg, for example.
This can be done as a normal user.

This is a work in progress. It relies on the new nopriv
build stuff committed to nanobsd, but isn't complete yet.
Currently, one must copy files into the DOS partition
in the image. Also, ownership isn't preserved because
this doesn't use the new mtree-dedup.awk yet, but rather
some crazy mtree stuff. The image building bits will
move up into nanobsd when they are ready.

Also includes very preliminary support for building qemu
images for all platforms that we can for qemu. It is
missing aarch64, and we put the image on s2 instead of
s1 and mkimg can't mark s2 as active, so there's some
issues. Oh, and I didn't do it for arm.

Take a look, kick the tires, expect problems.
2015-12-05 04:43:56 +00:00
imp
ad02ea22c1 Awk helper script that reads in a mtree METALOG file from installworld
(and soon augmented by nanobsd), performs the actions documented in
the script, and then spits out a new mtree file suitable for feeding
to makefs.

Discussed on: arch@
2015-12-05 01:12:44 +00:00
imp
dd51b237ab Setting NANO_NOPRIV_BUILD will now add -DNO_ROOT and METALOG=xxxx as
appropriate. First step in supporting a build w/o root. More to
follow as actions by customization scripts are not (yet) recorded in
the metalog, and duplicate entries in it aren't removed.
2015-12-05 01:10:04 +00:00
imp
aec0ab0809 SRCCONF makes no sense in make.conf. Don't set it there. Rely on it
being in the environment. Also filter out the new SRC_ENV_CONF as
well. If you really need these set, set them in your config file,
not in the build environment used to launch nanobsd.

Pointed out by: bdrewery@
2015-12-05 00:54:43 +00:00
imp
7f52fb1f36 Minor cleanup in how we run make:
o Move SRCCONF and __MAKE_CONF into the environment to cope with
  file paths with spaces in them better.
o Move the rest of the variable setting command line args into
  __MAKE_CONF files.
o Trace the commands that we're using to build so they appear at the
  top of the log.
o Be more consistent about quoting paths for cd and similar commands
  to better cope with paths with spaces in them, though some more
  work is likely needed.
o Add some comments about all this.
o Minor formatting tweaks in a couple places

Sponsored by:	Netflix, Inc
2015-12-05 00:15:04 +00:00
imp
a950ab7fee Remove commented out junk. 2015-12-04 23:44:34 +00:00
imp
8a04544196 Since this is an almost identical copy of ALIX_DSK, just include it
and add the bits we need at the end.
2015-12-04 23:22:07 +00:00
bdrewery
bb97a3d43c Fix LDADD/DPADD that should be LIBADD.
Sponsored by:	EMC / Isilon Storage Division
2015-12-04 03:17:47 +00:00
bdrewery
ba39dbdfa2 Fully connect cddl/usr.sbin/plockstat.
There seems to be no reason to keep this so private.

Also add missing optional MK_CDDL files.

Sponsored by:	EMC / Isilon Storage Division
2015-12-02 00:49:45 +00:00
adrian
3954d6ab46 add missing lib80211 include. 2015-11-30 09:02:28 +00:00
dim
1aab0ff4b0 Install the public sanitizer headers. These are useful for programs
that want to directly interface with sanitizer internals.
2015-11-29 16:28:40 +00:00
ume
8c4f802e38 Fix breakage by recent collation change.
LC_ALL has to be exported.
2015-11-28 00:41:37 +00:00
ngie
fa8bce706b Clean up trailing whitespace
MFC after: 1 week
2015-11-26 08:58:13 +00:00
ngie
0bfc2d2318 r291359 was incorrect. Skip over tokens that start with `#' as fgetln can
return more than one '\n' delimited line in a buffer

Handle empty lines too, just in case

MFC after: 3 days
X-MFC with: r291359
2015-11-26 07:58:22 +00:00
ngie
13fcf1f8c2 r291359 was incorrect. Skip over tokens that start with `#' as fgetln can
return more than one '\n' delimited line in a buffer

Handle empty lines too, just in case

MFC after: 3 days
X-MFC with: r291359
2015-11-26 07:55:20 +00:00
ngie
65973d76a0 Skip over lines that start with # (comments)
MFC after: 3 days
2015-11-26 07:03:59 +00:00
ngie
2a404bf3eb Remove cnftp.bjpu.edu.cn (it no longer resolves)
Add localhost to resolv/mach for parity with nss/mach

MFC after: 3 days
2015-11-26 07:03:26 +00:00
ngie
59c723022b - Remove cnftp.bjpu.edu.cn (it no longer resolves)
- Add localhost to resolv/mach for parity with nss/mach
2015-11-26 06:57:10 +00:00
ngie
0d0395b6fd Skip over lines that start with comments 2015-11-26 06:56:15 +00:00
ngie
0bb31e6737 MFhead @ r291345 2015-11-26 01:05:54 +00:00
hselasky
7c8f83122d Update usage:
- Add missing description of "-c" option.
- Add one more usage example.
2015-11-25 14:51:44 +00:00
hselasky
c562eaf30b Add simple indent wrapper tool for style(9) checking GIT/SVN patches.
The indent_wrapper tool only accepts full context diffs and works by
identifying the surrounding C-block touched by a diff and passing only
that to indent for styling. In the end a diff is produced or an
external tool like meld can be invoked, to show the styling
differences.
2015-11-25 13:26:42 +00:00
ngie
e98a8a4a44 MFhead @ r291235 2015-11-24 05:12:40 +00:00
des
24641fd80b Retire the NONE cipher option. 2015-11-23 12:48:13 +00:00
imp
322b754def Add support for passing TARGET_CPUTYPE into the build. It's more
important for arm and mips than for the more generic x86 systems.
2015-11-20 21:54:05 +00:00
rodrigc
b75981aabc Use print as a function for Python 3 [PEP 3105]
Import print_function from the __future__ module
to activate this for Python 2.  This works as far back as Python 2.6.0a2:
   https://docs.python.org/2/library/__future__.html

[PEP 3105] https://www.python.org/dev/peps/pep-3105/
2015-11-19 00:01:52 +00:00
ngie
b923a91e2c MFhead @ r291038 2015-11-18 23:45:09 +00:00
rodrigc
0faa3804ef Use 'in' instead of 'has_key()' for testing dictionary membership.
In PEP 0290, has_key() was deprecated in Python 2.2 and higher:
https://www.python.org/dev/peps/pep-0290/#testing-dictionary-membership
https://docs.python.org/2.2/whatsnew/node4.html

In Python 3, dict.has_key() was removed:
https://docs.python.org/3.0/whatsnew/3.0.html#builtins
2015-11-18 23:32:29 +00:00
bdrewery
47e0769b9e Use -n to ln(1) which is compatible with GNU ln(1).
Sponsored by:	EMC / Isilon Storage Division
2015-11-16 23:27:44 +00:00
bdrewery
eca8806ca2 Revert r290944. It was wrong. 2015-11-16 21:05:38 +00:00
bdrewery
ca6e0e0e35 Fix error case for bmake to echo 0.
MFC after:	1 week
Sponsored by:	EMC / Isilon Storage Division
2015-11-16 20:31:00 +00:00
bapt
3f00265ee4 Bring back a couple of ISO8859-15 locales:
- af_ZA.ISO8859-15
- en_AU.ISO8859-15
- en_CA.ISO8859-15
- en_NZ.ISO8859-15
- en_US.ISO8859-15
- fr_CA.ISO8859-15
2015-11-16 12:58:47 +00:00
ngie
2a27bc575c Integrate tools/regression/geom* into the FreeBSD test suite under sbin/geom/...
XXX: test
2015-11-16 08:58:03 +00:00
ngie
5539ba0c47 MFhead @ r290922 2015-11-16 07:03:00 +00:00
ngie
f169c1bc41 Remove directory made obsolete by r290905
MFC after: 1 week
X-MFC with: r290905
X-MFC note: stable/10 only
Sponsored by: EMC / Isilon Storage Division
2015-11-16 06:56:45 +00:00
ngie
ac4414a9cd Integrate tools/regression/pipe in to the FreeBSD test suite as
tests/sys/kern/pipe

- Fix style(9) bugs
- Fix compiler warnings
- Use `nitems(x)` instead of `sizeof(x) / sizeof(*x)` pattern

The testcases will be converted over to ATF eventually, but for now will be
integrated in as plain C tests

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-11-16 05:38:40 +00:00
bapt
2e81cb84da Remove trailing spaces at end of lines 2015-11-15 20:00:00 +00:00
bapt
210ef27d11 Update the list of files to be removed in case world is built WITHOUT_LOCALES 2015-11-15 19:58:05 +00:00
bapt
20d731595d Generate in the FreeBSD keyword when generating the Makefiles 2015-11-15 14:34:29 +00:00
bapt
5c60fe847c Add ISO8859-1 everywhere ISO8859-15 exists 2015-11-15 14:19:56 +00:00
bapt
17da2ce1fd Allow to generate the locale when the source directory is not /usr/src 2015-11-15 14:19:08 +00:00
sjg
95ced83cd0 Regen src.conf.5 2015-11-14 04:50:28 +00:00
sjg
206f180a1a Rename META_MODE option to DIRDEPS_BUILD
This allows META_FILES option to be renamed META_MODE.
Also add META_COOKIE_TOUCH for use in targets that can benefit
from a cookie when in meta mode.

Differential Revision:	https://reviews.freebsd.org/D4153
Reviewed by:	bdrewery
2015-11-14 03:24:48 +00:00
imp
95068e8f37 Make the slice names for root configurable. For embedded platforms, we
need s1 to be a FAT partition, s2 to be the config partition and s3
and s4 to be the ping-pong upgrade partitions.

NANO_SLICE_ROOT defaults to s1
NANO_SLICE_ALTROOT defaults to s2
NANO_SLICE_CFG defaults to s3
NANO_SLICE_DATA defaults to s4

All can be overridden in the config file. Some basic sanity checking
is in place, but is no substitute for being careful.
2015-11-12 05:53:32 +00:00
bdrewery
bf614d3ddb Use explicit filename when creating locale symlinks to avoid creating a
directory symlink when the target directory does not exist.  This will
cause an error instead of a broken setup.

Sponsored by:	EMC / Isilon Storage Division
2015-11-11 18:45:48 +00:00
ngie
8bc9b090d8 - Move ng_bluetooth.4 under MK_BLUETOOTH != no
- Move all section 5 bluetooth manpages under MK_BLUETOOTH != no

MFC after: 3 days
PR: 193260
Reported by: Philippe Michel <philippe.michel7@sfr.fr>
Sponsored by: EMC / Isilon Storage Division
2015-11-10 13:28:41 +00:00
bapt
9d36f45b8f Add a README to explain how to generate the locales from CLDR data 2015-11-09 23:23:29 +00:00
ngie
5a54ab5e67 Integrate tools/regression/lib/libc/gen into the FreeBSD test suite
as lib/libc/tests/gen

The code in test-fnmatch that was used for generating:

- bin/sh/tests/builtins/case2.0
- bin/sh/tests/builtins/case3.0

has been left undisturbed. The target `make sh-tests` has been moved over
from tools/regression/lib/libc/gen/Makefile to
lib/libc/tests/gen/Makefile and made into a PHONY target

case2.0 and case3.0 test input generation isn't being done automatically.
This needs additional discussion.

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-11-09 06:24:11 +00:00
ngie
28aa496e2e Integrate tools/regression/lib/libc/net into the FreeBSD test suite
as lib/libc/tests/net

Also, fix eui64_aton_test:test_str(..). The test was comparing the result
of eui64_aton to a pointer of the expected result.

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-11-08 23:06:40 +00:00
bapt
fd480a439a Modify the tool that generates the locales so that the generated CJK locales
are padded as expected by the users

Submitted by:	marino
Obtained from:	DragonflyBSD
2015-11-08 19:08:38 +00:00
ngie
a91204eb04 Integrate tools/regression/lib/libc/string into the FreeBSD test suite
as lib/libc/tests/string

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-11-08 07:53:31 +00:00
ngie
8f1d682970 Integrate tools/regression/lib/libc/stdlib into the FreeBSD test suite
as lib/libc/tests/stdlib

- Make the code a bit more style(9) compliant
- Convert a sizeof(x)/sizeof(x[0]) to nitems

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-11-08 07:03:17 +00:00
ngie
8ae95d701f Integrate tools/regression/lib/libc/stdio into the FreeBSD test suite
as lib/libc/tests/stdio

- Fix some whitespace
- Convert the testcases to ATF
- Convert "/dev/null" to _PATH_DEVNULL

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-11-08 06:37:50 +00:00
ngie
939dcf844e Integrate tools/regression/lib/libc/locale into the FreeBSD test suite
as lib/libc/tests/locale

MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-11-08 02:06:17 +00:00
bdrewery
11710a073f Add built-in ccache build support via WITH_CCACHE_BUILD option.
ccache is mostly beneficial for frequent builds where -DNO_CLEAN is not
used to achieve a safe pseudo-incremental build.  This is explained in
more detail upstream [1] [2].  It incurs about a 20%-28% hit to populate the
cache, but with a full cache saves 30-50% in build times.  When combined with
the WITH_FAST_DEPEND feature it saves up to 65% since ccache does cache the
resulting dependency file, which it does not do when using mkdep(1)/'CC
-E'.  Stats are provided at the end of this message.

This removes the need to modify /etc/make.conf with the CC:= and CXX:=
lines which conflicted with external compiler support [3] (causing the
bootstrap compiler to not be built which lead to obscure failures [4]),
incorrectly invoked ccache in various stages, required CCACHE_CPP2 to avoid
Clang errors with parenthesis, and did not work with META_MODE.

The option name was picked to match the existing option in ports.  This
feature is available for both in-src and out-of-src builds that use
/usr/share/mk.

Linking, assembly compiles, and pre-processing avoid using ccache since it is
only overhead.  ccache does nothing special in these modes, although there is
no harm in calling it for them.

CCACHE_COMPILERCHECK is set to 'content' when using the in-tree bootstrap
compiler to hash the content of the compiler binary to determine if it
should be a cache miss.  For external compilers the 'mtime' option is used
as it is more efficient and likely to be correct.  Future work may optimize the
'content' check using the same checks as whether a bootstrap compiler is needed
to be built.

The CCACHE_CPP2 pessimization is currently default in our devel/ccache
port due to Clang requiring it.  Clang's -Wparentheses-equality,
-Wtautological-compare, and -Wself-assign warnings do not mix well with
compiling already-pre-processed code that may have expanded macros that
trigger the warnings.  GCC has so far not had this issue so it is allowed to
disable the CCACHE_CPP2 default in our port.

Sharing a cache between multiple checkouts, or systems, is explained in
the ccache manual.  Sharing a cache over NFS would likely not be worth
it, but syncing cache directories between systems may be useful for an
organization.  There is also a memcached backend available [5].  Due to using
an object directory outside of the source directory though you will need to
ensure that both are in the same prefix and all users use the same layout.  A
possible working layout is as follows:
  Source: /some/prefix/src1
  Source: /some/prefix/src2
  Source: /some/prefix/src3
  Objdir: /some/prefix/obj
  Environment: CCACHE_BASEDIR='${SRCTOP:H}' MAKEOBJDIRPREFIX='${SRCTOP:H}/obj'
This will use src*/../obj as the MAKEOBJDIRPREFIX and tells ccache to replace
all absolute paths to be relative.  Using something like this is required due
to -I and -o flags containing both SRC and OBJDIR absolute paths that ccache
adds into its hash for the object without CCACHE_BASEDIR.

distcc can be hooked into by setting CCACHE_PREFIX=/usr/local/bin/distcc.
I have not personally tested this and assume it will not mix well with
using the bootstrap compiler.

The cache from buildworld can be reused in a subdir by first running
'make buildenv' (from r290424).

Note that the cache is currently different depending on whether -j is
used or not due to ccache enabling -fdiagnostics-color automatically if
stderr is a TTY, which bmake only does if not using -j.

The system I used for testing was:
  WITNESS
  Build options: -j20 WITH_LLDB=yes WITH_DEBUG_FILES=yes WITH_CCACHE_BUILD=yes
  DISK: ZFS 3-way mirror with very slow disks using SSD l2arc/log.
        The arc was fully populated with src tree files and ccache objects.
  RAM: 76GiB
  CPU: Intel(R) Xeon(R) CPU L5520 @2.27GHz
       2 package(s) x 4 core(s) x 2 SMT threads = hw.ncpu=16

The WITH_FAST_DEPEND feature was used for comparison here as well to show
the dramatic time savings with a full cache.

buildworld:
  x buildworld-before
  + buildworld-ccache-empty
  * buildworld-ccache-full
  % buildworld-ccache-full-fastdep
  # buildworld-fastdep
  +-------------------------------------------------------------------------------+
  |%            *                               #                                +|
  |%            *                               #                                +|
  |%            *                               #             xxx                +|
  |                                                           |A                  |
  |                                                                              A|
  |             A                                                                 |
  |A                                                                              |
  |                                             A                                 |
  +-------------------------------------------------------------------------------+
      N           Min           Max        Median           Avg        Stddev
  x   3       3744.13       3794.31       3752.25     3763.5633     26.935139
  +   3          4519       4525.04       4520.73       4521.59     3.1104823
  Difference at 95.0% confidence
          758.027 +/- 43.4565
          20.1412% +/- 1.15466%
          (Student's t, pooled s = 19.1726)
  *   3       1823.08        1827.2       1825.62        1825.3     2.0785572
  Difference at 95.0% confidence
          -1938.26 +/- 43.298
          -51.5007% +/- 1.15045%
          (Student's t, pooled s = 19.1026)
  %   3       1266.96       1279.37       1270.47     1272.2667     6.3971113
  Difference at 95.0% confidence
          -2491.3 +/- 44.3704
          -66.1952% +/- 1.17895%
          (Student's t, pooled s = 19.5758)
  #   3       3153.34       3155.16        3154.2     3154.2333    0.91045776
  Difference at 95.0% confidence
          -609.33 +/- 43.1943
          -16.1902% +/- 1.1477%
          (Student's t, pooled s = 19.0569)

buildkernel:
  x buildkernel-before
  + buildkernel-ccache-empty
  * buildkernel-ccache-empty-fastdep
  % buildkernel-ccache-full
  # buildkernel-ccache-full-fastdep
  @ buildkernel-fastdep
  +-------------------------------------------------------------------------------+
  |#                        @   %                  *                              |
  |#                        @   %                  *     x                      + |
  |#                        @   %                  *     xx                     ++|
  |                                                      MA                       |
  |                                                                             MA|
  |                                                A                              |
  |                             A                                                 |
  |A                                                                              |
  |                         A                                                     |
  +-------------------------------------------------------------------------------+
      N           Min           Max        Median           Avg        Stddev
  x   3        571.57        573.94        571.79     572.43333     1.3094401
  +   3        727.97        731.91        728.06     729.31333     2.2492295
  Difference at 95.0% confidence
          156.88 +/- 4.17129
          27.4058% +/- 0.728695%
          (Student's t, pooled s = 1.84034)
  *   3         527.1        528.29        528.08     527.82333    0.63516402
  Difference at 95.0% confidence
          -44.61 +/- 2.33254
          -7.79305% +/- 0.407478%
          (Student's t, pooled s = 1.02909)
  %   3         400.4        401.05        400.62        400.69     0.3306055
  Difference at 95.0% confidence
          -171.743 +/- 2.16453
          -30.0023% +/- 0.378128%
          (Student's t, pooled s = 0.954969)
  #   3        201.94        203.34        202.28        202.52    0.73020545
  Difference at 95.0% confidence
          -369.913 +/- 2.40293
          -64.6212% +/- 0.419774%
          (Student's t, pooled s = 1.06015)
  @   3        369.12        370.57         369.3     369.66333    0.79033748
  Difference at 95.0% confidence
          -202.77 +/- 2.45131
          -35.4225% +/- 0.428227%
          (Student's t, pooled s = 1.0815)

[1] https://ccache.samba.org/performance.html
[2] http://www.mail-archive.com/ccache@lists.samba.org/msg00576.html
[3] https://reviews.freebsd.org/D3484
[5] https://github.com/jrosdahl/ccache/pull/30

PR:		182944 [4]
MFC after:	3 weeks
Sponsored by:	EMC / Isilon Storage Division
Relnotes:	yes
2015-11-08 00:50:18 +00:00
bapt
d54fab7bc0 Catchup with latest changes for ObsoleteFiles in case base is built using
WITHOUT_LOCALE knob
2015-11-07 11:28:25 +00:00
bapt
41e30bab0f Merge from head r290483 2015-11-07 11:02:33 +00:00
avg
eb1b08efc3 zfsboottest: catch up with r241289, call zfs_spa_init() for all found pools
MFC after:	8 days
2015-11-06 16:27:22 +00:00
avg
0c792d9505 zfsboottest: build as a 32 bit application
For better emulation of the actual zfs boot code.

MFC after:	8 days
2015-11-06 16:26:09 +00:00
bdrewery
972c47e3ee Don't allow environment-set options to bleed into src.conf.5 generation.
MFC after:	2 weeks
Sponsored by:	EMC / Isilon Storage Division
2015-11-06 05:28:08 +00:00
bdrewery
a175970362 Add a FAST_DEPEND option, off by default, which speeds up the build significantly.
This speeds up buildworld by 16% on my system and buildkernel by 35%.

Rather than calling mkdep(1), which is just a wrapper around 'cc -E',
use the modern -MD -MT -MF flags to gather and generate dependencies during
compilation.  This flag was introduced in GCC "a long time ago", in GCC 3.0,
and is also supported by Clang.  (It appears that ICC also supports this but I
do not have access to test it).  This avoids running the preprocessor *twice*
for every build, in both 'make depend' and 'make all'.  This is especially
noticeable when using ccache since it does not cache preprocessor results from
mkdep(1) / 'cc -E', but still speeds up compilation with the -MD flags.

For 'make depend' a tree-walk is still done to ensure that all DPSRCS
are generated when expected, and that beforedepend/afterdepend and
_EXTRADEPEND are all still respected.  In time this may change but for now
I've been conservative.  The time for a tree-walk with -j combined with
SUBDIR_PARALLEL is not significant.  For example, it takes about 9 seconds
with -j15 to walk all of src/ for 'make depend' now on my system.

A .depend file is still generated with the various rules that apply to
the final target, or custom rules.  Otherwise there are now
per-built-object-file .depend files, such as .depend.filename.o.  These
are included directly by make rather than populating .depend with a loop
and .depend lines, which only added overhead to the now almost-NOP 'make
depend' phase.

Before this I experimented with having mkdep(1) called in parallel per-file.
While this improved the kernel and lib/libc 'make depend' phase, it resulted
in slower build times overall.

The -M flags are removed from CFLAGS when linking since they have no effect.

Enabling this by default, for src or out-of-src, can be done once more testing
has been done, such as a ports exp-run, and with more compilers.

The system I used for testing was:
  WITNESS
  Build options: -j20 WITH_LLDB=yes WITH_DEBUG_FILES=yes WITH_FAST_DEPEND=yes
  DISK: ZFS 3-way mirror with very slow disks using SSD l2arc/log.
        The arc was fully populated with src tree files.
  RAM: 76GiB
  CPU: Intel(R) Xeon(R) CPU L5520 @2.27GHz
       2 package(s) x 4 core(s) x 2 SMT threads = hw.ncpu=16

buildworld:
  x buildworld-before
  + buildworld-fastdep
  +-------------------------------------------------------------------------------+
  |+                                                                              |
  |+                                                                              |
  |+                                                                       xx    x|
  |                                                                       |_MA___||
  |A                                                                              |
  +-------------------------------------------------------------------------------+
      N           Min           Max        Median           Avg        Stddev
  x   3       3744.13       3794.31       3752.25     3763.5633     26.935139
  +   3       3153.34       3155.16        3154.2     3154.2333    0.91045776
  Difference at 95.0% confidence
          -609.33 +/- 43.1943
          -16.1902% +/- 1.1477%
          (Student's t, pooled s = 19.0569)

buildkernel:
  x buildkernel-before
  + buildkernel-fastdep
  +-------------------------------------------------------------------------------+
  |+                                                                            x |
  |++                                                                           xx|
  |                                                                             A||
  |A|                                                                             |
  +-------------------------------------------------------------------------------+
      N           Min           Max        Median           Avg        Stddev
  x   3        571.57        573.94        571.79     572.43333     1.3094401
  +   3        369.12        370.57         369.3     369.66333    0.79033748
  Difference at 95.0% confidence
          -202.77 +/- 2.45131
          -35.4225% +/- 0.428227%
          (Student's t, pooled s = 1.0815)

Sponsored by:	EMC / Isilon Storage Division
MFC after:	3 weeks
Relnotes:	yes
2015-11-06 04:45:29 +00:00
ngie
329f3219e7 Rename etc/periodic/daily/430.status-rwho to periodic/daily/430.status-uptime
The command was checking local/remote system uptime, so rename the script to
match its function and to avoid confusion

The controlling variable in /etc/periodic.conf has been renamed from
daily_status_rwho_enable to daily_status_uptime_enable.

MFC after: 3 days
Reported by: Peter Jeremy <peter@rulingia.com>
Relnotes: yes
Sponsored by: EMC / Isilon Storage Division
2015-11-02 01:05:34 +00:00
ngie
c2b5b8b86a Use nitems(x) instead of sizeof(x)/sizeof(x[0])
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-11-02 00:42:31 +00:00
ngie
996f2e2cd2 Conditionally install (if_)?(otus|rsu).4, otusfw.4, rsufw.4, and urtwn.4 if
MK_USB != no

Add the manpages to OptionalObsoleteFiles.inc

As a side-effect, this also fixes installworld with MK_USB == no

X-MFC with: r290128
Sponsored by: EMC / Isilon Storage Division
2015-11-02 00:39:28 +00:00
bapt
f716ffd588 Make generated makefiles respects ${SHAREDIR} 2015-11-01 21:20:29 +00:00
bapt
1477bec6db Merge from head 2015-11-01 21:17:38 +00:00
ngie
0cf826b2c1 Fix compiler warnings with open_to_operation.c
Other sidenotes:
- Remove unused variables with main(..)
- Convert errx/exit with -1 to errx/exit with 1
- Fix a bogus test in try_directory_open
  (expected_errno == expected_errno -> errno == expected_errno) [*]
- Fix some warnings related to discarded qualifiers
- Remove a bogus else-statement at the end of check_mmap_exec(..) in the
  successful case. mmap(2), POSIX, Linux, etc all don't state what the
  behavior is when mixing O_WRONLY + PROT_EXEC, so assume success for now to
  get the test program to pass again.

PR: 201286 [*]
MFC after: 1 week
Submitted by: David Binderman <dcb314@hotmail.com>
Sponsored by: EMC / Isilon Storage Division
2015-10-30 10:09:04 +00:00
cem
15f623b49e ioatcontrol(8): Add and document "raw" testing mode
Allows DMA from/to arbitrary KVA or physical address.  /dev/ioat_test
must be enabled by root and is only R/W root, so this is approximately
as dangerous as /dev/mem and /dev/kmem.

Sponsored by:	EMC / Isilon Storage Division
2015-10-29 04:16:16 +00:00
vangyzen
bd1f615007 Fix spelling and grammer in tools/test/README.
Reviewed by:	gnn
2015-10-28 15:00:21 +00:00
gnn
3746182ae9 Add a test for the listen queue using two test programs,
listen, and connect.  The listen program is a simple server that
accepts and closes sockets, until a fixed limit, then sets the listen
queue to 0 and counts how many remaining connections it processes.

The connect program repeatedly opens connections and closes them
serving as the driver for the listen program.

Sponsored by:	Limelight Networks
2015-10-28 03:43:24 +00:00
gnn
8fd626725d Update the README to describe all the current tests in this directory. 2015-10-28 03:39:18 +00:00
emaste
e984b742ad Add WITHOUT_DEBUG_FILES description 2015-10-27 20:49:56 +00:00
cem
a4e559f000 ioat: Add support for Block Fill operations
The IOAT hardware supports writing a 64-bit pattern to some destination
buffer.  The same limitations on buffer length apply as for copy
operations.  Throughput is a bit higher (probably because fill does not
have to spend bandwidth reading from a source in memory).

Support for testing Block Fill has been added to ioatcontrol(8) and the
ioat_test device.  ioatcontrol(8) accepts the '-f' flag, which tests
Block Fill.  (If the flag is omitted, the tool tests copy by default.)
The '-V' flag, in conjunction with '-f', verifies that buffers are
filled in the expected pattern.

Tested on:	Broadwell DE (Xeon D-1500)
Sponsored by:	EMC / Isilon Storage Division
2015-10-26 19:34:12 +00:00
ngie
b1de566bbc Add libvmmapi to OptionalObsoleteFiles.inc when MK_BHYVE == no
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-10-24 23:25:43 +00:00
bdrewery
bb011941f0 Fix warning about redefined *_crunchdir_hostname target after r289734.
'hostname' was in the build list twice.

X-MFC-With:	r289734
MFC after:	2 weeks
Reported by:	sbruno
Sponsored by:	EMC / Isilon Storage Division
2015-10-22 18:05:11 +00:00
avos
640ff9e50a Unbreak regression testing tools for net80211 crypto cipher modules
Approved by:	adrian (mentor)
Differential Revision:	https://reviews.freebsd.org/D3441
2015-10-22 17:08:12 +00:00
cem
c8639a4933 Improve flexibility of ioat_test / ioatcontrol(8)
The test logic now preallocates memory before running the test.

The buffer size is now configurable.  Post-copy verification is
configurable.  The number of copies to chain into one transaction (one
interrupt) is configurable.

A 'duration' mode is added, which repeats the test until the duration
has elapsed, reporting the B/s and transactions completed.

ioatcontrol.8 has been updated to document the new arguments.

Initial limits (on this particular Broadwell-DE) (and when the
interrupts are working) seem to be: 256 interrupts/sec or ~6 GB/s,
whichever limit is more restrictive.

Unfortunately, it seems the interrupt-reset handling on Broadwell isn't
working as intended.  That will be fixed in a later commit.

Sponsored by:	EMC / Isilon Storage Division
2015-10-22 04:38:05 +00:00
jmmv
a4eadb1256 Handle lib32 files during delete-old* when MK_LIB32=no.
Extend OptionalObsoleteFiles.inc to delete all lib32 files when MK_LIB32 is
set to no on a system that previously had lib32 libraries installed.

Also, to prevent "make delete-old-dirs" from always deleting lib32 directories
after an installworld, move the lib32 subtree to its own mtree file that only
gets applied when MK_LIB32=yes.

Test: Ran "make delete-old" and "make delete-old-libs" on a system that never
had MK_LIB32 enabled, and on a system where MK_LIB32 was enabled and later
disabled.  Did this both on amd64 and powerpc64.

Test: Ran "make tinderbox" without errors.

Reviewed by:	emaste
Differential Revision:	https://reviews.freebsd.org/D3923
2015-10-20 20:35:34 +00:00
bapt
d93a511528 Merge from head 2015-10-19 11:51:10 +00:00
ngie
42a00c3dbd Integrate tools/regression/acltools into the FreeBSD test suite as tests/sys/acl
- Make the requirements more complete for the testcases
- Detect prerequisites so the tests won't fail (zfs.ko is loaded, zpool(1)
  is available, ACL support is enabled with UFS, etc).
- Work with temporary files/directories/mountpoints that work with atf/kyua
- Limit the testcases to work on temporary filesystems to reduce tainting the
  test host

MFC after: 2 weeks
Reviewed by: trasz (earlier version)
Differential Revision: https://reviews.freebsd.org/D3810
2015-10-17 08:39:37 +00:00
ngie
7a8ea850c6 Integrate tools/test/posixshm and tools/regression/posixshm into the FreeBSD
test suite as tests/sys/posixshm

Some other highlights:
- Convert the testcases over to ATF
- Don't use hardcoded paths to /tmp (which violate the ATF/kyua samdbox); use
  mkstemp to generate temporary paths for non-SHM_ANON shm objects.

MFC after: 2 weeks
Sponsored by: EMC / Isilon Storage Division
2015-10-17 04:32:21 +00:00
ngie
7983774b18 Fix test-fenv:test_dfl_env when run on some amd64 CPUs
Compare the fields that the AMD [1] and Intel [2] specs say will be
set once fnstenv returns.

Not all amd64 capable processors zero out the env.__x87.__other field
(example: AMD Opteron 6308). The AMD64/x64 specs aren't explicit on what the
env.__x87.__other field will contain after fnstenv is executed, so the values
in env.__x87.__other could be filled with arbitrary data depending on how the
CPU-specific implementation of fnstenv.

1. http://support.amd.com/TechDocs/26569_APM_v5.pdf
2. http://www.intel.com/Assets/en_US/PDF/manual/253666.pdf

Discussed with: kib, Anton Rang <anton.rang@isilon.com>
Reviewed by: Daniel O'Connor <darius@dons.net.au> (earlier patch; pre-generalization)
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
Reported by: Bill Morchin <wmorchin@isilon.com>
2015-10-14 20:22:12 +00:00
ngie
ef127649af Integrate tools/regression/vfs into the FreeBSD test suite as tests/sys/vfs
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
2015-10-14 08:16:15 +00:00
emaste
891ebb5d1c Add WITHOUT_LLDB for src.conf(5)
It will be enabled by default on certain architectures.
2015-10-14 00:23:31 +00:00
bapt
7432a5c785 Synchronize locale generation tools with dragonfly
generates the makefiles and the sources
2015-10-13 20:21:52 +00:00
bapt
c8d6d4a785 Merge from head 2015-10-13 19:44:36 +00:00
ngie
a628dafc86 Integrate tools/regression/acltools into tests/sys/acl
Apply patches I've been running for months on my GitHub project
2015-10-13 17:28:11 +00:00
ngie
d3814e98fd Integrate tools/regression/vfs into the FreeBSD test suite as tests/sys/vfs 2015-10-13 16:51:12 +00:00
ngie
2c46ba7a42 Integrate tools/test/posixshm and tools/regression/posixshm into the FreeBSD
test suite as tests/sys/posixshm
2015-10-13 16:50:12 +00:00
ngie
7f1b3a0b68 Integrate tools/regression/acltools into tests/sys/acl
Apply patches I've been running for months on my GitHub project
2015-10-05 00:55:16 +00:00
ngie
592917a6fc MFhead @ r288473 2015-10-02 05:30:46 +00:00
dim
c88ca1c406 Merge ^/head r288197 through r288456. 2015-10-01 19:02:45 +00:00
avg
b65b1a0f9e remove unused sgsmsg utility (originally imported from opensolaris)
MFC after:	25 days
2015-09-28 12:38:57 +00:00
ngie
8b6993c446 MFhead @ r288313 2015-09-27 23:33:54 +00:00
bdrewery
a606be060b Add missing binutils ldscripts.
Some of these are after the fix in r288230 to install them.

MFC after:	2 weeks
Sponsored by:	EMC / Isilon Storage Division
2015-09-25 20:45:10 +00:00
bdrewery
f37faa57f7 META_MODE: Remove DEP_RELDIR from Makefile.depend files.
This has not been needed since r284171 in projects/bmake.

Sponsored by:	EMC / Isilon Storage Division
2015-09-25 19:26:08 +00:00
dim
3715394e84 Merge ^/head r288035 through r288099. 2015-09-22 09:50:11 +00:00
ngie
d0aee2df52 Delete /etc/autofs/special_noauto when MK_AUTOFS == no
MFC after: 1 week
2015-09-21 03:39:13 +00:00
dim
a98b889039 Don't install Intrin.h, as this is an intrinsics header for Windows. 2015-09-20 21:39:55 +00:00
dim
18b14b4a2f Merge ^/head r287878 through r288034. 2015-09-20 20:34:17 +00:00
bdrewery
b334ba0ecf Document NO_DIRDEPS for META_MODE and give link to full details. 2015-09-18 22:22:32 +00:00
bdrewery
ebf2c39d03 makeman: Fix handling of env-only vars by using SRC_ENV_CONF rather than SRCCONF.
Also note that these env-only vars can be specified on the command line.

This fixes the dependent options that are env-only (such as WITH_META_MODE
and WITH_AUTO_OBJ) to properly display their dependencies.

Sponsored by:	EMC / Isilon Storage Division
2015-09-17 22:04:46 +00:00
bdrewery
a0b9814ac5 Optimize makeman slightly by removing uneeded cat and extra test -s.
Sponsored by:	EMC / Isilon Storage Division
2015-09-17 20:45:51 +00:00
bdrewery
a651b0b81d src.conf.5: Make it self-documenting that the mkopts are environment-only.
Sponsored by:	EMC / Isilon Storage Division
2015-09-17 20:33:52 +00:00
bdrewery
e1d666709a Document src-env.conf and note its use for MAKEOBJDIRPREFIX and WITH_META_MDOE.
Sponsored by:	EMC / Isilon Storage Division
2015-09-17 17:45:20 +00:00
bdrewery
bca311ad23 Document NO_SILENT for META_MODE.
Reword and add some formatting as well.
2015-09-17 05:01:04 +00:00
dim
7b8be09912 Merge ^/head r287680 through r287877. 2015-09-16 22:35:59 +00:00
dim
ea5248cdc1 Update libc++ to 3.7.0 release. 2015-09-16 22:26:52 +00:00
hselasky
c65a6bf3f2 Add missing BINDIR variable. 2015-09-14 12:25:45 +00:00
dim
1e1e44a4f0 Update llvm, clang and lldb to 3.7.0 release. 2015-09-06 19:58:48 +00:00
dim
23814158e5 Import stripped lldb 3.7.0 release (r246257). 2015-09-06 18:37:19 +00:00
dim
4238dc458e Import clang 3.7.0 release (r246257). 2015-09-06 18:36:24 +00:00
dim
80b639cd40 Vendor import of (stripped) lldb trunk r242221:
https://llvm.org/svn/llvm-project/lldb/trunk@242221
2015-09-06 14:32:30 +00:00
dim
fe74670889 Merge ^/head r286858 through r287489. 2015-09-05 18:36:23 +00:00
delphij
db0a2c953d Expose an interface to determine if an ACE is inherited.
Submitted by:	sef
Reviewed by:	trasz
MFC after:	2 weeks
Differential Revision:	https://reviews.freebsd.org/D3540
2015-09-04 00:14:20 +00:00
adrian
50b5b5446b oops - mis-commit. 2015-08-30 21:55:01 +00:00
adrian
07075ccdf6 Convert this over to use the new cdev based ioctl path. 2015-08-30 21:54:47 +00:00
rodrigc
548c8c78eb - Replace N(a)/N(i)/N(T)/LEN(a)/ARRAY_SIZE(a) with nitems()
- Add missing <err.h> for err() and <sys/sysctl.h> for sysctlbyname()
- NULL -> 0 for 5th parameter of sysctlbyname()

Submitted by: Andriy Voskoboinyk <s3erios@gmail com>
Differential Revision: https://reviews.freebsd.org/D3442
2015-08-29 19:47:20 +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
bapt
2a77c3b71d Merge from HEAD 2015-08-25 20:14:50 +00:00
cem
80b01acf73 ioat(4): Minor style cleanups
Suggested by:	ngie
Reviewed by:	jimharris
Approved by:	markj (mentor)
Sponsored by:	EMC / Isilon Storage Division
Differential Revision:	https://reviews.freebsd.org/D3481
2015-08-25 17:39:03 +00:00
cem
0b30a8e592 ioatcontrol(8): Fix build
Tripped up by the FBSD SVN pre-commit hook!

Approved by:	markj (mentor)
Sponsored by:	EMC / Isilon Storage Division
2015-08-24 20:39:22 +00:00
cem
06ccf4bc96 Import ioat(4) driver
I/OAT is also referred to as Crystal Beach DMA and is a Platform Storage
Extension (PSE) on some Intel server platforms.

This driver currently supports DMA descriptors only and is part of a
larger effort to upstream an interconnect between multiple systems using
the Non-Transparent Bridge (NTB) PSE.

For now, this driver is only built on AMD64 platforms.  It may be ported
to work on i386 later, if that is desired.  The hardware is exclusive to
x86.

Further documentation on ioat(4), including API documentation and usage,
can be found in the new manual page.

Bring in a test tool, ioatcontrol(8), in tools/tools/ioat.  The test
tool is not hooked up to the build and is not intended for end users.

Submitted by:	jimharris, Carl Delsey <carl.r.delsey@intel.com>
Reviewed by:	jimharris (reviewed my changes)
Approved by:	markj (mentor)
Relnotes:	yes
Sponsored by:	Intel
Sponsored by:	EMC / Isilon Storage Division
Differential Revision:	https://reviews.freebsd.org/D3456
2015-08-24 19:32:03 +00:00
imp
6129bf3e3a Remove cust_pkg() not that pkg_foo(1) has been removed. 2015-08-22 23:09:19 +00:00
jilles
23ea143940 wordexp(): Improve some error codes.
Distinguish between WRDE_BADVAL and WRDE_SYNTAX based on when the error
occurred (parsing or execution), not based on whether WRDE_UNDEF was passed.

Also, return WRDE_NOSPACE for a few more unexpected results from sh.
2015-08-19 20:31:03 +00:00
phk
725028ad29 Update sysbuild to new ports infrastructure. 2015-08-18 20:19:48 +00:00
dim
1b2342b5ba Merge ^/head r286697 through r286857. 2015-08-17 19:02:23 +00:00
ngie
2e444321eb Reap MK_SYSINSTALL
It's no longer in use in the tree (most likely missed when sade/sysinstall
were removed)

MFC after: 1 week
2015-08-16 09:51:24 +00:00
antoine
9c5a0c6fff Stop removing ELF toolchain tools 2015-08-13 22:04:30 +00:00
emaste
828e784833 Roll WITHOUT_ELFTOOLCHAIN_TOOLS into WITHOUT_TOOLCHAIN
The option was added only to ease the transition from GNU Binutils to
ELF Tool Chain tools, and that process is now complete (for the viable
replacements). Noting the removal in UPDATING is sufficient as we have
not shipped a release with the option.

Reviewed by:	brooks
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D3240
2015-08-13 17:50:47 +00:00
dim
3f7c441c4c Merge ^/head r286422 through r286684. 2015-08-12 18:39:49 +00:00
jmmv
e4c5c97bc8 Mark usr/include/c++/v1/tr1 as obsolete
The directory usr/include/c++/v1 was marked as obsolete but its tr1 subdir
was not, resulting in a removal error in delete-old.
2015-08-12 03:03:51 +00:00
ngie
87dee47409 MFhead @ r286584 2015-08-10 18:27:54 +00:00
adrian
dcacb16d6a Finish reverting r286410 for now. 2015-08-10 06:12:53 +00:00
bapt
48f7138fa2 Update Obsolete files in case MK_LOCALE=no 2015-08-09 15:44:14 +00:00
bapt
2c81d16589 Merge from HEAD 2015-08-09 00:15:17 +00:00
garga
59430835c2 Add missing files to sendmail obsolete files list
Approved by:	gshapiro
MFC after:	3 days
Sponsored by:	Netgate
Differential Revision:	https://reviews.freebsd.org/D3302
2015-08-08 15:51:29 +00:00
bapt
8e2a2d93a5 Add FreeBSD keyword on generated Makefiles 2015-08-08 00:57:27 +00:00
bapt
b7a5ae06f9 Add set of tools created by edwin@ long time ago to generate locales
Those tools were modified and extended by John Marino <draco@marino.st>
Add the generated charmaps and maps for LC_CTYPE generation

Obtained from:	Dragonfly
2015-08-08 00:28:23 +00:00
svnmir
6416b56f5a Vendor import of clang trunk r242221:
https://llvm.org/svn/llvm-project/cfe/trunk@242221
2015-08-07 23:02:56 +00:00
dim
a862047780 Merge ^/head r285924 through r286421. 2015-08-07 20:18:55 +00:00
glebius
eb8a90b859 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 Olivier Cochard, gjb@, mmoll@,
op@ and lev@, who also participated in testing. Details here:

https://wiki.freebsd.org/projects/ifnet/net80211

Still, drivers: ndis, wtap, mwl, ipw, bwn, wi, upgt, uath were not
tested. Changes to mwl, ipw, bwn, wi, upgt are trivial and chances
of problems are low. The wtap wasn't compilable even before this change.
But the ndis driver is complex, and it is likely to be broken with this
commit. Help with testing and debugging it is appreciated.

Differential Revision:	D2655, D2740
Sponsored by:	Nginx, Inc.
Sponsored by:	Netflix
2015-08-07 11:43:14 +00:00
emaste
ed3ab640c5 Remove old GNU Binutils tools now provided by ELF Tool Chain
Reviewed by:	bapt, brooks
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D3238
2015-08-05 18:30:00 +00:00
marcel
3e1c95104e Add an example program (in Python) for the AMD Am79c900 (ILACC)
ethernet controller. The ethernet controller is emulated by VMware
Fusion (for example) and is a good device to demonstrate how to use
the bus space and busdma functions due to its simple programming.

The program sets up the DMA structures, sends a DHCP discover packet,
waits 2 seconds, and iterates over the receive ring for an offer.
2015-08-02 21:24:03 +00:00
marcel
da99969eb7 Rename busdma_sync() to busdma_sync_range() and rename the
base and size parameters to ofs and len (resp). Add a new
busdma_sync() that makes the entire MD coherent.
2015-08-02 01:09:30 +00:00
markj
1ce9c620ee Add a src.conf option to build and install the DTrace test suite.
Reviewed by:	gnn, ngie
Differential Revision:	https://reviews.freebsd.org/D3195
2015-08-02 00:37:33 +00:00
emaste
e338e2a1cf MK_ELFCOPY_AS_OBJCOPY should be a variable
PR:		201978
Submitted by:	O. Hartmann
Differential Revision:	https://reviews.freebsd.org/D2887
2015-07-29 21:41:15 +00:00
emaste
d8c50a7043 Remove mention of non-existent gconv tool
I believe this is a typo of gcov, but gcov is not controlled by
WITHOUT_BINUTILS anyhow.

Sponsored by:	The FreeBSD Foundation
2015-07-29 20:02:20 +00:00
emaste
32e34ac2b5 Allow ELF Tool Chain elfcopy to be installed as objcopy
ELF Tool Chain elfcopy is nearly a drop-in replacement for GNU objcopy,
but does not currently support PE output which is needed for building
x86 UEFI bits.

Add a src.conf knob to allow installing it as objcopy and set it by
default for aarch64 only, where we don't have a native binutils.

Reviewed by:	bapt
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D2887
2015-07-29 18:45:38 +00:00
emaste
4829edcacf Update OLD_FILES for tools provided by ELF Tool Chain or Binutils
Sponsored by:	The FreeBSD Foundation
2015-07-29 18:33:11 +00:00
emaste
9e819fbfd2 Include c++filt and readelf in WITHOUT_ELFTOOLCHAIN_TOOLS 2015-07-29 15:42:22 +00:00
dim
c38a9a5a20 Merge ^/head r285793 through r285923. 2015-07-27 22:20:28 +00:00
ngie
2907322f74 MFhead @ r285904 2015-07-27 04:11:41 +00:00
marcel
a1823ab55e Change the dev argument from a full path to just the device
identification (e.g. isa:0x3f0 or pci0:2:1:0). In libbus,
the device is turned into a path name. For bus_space_map(),
the resource is now specified in a second argument.
Before:
	bus.map('/dev/proto/pci0:2:1:0/pcicfg')
	busdma.tag_create('/dev/proto/pci0:2:1:0/busdma', ...)
Now:
	bus.map('pci0:2:1:0', 'pcicfg')
	busdma.tag_create('pci0:2:1:0', ...)
2015-07-26 21:37:31 +00:00
marcel
a0aa8866a7 Remove debugging output. We should have tracing instead. 2015-07-26 16:40:51 +00:00
bapt
58df5d4a52 Replace GNU RCS ident with a BSD license ident
Rationale: ident(1) is useful out of RCS, lot of scripts are using ident(1) and
failing when base is built WITHOUT_RCS.

This version is:
- fully compatible with RCS 5.7 ident.
- fully compatible with RCS 5.9 ident.
- passes all ident test from GNU RCS 5.9 test suite

This version has support for: svn extension for the Keyword id (double colon and
# before last $)

Différences with GNU RCS ident:
- no long options as found in GNU RCS 5.9 (but not commented there).
- '-V' reports nothing but has been added for compatibility.

Differential Revision:	https://reviews.freebsd.org/D3200
Reviewed by:	pfg
2015-07-26 11:21:36 +00:00
dim
56628666d9 Merge ^/head r285341 through r285792. 2015-07-22 19:55:32 +00:00
ache
51a129b0cf Comment out usr/sbin/mailwrapper removal
because for no mailwrapper case we have:
/usr/sbin/sendmail -> /usr/sbin/mailwrapper
/usr/sbin/mailwrapper -> /usr/libexec/sendmail/sendmail
Add comment explaining it.
2015-07-16 02:08:54 +00:00
brueffer
a356e9eb6b Add a missing break statement, which made the code default to IPv6.
PR:		201285
Submitted by:	David Binderman
MFC after:	1 week
2015-07-14 15:24:50 +00:00
dim
706271a799 Update llvm/clang to r241361. 2015-07-05 22:34:42 +00:00
dim
e7bcad3278 Vendor import of clang trunk r241361:
https://llvm.org/svn/llvm-project/cfe/trunk@241361
2015-07-05 14:23:59 +00:00
dim
d2fc7c7001 Vendor import of llvm trunk r241361:
https://llvm.org/svn/llvm-project/llvm/trunk@241361
2015-07-05 14:21:36 +00:00
dim
6f44bd3256 Merge ^/head r284737 through r285152. 2015-07-04 21:50:39 +00:00
emaste
8037fa4ee9 Import LLDB as of upstream SVN 241361 (git 612c075f) 2015-07-03 16:57:06 +00:00
marcel
fac325d351 Implement busdma_md_unload() and busdma_sync().
While here:
1.  have the Python bindings contain constants for the space
    identifiers and the sync operation.
2.  change the segment iterators to return None when done,
    not ENXIO.
2015-07-03 05:47:56 +00:00
marcel
c9fadd2c5d Add busdma_md_create, busdma_md_destroy and busdma_md_load. 2015-07-03 02:06:47 +00:00
oshogbo
55d9527633 Let the nv.h and dnv.h includes be only in sys directory.
Change consumers to include those files from sys.
Add duplicated files to ObsoleteFiles.

Approved by:	pjd (mentor)
2015-07-02 21:58:10 +00:00
np
5b15bda849 cxgbetool: fix code that decodes T5 SGE contexts. Some of the fields
that changed between T4 and T5 were not displayed correctly.

Obtained from:	Chelsio
MFC after:	3 days
Differential Revision:
2015-06-30 22:30:21 +00:00
dim
1756896fd2 Merge ^/head r284644 through r284736. 2015-06-23 18:55:08 +00:00
dim
3aff6c77e3 Update llvm/clang build glue. 2015-06-23 18:46:29 +00:00
sjg
ad2d87929d Fix generation of src.conf.5
Since makeman turns all options on, we need to guard somethings from
make(showconfig)
2015-06-22 20:21:57 +00:00
emaste
c79d82d9c0 Report failing value from 'make showconfig' in build option script
Sponsored by:	The FreeBSD Foundation
2015-06-22 17:23:36 +00:00
dim
9dd834653b Vendor import of clang trunk r240225:
https://llvm.org/svn/llvm-project/cfe/trunk@240225
2015-06-21 14:00:56 +00:00
dim
60174f118d Vendor import of llvm trunk r240225:
https://llvm.org/svn/llvm-project/llvm/trunk@240225
2015-06-21 13:59:01 +00:00
ngie
4fcd37c5ed MFhead @ r284674 2015-06-21 08:00:05 +00:00
dim
e109f99dcb Merge ^/head r284188 through r284643. 2015-06-20 19:34:50 +00:00
antoine
4f62f4e8f2 Add more obsolete files 2015-06-20 08:52:44 +00:00
antoine
e3a35ec02b Add some files to remove when MK_BSD_GREP=no 2015-06-20 07:35:02 +00:00
bapt
07553194d6 The build and installation of rmail(8) is only related to the SENDMAIL option 2015-06-18 05:58:15 +00:00
bapt
a4ba910b29 Do not remove mailwrapper(8) in case WITHOUT_SENDMAIL is used
It is required for other tools in base and/or ports like dma(8) or any MTA
available in ports. It is also build and installed anyway even if world is built
WITHOUT_SENDMAIL
2015-06-18 05:54:04 +00:00