summaryrefslogtreecommitdiff
path: root/sys/arch/sparc64
AgeCommit message (Collapse)Author
2014-03-19It's safe to assumed 'signed' existsPhilip Guenther
2014-03-18First setup that stops using isp(4), and relies on ql[aew](4).Theo de Raadt
Not due to testing... but because they can't fit side by side. ok kettenis
2014-03-16DDB supports ELF symbols are all archs, and it's always the same as thePhilip Guenther
native size, so eliminate the #defines. ok miod@
2014-03-15Enable qlw(4) at sbus(4).Mark Kettenis
2014-03-15make the membars look more correct for any memory ordering mode.David Gwynne
ok kettenis@
2014-03-14provide an MI api for doing byteswapping loads and stores. someDavid Gwynne
archs have instrutions that can do this, and the rest that dont get to use wrappers around the byteswap(3) api. this provides MI backends for sparc64 and powerpc which get a big benefit from this because byteswapping in registers is really hard for them. the intended use case is for reading and writing bits of dma memory handed to and from hardware. discussed with miod@ guenther@ deraadt@ ok miod@ kettenis@
2014-03-14enable qla(4) and qle(4) in ramdisks, except on sgi where the cdfs overflowsJonathan Matthew
2014-03-14rework mplock as ticket locks instead of spinlocks. this providesDavid Gwynne
fairer access to the kernel lock (which suffers very heavy contention at the moment). i wrote this at n2k14 and reworked it shortly after to use the mi atomic ops api when that was agreed on. ive been running it on my systems ever since. the version before the atomic op tweaks was tested by kettenis@ n2k14 (deraadt@ and kettenis@ in particular if i recall correctly) oked this going in after 5.5
2014-03-13get rid of the assumption that the head of the alldevs list is theDavid Gwynne
"mainbus" device. this breaks when mpath is enabled because it attaches before mainbus and therefore takes the head position. have autoconf provide device_mainbus() which looks up mainbus_cd, and use that instead. discussed with deraadt who just wants mpath stuff to move forward despite there being many ways to shine this particular turd.
2014-03-12enable qla(4) and qle(4) in GENERIC configs where isp(4) is alreadyJonathan Matthew
2014-03-11lint is gone, and the 'lint' conditional was never in the implementationPhilip Guenther
namespace, so stop changing behavior when it's #defined ok beck@ krw@
2014-03-08Enable qlw(4) on alpha/amd64/i386/macppc/sgi/sparc64 to force people to test.Mark Kettenis
2014-02-21spellingTheo de Raadt
2014-02-19add qla and qle everywhere we currently have isp, commented out except forJonathan Matthew
qle in GENERIC on i386, amd64 and sparc64, where it's reasonably well tested and likely to be useful. requested by deraadt@ and kettenis@, ok dlg@
2014-02-08Initializing the time from an uninitialized variable isn't a very good idea.Mark Kettenis
While there, afnsify the inittodr() prototype.
2014-01-30Move declaration of struct vm_page_md from <machine/vmparam.h> toMiod Vallat
<machine/pmap.h> where it belongs, and compensate in <uvm/uvm_extern.h> by including <uvm/uvm_pmap.h> before <uvm/uvm_page.h>. Tested on all MACHINE_ARCH but amd64 and i386 (and hppa64).
2014-01-30Undef def_atomic_op_nv instead of def_atomic_opf.Mark Kettenis
2014-01-30move sparc64 behind the MI atomic api.David Gwynne
this basically replaces sparc64_cas and sparc64_casx with atomic_cas_uint and atomic_cas_ulong respectively. it then builds atomic_add and atomic_sub out of those. this avoids the gcc atomic builtins that the MI atomic_foo api uses by default, so we dont get the extra membars that the builtins do but the atomic_foo api doesnt promise. it also fixes up the code that used to use sparc64_{cas,casx} to use the atomic_cas api instead. use of the sparc64 membar() macros are left untouched for now. ok kettenis@
2014-01-24If hv_ldc_copy() fails copying data set report status as EIO and acknowledgeMark Kettenis
the descriptor. This seems to be what Solaris does in such a case.
2014-01-24Add support for BUS_INTR_ESTABLISH_MPSAFE.Mark Kettenis
2014-01-24Add support for BUS_INTR_ESTABLISH_MPSAFE.Mark Kettenis
2014-01-23Add defines for resumable and nonresumable error queues.Mark Kettenis
2014-01-23Eleminate the last workq usage here.Mark Kettenis
2014-01-23unifdef -D__HAVE_VM_PAGE_MD - no functional change.Miod Vallat
2014-01-23Switch to task queues, except for one little corner case that I need to thinkMark Kettenis
a bit further about.
2014-01-23Don't blindly continue if and hv_ldc_copy() call fails. For now, simplyMark Kettenis
clean up and return without ACKing any descriptors. That means the client probably hangs. Some thought is needed on what the correct way to handle these conditions is. Made me spot a small memory leak, which is fixed asi a bonus.
2014-01-23Use MIN() instead of min() as we're dealing with 64-bit types.Mark Kettenis
2014-01-22Do not assume the data buffers handed down to us from the SCSI midlayer areMark Kettenis
page aligned.
2014-01-22Only kick the iopool if we've just established a new connection to the server.Mark Kettenis
2014-01-22this gets rid of NO_CCB in vdsk. it considers space on the tx ringDavid Gwynne
as the resource the iopool is managing, but gated by the availability of the service domain. it takes advantage of the newly available scsi_iopool_run() interface to restart io when the domain providing a disk comes back. ok kettenis@
2014-01-22Use extent_alloc_subregion_with_descr(9). This should make bus_dmamap_load(9)Mark Kettenis
and bus_dmamap_unload(9) "mpsafe".
2014-01-21enable MPSAFE interrupts on pyro. it seems to work ok.David Gwynne
kettenis@ told me where to put these lines
2014-01-21use KERNEL_LOCK and KERNEL_UNLOCK instead of fumbling with kernel_lockDavid Gwynne
directly. ok kettenis@
2014-01-19Initialize ci_randseed better using arc4random() + a trick. Remove theTheo de Raadt
libkern srandom() API since it is not suitable for this use. ok kettenis miod
2014-01-06Fix sparc64 kernel profiling, add the etext symbol back.Tobias Ulmer
ok miod@
2013-12-28Try to load entropy data from disk:/etc/random.seed. Then, insert this intoMark Kettenis
the ELF openbsd.randomdata of the kernel, so that it has entropy right from the start.
2013-12-28Make sure the PT_OPENBSD_RANDOMIZE program header actually covers the dataMark Kettenis
we want to initialize with randomness. It covered exactly nothing before!
2013-12-28Back out the previous commit; rodata gets merged with text by the linker.Mark Kettenis
Having a seperate rodata segment won't work anyway without significant pmap changes.
2013-12-28create rodata PHDR; ok kettenisTheo de Raadt
2013-12-28Require an explicit PT_OPENBSD_RANDOMIZE program header in the kernel linkerMiod Vallat
script (note that the amd64 linker script is currently not used). Discussed with deraadt@
2013-12-28crank the versionTheo de Raadt
2013-12-27remove lots from the Makefile, since this never depended on libsa.Theo de Raadt
2013-12-18Provide MI symbol _STACKALIGNBYTESTheo de Raadt
2013-12-08reflect reality, mark as NOOBJMarc Espie
"sure" deraadt@
2013-12-05Correct spin timeout detection in __mp_lock debug code.Masao Uebayashi
OK pirofti@ krw@ miod@
2013-11-261 << 31 cleanup. Eitan Adler pointed out that there has been aTheo de Raadt
resurrection of the bad idiom in the tree. sufficient review by miod, kettenis, tedu
2013-11-21remove the #define b_cylinder b_resid from bufs. i hated theDavid Gwynne
overloading of that thing. the only hardware that seems to care about cylinders in our tree are floppy drives, and the drivers for those calculate their own cylinders from logical block addresses and ignore whatever the rest of the kernel thought b_cylinders should be. most of this diff is moving the floppy drivers to using b_resid as a resid and using that as part of the calculation for real cylinder values. the rest of the diff is getting rid of the useless assignments to b_cylinder that dont get used by anything (now that disksort is gone). ok miod@
2013-11-15Added dev/usb/if_ugl.c, a driver for Genesys Logic GL620USB-Asasano
USB host-to-host link cable. This driver is derived from upl(4).
2013-11-05Add a stub for the new MD hook needed to handle ACPI Power Resources.Martin Pieuchot
ok kettenis@
2013-11-05Replace direct references to p_size, p_offset and d_secperunit withKenneth R Westerback
DL_[GET|SET]PSIZE(), DL_[GET|SET]POFFSET(), DL_[GET|SET]DSIZE() in order to get|set correct value that includes the high bits of the value.