this fixes a problem where elf_mod_sizes() would report size which would
be different (smaller) that the actual size of LKM code to be loaded in some
cases
Reviewed by: Johan Danielsson
- Make data_abort_address() return the whole affected range, rather than
just one end.
- Don't rely on pmap_confess(). Instead, for LDM/STM, behave as if two faults
had occurred, one at each end of the range.
- Separate out fault handling into do_fault(), and call it from
data_abort_handler() (twice) and prefetch_abort_handler().
1: Cleanup of syscall() -- treat the arguments as an array of register_t
throughout. This saves a few casts, and generally makes seeing what's
going on easier.
2: Be a little more careful in the handling of data aborts on kernel
addresses: don't use the kernel's map unless the access was actually from
a kernel mode. This is how the arm32 data abort handler behaves.
- Use UVMHIST for debugging messages, rather than printf
- Rely on the caller of pmap_enter to tell us how to manipulate referenced/
modified bits in the kernel pmap.
[ Suggested by chs -- may need work on the rest of the kernel. ]
- Split third-stage initialisation out of pmap_create() into pmap_init2().
- Bug fix: when relocating pv_table, fix up all references to it as well.
- Bug fix: in pv_release(), if pulling up a pv_entry to the head of the
list, correct the reference from its pmap.
gcc original rev. 1.89:
* combine.c (if_then_else_cond): If comparing against zero,
just return thing being compared.
gcc original rev. 1.132:
* combine.c (combine_simplify_rtx): Don't create an if_then_else
unless both args are general_operand.
rtlanal.c gcc original rev. 1.22
rtl.h rev. 1.67
jump.c rev. 1.47
* rtlanal.c (regs_set_between_p): New function.
* rtl.h (regs_set_between_p): Prototype it.
* jump.c (jump_optimize): Use it instead of modified_between_p
in the Sep 2 change.
fixes PR#11696
to CONFIG_HOOK_SET.
- merge CONFIG_HOOK_GET and CONFIG_HOOK_GETPOWER to CONFIG_HOOK_GET.
- merge CONFIG_HOOK_EVENT and CONFIG_HOOK_BUTTONEVENT to CONFIG_HOOK_ENENT.
- new CONFIG_HOOK_EVENT and CONFIG_HOOK_GET and CONFIG_HOOK_SET always have
msg argument as pointer.
- new CONFIG_HOOK_EVENT and CONFIG_HOOK_GET and CONFIG_HOOK_SET use
same event ids.
- CONFIG_HOOK_POWERCONTROL and CONFIG_HOOK_BUTTONEVENT still exist.
i shall rewite codes by using new CONFIG_HOOK_SET and CONFIG_HOOK_EVENT.
- fix math when skipping writing pages that just need a commit.
- clear the needcommit stuff and PG_RDONLY flags on pages returned for
overwrite requests as well as for normal write faults.
- bail out of nfs_write() if we get an error.
- remove a bogus attempt to clean up after failed uiomove()s.
- bring over a workaround for a lock-ordering problem from the genfs code.
- add some missing MP locking.
- in genfs_getpages() don't start read-ahead if we get an error on the
sync read, and always start read-ahead after the range of the sync read
if we do any at all.
- off-by-one error in genfs_size().
-w write in-core label if changed
-r update on-disk as well as in-core label (with -w)
-f force update (-w), even if there's been no change
-r behaviour suggested by matt green. what used to be `-f' is now `-wrf'
just get pmap_fault to shove them back in. Crude, but effective. Fix inspired
by Chuck Silvers.
This breaks pmap_confess, but it probably deserves to die.