1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-20 11:11:24 +00:00
freebsd/sys/arm/include
Andrew Turner b7112ead32 Clean up struct syscall_args:
1. Align to a 64-bit address so 64-bit data will be correctly aligned.
 2. Add a comment explaining why.
 3. Remove an unneeded value from the struct.

This fixes an issue where the struct may not be correctly aligned on the
stack in the syscall function. This may lead to accesing a 64-bit value
at a non 64-bit. This will raise an exception and panic the kernel.

We have been lucky where on arm and armv6 both clang and gcc correctly
align the data, even without us asking to, however, on armeb with clang to
not be the case. This tells the compiler we really do need this to be
aligned.

Reported and tested by:	jmg (on armeb with clang)
MFC after:	1 Week [1, 2]
2015-05-17 18:35:58 +00:00
..
_align.h
_bus.h
_inttypes.h
_limits.h
_stdint.h
_types.h
acle-compat.h
armreg.h Add new CP15 operations and DB_SHOW_COMMAND to print CP15 registers 2015-05-06 15:17:28 +00:00
asm.h Mark thumb entry points as such when building for thumb, otherwise mark 2015-05-11 19:04:32 +00:00
asmacros.h opt_global.h is included automatically in the build. No need to 2014-11-18 17:06:56 +00:00
at91_gpio.h
atags.h
atomic.h List both registers to use in the 64-bit atomic instructions. We will need 2015-05-11 18:52:06 +00:00
blockio.h
board.h
bus_dma.h
bus.h Micro-optimize the new arm inline bus_space implementation by grouping all 2015-01-21 20:12:35 +00:00
clock.h
counter.h
cpu-v6.h Add assertions that the addresses passed to tlb maintenance are page-aligned. 2015-05-15 18:10:00 +00:00
cpu.h Move the inclusion of cpu-v6.h inside the #ifdef _KERNEL block, so that 2015-01-08 03:59:03 +00:00
cpuconf.h Remove support for CPU_XSCALE_80200. None of our configs support it, and 2015-03-30 09:29:45 +00:00
cpufunc.h It appears to be armv7_sleep is a duplication of armv7_cpu_sleep. 2015-05-15 00:39:51 +00:00
cpuinfo.h Add minimum cache line sizes to struct cpuinfo, use them in the new cache 2015-03-09 14:46:10 +00:00
db_machdep.h Cleanup up ARM *frame structures... 2014-12-24 18:54:31 +00:00
devmap.h
disassem.h
dump.h Factor out duplicated code from dumpsys() on each architecture into generic 2015-01-07 01:01:39 +00:00
elf.h Update ELF headers to include additional defines 2015-01-02 15:36:29 +00:00
endian.h
exec.h
fdt.h dev/ofw/openfirm.h is not needed in the arm machine/fdt.h 2015-04-05 09:50:22 +00:00
fiq.h
float.h
floatingpoint.h
fp.h
frame.h Cleanup up ARM *frame structures... 2014-12-24 18:54:31 +00:00
gdb_machdep.h
ieee.h
ieeefp.h
in_cksum.h Delete stray clause 3 and renumber. 2015-03-13 02:49:55 +00:00
intr.h Remove arm1136 support. We don't have any configs that use it, and I don't 2015-03-29 21:12:59 +00:00
katelib.h
kdb.h
limits.h
machdep.h New pmap code for armv6. Disabled by default, option ARM_NEW_PMAP enables it. 2015-03-26 21:13:53 +00:00
md_var.h Declare Maxmem on arm. This should have been part of r277532. 2015-01-22 17:46:05 +00:00
memdev.h
metadata.h Add support to the efi boot1 and loader for 32-bit ARM. This will be used 2015-04-06 15:50:20 +00:00
minidump.h
ofw_machdep.h
param.h Add fueword(9) and casueword(9) functions. They are like fuword(9) 2014-10-28 15:22:13 +00:00
pcb.h New pmap code for armv6. Disabled by default, option ARM_NEW_PMAP enables it. 2015-03-26 21:13:53 +00:00
pcpu.h
physmem.h
pl310.h Correct PL310_POWER_CTRL offset 2015-05-07 16:56:20 +00:00
platform.h When the initarm_* routines were renamed to platform_* and moved to their 2014-08-17 02:56:58 +00:00
platformvar.h
pmap_var.h New pmap code for armv6. Disabled by default, option ARM_NEW_PMAP enables it. 2015-03-26 21:13:53 +00:00
pmap-v6.h Retire pmap_lazyfix(). This function only existed in the new armv6 pmap 2015-05-11 19:55:01 +00:00
pmap.h Add a pmap_kremove_device() to undo mappings made with pmap_kenter_device(). 2015-04-10 13:26:35 +00:00
pmc_mdep.h Rather than defining our own magic checks here use INKERNEL() for 2015-03-27 08:47:16 +00:00
proc.h Clean up struct syscall_args: 2015-05-17 18:35:58 +00:00
profile.h Stop using load-multiple with lr and pc. This has been deprecated in ARMv7 2015-01-31 19:55:12 +00:00
psl.h
pte-v6.h New pmap code for armv6. Disabled by default, option ARM_NEW_PMAP enables it. 2015-03-26 21:13:53 +00:00
pte.h New pmap code for armv6. Disabled by default, option ARM_NEW_PMAP enables it. 2015-03-26 21:13:53 +00:00
ptrace.h
reg.h
reloc.h
resource.h
runq.h
sc_machdep.h
setjmp.h
sf_buf.h New pmap code for armv6. Disabled by default, option ARM_NEW_PMAP enables it. 2015-03-26 21:13:53 +00:00
sigframe.h
signal.h
smp.h Retire pmap_lazyfix(). This function only existed in the new armv6 pmap 2015-05-11 19:55:01 +00:00
stack.h Allow the ARM unwinder to work through modules. This will be used to add 2015-02-19 12:06:57 +00:00
stdarg.h
swi.h
sysarch.h
sysreg.h Add new CP15 operations and DB_SHOW_COMMAND to print CP15 registers 2015-05-06 15:17:28 +00:00
trap.h
ucontext.h
undefined.h
utrap.h
vdso.h
vfp.h
vm.h New pmap code for armv6. Disabled by default, option ARM_NEW_PMAP enables it. 2015-03-26 21:13:53 +00:00
vmparam.h New pmap code for armv6. Disabled by default, option ARM_NEW_PMAP enables it. 2015-03-26 21:13:53 +00:00