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
Olivier Houchard
9c2ac80375
Use a default MD_ROOT_SIZE of 65535.
2004-10-11 14:42:06 +00:00
Olivier Houchard
ed4dc69883
Use MD_ROOT_SIZE, instead of our own macro.
2004-10-11 14:41:38 +00:00
Olivier Houchard
74e9b5ed3b
Add optimized version of the bswap macroes for constants if __OPTIMIZED__ is
...
defined.
2004-10-01 16:55:59 +00:00
Olivier Houchard
d60ea0a816
There's no need to turn on MALLOC_PROFILE by default.
2004-10-01 16:51:37 +00:00
Olivier Houchard
77ee40aac5
Calling fuword from fuword32 with bl and without returning after is really a bad
...
idea.
Any way I get a customized CVS template with "Pointy hat to: cognet"
pre-filled ?
2004-09-28 14:39:26 +00:00
Olivier Houchard
022fb84224
Always invalidate the whole data cache in pmap_enter() for now.
...
It should not be needed.
2004-09-28 14:38:14 +00:00
Olivier Houchard
e462e1ba03
Remove dead code.
2004-09-28 14:37:39 +00:00
Olivier Houchard
4b7d15c6dc
Add the config file for the IQ31244 board.
2004-09-23 22:55:00 +00:00
Olivier Houchard
f67baa4d6b
Use the new KERNVIRTADDR and PHYSADDR options.
...
Add KDB.
2004-09-23 22:53:50 +00:00
Olivier Houchard
6052fa47a9
Import partial support for the IQ31244 eval board (i80321 CPU). IQ80321 might
...
work out of the box too, but I have no hardware to test.
It works well enough to go multiuser. Network works, SATA does not, as I have
no drive to test.
Thanks to Intel for sending such a board.
Obtained from: NetBSD
2004-09-23 22:45:36 +00:00
Olivier Houchard
3ce77c124e
Add Xscale common headers.
2004-09-23 22:36:13 +00:00
Olivier Houchard
906ce37658
Big cleanup: get ride of the whole spl level logic, as FreeBSD doesn't use
...
it anymore.
2004-09-23 22:33:38 +00:00
Olivier Houchard
8413603da8
Now that we have pmap_growkernel(), use more KVA.
2004-09-23 22:32:33 +00:00
Olivier Houchard
1f5f31b4ec
Remove the empty definition of struct osigcontext, as it will never be used.
2004-09-23 22:31:49 +00:00
Olivier Houchard
7ea7271711
Remove the pcb32_cstate field of struct pcb.
2004-09-23 22:31:08 +00:00
Olivier Houchard
f04d49ad11
Declare sigcode and szsigcode.
2004-09-23 22:30:05 +00:00
Olivier Houchard
9f0f6bf453
Define VM_PROT_READ_IS_EXEC.
2004-09-23 22:29:43 +00:00
Olivier Houchard
ffa589bf15
Implement _mcount().
...
Obtained from: NetBSD
2004-09-23 22:29:18 +00:00
Olivier Houchard
c038ee8196
Define STACKALIGNBYTES and STACKALIGN.
2004-09-23 22:27:42 +00:00
Olivier Houchard
a40d2bb653
We are using _mcount, not __mcount.
...
Remove the !__ELF__ case.
2004-09-23 22:26:29 +00:00
Olivier Houchard
8476fd9ff7
Use sf_bufs for uiomove_fromphys().
2004-09-23 22:25:20 +00:00
Olivier Houchard
04aebdab36
On Xscale, use the minicache for the kernel stack.
2004-09-23 22:24:12 +00:00
Olivier Houchard
9979f39280
Make sure to call cred_update_thread() if needed.
...
Add partial support for KTRACE.
2004-09-23 22:22:33 +00:00
Olivier Houchard
8be9ab9730
Implement cpu_throw().
...
Obtained from: NetBSD
2004-09-23 22:20:59 +00:00
Olivier Houchard
01997784aa
Remove unused macroes.
...
Add user, btrap, etrap, bintr and eintrt in the GPROF case.
2004-09-23 22:18:56 +00:00
Olivier Houchard
0627741cbf
Implement sigreturn().
2004-09-23 22:12:28 +00:00
Olivier Houchard
f0c85e996a
Add the hw.machine sysctl.
2004-09-23 22:11:43 +00:00
Olivier Houchard
a7e3e43349
Remove definitions related to the pmap cache state, and add TDF_NEEDRESCHED.
2004-09-23 22:11:06 +00:00