summaryrefslogtreecommitdiff
path: root/sys/arch/alpha
AgeCommit message (Collapse)Author
2012-04-11The first ktrace record for a newly spawned thread is a returnMike Belopuhov
from a fork syscall done by the parent. Use __tfork, not rfork here to match the ktrace records for the parent (CALL __tfork, RET __tfork). ok guenther
2012-04-10Make the KERN_NPROCS and KERN_MAXPROC sysctl()s and the RLIMIT_NPROC rlimitPhilip Guenthe
count processes instead of threads. New sysctl()s KERN_NTHREADS and KERN_MAXTHREAD count and limit threads. The nprocs and maxproc kernel variables are replaced by nprocess, maxprocess, nthreads, and maxthread. ok tedu@ mikeb@
2012-04-06tedu the raidframe.Joel Sing
ok deraadt@
2012-03-23Make rusage totals, itimers, and profile settings per-process insteadPhilip Guenthe
of per-rthread. Handling of per-thread tick and runtime counters inspired by how FreeBSD does it. ok kettenis@
2011-11-25Rework assembler constraints to satisfy gcc 4. Unfortunately this could notMiod Vallat
been done earlier because these new and improved constraints lose bigtime with gcc3, so be sure to compile your kernel with gcc 4 only if you have atomic.h 1.10 onwards.
2011-11-25Compile fixes for gcc4 (-Wbounded)Miod Vallat
2011-11-18Don't bother keeping a local copy of boot_dev in parse_prom_bootdev().Miod Vallat
Reminded by naddy@
2011-11-16Make userret() MI. On architectures which jammed stuff into it in theTheo de Raadt
past, pull that code out seperately. ok guenther miod
2011-11-15Simplify various parts of the puc(4) attachment code. Tested lightlyTheo de Raadt
by krw and myself.
2011-11-08Garbage collect now unused MKDEP definitions. ok deraadt@Matthieu Herrb
2011-10-27Specify the TLS variant for each platform.Philip Guenthe
2011-10-22Comment out wsmux to save kernel text, since USB support is missing fromMiod Vallat
this kernel anyway.
2011-10-10Introduce pci_probe_device_hook(pci_chipset_tag_t, struct pci_attach_args *).Miod Vallat
This mandatory function will get invoked in pci_probe_device(), and allows a pci host driver to alter the pci_attach_args passed to a device when attaching. This function will also, if returning non-zero, cause the device to be skipped completely during all the phases of the PCI device discovery (i.e. ressource enumeration, ressource assignment, and actual attachment). This particular feature is experimental and might be reverted in the future (or the scope narrowed to device attachment only). A dummy #define pci_probe_device_hook() 0 is added to all platforms except sgi, where real functions (currently only returning 0) are added; real meat will be added shortly. Discussed at s2k11, no objection from the usual suspects.
2011-10-10add tlphy everywhere tl is enabledJonathan Gray
pointed out by Loganaden Velvindron/brad
2011-10-06ccd goes to the atticTheo de Raadt
discussed with jsing and millert
2011-09-22nowadays uvm_init() calls pmap_init(), not vm_init(); so update the comments.Jasper Lievisse Adriaanse
ok ariane@
2011-09-08Provide namespace-safe alignment macros in <machine/_types.h>, withPhilip Guenthe
compat names kept in <machine/param.h>. In <sys/socket.h>, pull in <sys/_types.h> instead of the namespace polluting <machine/param.h> and completely eliminate __CMSG_ALIGN, replaced by _ALIGN ok deraadt@
2011-09-08Make the INT_FAST*_{MIN,MAX} macros match the types they're defined to.Philip Guenthe
Since the underlying types of the int_fast types are set by machine/_types.h, put internal macros in that same file and define the exposed INT_FAST*_{MIN,MAX} macros from those. ok millert@, kettenis@
2011-09-04Driver for the TURBOchannel alpha baseboard audio. Ported from NetBSD, withMiod Vallat
changes to allow using non-native encodings, and alpha specific code to try and avoid doing 8 bit memory access. Tested on 3000/300LX, deaf testing on 3000/600.
2011-08-29Only provide FLT_EVAL_METHOD for C99. Add missing DECIMAL_DIG for C99.Mark Kettenis
ok guenther@
2011-07-07deraadt says disable bluetooth everywhere else tooTed Unangst
2011-07-07The drahn memorial bad kernel build fix: prevent blood pressurePhilip Guenthe
spikes in other developers by making it so that removal of a .d file without removing the corresponding object will result in the latter being treated as out of date. ok beck@ art@ drahn@
2011-07-06make clean should clean .d files, so as to leave a fresh canvas.Ted Unangst
ok beck deraadt
2011-07-06Make alpha consistent with our other architectures by using "longMatthew Dempsky
long" for __off_t. This is a C++ ABI bump, but martynas@ already bumped libstdc++. Discussed and requested by many on icb.
2011-07-05Recommit the reverted sigacts change now that the NFS use-after-freePhilip Guenthe
problem has been tracked down. This fixes the sharing of the signal handling state: shared bits go in sigacts, per-rthread bits goes in struct proc. ok deraadt@
2011-06-29Replace all instances of "scsibus* at hba?" with a single "scsibus* atMatthew Dempsky
scsi?" rule, similar to how ethernet PHY drivers attach at mii. Discussed on icb.
2011-06-26if_downall() cannot be done MI in sys_reboot() because vfs_shutdown()Theo de Raadt
might need network (ie. nfs). Move the call to the MD boot() routines. This cause for boot hangs diagnosed by kettenis.
2011-06-23Fix the error path in bus_dmamem_map.Ariane van der Steldt
As discussed on icb: remove the comment, remove pmap_remove (uvm_km_free does that for us). ok oga@, deraadt@
2011-06-17M_WAITOK cleanup of two cases:Michael Knudsen
1) Allocating with M_WAITOK, checking for NULL, and calling panic() is pointless (malloc() will panic if it can't allocate) so remove the check and the call. 2) Allocating with M_WAITOK, checking for NULL, and then gracefully handling failure to allocate is pointless. Instead also pass M_CANFAIL so malloc() doesn't panic so we can actually handle it gracefully. 1) was done using Coccinelle. Input from oga. ok miod.
2011-06-06Forgot to `cvs add' this file during alpha boot block changes, sorry.Miod Vallat
2011-06-05Update alpha bootblocks to use MI loadfile code instead of rolling our own;Miod Vallat
also print a meaningful message if the kernel load address conflicts with the SRM memory areas, so that we can know which kernel load address to use. Requires `make includes' before attempting to build bootblocks. Tweaks mk@, `nice' deraadt@
2011-06-05Move the bufcachepercent setting code to MI locations -- set it to 42%Theo de Raadt
for now; that is unlikely to hit some of the remaining starvation bugs. Repair the bufpages calculation too; i386 was doing it ahead of time (incorrectly) and then re-calculating it. ok thib
2011-05-30Remove the freelist member from vm_physsegOwain Ainsworth
The new world order of pmemrange makes this data completely redundant (being dealt with by the pmemrange constraints instead). Remove all code that messes with the freelist. While touching every caller of uvm_page_physload() anyway, add the flags argument to all callers (all but one is 0 and that one already used PHYSLOAD_DEVICE) and remove the macro magic to allow callers to continue without it. Should shrink the code a bit, as well. matthew@ pointed out some mistakes i'd made. ``freelist death, I like. Ok.' ariane@ `I agree with the general direction, go ahead and i'll fix any fallout shortly'' miod@ (68k 88k and vax i could not check would build)
2011-05-25Also enclose variable names with external linkage in __BEGIN_DECLS.Martynas Venckus
Doesn't matter much since C++ ABI used by GCC doesn't mangle variable names; however technically is required by Section 7.5 of the C++ spec. Discussed with/OK guenther@, matthew@.
2011-05-24On OpenBSD, we've always attached scsibus(4) to umass(4), even forMatthew Dempsky
ATAPI devices. atapiscsi(4) is only for handling ATAPI devices on an ATA bus, so umass(4) shouldn't care about it. ok krw@, dlg@; no objections from deraadt@
2011-05-21Add pci_intr_map_msi() stub.Mark Kettenis
2011-04-28fenv improvements and cleanupsMartynas Venckus
2011-04-23Implement C99 floating-point environment for Alpha.Martynas Venckus
Delivering FPE with non-masked exceptions doesn't work on Alpha; I suspect there's a bug in the kernel trap handler. FE_INEXACT is intentionally left out of FE_ALL_EXCEPT; since the inexact exception is not being maintained. Otherwise it will lead to the bogus results.
2011-04-23Sysarch is for userland, not kernel.  ifdef _KERNEL -> ifndef _KERNELMartynas Venckus
so that the userland actually gets the proto. OK kettenis@, miod@.
2011-04-21Revert the ``remove the `skip splraise/splx for IPL_NONE mutexes' optimization''Miod Vallat
change. It seems to have unexpected side effects, especially on MP systems, and drahn@ disagrees with the way this change has been done and think there is a better way to solve the original problem of msleep() fiddling with mutex internals.
2011-04-18Revert the sigacts diff: NFS can apparently retain pointers to processesPhilip Guenthe
until they're zombies and then send them signals (for intr mounts). Until that is untangled, the sigacts change is unsafe. sthen@ was the victim for this one
2011-04-16Use 'CLR(<buf>->b_flags, B_READ | B_WRITE | B_DONE)' regardless ofKenneth R Westerback
what the previous IO was. Less chance of copy and paste errors. Suggested by miod@.
2011-04-15More than a decade ago, interrupt handlers on sparc started returning 0Theo de Raadt
(interrupt was not for me), 1 (positive interrupt was for me), or -1 (i am not sure...). We have continued with this practice in as many drivers as possible, throughout the tree. This makes some of the architectures use that information in their interrupt handler calling code -- if 1 is returned (and we know this specific machine does not have edge-shared interrupts), we finish servicing other possible handlers on the same pin. If the interrupt pin remains asserted (from a different device), we will end up back in the interrupt servicing code of course... but this is cheaper than calling all the chained interrupts on a pin. This does of course count on shared level interrupts being properly sorted by IPL. There have been some concerns about starvation of drivers which incorrectly return 1. Those drivers should be hunted down so that they return -1. (other architectures will follow) ok kettenis drahn dlg miod
2011-04-15In days of yore one could arbitrarily whack buffer flags. Those daysKenneth R Westerback
are past. Use CLR() and SET() to modify necessary flags while leaving the flags used by the buffer cache in peace. Should make bufcache code much less confused about the state of the bufs used in reading/writing disklabels. Other such flag abuses no doubt await a visit. Errors in original diff found by miod@. ok beck@ deraadt@
2011-04-15Correct the sharing of the signal handling state: stuff that shouldPhilip Guenthe
be shared (p_sigignore, p_sigcatch, P_NOCLDSTOP, P_NOCLDWAIT) moves to struct sigacts, wihle stuff that should be per rthread (ps_oldmask, SAS_OLDMASK, ps_sigstk) moves to struct proc. Treat the coredumping state bits (ps_sig, ps_code, ps_type, ps_sigval) as per-rthread until our locking around coredumping is better. Oh, and remove the old SunOS-compat ps_usertramp member. "I like the sound of this" tedu@
2011-04-15Convert the kernel Makefiles to autogenerate dependencies during compilationPhilip Guenthe
using the -MD option to cc, with -MP, -MT, and -MF where needed, converting "make depend" to a no-op. This increases parallelism for those using "make -j" and keeps the dependencies up to date with each compilation automatically. sparc and vax users will need to rebuild gcc with support for the -M[PTF] options before config'ing with this diff.
2011-04-06The various read*label() have stopped returning error strings for quiteMiod Vallat
some time, and return errnos instead. Fix or remove out-of-date comments mentioning the error strings, and make their callers check the return value against zero, not NULL.
2011-04-03Remove the `skip splraise/splx for IPL_NONE mutexes' optimizations. It is notMiod Vallat
always gaining anything, and msleep() implementation depends upon mtx_leave() invoking splx().
2011-04-03Move PPWAIT flag from struct proc to process, so that rthreads inPhilip Guenthe
a vforked child behave correctly. Have the parent in a vfork() wait on a (different) flag in *its* process instead of the child to prevent a possible use-after-free. When ktracing the child return from a fork, call it rfork if an rthread was created. ok blambert@
2011-03-28Include mlphy(4) to the kernels that include tl(4).Claudio Jeker
OK sthen@