summaryrefslogtreecommitdiff
path: root/sys/arch
AgeCommit message (Collapse)Author
2010-01-14When trying to get a stack trace, consider CKSEG1 addresses as invalid, as theMiod Vallat
kernel will never use them for code or stack.
2010-01-14Let the nmi handler code compile on non-MULTIPROCESSOR kernels.Miod Vallat
2010-01-14Fix build on gumstix; rename IPL_SOFTSERIAL to IPL_SOFTTTY andKevin Lo
eliminate the unused IPL_SERIAL. ok drahn@
2010-01-13Freeze the secondary CPU later in the nmi handling, and put it in a betterMiod Vallat
state from a ddb point of view.
2010-01-13Crude handler for the Octane NMI button, for kernels compiled withMiod Vallat
option DDB.
2010-01-13Do not lose ra on the first loop (regression from 1.20)Miod Vallat
2010-01-13As per NetBSD move HAYAKAWA Koichi's licenses to two clause.Jonathan Gray
2010-01-13Remove a few more settings of ITSDONE in drivers. Only a coupleKenneth R Westerback
more to go. Should be a no-op.
2010-01-11Increase/decrease the per-CPU interrupt depth variable around APIC interruptsMark Kettenis
like we do for PIC interrupts. ok art@, deraadt@, oga@
2010-01-10Make sure END() matches the *{LEAF,ENTRY}() function names.Miod Vallat
2010-01-10Fix two bugs in IPsec/HMAC-SHA2:Markus Friedl
(1) use correct (message) block size of 128 byte (instead of 64 bytes) for HMAC-SHA512/384 (RFC4634). (2) RFC4868 specifies that HMAC-SHA-{256,384,512} is truncated to nnn/2 bits, while we still use 96 bits. 96 bits have been specified in draft-ietf-ipsec-ciph-sha-256-00 while draft-ietf-ipsec-ciph-sha-256-01 changed it to 128 bits. WARNING: this change makes IPsec with SHA-256 (the default) incompatible with older OpenBSD versions and other IPsec-implementations that share this bug. ok+tests naddy, fries; requested by reyk/deraadt
2010-01-10GCC doesn't respect the aligned attribute for automatic variables. SoMark Kettenis
having mutexes on the stack, like dlg@ added recently to the scsi code, doesn't work on hppa. So instead of relying on mutexes being properly alligned just reserve 4 words and use the one that has the proper alignment. ok miod@
2010-01-10My mistake. There was one more driver paranoid enough to checkKenneth R Westerback
ITSDONE on getting the xs to execute. And optimistic enough to think simply restting the flag would be a good thing. Chill out like everyone else, reducing ITSDONE noise some more.
2010-01-10A couple of missed ITSDONE setting before scsi_done().Kenneth R Westerback
seagate/trm/aha1742 were the only drivers paranoid enough to check ITSDONE on getting the xs to execute. And optimistic enough to think simply restting the flag would be a good thing. Have them chill out like everyone else, reducing ITSDONE noise some more.
2010-01-10Set ITSDONE in scsi_done() and zap trivial instances of setting itKenneth R Westerback
in the drivers just before calling scsi_done(). ok dlg@ beck@
2010-01-09L2 cache line is at least 64 bytes long on r10k, so use 64 byte increments toMiod Vallat
flush L2 in Mips10k_SyncCache().
2010-01-09Make interrupt depth counters per-cpu.Miod Vallat
2010-01-09Move more R5000 code behind proper #ifdef stanzas.Miod Vallat
2010-01-09Move cache information from global variables to per-cpu_info fields; thisMiod Vallat
allows processors with different cache sizes to be used. Cache management routines now take a struct cpu_info * as first parameter.
2010-01-09Zap all setting of ITSDONE in drivers that don't look at it. NobodyKenneth R Westerback
else cares so it's just noise. Drivers that actually look at ITSDONE are unchanged. ok marco@ (for his files) dlg@ beck@
2010-01-09Define struct cpu_hwinfo, to hold hardware specific information about eachMiod Vallat
processor (instead of sys_config.cpu[]), and pass it in the attach_args when attaching cpu devices. This allows per-cpu information to be gathered late in the bootstrap process, and not be limited by an arbitrary MAX_CPUS limit; this will suit IP27 and IP35 systems better. While there, use this information to make sure delay() uses the speed information from the cpu it is invoked on.
2010-01-09Correctly check /dev/kmem offsets within directly translated segments (XKPHYSMiod Vallat
or CKSEG) against the actual physical memory segments, instead of assuming contiguous physical memory starting from zero, as this is utterly wrong on Octane (and a bit less wrong on other systems (-: )
2010-01-08Fix compile failure on MP kernel(missing P_CPU macro on mips64/mips64/context.S)Takuya ASADA
2010-01-08MP-safe FPU handling. ok miod@Takuya ASADA
2010-01-07Repair non-MULTIPROCESSOR kernel compilation.Miod Vallat
2010-01-07Make sure to update p_cpu on MULTIPROCESSOR kernels.Miod Vallat
2010-01-07Enable IPI interrrupt in trap. ok miod@Takuya ASADA
2010-01-05Dynamic allocation for ASID and ASID generation number on struct pmap. ok miod@Takuya ASADA
2010-01-03Implement pmap_proc_iflush() such that the instruction cache is synchronizedMark Kettenis
with the data cache when ptrace(2) is used to write into a process' address space. ok miod@
2010-01-03enable aibsTheo de Raadt
2010-01-03Use a split genassym.cf scheme on mips64 ports. Don't forget to rerun config(8).Miod Vallat
2010-01-02We need an additional level of indirection through 'struct scsibus_attach_args'Mark Kettenis
to find the 'struct scsi_link' associated with a scsibus(4). Interpreting 'struct scsibus_attach_args' as a 'struct scsi_link' happened to mostly work since it had a zero stored in the right place. However, after dlg@'s changes to 'struct scsi_link' that no longer turned out to be true. Makes my blade1k find its root disk again.
2010-01-01Miod must have gotten his fingers stuck between the keys on his keyboard andMark Kettenis
accidentally swapped to lines of code. Swap them back such that this compiles again.
2010-01-01Map the device registers before using them. We were lucky that some otherMark Kettenis
device already mapped the block that contains our registers, but if we change the probe order, or disable devices we might not end up so lucky. ok jsing@, miod@
2010-01-01Make sure than ptrace functions never return a non-zero value in the zeroMiod Vallat
register.
2010-01-01Make sure we grab the kernel lock before invoking trapsignal().Miod Vallat
2010-01-01Since sh4_emode_icache_sync_all() and sh4_emode_dcache_wbinv_all()Miod Vallat
explicitely process both cache ways, there is no need to give them the whole EMODE cache size as a range to operate on; only half the size will do; this avoid working on the cache twice.
2010-01-01Remove unused *_CACHE_FLUSH() macros.Miod Vallat
2010-01-01Make sure page is cache invalidated in pmap_unmap_direct(), for the next useMiod Vallat
of this page may use different cache indexes. ok kettenis@
2010-01-01Make sure we grab the kernel lock before invoking trapsignal().Miod Vallat
ok kettenis@
2009-12-31Implement wrappers for enabling and disabling interrupts.Joel Sing
ok miod@
2009-12-31Make cpl and cpu_inintr per CPU variables. For locore.S, cpl becomes anJoel Sing
offset within cpu_primary_info - this will need to be revisited shortly. ok kettenis@
2009-12-31Add vds(4) and vdsp(4), implementing the vDisk server side protocol. ThisMark Kettenis
makes it possible to run an OpenBSD guest domain on top of a virtiual disk backed by a disk image on a filesystem on OpenBSD control or service domain. Probably doesn't support running Solaris or Linux yet. Haven't tried those yet because booting their installers in a guest domain is way too painful!
2009-12-31Add a few more hypervisor calls.Mark Kettenis
2009-12-30curcpu()->ci_curpmap added. ok miod@Takuya ASADA
2009-12-29Call proc_trampoline_mp() from the process trampoline when compiled for MP.Joel Sing
ok kettenis@
2009-12-29Implement MP safe mutexes for hppa.Joel Sing
ok kettenis@
2009-12-29Move hppa to a "cpu0 at mainbus0" configuration, rather than knocking CPUsJoel Sing
out in the cpu match function. Whilst here also hardwire the clock to IRQ 31, thus preventing one from building a kernel without hardclock. ok kettenis@ miod@
2009-12-29Make want_resched a per CPU variable.Joel Sing
ok kettenis@ miod@
2009-12-29Move hppa to per process AST.Joel Sing
ok kettenis@ miod@