summaryrefslogtreecommitdiff
path: root/sys/arch/solbourne
AgeCommit message (Collapse)Author
2009-08-11Do not bother initializing bufpages in the md code if the computation isMiod Vallat
exactly the same the mi could will use if bufinit() is invoked with bufpages == 0.
2009-08-11With the SysV memory allocation changes, allocsys() doesn't do anythingMiod Vallat
anymore. Get rid of it completely.
2009-08-09Introduce option DDB_STRUCT. Kernels compiled with this option (except onMiod Vallat
a few arches where toolchain limitations apply) will embed some symbolic information about the various structs used within the kernel, and have new ddb commands allowing struct display and some useful information gathering. Kernel rodata increase varies accross platforms from ~150KB to ~300KB. This option is not enabled by default.
2009-08-09No need to clean genassym{.,o} during `make clean', genassym.sh does thisMiod Vallat
for us.
2009-08-09Rototill system V message queues.Bret Lambert
No longer allocate a static amount of memory for messages in MD boot path; message queues, message metadata, and message data now all use dynamic memory, which means that runtime sysctls should now be trivial to implement. Since I'm going to be around all week to fix any breakage, this should probably just go in now.
2009-08-02Dynamic buffer cache support - a re-commit of what was backed outBob Beck
after c2k9 allows buffer cache to be extended and grow/shrink dynamically tested by many, ok oga@, "why not just commit it" deraadt@
2009-06-15Back out all the buffer cache changes I committed during c2k9. This reverts ↵Bob Beck
three commits: 1) The sysctl allowing bufcachepercent to be changed at boot time. 2) The change moving the buffer cache hash chains to a red-black tree 3) The dynamic buffer cache (Which depended on the earlier too). ok on the backout from marco and todd
2009-06-03add kern.bufcachepercent sysctl to allow adjusting the buffer cacheBob Beck
size on a running system. ok art@, oga@
2009-04-10Catch up with sparc changes (bcopy fix, struct cpuinfo, etc); still dies earlyMiod Vallat
with so-called ``external memory fault'' which cause I can't figure out.
2009-04-10Don't blindly dereference a NULL pointer when the boot device is not known.Miod Vallat
2009-02-04Unify memory size reports a bit more: always report size in MB, and reportMiod Vallat
reserved memory on alpha and hppa on its own line (as done on sgi).
2009-01-11Fix a sed bug in the makefile's depend target.Paul Irofti
What happened was that the output of mkdep was fed to a sed expression that trimmed a bit more than required and also failed to work when attempting to do make depend with pcc. Example: genassym_c.o: /tmp/genassym.whatever ../../../../../sys/param.h \ was changed to: assym.h: \ but what was intended was: assym.h: ../../../../../sys/param.h \ For the pcc -M output things were a bit different and after the make depend the genassym entry would still remain and make would fail. This affected all platforms except amd64 and sgi. Okay miod@.
2008-10-10Use the MI random() for all cases; no need for a MD version since itTheo de Raadt
has never been performance sensitive. Running on all platforms, discussed with millert and kettenis, ok toby
2008-07-28No longer clear ci_want_resched within cpu_switchto(), now that it's doneMiod Vallat
in the MI code.
2008-07-14Zap some dead commons that are no longer used.Artur Grabowski
"Commitski!" miod@
2008-06-14A bunch of pool_get() + bzero() -> pool_get(..., .. | PR_ZERO)Michael Knudsen
conversions that should shave a few bytes off the kernel. ok henning, krw, jsing, oga, miod, and thib (``even though i usually prefer FOO|BAR''; thanks for looking.
2008-05-21ddb expects the kernel longjmp() to only take a single parameter and alwaysMiod Vallat
return 1 since 12+ years, it's about time to fix the offending ports. Reported by Pierre Riteau (firstname.lastname at gmail)
2008-05-03catch up with curpriority changes and convert to ptoa/atopMartin Reindl
ok miod@
2008-04-12Compile kernels with -Wvariable-decl (except on arches with ipmi, for now).Miod Vallat
2008-04-09Add new stub uvm_shutdown() and call it from the right place in MD boot()Theo de Raadt
2008-03-23setroot() is supposed to be safe in all cases, so kill the special casesTheo de Raadt
for RB_DFLTROOT; ok miod
2008-01-23Cleanup cn_pri. Change constants to more meaningful names, rather thanJoel Sing
the hp300 related ones currently in use. CN_NORMAL becomes CN_LOWPRI, CN_INTERNAL becomes CN_MIDPRI and CN_REMOTE becomes CN_HIGHPRI. ok miod@
2007-11-30Define NORMAL_C_NOP everywhere.Miod Vallat
2007-11-25libkern, begone. Move to a new mechanism where config(8)'s "file"Theo de Raadt
directive can select between MI and MD versions of these files. At the same time, adjust the boot programs to pick exactly what they need, instead of the 7 or 8 mechanisms previously used. There will be some fallout from this, but testing it all by myself is a ridiculously slow process; it will be finished in-tree. Various developers were very nice and avoided making fun of me when I was gibbering in the corner..
2007-11-25Get rid of the kernel 'libcompat' framework, and instead use conf/files toTheo de Raadt
decide which files must be pulled into the kernel. Also conditionalize the pulling of those files based on the COMPAT_* options.
2007-10-10Make context switching much more MI:Artur Grabowski
- Move the functionality of choosing a process from cpu_switch into a much simpler function: cpu_switchto. Instead of having the locore code walk the run queues, let the MI code choose the process we want to run and only implement the context switching itself in MD code. - Let MD context switching run without worrying about spls or locks. - Instead of having the idle loop implemented with special contexts in MD code, implement one idle proc for each cpu. make the idle loop MI with MD hooks. - Change the proc lists from the old style vax queues to TAILQs. - Change the sleep queue from vax queues to TAILQs. This makes wakeup() go from O(n^2) to O(n) there will be some MD fallout, but it will be fixed shortly. There's also a few cleanups to be done after this. deraadt@, kettenis@ ok
2007-09-22M_ZERO -> bzero.Kenneth R Westerback
ok art@
2007-09-10Introduce a md pmap hook, pmap_remove_holes(), which is supposed to markMiod Vallat
the holes a MMU may have from a given vm_map. This will be automagically invoked for newly created vmspaces. On platforms with MMU holes (e.g. sun4, sun4c and vax), this prevents mmap(2) hints which would end up being in the hole to be accepted as valid, causing unexpected signals when the process tries to access the hole (since pmap can not fill the hole anyway). Unfortunately, the logic mmap() uses to pick a valid address for anonymous mappings needs work, as it will only try to find an address higher than the hint, which causes all mmap() with a hint in the hole to fail on vax. This will be improved later.
2007-07-30Shuffle the order in which we look for header files, when doingThordur I. Bjornsson
kernel builds locally this doesnt change much but over NFS this cuts about 12% of the build time on my setup (i386). OK miod@, deraadt@.
2007-06-17significantly simplified disklabel infrastructure. MBR handling becomes MITheo de Raadt
to support hotplug media on most architectures. disklabel setup and verification done using new helper functions. Disklabels must *always* have a correct checksum now. Same code paths are used to learn on-disk location disklabels, to avoid new errors sneaking in. Tested on almost all cases, testing help from todd, kettenis, krw, otto, dlg, robert, gwk, drahn
2007-06-01some architectures called setroot() from cpu_configure(), *way* before someTheo de Raadt
subsystems were enabled. others used a *md_diskconf -> diskconf() method to make sure init_main could "do late setroot". Change all architectures to have diskconf(), use it directly & late. tested by todd and myself on most architectures, ok miod too
2007-05-29start of dumpconf() unification, which one day we can pray will be MITheo de Raadt
(and part of setroot); ok miod
2007-05-28Move the MSIZE, MCLSHIFT, MCLBYTES and the MCLOFSETThordur I. Bjornsson
mbuf constants from MD param.h to MI param.h. Besides being the same on every arch, things will most probly break if any arch has different values then the others. The NMBCLUSTERS constants needs to be MD though; ok miod@,krw@,claudio@
2007-05-26Dynamic buffer cache. Initial diff from mickey@, okay art@ beck@ toby@Pedro Martelletto
deraadt@ dlg@.
2007-05-04make findblkmajor() and findblkname() MI; ok miodTheo de Raadt
2007-05-04setroot() was a ugly mix of MI and MD code, with different bugs on differentTheo de Raadt
machines. Instead -- build one solid clean MI version, and thenchange all the architectures to use it. ok various people, tested on almost all cases. (it is a 10094 line diff..)
2007-05-01Provide <machine/lock.h> on all platforms, so that MI code may #include itMiod Vallat
unconditionnaly.
2007-04-12Discard .comment sections in the final a.out file.Miod Vallat
2007-04-10Long forgotten stub.Miod Vallat
2007-03-15Since p_flag is often manipulated in interrupts and without biglockArtur Grabowski
it's a good idea to use atomic.h operations on it. This mechanic change updates all bit operations on p_flag to atomic_{set,clear}bits_int. Only exception is that P_OWEUPC is set by MI code before calling need_proftick and it's automatically cleared by ADDUPC. There's no reason for MD handling of that flag since everyone handles it the same way. kettenis@ ok
2007-02-19only make this interface available to the kernel for now, discussed withaTheo de Raadt
rt and such; tested and ok miod drahn
2007-02-06Add machine/atomic.h to all architectures and define two operationsArtur Grabowski
right now that are supposed to be atomic with respect to interrupts and SMP: atomic_setbits_int and atomic_clearbits_int. All architectures other than i386 and amd64 get dummy implementations since at first we'll be replacing operations that are done with "a |= bit" and "a &= ~bit" today. More proper implementations will follow kettenis@, miod@ ok
2006-12-24Define PROC_PC. Then, since profiling information is being reported inMiod Vallat
statclock(), do not bother doing this in userret() anymore. As a result, userret() does not need its pc and ticks arguments, simplify.
2006-12-24Check for want_resched when processing AST and nowhere else. But then, whenMiod Vallat
doing so, do not check for signals - userret() will do this.
2006-09-17Time to leave the bus.Miod Vallat
2006-08-12Make all DEV_BSIZE definitions consistant by using (1 << DEV_BSHIFT)Kenneth R Westerback
in the six cases using "512". As DEV_BSHIFT is always 9, this should be a no-op. "no objections" miod@ "I can't see any problem doing this." pedro@
2006-07-27Compile all kernels with -Wstack-usage-larger-than-2047, now that allMiod Vallat
offending code has been taken out and shot. ok deraadt@
2006-06-19move clock_subr.c to a better place, and now it is always in the kernelTheo de Raadt
so that things can use it; tested on all architectures; ok kettenis
2006-06-04Shrink VM_PHYSSEG_MAX to 1 on platforms where physical memory is contiguousMiod Vallat
and there is only one call to uvm_page_physload().
2006-06-01Right at the end of a debug kernel build, the current Makefile copies bsdChristopher Pascoe
(with symbols) to bsd.gdb, then strips bsd. This diff makes it rename the file with symbols, and then asks strip to output the stripped version as bsd. Avoids a potentially lengthy wait when we would otherwise copy the large (50MB+) kernel with debug symbols. ok reyk@ ketennis@