summaryrefslogtreecommitdiff
path: root/sys/arch/mvme88k
AgeCommit message (Collapse)Author
2003-12-24Murphy's law applied to BSD:Miod Vallat
Every non-KNF file in the source tree contains at least one severe bug. KNF and a timid start at cleaning, but not very far, so there is no functional change at the moment. This code is still pathetic for now, but it sorta works and the price was right.
2003-12-24Since we have real bus error faults, and handle them as such, always treatMiod Vallat
uvm_fault() returning EACCES as a segmentation fault rather than a bus error, whatever address the fault is at. As a result, this correctly delivers SIGSEGV, rather than SIGBUS, when attempting to write to a page with only PROT_READ permissions.
2003-12-23Data access faults occuring inside copyin() or copyinstr() would getMiod Vallat
treated as usermode traps, because they reference a user space address. However, the tests for pcb_onfault being set were only present in the kernelmode traps handling. Since pcb_onfault is only set in those functions, move the associated recovery code from the kernelmode part to the usermode part, and only attempt to jump to pcb_onfault() if the access could not be resolved by uvm_fault() earlier. This lets things like setlogin(NULL) correctly return EFAULT, rather than killing the process with SIGSEGV, and incidentally lets sendmail in a non-default configuration run.
2003-12-23styleMiod Vallat
2003-12-23Simplify the syscall() routines. Also put a really meaningful limit to theMiod Vallat
number of syscall arguments, and enforce it correctly.
2003-12-22Do not play games with the instruction fetch pointers when preserving aMiod Vallat
process state in sendsig(), for it must be restored in the exact same fetching state by sigreturn(). mvme88k now passes the sigreturn regression test.
2003-12-22Get rid of kvtop() usage in dma_cachectl().Miod Vallat
2003-12-22Correctly handle vme attachments which specify a larger ca_len size thanMiod Vallat
initially expected.
2003-12-21-fno-builtin-* finally testedMarc Espie
2003-12-21Switch db_expr_t from int to long, per consistency with other platforms.Miod Vallat
2003-12-19Pass -Wformat, and silence a few vme* debug printf.Miod Vallat
2003-12-19The physical address of a pmap's segment table is only used to compute anMiod Vallat
apr value used in pmap_activate(). So, rather than storing the address in the pmap structure, store the precomputed apr value...
2003-12-19When temporarily unlocking a pmap, do not release the spl as well.Miod Vallat
While there, get rid of that ugly PT_FREE() macro.
2003-12-14Replace pmap_testbit/pmap_changebit sequences with a tailor-made pmap_unsetbitMiod Vallat
routine, in order to speed up pmap_clear_modify() and pmap_clear_reference().
2003-12-14Remove unnecessary trunc_page() calls, and change pmap_enter() logic toMiod Vallat
match m68k.
2003-12-12Provide a better delay() resolution on 188.Miod Vallat
2003-12-11Oops, forgot to commit this chunk of pcb_t removal. Spotted by deraadt.Miod Vallat
2003-11-18Remove the duplicated code in ssh_checkintr() - checked against mvme68k.Miod Vallat
2003-11-18In ssh_checkintr(), better check pointers for NULL before theyMiod Vallat
are dereferenced. XXX Looks like there are duplicated sections in this function. This driver needs a huge cleanup anyway...
2003-11-17Be sure to pmap_deactivate() pmaps when processes exit or are scheduled out.Miod Vallat
2003-11-16convert __attribute__((__packed__)) to __packed so that parsers unawareAnil Madhavapeddy
of gcc extensions have more of a chance. ok mcbride@, no objections from millert@, deraadt@
2003-11-14the the; rohee@Miod Vallat
2003-11-09Typos; Jonathan GrayMiod Vallat
2003-11-08Inline invalidate_pte().Miod Vallat
2003-11-08Save the current floatingpoint state in the pcb.Miod Vallat
2003-11-07adress -> address, and a few more; all from Jonathon Gray;Jason McIntyre
(mvme68k/mvme88k) vs.c and (vax) if_le.c ok miod@ isakmpd ones ok ho@
2003-11-06move netisr definition into md code to allow arch provide suitable ↵Michael Shalayeff
allocation; tested on most archs
2003-11-03spelling fixes (in the comments)David Krause
2003-10-28Split pmap_remove_range() into its main loop and a new function,Miod Vallat
pmap_remove_pte(), which takes the va and a pte. Use pmap_remove_pte() instead of pmap_remove_range() in strategic places, in order to save some cycles by avoiding unnecessary pte address recomputations. pmap_remove_range() is still preferred for large amounts of memory, as it will skip empty segments.
2003-10-28In pmap_remove_range(), be sure to propagate pvlist flags when removingMiod Vallat
the head entry. While there, invalidate the affected pte earlier for safety, and store its PG_U bit in the pvlist flags as well. And also get rid of a pdt table group leftover in pmap_collect().
2003-10-27Be sure to always have a valid faulting address when we send a signalMiod Vallat
to a process.
2003-10-27Be sure to flush the entire va space in cpu_switch().Miod Vallat
This used to work because the cmmu code is suboptimal at the moment.
2003-10-27Remove dead code and polish commentsMiod Vallat
2003-10-24Remove dead code.Miod Vallat
2003-10-24No \n in panic() messages...Miod Vallat
2003-10-23Correctly recover from bus error during guarded_access() on 88110.Miod Vallat
2003-10-23No dependency on NDART needed here.Miod Vallat
2003-10-19Simplify pmap DEBUG test constructs.Miod Vallat
2003-10-16Better DEBUG output.Miod Vallat
2003-10-15Better reset code, even.Miod Vallat
2003-10-15Do not assert SYSRST on 1x7 boards, if we are not a SYSCON, or unexpectedMiod Vallat
collateral damage will happen.
2003-10-13Get rid of the "page table group" stuff. "groups" used to be one logical pageMiod Vallat
big anyways. However, getting rid of the various constants (expanding to 0 for logs and shifts, and 1 for size) allows us to do further simplifications in some pmap loops, as there is no risk anymore of address wrapround. While there, fix some typos and comments.
2003-10-13Do not define LEDEBUG by default.Miod Vallat
2003-10-11Better sync comment with reality after last commit.Miod Vallat
2003-10-11Get rid of "union cpupid"; makes <machine/cpus.h> disappear as well.Miod Vallat
2003-10-11Nuke trailing whitespace.Miod Vallat
2003-10-11Page tables can be cached again on 187 and 188, as long as they are cachedMiod Vallat
write through and global (for 188).
2003-10-11Simplify DAE debug display.Miod Vallat
2003-10-11Merge sclock and clock pseudo-devices.Miod Vallat
2003-10-10In pmap_expand_kmap(), be sure to initialize new page tables.Miod Vallat