Commit Graph

157349 Commits

Author SHA1 Message Date
xtraeme
43744341b1 Erm, remove local changes added in previous. 2007-03-09 21:16:54 +00:00
xtraeme
1200c710ee Enable SMBFS, as we do on i386. 2007-03-09 21:12:13 +00:00
jnemeth
5b888d73db Correct gap2 length from ISA driver.
XXX  The machine no longer becomes unusable when formatting, but it still
doesn't format properly.
2007-03-09 21:02:30 +00:00
thorpej
0bc4ff9912 Use _lock_cas() instead of the interrupt-blocking atomic_cas(). 2007-03-09 20:08:26 +00:00
thorpej
4fd718b62e [Missed this file in the initial commit.]
Rewrite the ARM mutex implementation to be of the simple-mutex variety.
Because pre-v6 ARM lacks support for an atomic compare-and-swap, we
implement _lock_cas() as a restartable atomic squence that is checked
in the IRQ handler right before AST processing.  (This is safe because,
for all practical purposes, there are no SMP pre-v6 ARM systems.)

This can serve as a model for other non-MP platforms that lack the
necessary atomic operations for mutexes (SuperH, for example).

Upshots of this change:
- kmutex_t is now down to 8 bytes on ARM; about as good as we can get.
- ARM2 systems don't have to trap and emulate SWP or SWPB for mutexes.

The acorn26 port is not updated by this commit to do the LOCK_CAS_CHECK.
That is left as an exercise for the port maintainer.

Reviewed and tested by Matt Thomas.
2007-03-09 19:29:28 +00:00
thorpej
165d4e6d83 Rewrite the ARM mutex implementation to be of the simple-mutex variety.
Because pre-v6 ARM lacks support for an atomic compare-and-swap, we
implement _lock_cas() as a restartable atomic squence that is checked
in the IRQ handler right before AST processing.  (This is safe because,
for all practical purposes, there are no SMP pre-v6 ARM systems.)

This can serve as a model for other non-MP platforms that lack the
necessary atomic operations for mutexes (SuperH, for example).

Upshots of this change:
- kmutex_t is now down to 8 bytes on ARM; about as good as we can get.
- ARM2 systems don't have to trap and emulate SWP or SWPB for mutexes.

The acorn26 port is not updated by this commit to do the LOCK_CAS_CHECK.
That is left as an exercise for the port maintainer.

Reviewed and tested by Matt Thomas.
2007-03-09 19:21:57 +00:00
dsl
b1c0dd5ffc Replace hexprint with a version that is much faster for values > 15.
Since I managed to commit my alternate scheme for zeropad, delete
the commented out lines and replace the only other use.
I've not deleted the function itself though.
2007-03-09 19:16:47 +00:00
drochner
814e248430 don't use DVUNIT_ANY as unit number to attach pseudo devices,
use FSTATE_STAR and cf_unit=0 like normal devices.
Thanks to Arnaud Degroote for the bug report and testing.
2007-03-09 18:42:22 +00:00
matt
004b1a75b4 Make sure to include IPL_SOFT* and IPL_STATCLOCK when setting up IRQ masks. 2007-03-09 18:20:51 +00:00
tsutsui
2a92ad0d7f Don't disable EA_DIRECT in fpu_load_ea(), which seems disabled
accidentally in rev 1.11 about six years ago, otherwise
fmovel %dN,%fpN instructions cause unexpected memory access.
2007-03-09 16:33:27 +00:00
tsutsui
369fa66d6e Make these compile with options DEBUG_FPE. 2007-03-09 16:23:01 +00:00
oster
fb3988281d In the case of multiple RAID sets that are marked as root, attempt to
use the RAID set that contains the component used for booting.  Thanks
to manu@ for the main part of this.
2007-03-09 15:57:34 +00:00
drochner
f6c8681509 after the recent config_attach_pseudo() changes, unit numbers have the same
sementics as for real devices, so DVUNIT_ANY=-1 is illegal
2007-03-09 15:41:02 +00:00
ad
3cac6dbb47 If I686_LIBC is defined, make syscalls using the 'sysenter' instruction. 2007-03-09 14:30:45 +00:00
mjf
ac72285ff1 lfs filesystems work with fstab(5), sync man page. 2007-03-09 14:24:05 +00:00
ad
cf3f1d0fdb Make cpu_vendor a global. 2007-03-09 14:15:34 +00:00
ad
c147748d84 - Make the proclist_lock a mutex. The write:read ratio is unfavourable,
and mutexes are cheaper use than RW locks.
- LOCK_ASSERT -> KASSERT in some places.
- Hold proclist_lock/kernel_lock longer in a couple of places.
2007-03-09 14:11:22 +00:00
ad
50a8df5d23 mutex_onproc: remove unnecessary memory barriers. 2007-03-09 14:08:26 +00:00
dsl
5c2f2286e3 Add a globally applied substitution pattern for the console major number.
Use it when creating a temporary node for the console.
MAKEDEV -M should now output what it is doing.
2007-03-09 13:57:54 +00:00
kent
e893f67fa1 return information about playing buffer, not recording bufer,
for AUDIO_WSEEK.

