|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base thorpej-i2c-spi-conf-base thorpej-cfargs-base thorpej-futex-base
|
| #
1.85 |
|
03-Apr-2021 |
palle |
Improve cpu_idle() by allowing a platform specific implementaion (same logic as the sparc implementation) - currently only used by sun4v
|
|
Revision tags: bouyer-xenpvh-base2 phil-wifi-20200421 bouyer-xenpvh-base1 phil-wifi-20200411 bouyer-xenpvh-base is-mlppp-base phil-wifi-20200406 ad-namecache-base3
|
| #
1.84 |
|
17-Feb-2020 |
skrll |
branches: 1.84.6; 1.84.8; G/C LS{SLEEP,RUN,ONPROC}
LWP status manipulation was moved out of assembly long ago.
|
|
Revision tags: ad-namecache-base2 ad-namecache-base1
|
| #
1.83 |
|
08-Jan-2020 |
ad |
Hopefully fix some problems seen with MP support on non-x86, in particular where curcpu() is defined as curlwp->l_cpu:
- mi_switch(): undo the ~2007ish optimisation to unlock curlwp before calling cpu_switchto(). It's not safe to let other actors mess with the LWP (in particular l->l_cpu) while it's still context switching. This removes l->l_ctxswtch.
- Move the LP_RUNNING flag into l->l_flag and rename to LW_RUNNING since it's now covered by the LWP's lock.
- Ditch lwp_exit_switchaway() and just call mi_switch() instead. Everything is in cache anyway so it wasn't buying much by trying to avoid saving old state. This means cpu_switchto() will never be called with prevlwp == NULL.
- Remove some KERNEL_LOCK handling which hasn't been needed for years.
|
|
Revision tags: ad-namecache-base
|
| #
1.82 |
|
23-Nov-2019 |
ad |
branches: 1.82.2; cpu_need_resched():
- Remove all code that should be MI, leaving the bare minimum under arch/. - Make the required actions very explicit. - Pass in LWP pointer for convenience. - When a trap is required on another CPU, have the IPI set it locally. - Expunge cpu_did_resched().
|
|
Revision tags: netbsd-8-3-RELEASE netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE netbsd-8-2-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 isaki-audio2-base pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base tls-maxphys-base-20171202 matt-nb8-mediatek-base nick-nhusb-base-20170825 perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 jdolecek-ncq-base pgoyette-localcount-20170320
|
| #
1.81 |
|
10-Feb-2017 |
palle |
branches: 1.81.14; sun4v: Added handling of trap type 0x034 (address alignment error) + fixed typo mmfsa -> mmufsa. Verified for both sun4u and sun4v using qemu.
|
|
Revision tags: nick-nhusb-base-20170204
|
| #
1.80 |
|
27-Jan-2017 |
palle |
sun4v: implement missing handling of itsb traps 0x008 and 0x009. Based on code from OpenBSD. Tested using qemu.
|
|
Revision tags: bouyer-socketcan-base pgoyette-localcount-20170107 nick-nhusb-base-20161204 pgoyette-localcount-20161104 nick-nhusb-base-20161004 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base nick-nhusb-base-20160907 nick-nhusb-base-20160529
|
| #
1.79 |
|
17-May-2016 |
palle |
branches: 1.79.2; 1.79.4; sun4v: Implement missng MMU protection trap handling - mostly from OpenBSD
|
| #
1.78 |
|
16-May-2016 |
palle |
Avoid assembler-specific defines by using the export keyword in genassym.cf instead
|
| #
1.77 |
|
10-May-2016 |
palle |
sun4v: make device interrupts work. Introduce a new intrhand_alloc() function for allocation of interrupt handlers and adapt to this. Parts from OpenBSD. ok martin@
|
|
Revision tags: nick-nhusb-base-20160422 nick-nhusb-base-20160319 nick-nhusb-base-20151226 nick-nhusb-base-20150921 nick-nhusb-base-20150606 nick-nhusb-base-20150406
|
| #
1.76 |
|
01-Apr-2015 |
palle |
sun4v: Implement handling of cpu_mondo trap - from OpenBSD - tested using the Legion simulator
|
|
Revision tags: nick-nhusb-base
|
| #
1.75 |
|
24-Sep-2014 |
palle |
branches: 1.75.2; sun4v: add code to enable startup of secondary cpus on both sun4u and sun4v systems - ok martin@
|
| #
1.74 |
|
04-Sep-2014 |
palle |
sun4v: All cpus must be setup with a TSB descriptor, so pmap_setup_tsb_sun4v() must take a pointer to the TSB descriptor
|
|
Revision tags: netbsd-7-2-RELEASE netbsd-7-1-2-RELEASE netbsd-7-1-1-RELEASE netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 netbsd-7-1-RC1 netbsd-7-0-2-RELEASE netbsd-7-nhusb-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 rmind-smpnet-nbase rmind-smpnet-base tls-maxphys-base
|
| #
1.73 |
|
21-Feb-2014 |
palle |
sun4v: Rename TLB_ defines to SUN4U_TLB_ so entries created using TSB_DATA() are properly setup for sun4u and sun4v. Relocate the cputyp variable from autoconf.c to locore.s and make it const in param.h so optimized code can be generated. Parts from OpenBSD. Optimization suggested by nakayama@. OK martin@, mrg@, nakayama@
|
| #
1.72 |
|
26-Jan-2014 |
palle |
sun4v: Add handling of spill/fill and dtsb miss traps (with a XXX to be handled later)
|
| #
1.71 |
|
11-Jan-2014 |
palle |
No need to make CI_MMFSA depend on SUN4V since the ci_mmfsa field is always present in the cpu_info struct now
|
| #
1.70 |
|
11-Jan-2014 |
nakayama |
Uncomment ifdef/endif and tabify.
|
| #
1.69 |
|
07-Jan-2014 |
palle |
sun4v: trap table setup - currently populated with dummy entries which will be properly implemented later - parts from OpenBSD - OK martin@
|
| #
1.68 |
|
28-Dec-2013 |
nakayama |
CI_UPAID has been renamed to CI_CPUID.
|
| #
1.67 |
|
27-Dec-2013 |
palle |
a) make the hunt through the cpus list more generic b) sun4v: ensure that the interrupt stack is mapped permanently and the TSB is setup properly - parts from OpenBSD. OK martin@
|
|
Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 jmcneill-usbmp-base10 yamt-pagecache-base5 jmcneill-usbmp-base9 yamt-pagecache-base4 jmcneill-usbmp-base8 jmcneill-usbmp-base7 jmcneill-usbmp-base6 jmcneill-usbmp-base5 jmcneill-usbmp-base4 jmcneill-usbmp-base3 jmcneill-usbmp-pre-base2 jmcneill-usbmp-base2 netbsd-6-base jmcneill-usbmp-base jmcneill-audiomp3-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base
|
| #
1.66 |
|
20-Jul-2011 |
macallan |
branches: 1.66.2; 1.66.12; 1.66.16; add per ivec event counters
|
| #
1.65 |
|
18-Jun-2011 |
nakayama |
Add fast softint(9) support for sparc64.
Reviewed on port-sparc64.
|
|
Revision tags: rmind-uvmplock-nbase cherry-xenmp-base uebayasi-xip-base7 bouyer-quota2-nbase bouyer-quota2-base jruoho-x86intr-base rmind-uvmplock-base jym-xensuspend-nbase jym-xensuspend-base
|
| #
1.64 |
|
14-Jan-2011 |
rmind |
branches: 1.64.6; Retire struct user, remove sys/user.h inclusions. Note sys/user.h header as obsolete. Remove USER_TO_UAREA/UAREA_TO_USER macros.
Various #include fixes and review by matt@.
|
|
Revision tags: matt-mips64-premerge-20101231
|
| #
1.63 |
|
20-Dec-2010 |
matt |
Move counting of faults, traps, intrs, soft[intr]s, syscalls, and nswtch from uvmexp to per-cpu cpu_data and move them to 64bits. Remove unneeded includes of <uvm/uvm_extern.h> and/or <uvm/uvm.h>.
|
|
Revision tags: uebayasi-xip-base6 uebayasi-xip-base5 uebayasi-xip-base4 uebayasi-xip-base3 yamt-nfs-mp-base11 uebayasi-xip-base2 yamt-nfs-mp-base10 uebayasi-xip-base1 yamt-nfs-mp-base9 uebayasi-xip-base matt-premerge-20091211
|
| #
1.62 |
|
10-Dec-2009 |
rmind |
branches: 1.62.4; Rename L_ADDR to L_PCB and amend some comments accordingly.
|
| #
1.61 |
|
25-Nov-2009 |
mrg |
s/L_ADDR/L_PCB/, requested by rmind.
|
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 yamt-nfs-mp-base8 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 yamt-nfs-mp-base7 netbsd-5-0-1-RELEASE jymxensuspend-base yamt-nfs-mp-base6 yamt-nfs-mp-base5 yamt-nfs-mp-base4 yamt-nfs-mp-base3 nick-hppapmap-base4 nick-hppapmap-base3 netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 nick-hppapmap-base2 netbsd-5-0-RC2 netbsd-5-0-RC1 haad-dm-base2 haad-nbase2 ad-audiomp2-base netbsd-5-base nick-hppapmap-base matt-mips64-base2 haad-dm-base1 wrstuden-revivesa-base-4 haad-dm-base mjf-devfs2-base
|
| #
1.60 |
|
20-Sep-2008 |
tsutsui |
Remove advertising clause for UCB in various genassym.cf files, which were derived from genassym.c in 4.4BSD-Lite2 (or 386BSD). Closes PR misc/39573. Approved by martin@.
|
|
Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
|
| #
1.59 |
|
06-Aug-2008 |
martin |
Remove a few components of struct lwp that we do not touch any more.
|
|
Revision tags: wrstuden-revivesa-base-1 simonb-wapbl-nbase yamt-pf42-base4 simonb-wapbl-base yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 yamt-nfs-mp-base2 wrstuden-revivesa-base
|
| #
1.58 |
|
02-May-2008 |
martin |
branches: 1.58.2; 1.58.6; Move TNF licenses to 2 clause form
|
|
Revision tags: yamt-nfs-mp-base
|
| #
1.57 |
|
22-Apr-2008 |
nakayama |
branches: 1.57.2; include "opt_multiprocessor.h"
|
|
Revision tags: yamt-pf42-baseX yamt-pf42-base ad-socklock-base1
|
| #
1.56 |
|
25-Mar-2008 |
martin |
branches: 1.56.2; Remove unused symbol
|
|
Revision tags: yamt-lazymbuf-base15 yamt-lazymbuf-base14 keiichi-mipv6-nbase keiichi-mipv6-base matt-armv6-nbase
|
| #
1.55 |
|
17-Mar-2008 |
nakayama |
Make schedintr interrupt handler per-CPU. While there rename tickintr interrupt handler and share initialization code with schedintr.
|
| #
1.54 |
|
14-Mar-2008 |
nakayama |
Improve IPI handling: - make IPI takes two arguments. - add IPI event counters per-CPU. - implement IPI functions which were missing or broken. - insert DELAY while halting primary CPU in IPI handler.
|
| #
1.53 |
|
02-Mar-2008 |
nakayama |
- make interrupt pending list per-CPU. - make tickintr() MP-safe. - remove unused port-sparc derived interrupt code.
Ok by martin@.
|
| #
1.52 |
|
28-Feb-2008 |
martin |
Make TSBs and MMU contexts per-cpu.
|
|
Revision tags: hpcarm-cleanup-base
|
| #
1.51 |
|
22-Feb-2008 |
martin |
Get rid of the IPI simple_lock.
|
|
Revision tags: nick-net80211-sync-base bouyer-xeni386-merge1 vmlocking2-base3 bouyer-xeni386-nbase yamt-kmem-base3 cube-autoconf-base yamt-kmem-base2 bouyer-xeni386-base mjf-devfs-base matt-armv6-base
|
| #
1.50 |
|
09-Dec-2007 |
martin |
branches: 1.50.6; 1.50.10; Provide cpu_intr_p(), at least for non-MULTIPROCESSOR kernels. Based on suggestions by Andrew Doran.
|
|
Revision tags: yamt-kmem-base vmlocking2-base2 reinoud-bufcleanup-nbase vmlocking2-base1 jmcneill-base bouyer-xenamd64-base2 vmlocking-nbase yamt-x86pmap-base4 bouyer-xenamd64-base jmcneill-pm-base reinoud-bufcleanup-base
|
| #
1.49 |
|
17-Oct-2007 |
garbled |
branches: 1.49.4; 1.49.6; Merge the ppcoea-renovation branch to HEAD.
This branch was a major cleanup and rototill of many of the various OEA cpu based PPC ports that focused on sharing as much code as possible between the various ports to eliminate near-identical copies of files in every tree. Additionally there is a new PIC system that unifies the interface to interrupt code for all different OEA ppc arches. The work for this branch was done by a variety of people, too long to list here.
TODO: bebox still needs work to complete the transition to -renovation. ofppc still needs a bunch of work, which I will be looking at. ev64260 still needs to be renovated amigappc was not attempted.
NOTES: pmppc was removed as an arch, and moved to a evbppc target.
|
|
Revision tags: yamt-x86pmap-base3 yamt-x86pmap-base2 yamt-x86pmap-base ppcoea-renovation-base vmlocking-base
|
| #
1.48 |
|
11-Sep-2007 |
martin |
Cleanup cpu_info: get rid of ci_number and ci_upaid, use ci_index and ci_cpuid instead.
|
|
Revision tags: nick-csl-alignment-base5
|
| #
1.47 |
|
09-Sep-2007 |
martin |
Make cpufrequency and friends per cpu values. Prepare a hz tick interrupt on secondary CPUs via %tick, but do not enable it yet, as it breaks ddb.
|
| #
1.46 |
|
25-Aug-2007 |
martin |
branches: 1.46.2; Remove INITSTACK completely - at the time we used to switch to it, we already have access to all of lwp0 and it's uarea - so we can switch to the correct lwp0 stack easily before calling main.
|
|
Revision tags: nick-csl-alignment-base matt-mips64-base mjf-ufs-trans-base
|
| #
1.45 |
|
20-May-2007 |
martin |
branches: 1.45.4; 1.45.8; Simplify tf_tstate setting when leaving for userland initially - I seem to have confused the if with the else case of the previous C code. Funny that it worked at all.
|
| #
1.44 |
|
20-May-2007 |
martin |
Remove special case handling for userland lwps from cpu_lwp_fork, instead do it in lwp_trampoline when we first return to userland.
|
| #
1.43 |
|
19-May-2007 |
martin |
page_idle_zero is now checked in MI code
|
| #
1.42 |
|
17-May-2007 |
yamt |
merge yamt-idlelwp branch. asked by core@. some ports still needs work.
from doc/BRANCHES:
idle lwp, and some changes depending on it.
1. separate context switching and thread scheduling. (cf. gmcgarry_ctxsw) 2. implement idle lwp. 3. clean up related MD/MI interfaces. 4. make scheduler(s) modular.
|
|
Revision tags: netbsd-4-0-1-RELEASE wrstuden-fixsa-newbase wrstuden-fixsa-base-1 netbsd-4-0-RELEASE netbsd-4-0-RC5 matt-nb4-arm-base netbsd-4-0-RC4 netbsd-4-0-RC3 netbsd-4-0-RC2 netbsd-4-0-RC1 yamt-idlelwp-base8 wrstuden-fixsa-base thorpej-atomic-base ad-audiomp-base post-newlock2-merge newlock2-nbase yamt-splraiseipl-base5 yamt-splraiseipl-base4 yamt-splraiseipl-base3 yamt-splraiseipl-base2 yamt-splraiseipl-base yamt-pdpolicy-base9 newlock2-base netbsd-4-base
|
| #
1.41 |
|
13-Sep-2006 |
mrg |
branches: 1.41.6; 1.41.10; 1.41.12; 1.41.18; SMP cleanup. provide support for multiple CPUs in DDB. (SMP itself is still not working.)
cpu.h: - add a pointer for DDB regs in SMP environment to struct cpu_info - remove the #defines for mp_pause_cpus() and mp_resume_cpus() cpuset.h: - remove CPUSET_ALL() and rename CPUSET_ALL_BUT() to CPUSET_EXCEPT() from petrov. db_machdep.h: - rename the members of db_regs_t to be the same as sparc - change "db_regs_t ddb_regs" to "db_regs_t *ddb_regp" and change all references to suit - redo DDB_REGS to no longer be a pointer to a fixed data structure but to one allocated per-cpu when ddb is entered - move a bunch of prototypes in here intr.h: - remove SPARC64_IPI_* macros, no longer used db_interface.c: - change "db_regs_t ddb_regs" to "db_regs_t *ddb_regp" and change all references to suit - make "nil" a 64 bit entity - change the ddb register access methods to work in multiprocessor environment, it is now very much like sparc does it - in kdb_trap() avoid accessing ddb_regp when it is NULL - update several messages to include the cpu number - unpause other cpus much later when resuming from ddb - rename db_lock() to db_lock_cmd(), as the sparc-like code has db_lock as a simple lock - remove "mach cpus" command, and replace it with "mach cpu" (which does the same) and also implement "mach cpu N" to switch to another cpus saved trapframe db_trace.c: - update for the ddb_regs -> ddb_regp change genassym.cf: - add TF_KSTACK as offsetof(struct trapframe64, tf_kstack) ipifuncs.c: - overhaul extensively - remove all normal interrupt handlers as IPI's, we now handle them all specially in locore.s:interrupt_vector - add a simplelock around all ipi functions - it's not safe for multiple cpus to be sending IPI's to each other right now - rename sparc64_ipi_pause() to sparc64_ipi_pause_thiscpu() and, if DDB is configured, enable it to save the passed-in trapframe to a db_regs_t for this cpu's saved DDB registers. - remove the "ipimask" system (SPARC64_IPI_* macros) and instead pass functions directly - in sparc64_send_ipi() always set the interrupt arguments to 0, the address and argument of the to be called function. (the argument right now is the address of ipi_tlb_args variable, and part of the reason why only one CPU can send IPI's at a time.) don't wait forever for an IPI to complete. some of this is from petrov. - rename sparc64_ipi_{halt,pause,resume}_cpus() to mp_{halt,pause,resume}_cpus() - new function mp_cpu_is_paused() used to avoid access missing saved DDB registers - actually broadcast the flush in smp_tlb_flush_pte(), smp_tlb_flush_ctx() and smp_tlb_flush_all(). the other end may not do anything yet in the pte/ctx cases yet... kgdb_machdep.c: - rework for changed member names in db_regs_t. locore.s: - shave an instruction from syscall_setup() (set + ld -> sethi + ld) - remove some old dead debug code - add new sparc64_ipi_halt IPI entry point, it just calls the C vector to shutdown. - add new sparc64_ipi_pause IPI entry point, which just traps into the debugger using the normal breakpoint trap. these cpus usually lose the race in db_interface.c:db_suspend_others() and end up calling the C vector sparc64_ipi_pause_thiscpu(). - add #if 0'ed code to sparc64_ipi_flush_{pte,ctx}() IPI entry points to call the sp_ version of these functions. - in rft_kernel (return from trap, kernel), check to see if the %tpc is at the sparc64_ipi_pause_trap_point and if so, call "done" not "retry" - rework cpu_switch slightly: save the passed-in lwp instead of using the one in curlwp - in cpu_loadproc(), save the new lwp not the old lwp, to curlwp - in cpu_initialize(), set %tl to zero as well. from petrov. - in cpu_exit(), fix a load register confusion. from petrov. - change some "set" in delay branch to "mov". machdep.c: - deal with function renames pmap.c: - remove a spurious space trap.c: - remove unused "trapstats" variable - add cpu number to a couple of messages
|
|
Revision tags: abandoned-netbsd-4-base yamt-pdpolicy-base8 yamt-pdpolicy-base7 yamt-pdpolicy-base6 chap-midi-nbase gdamore-uart-base simonb-timcounters-final yamt-pdpolicy-base5 chap-midi-base yamt-pdpolicy-base4 yamt-pdpolicy-base3 peter-altq-base yamt-pdpolicy-base2 elad-kernelauth-base yamt-pdpolicy-base yamt-uio_vmspace-base5 simonb-timecounters-base rpaulo-netinet-merge-pcb-base
|
| #
1.40 |
|
27-Jan-2006 |
cdi |
branches: 1.40.6; 1.40.18; Alter sparc64 bootstrap, catch up to ofwboot v1.9:
- Accept bootinfo structure passed down from ofwboot v1.9 - Drop kernel re-mapping code - Use permanent 4MB mappings provided by the loader instead - Change kernel entry address to point directly at the code instead of pointing at the trap table's first slot. This allows the bootloader to detect those kernels which are aware of the new boot scheme - Due to the changes in kernel mapping code, alter secondary CPU bootstrap code to use trampoline just like FreeBSD does (some FreeBSD code is used here as well)
|
| #
1.39 |
|
11-Dec-2005 |
christos |
branches: 1.39.2; merge ktrace-lwp.
|
|
Revision tags: yamt-readahead-base3 yamt-readahead-base2 yamt-readahead-pervnode yamt-readahead-perfile yamt-readahead-base yamt-vop-base3 yamt-vop-base2 thorpej-vnode-attr-base yamt-vop-base ktrace-lwp-base
|
| #
1.38 |
|
10-Jul-2005 |
christos |
Re-factor syscall, and make it use syscall_{plain,fancy}.
|
|
Revision tags: netbsd-3-1-1-RELEASE netbsd-3-0-3-RELEASE netbsd-3-1-RELEASE netbsd-3-0-2-RELEASE netbsd-3-1-RC4 netbsd-3-1-RC3 netbsd-3-1-RC2 netbsd-3-1-RC1 netbsd-3-0-1-RELEASE netbsd-3-0-RELEASE netbsd-3-0-RC6 netbsd-3-0-RC5 netbsd-3-0-RC4 netbsd-3-0-RC3 netbsd-3-0-RC2 netbsd-3-0-RC1 yamt-km-base4 yamt-km-base3 netbsd-3-base yamt-km-base2 yamt-km-base kent-audio2-base kent-audio1-beforemerge kent-audio1-base
|
| #
1.37 |
|
03-Dec-2004 |
chs |
branches: 1.37.12; remove cache_flush_virt() and PADDRT, they're no longer used. allocate a stack frame for blast_dcache() when profiling so it shows up. in dcache_flush_page(), use a stride of 32 instead of 16 to match the cache line size. correct various comments.
|
|
Revision tags: netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base
|
| #
1.36 |
|
26-Mar-2004 |
petrov |
Use want_resched from cpu_info area.
|
| #
1.35 |
|
23-Mar-2004 |
martin |
Replace intrcnts by evcnts. XXX - needs slight tweaking for MULTIPROCESSOR.
|
| #
1.34 |
|
14-Mar-2004 |
chs |
checkpoint of MP work from dennis and myself. includes cross-processor interrupt framework, a sledgehammer TLB invalidation and misc MP fixes. doesn't work at all yet.
|
| #
1.33 |
|
06-Jan-2004 |
martin |
Implement restartable atomic sequences (RAS) for sparc64.
|
| #
1.32 |
|
06-Jan-2004 |
petrov |
Spinup secondary cpus. Based on codes sent to me by Dennis Chernoivanov and Chuck Silvers.
|
| #
1.31 |
|
26-Oct-2003 |
christos |
Initial siginfo support for sparc64 (untested). COMPAT_16 sigcontext signal delivery tested.
|
| #
1.30 |
|
03-Apr-2003 |
martin |
branches: 1.30.2; Provide PAGE_SIZE to assembler source.
|
| #
1.29 |
|
31-Jan-2003 |
martin |
Make the pmap count resident/wired mappings on the fly instead of walking the page tables whenever this information is needed.
Add an option PMAP_COUNT_DEBUG to assert the new counts and the page table walk agree.
The old solution had very bad performance impact, for example by the high CPU load when running top(1).
Thanks to Simon Burge for pointing at the cause of the problem and to Valeriy E. Ushakov for optimizing my simple minded assembler code.
|
| #
1.28 |
|
18-Jan-2003 |
thorpej |
Merge the nathanw_sa branch.
|
|
Revision tags: nathanw_sa_before_merge fvdl_fs64_base gmcgarry_ctxsw_base gmcgarry_ucred_base nathanw_sa_base kqueue-aftermerge kqueue-beforemerge kqueue-base
|
| #
1.27 |
|
26-Sep-2002 |
martin |
Remove include of <sys/map.h>, since it's gone now (and wasn't used here anyway).
|
|
Revision tags: netbsd-1-6-PATCH002-RELEASE netbsd-1-6-PATCH002 netbsd-1-6-PATCH002-RC4 netbsd-1-6-PATCH002-RC3 netbsd-1-6-PATCH002-RC2 netbsd-1-6-PATCH002-RC1 netbsd-1-6-PATCH001 netbsd-1-6-PATCH001-RELEASE netbsd-1-6-PATCH001-RC3 netbsd-1-6-PATCH001-RC2 netbsd-1-6-PATCH001-RC1 netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base gehenna-devsw-base
|
| #
1.26 |
|
14-May-2002 |
eeh |
Trapframes only have locals or ins if the kernel is compiled DEBUG.
|
|
Revision tags: eeh-devprop-base newlock-base ifpoll-base thorpej-mips-cache-base
|
| #
1.25 |
|
22-Oct-2001 |
mrg |
branches: 1.25.4; 1.25.8; clean up for fd changes.
|
|
Revision tags: thorpej-devvp-base3
|
| #
1.24 |
|
05-Oct-2001 |
eeh |
Remove bsd_openprom.h, which is only for compatibility with the sparc port.
|
|
Revision tags: thorpej-devvp-base2 post-chs-ubcperf pre-chs-ubcperf thorpej-devvp-base
|
| #
1.23 |
|
08-Aug-2001 |
eeh |
branches: 1.23.2; Add some useful mbuf fields.
|
|
Revision tags: thorpej_scsipi_beforemerge thorpej_scsipi_nbase thorpej_scsipi_base
|
| #
1.22 |
|
01-Aug-2000 |
eeh |
branches: 1.22.4; Add UVM_PAGEIDLE_ZERO.
|
| #
1.21 |
|
24-Jul-2000 |
pk |
Define UVM_PAGE_IDLE_ZERO.
|
|
Revision tags: mrg-merge-1-5-top
|
| #
1.20 |
|
14-Jul-2000 |
eeh |
Move some macro definitions out of genassym and into locore.s
|
| #
1.19 |
|
03-Jul-2000 |
eeh |
Prevent interrupts from being posted if they are active and deprecate polled interrupts. This seems to eliminate the spurious interrupts.
|
| #
1.18 |
|
02-Jul-2000 |
eeh |
Clean up interrupt handling some more.
|
| #
1.17 |
|
30-Jun-2000 |
eeh |
Fix interrupt delivery on UltraSPARC IIi machines.
|
| #
1.16 |
|
24-Jun-2000 |
eeh |
With these changes the kernel seems almost stable again.
|
|
Revision tags: netbsd-1-5-base
|
| #
1.15 |
|
19-Jun-2000 |
eeh |
branches: 1.15.2; Have separate data and text segments, make text read-only.
|
|
Revision tags: minoura-xpg4dl-base
|
| #
1.14 |
|
26-May-2000 |
thorpej |
branches: 1.14.2; Introduce a new process state distinct from SRUN called SONPROC which indicates that the process is actually running on a processor. Test against SONPROC as appropriate rather than combinations of SRUN and curproc. Update all context switch code to properly set SONPROC when the process becomes the current process on the CPU.
|
|
Revision tags: chs-ubc2-newbase
|
| #
1.13 |
|
30-Dec-1999 |
eeh |
Add proc->md->fpstate and GSR to fpstate.
|
|
Revision tags: wrstuden-devbsize-19991221 wrstuden-devbsize-base fvdl-softdep-base
|
| #
1.12 |
|
06-Nov-1999 |
eeh |
Explicitly use 64-bit types.
|
|
Revision tags: netbsd-1-4-PATCH003 netbsd-1-4-PATCH002 kame_141_19991130 comdex-fall-1999-base netbsd-1-4-PATCH001 kame_14_19990705 kame_14_19990628 chs-ubc2-base netbsd-1-4-RELEASE netbsd-1-4-base
|
| #
1.11 |
|
26-Mar-1999 |
eeh |
branches: 1.11.8; 1.11.10; 1.11.14; COMPAT_SPARC32 -> COMPAT_NETBSD32
|
| #
1.10 |
|
22-Mar-1999 |
eeh |
Add FS_SIZE.
|
| #
1.9 |
|
28-Feb-1999 |
eeh |
Use block load/store in pmap_zero_page()/pmap_copy_page().
|
|
Revision tags: kenh-if-detach-base chs-ubc-base
|
| #
1.8 |
|
08-Oct-1998 |
eeh |
Fix more syscall32 and signal breakage.
|
| #
1.7 |
|
17-Sep-1998 |
thorpej |
SYS_sigreturn -> SYS___sigreturn14.
|
| #
1.6 |
|
13-Sep-1998 |
eeh |
Fixup signal changes (hopefully). However SUN_COMPAT is likely broken by this and I don't know how to fix it.
We can now exec a 64-bit init through a really ugly hack (don't ask.)
|
| #
1.5 |
|
05-Sep-1998 |
eeh |
It slices. It dices. It does everything except exec a sparc32_compat init.
|
| #
1.4 |
|
05-Sep-1998 |
christos |
Assign copyright to TNF.
|
|
Revision tags: PMAP32
|
| #
1.3 |
|
13-Aug-1998 |
eeh |
Merge paddr_t changes into the main branch.
|
|
Revision tags: eeh-paddr_t-base
|
| #
1.2 |
|
17-Jul-1998 |
eeh |
branches: 1.2.2; Make this work for a change.
|
| #
1.1 |
|
07-Jul-1998 |
eeh |
General update:
Added genassym.cf Removed lderr which should never have gotten in Removed lots of dead code from locore.s Added some softint stuff to intr.c Added support for halt -p esp and le both use bus_dmamap_*() functions now instead of kdvma_mapin() groundwork for PCI (but we still have no drivers for any sun4u PCI devices)
|