summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Better implement SMP support:marcel2001-12-303-101/+180
| | | | | | | | | | | | | | o Do not use a special struct to keep track of CPUs we found; instead, use struct pcpu. This handles all the magic WRT thread creation (yay!). o Respect MAXCPU. o Use the vhpt_base and vhpt_size values to initialize the AP. o Style fixes. Note that this commit temporarily breaks SMP configurations. Previously APs didn't do anything, but they now enter the scheduler. They hold sched_lock for more than 5 secs though and cause a panic. That's what I call progress :-)
* o Reimplement map_pal_code to work with a global variablemarcel2001-12-301-51/+37
| | | | | | | | | | | | ia64_pal_base instead of scanning the EFI tables. This way AP startup code can more easily use the function. o Initialize ia64_pal_base in ia64_init(). When the PAL code doesn't need explicit mapping or no PAL code has been found, ia64_pal_base will be 0. o Remove some unused global variables. o Also in ia64_init(), allocate only 1 page for struct pcpu and remove some Alpha leftovers. o Initialize pc_pcb in cpu_pcpu_init().
* Make vhpt_base and vhpt_size globals so that they can be used bymarcel2001-12-301-1/+2
| | | | the AP startup code.
* Cleanup the IPIs.marcel2001-12-301-8/+7
|
* Remove unused MD fields (pc_pending_ipis, pc_next_asn andmarcel2001-12-301-3/+3
| | | | | pc_current_asngen) and add SMP specific fields (pc_pcb, pc_lid and pc_awake).
* o Remove temporary implementation of cpu_throw in vm_machdep.cmarcel2001-12-302-10/+24
| | | | | | and instead make it an alternate entry-point of cpu_switch() in swtch.s o Add SMP support to cpu_switch().
* Protect mtx_init() invocations with mtx_intialized() checks to avoid agj2001-12-3016-30/+60
| | | | | | | reported panic. Submitted by: Alexander Leidinger <Alexander@Leidinger.net> (partly) MFC after: 4 weeks
* Draft implementation of IPI handling.marcel2001-12-301-1/+19
|
* Add PC_IDLETHREAD. We need it in cpu_switch.marcel2001-12-301-0/+1
|
* Add missing predicate in interruption_Data_TLB. Without thismarcel2001-12-302-46/+46
| | | | | | predicate we never used the VHPT entry we found. While here, normalize the compares.
* Grammar fix for commentgshapiro2001-12-301-2/+2
|
* Be sure to point out that, by "mount point", one in /etc/fstabchris2001-12-301-1/+2
| | | | | | | | is meant. Submitted by: John Hanley <jh_@yahoo.com> Obtained from: TrustedBSD Project Sponsored by: DARPA, NAI Labs
* Document how to enable ACLs using extattrctl.chris2001-12-301-0/+30
| | | | | Obtained from: TrustedBSD Project Sponsored by: DARPA, NAI Labs
* Back out errno preservingache2001-12-307-47/+12
|
* Increase the buffer size to hold a bootp/DHCP reply from 256 bytes toambrisko2001-12-301-1/+1
| | | | | | | | | | | 1222 bytes (derived as the maximum that isc-dhcpd uses). This solves the problem if a bootp/DHCP reply is over 256 bytes in which the end of the bootp/DHCP reply will not be found and then the reply will be ignored. This happens when swap and root paths are longish or many parameters are set. Reviewed by: imp Approved by: imp
* Sync with NetBSD (1.16 - 1.17)joe2001-12-291-32/+13
| | | | | "Bring the coding style into the 80s, i.e., get rid of __P and use ANSI prototypes and declarations."
* Update with missing filenames, merged from NetBSD.joe2001-12-291-1/+10
|
* Now that automatic mounting of network filesystems is delayed untilsheldonh2001-12-291-4/+14
| | | | network startup, remove the warning about automatic mounts.
* Don't require operators to override the list of network filesystemsheldonh2001-12-293-9/+25
| | | | | | | | | | | | | | | | types (networkfs_types) with a version that includes the original list. This increases the scope for user error and also means that systems with networkfs_types set in /etc/rc.conf will not benefit from changes to the list in /etc/defaults/rc.conf on upgrade. Instead, store the default list in /etc/rc itself and allow the operator to append to that list by specifying her own list in networkfs_types. Rename networkfs_types to extra_netfs_types accordingly, as the new name better describes the purpose of the variable. Default the value to 'NO'.
* Fix an error which could cause a panic if both an ifpi and ifpi2 controllergj2001-12-292-5/+5
| | | | | | | were installed. For the ifpi2, change the string in the driver_t from "ifpi2" to "ifpi2-" so that one sees "ifpi2-0" instead of "ifpi20" at boot time.
* Fixed bitrot in DPADD in rev.1.8.bde2001-12-291-1/+1
|
* Fixed missing DPADD in previous commit. Fixed most style bugs related tobde2001-12-291-2/+3
| | | | DPADD and LDADD.
* Fixed style bug (unsorting of SRCS) in rev.1.15.bde2001-12-291-1/+1
|
* Fixed style bugs in revs. 1.6, 1.10 and 1.12.bde2001-12-291-3/+2
|
* Fixed missing DPADD and disordered LDADD in rev.1.17bde2001-12-291-1/+2
| | | | | | Fixed setting of WARNS in rev.1.16. Options should normally be set using using "?=", not using "=", so that the setting is easy to override on the command line, and setting WARNS to 0 should not be an exception.
* Link with libm to take advantage of the -h flag to ls.joe2001-12-291-0/+1
| | | | Submitted by: Mike Makonnen <mike_makonnen@yahoo.com>
* LSCOLOURS should be spelt LSCOLORS.joe2001-12-291-1/+1
| | | | Submitted by: Jordan DeLong <fracture@allusion.net
* Make these compile.jake2001-12-293-24/+18
|
* Remove local change that crept in.jake2001-12-291-1/+0
|
* Don't reveal a router in the IPSTEALTH mode through IP options.yar2001-12-291-4/+41
| | | | | | | | | | | The following steps are involved: a) the IP options related to routing (LSRR and SSRR) are processed as though the router were a host, b) the other IP options are processed as usual only if the packet is destined for the router; otherwise they are ignored. PR: kern/23123 Discussed in: freebsd-hackers
* Add a header for user trap types required by the sparc abi.jake2001-12-291-0/+84
| | | | | For simplicity the corresponding kernel types use the same numerical values.
* Adapt for used by upcoming fp emulation code.jake2001-12-291-62/+41
| | | | | | Comment. Submitted by: tmm
* Print the correct v9 opcodes.jake2001-12-291-18/+18
| | | | Submitted by: tmm
* Don't concatenate __func__.jake2001-12-291-1/+1
|
* sparc64 needs the same alingment fixes that alpha and ia64 do.jake2001-12-291-1/+1
| | | | Submitted by: tmm
* sparc64 needs the same alignment fixes that ia64 and alpha need.jake2001-12-291-1/+1
| | | | Submitted by: tmm
* Change traces in hardclock and statclock to use the KTR_CLK tracejake2001-12-291-2/+2
| | | | facility, rather than KTR_INTR.
* Update to new constants.jake2001-12-291-34/+34
|
* Make cont in ddb work.jake2001-12-291-0/+1
|
* Prototype dcache_inval_phys.jake2001-12-291-0/+1
| | | | Submitted by: tmm
* Forced commit to note that the wierd soft bit is actually a wired bit.jake2001-12-290-0/+0
|
* Add comments as to why VM_MAXUSER_ADDRESS is magic (abitrary).jake2001-12-291-6/+21
| | | | | | Define the KVA_RANGE in terms of ttes, not sttes. Remove UPT_MIN_ADDRESS. We no longer use a hard coded address for the user tsb.
* Make tte bit constants explicitly unsigned and long.jake2001-12-291-46/+33
| | | | | Add a wierd soft bit. Remove struct stte.
* Add definitions for dcache color bits, which may move to cache.h.jake2001-12-291-6/+36
| | | | | | | Add fields to md_page for tracking virtual page color, and pv entry lists. Fix pmap_track_modified to work for non-kernel pmaps. This is due to kernel virtual addresses potentially overlapping with userland addresses.
* Implement pv entries as separate structures from the ttes, like otherjake2001-12-291-162/+29
| | | | architectures do.
* Remove support for multi level tsbs, making this code much simpler andjake2001-12-292-356/+103
| | | | | | | | much less magic, fragile, broken. Use ttes rather than sttes. We still use the replacement scheme used by the original code, which is pretty cool. Many crucial bug fixes from: tmm
* Implement pv entries as separate structures from the ttes, as otherjake2001-12-291-172/+177
| | | | | | architectures do. Many crucial bug fixes from: tmm
* Great pmap rewrite to use a much simpler one level tsb of ttes, insteadjake2001-12-291-430/+867
| | | | | | | | | | | | | | of sttes. Also removes many differences between this and the other pmaps. Reserve the kva space used by the openfirmware translations. Use physical addresses directly in pmap_zero_page and pmap_copy_page, now that we have the cache line shooting support. Add code to track the virtual cachability of mapped pages. The dmmu requires that multiple mappings of the same phsyical address have the save virtual address bits up to a colour boundary. Violating this requires all mappings to be mapped uncacheable. We do not yet handle the case of a badly aliased mapping becoming cachable again. Many crucial bug fixes from: tmm
* Use fprs to track floating register usage. Clear it once we've savedjake2001-12-292-344/+270
| | | | | | | | the registers so we don't uselessly save them over and over again for each context switch until another floating point instruction is executed. Use a non-specific tlb slot for the tsb, which needs to have a locked entry. Remove overly verbose traces.
* Add .register directives for gcc3.jake2001-12-292-1372/+1634
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add macros to atomically increment an integer variable in the data section and to atomically set a bit in a tte. Note that the latter does not return the new value. Rewrite RESUME_SPILLFILL_MAGIC to use more sensical calculations, and to preserve all alternate globals religiously. Must now be called on alternate globals. Defer switching to the kernel stack until inside the syscall, trap, interrupt wrappers. Splitting the windows is all that's really urgent. Adapt to new trap types. Add %xcc where appropriate in order to not use v8 opcodes inadvertantly (which work fine). Modify the low level tlb fault handlers to operate on a tsb made up of ttes, not sttes. This effectively makes the tsb twice as large. After atomically updating tte bits in memory, also set the bit in the register that holds the data which will be loaded into the tlb. The macro returns the old value. Use the preloaded mmu global which holds the address of the current user tsb. Add back a low level protection fault handler instead of just punting into the vm system. This effectively saves a soft fault per COW fault. Add a trace to intr_enqueue. Pass arguments to the trap, interrupt, syscall wrappers in the out registers instead of some on the stack, some in registers. Use the preloaded alternate global pcb register.
OpenPOWER on IntegriCloud