Olivier Houchard
b1ff74ebb3
Cleanup.
2004-11-21 19:41:27 +00:00
Olivier Houchard
7fc1bf0371
Set the frame pointer to 0 in fork_trampoline().
2004-11-21 19:33:47 +00:00
Olivier Houchard
9ebe15a1d7
Implement breakpoints and single stepping on arm.
...
Obtained from: NetBSD
2004-11-21 18:11:39 +00:00
Olivier Houchard
7b90b2998e
Remove useless code.
2004-11-20 16:52:30 +00:00
Olivier Houchard
3488a2f7d9
Implement enough to be able to enter and leave DDB.
2004-11-20 16:52:10 +00:00
Olivier Houchard
579d53f4cf
Get the kernel stack right now that the u-area is gone.
2004-11-20 16:51:32 +00:00
David Schultz
d305a6da98
Remove UAREA_PAGES and USPACE definitions. The definitions of
...
USPACE_SVC_STACK_TOP, USPACE_SVC_STACK_BOTTOM, USPACE_UNDEF_STACK_TOP,
and USPACE_UNDEF_STACK_BOTTOM look wrong to me, so I'm leaving them
alone.
Reviewed by: arch@
2004-11-20 02:31:37 +00:00
David Schultz
837f4b104e
Remove some references to U area here while trying not to break
...
anything. Someone with ARM hardware could do a lot more to untangle
this code.
Reviewed by: arch@
2004-11-20 02:31:23 +00:00
David Schultz
6484fde022
Remove references to U area and garbage collect includes.
...
Reviewed by: arch@
2004-11-20 02:30:59 +00:00
David Schultz
11111b709f
U areas are going away, so don't allocate one for process 0.
...
Reviewed by: arch@
2004-11-20 02:29:25 +00:00
Olivier Houchard
a8a2a16a08
Increase cnt.v_syscall and cnt.v_trap when needed.
2004-11-20 00:55:57 +00:00
Olivier Houchard
0e425b6c47
Move KERNPHYSADDR and KERNVIRTADDR from std.i80321 to std.iq31244.
...
Use the correct KERNPHYSADDR.
2004-11-18 00:05:09 +00:00
Olivier Houchard
826a7f03c5
Simplify a bit bus_dmamap_load_buffer by removing the "first" parameter, use
...
nseg == -1 instead.
Obtained from: NetBSD
2004-11-16 00:57:44 +00:00
Olivier Houchard
1101dd6d06
MFi386:
...
- inlina bus_dmamap_load_buffer
- Directly pass the pmap to bus_dmamap_load_buffer, instead of the struct thread
2004-11-15 23:59:28 +00:00
Olivier Houchard
5918fe42a0
Remove debugging printf.
2004-11-13 15:12:26 +00:00
Olivier Houchard
24c6f4b32a
Don't forget to clear the PG_WRITEABLE flag when appropriate.
2004-11-13 14:54:31 +00:00
Olivier Houchard
4c44e1ec63
Use uma_prealloc() on the l2table_zone to prevent a LOR at startup.
2004-11-13 14:41:27 +00:00
Olivier Houchard
8e10380a9f
Implement interrupt counting, so that vmstat -i work.
2004-11-12 21:49:05 +00:00
Olivier Houchard
ef7d17237a
Don't forget to include opt_vm.h.
2004-11-10 22:11:08 +00:00
Olivier Houchard
9aeab9eabe
Convert the IQ31244 code to use ARM32_NEW_VM_LAYOUT.
2004-11-10 22:09:39 +00:00
Olivier Houchard
b599237edb
Invalidate the data cache in pmap_qremove() instead of in pmap_kenter(),
...
and in pmap_enter_quick() instead of pmap_enter().
2004-11-10 21:46:04 +00:00
Tom Rhodes
adcb844412
Remove __P here too.
...
Ok'ed by: cognet
2004-11-10 01:33:42 +00:00
Olivier Houchard
2fd21813b0
Use the RET macro.
2004-11-09 16:47:47 +00:00
Olivier Houchard
5f2c6402db
Import a RET macro, that will use bx if the arch supports it.
...
Obtained from: NetBSD
2004-11-09 16:45:55 +00:00
Alan Cox
d3cb0d99e0
Introduce two new options, "CPU private" and "no wait", to sf_buf_alloc().
...
Change the spelling of the "catch" option to be consistent with the new
options. Implement the "no wait" option. An implementation of the "CPU
private" for i386 will be committed at a later date.
2004-11-08 00:43:46 +00:00
Olivier Houchard
b720bb34f3
Add device mem in config files.
2004-11-07 23:02:15 +00:00
Olivier Houchard
e099742e25
Import md bits for mem(4) on arm.
...
While I'm there, cleanup a bit pmap.h.
2004-11-07 23:01:36 +00:00
Olivier Houchard
1b135a7e11
Remove useless code.
2004-11-07 16:51:33 +00:00
Olivier Houchard
432f5e3ab9
Disable interrupts for atomic_cmpset_32, this one is just not atomic.
...
Don't export it to userland.
2004-11-05 23:48:12 +00:00
Olivier Houchard
bd366a3cd4
Copy the syscall args in a tmp variable instead of directly using the
...
trapframe, as it can be modified in the syscall.
Call thread_user_enter() when appropriate.
2004-11-05 19:57:10 +00:00
Olivier Houchard
8ecf6f65d9
Save a few cycles in context switch.
...
Update comments to reflect reality.
2004-11-05 19:54:13 +00:00
Olivier Houchard
90f794aaaf
If we're still running at the physical address, jump to the virtual address
...
instead before calling initarm().
This removes the need to map virtual == physical in initarm().
2004-11-05 19:52:55 +00:00
Olivier Houchard
321c47170e
Be more verbose about cache capacities.
2004-11-05 19:51:23 +00:00
Olivier Houchard
d20a408be7
Implement casuptr.
2004-11-05 19:50:48 +00:00
Olivier Houchard
1214c18d4e
Call pmap_pte_init_arm9 instead of pmap_pte_init_generic if
...
ARM9_CACHE_WRITE_THROUGH is defined.
2004-11-05 19:48:40 +00:00
Olivier Houchard
bd245b9bd4
In cpu_critical_fork_exit(), make sure to set td_md.md_critnest so that
...
interrupts will be enabled.
Spotted out by: jhb
2004-11-05 18:29:45 +00:00
Olivier Houchard
6e91e74e11
Protect the function declarations with #ifdef _KERNEL.
2004-11-04 19:20:54 +00:00
Olivier Houchard
56c6c84155
Directly use __pcpu for PCPU_* instead of pcpup.
2004-11-04 19:19:44 +00:00
Olivier Houchard
27d97a6c49
Decrease KSTACK_PAGES and UAREA_PAGES.
2004-11-04 19:19:21 +00:00
Olivier Houchard
24e01b0c59
Use interrupts_disable() and interrupts_restore() as intr_disable() and
...
intr_restore() instead of re-implement it.
2004-11-04 19:18:50 +00:00
Olivier Houchard
dba13dd1d3
Don't barf if no CPU type is defined while compiling kernel modules.
2004-11-04 19:16:31 +00:00
Olivier Houchard
3ce6572f9f
Implement get_cyclecount().
2004-11-04 19:15:43 +00:00
Olivier Houchard
a61369085e
Try to implement atomic operations using swp, instead of disabling interrupts.
2004-11-04 19:14:50 +00:00
Olivier Houchard
eeaa69102a
Use casts to enforce the return type of bswap16() and bswap32().
2004-11-04 19:07:28 +00:00
Olivier Houchard
4cc4c8f7fe
Implement cpu_thread_siginfo() and set_mcontext().
...
Nuke getframe(), and choose which stack to use directly in sendsig().
2004-11-04 19:04:30 +00:00
Olivier Houchard
b0db6a81d2
Implement cpu_set_upcall and cpu_set_upcall_kse.
...
Calculate td_frame and td_pcb the right way in cpu_thread_setup.
2004-11-04 18:59:02 +00:00
Olivier Houchard
8d0e9a52c6
Get kernel modules to work.
2004-11-04 18:48:52 +00:00
Andre Oppermann
32672ba88d
Reduce annoying SCSI probing delay from 15 to 5 seconds in all GENRIC kernels.
...
Discussed on: -current
2004-11-02 20:57:20 +00:00
John Baldwin
d39d4a6e64
- Change the ddb paging "support" to use a variable (db_lines_per_page) to
...
control the number of lines per page rather than a constant. The variable
can be examined and changed in ddb as '$lines'. Setting the variable to
0 will effectively turn off paging.
- Change db_putchar() to force out pending whitespace before outputting
newlines and carriage returns so that one can rub out content on the
current line via '\r \r' type strings.
- Change the simple pager to rub out the --More-- prompt explicitly when
the routine exits.
- Add some aliases to the simple pager to make it more compatible with
more(1): 'e' and 'j' do a single line. 'd' does half a page, and
'f' does a full page.
MFC after: 1 month
Inspired by: kris
2004-11-01 22:15:15 +00:00
Olivier Houchard
99cf590376
We want to ignore BUS_DMASYNC_POSTWRITE, not BUS_DMASYNC_POSTREAD.
...
Spotted out by: mux
Pointy hat to: cognet
2004-10-21 11:59:33 +00:00