PR#35171
2007-03-09 13:20:12 +00:00
he
4012c93047 Use char* with mtod() when doing pointer arithmetic on the result. 2007-03-09 12:03:25 +00:00
skrll
9bd69a33e6 Typo in comment. 2007-03-09 11:30:28 +00:00
njoly
97eabb6b0d Add hpet device. 2007-03-09 11:00:05 +00:00
he
60b37b9c1c Cast to char* before doing pointer arithmetic. 2007-03-09 08:59:00 +00:00
thorpej
0eddebcf62 Elaborate a bit more in the first paragraph. 2007-03-09 07:13:06 +00:00
thorpej
7a35085f7e Update the theory statement for the ARM mutex implementation.
There is still work to be done here.
2007-03-09 07:11:10 +00:00
thorpej
d1d10b58ab Make ipl_t and ipl_cookie_t 8-bit values. kmutex is now down to 12 bytes
(from 20) on ARM.

Approved by Matt Thomas.
2007-03-09 06:45:19 +00:00
yamt
02530653ff nfs_check_wccdata: print timestamps. 2007-03-09 05:55:33 +00:00
yamt
fd1a6294d1 fileassoc_table_lookup: call fileassoc_init if it has not been done yet.
fixes crashes sys_unlink when there are no users of fileassoc.
2007-03-09 05:51:50 +00:00
thorpej
d995c0d9c9 Make __cpu_simple_lock_t an unsigned char if _KERNEL, and operate on it
using SWPB.

Approved by Matt Thomas.
2007-03-09 05:40:08 +00:00
yamt
073d78105b use b_bcount where appropriate rather than keeping b_resid sync with it.
no functional changes.
2007-03-09 05:28:37 +00:00
yamt
27515959ec fix typos in comments. 2007-03-09 05:00:26 +00:00
thorpej
b0c035f9e5 Correct a comment. 2007-03-09 04:50:36 +00:00
matt
2018fad37d Honour ${CPUFLAGS} 2007-03-09 04:40:38 +00:00
liamjfoy
142de6f17b Allow to build without INET6
Submitted by: Jukka Salmi
2007-03-09 00:40:39 +00:00
he
bf9a718b25 Cast to char* before doing pointer arithmetic. 2007-03-08 23:56:45 +00:00
he
856d1c9da0 Cast to char* before doing pointer arithmetic. 2007-03-08 23:25:44 +00:00
jnemeth
f587e8e88c add support for devctl properties 2007-03-08 23:23:45 +00:00
riz
35b9fbfb52 Match the FTDI "Serial 2232C" chip; this allows a 16-port usb->serial
device from SerialGear I have to work.
2007-03-08 23:21:08 +00:00
he
89de8e1eca Cast to char* before doing pointer arithmetic. 2007-03-08 23:17:56 +00:00
riz
9fc61b3d2a Regen for addition of FTDI "Serial 2232C". 2007-03-08 23:14:43 +00:00
riz
42104c1e3d Add FTDI "Serial 2232C" product ID 2007-03-08 23:14:05 +00:00
jmmv
fd8bc089d9 Add Multiboot support. Doesn't hurt regular boots and is enabled in the
GENERIC kernels already.
2007-03-08 22:38:02 +00:00
he
5f0dedf664 Cast to char* and not void* when doing pointer arithmetic. 2007-03-08 22:35:53 +00:00
he
3dc744a85f Cast to char* before doing pointer arithmetic. 2007-03-08 22:28:41 +00:00
he
993fa67c04 Change local variables kernend and v to char*, since they are used
for pointer arithmetic.
2007-03-08 22:17:47 +00:00
he
7dfe4022f7 Cast to char* before doing pointer arithmetic.
Also put * close to variable name.
2007-03-08 22:08:50 +00:00
he
9ebf1fa4d2 Cast to char* to be able to do pointer arithmetic. 2007-03-08 21:50:25 +00:00
he
1aecca529f Cast to char*, not void* before doing pointer arithmetic. 2007-03-08 21:49:15 +00:00
ad
7caf5b2025 trace_enter, trace_exit: acquire kernel_lock for systrace. 2007-03-08 21:25:27 +00:00