a3a61674 jchandra Dec. 8, 2018, 6:34 p.m.
The SLIT and SRAT ACPI tables needs to be parsed on arm64 as well, on
systems that use UEFI/ACPI firmware and support NUMA. To do this, we
need to move most of the logic of x86/acpica/srat.c to dev/acpica and
provide an API that architectures can use to parse and configure ACPI
NUMA information.

This commit adds the API in srat.c as a first step, without making any
functional changes. We will move the common code to sys/dev/acpica
as the next step.

The functions added are:
  * int acpi_pxm_init(int ncpus, vm_paddr_t maxphys) - to allocate and
    initialize data structures used
  * void acpi_pxm_parse_tables(void) - parse SRAT/SLIT, save the cpu and
    memory proximity information
  * void acpi_pxm_set_mem_locality(void) - use the saved data to set
    memory locality
  * void acpi_pxm_set_cpu_locality(void) - use the saved data to set cpu
    locality
  * void acpi_pxm_free(void) - free data structures allocated by init

On arm64, we do not have an cpu APIC id that can be used as index to
store CPU data, we need to use the Processor Uid. To help with this,
define internal functions cpu_add, cpu_find, cpu_get_info to store
and get CPU proximity information.

Reviewed by:	markj, jhb (previous version)
Differential Revision:	https://reviews.freebsd.org/D17940
cgit ViewVC
63003c4b mmel Dec. 8, 2018, 2:58 p.m.
Although these are slightly obsolete in favor of R_AARCH64_TLSDESC,
gcc -mtls-dialect=trad still use them.

Please note that definition of TLS_DTPMOD64 and TLS_DTPREL64 are incorrectly
exchanged in GNU binutils. TLS_DTPREL64 should be encoded to 1028 (as is
defined in ARM ELF ABI) but binutils encode it to 1029. And vice versa,
TLS_DTPMOD64 should be encoded to 1029 but binutils encode it to 1028.

While I'm in, add also R_AARCH64_NONE. It can be produced as result of linker
relaxation.

MFC after:	1 week
cgit ViewVC
22ef103e dim Dec. 8, 2018, 2:32 p.m.
52c5eb85 dim Dec. 8, 2018, 2:31 p.m.
cfd49902 dim Dec. 8, 2018, 2:31 p.m.
60178276 mjg Dec. 8, 2018, 2:04 p.m.
Sample build world result on tmpfs:
kern.ipc.umtx_terminate_notempty: 0
kern.ipc.umtx_terminate_empty: 2891815

Sponsored by:	The FreeBSD Foundation
cgit ViewVC
9e53f3bd vmaffione Dec. 8, 2018, 12:52 p.m.
Validate the value of the -l argument (packet length) against the MTU of the netmap port.
In case the netmap port does not refer to a physical interface (e.g. VALE port or pipe), then
the netmap buffer size is used as MTU.
This change also sets a better default value for the -M option, so that pkt-gen uses
the largest possible fragments in case of multi-slot packets.

Differential Revision:	https://reviews.freebsd.org/D18436
cgit ViewVC
1becbc64 jilles Dec. 8, 2018, 12:49 p.m.
Altering the -c string at run time does not make sense and is not possible.

MFC after:	1 week
cgit ViewVC
b0b246b0 mjg Dec. 8, 2018, 11:38 a.m.
It is not needed since r340482 ("proc: always store parent pid in p_oppid")

Sponsored by:	The FreeBSD Foundation
cgit ViewVC
eab2132a mjg Dec. 8, 2018, 10:22 a.m.
If all IDs from trypid to pid_max were used as pids, the code would enter
a loop which would be infinite if none of the IDs could become free (e.g.
they all belong to processes which did not transitioned to zombie).

Fixes:	r341684 ("Manage process-related IDs with bitmaps")

Sponsored by:	The FreeBSD Foundation
cgit ViewVC
e52327e3 mjg Dec. 8, 2018, 6:34 a.m.
kqueue would always relock immediately afterwards.

While here drop the NULL check for list itself. The list is
always allocated.

Sponsored by:	The FreeBSD Foundation
cgit ViewVC
eadb1dcb mjg Dec. 8, 2018, 6:31 a.m.
Sponsored by:	The FreeBSD Foundation
cgit ViewVC
13a45e4b mjg Dec. 8, 2018, 6:30 a.m.
Sponsored by:	The FreeBSD Foundation
cgit ViewVC
3c76ace3 mjg Dec. 8, 2018, 4:53 a.m.
Originally read value is still safely kept. Re-reading code was there
for previous iterations which were partially shared with i386.

Sponsored by:	The FreeBSD Foundation
cgit ViewVC
18519f15 kib Dec. 7, 2018, 11:07 p.m.
When we detected that the vnode is not symlink, return immediately.
This moves the readlink code out of else branch and unindents it.

Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
cgit ViewVC