169919 Commits

Author SHA1 Message Date
macallan
e24aaf48e7 report chip revision 2008-05-08 01:36:03 +00:00
macallan
343b964931 magic number reduction
from Izumi Tsutsui
2008-05-08 01:27:43 +00:00
dyoung
8c460289fe Factor out common code, creating direct_ioctl() and indirect_ioctl()
for the two most prevalent styles of ioctl(2) calls in ifconfig(8).
2008-05-07 23:55:06 +00:00
dyoung
db80154181 Remove CPPFLAGS that are redundant when WARNS=4. 2008-05-07 22:07:24 +00:00
ad
05b982d1c7 mfs doesn't need fsync. 2008-05-07 21:30:42 +00:00
gdt
6231d15c35 Remove gzipped kernel file just before running gzip >, avoiding
permission errors in unprivileged builds using a pre-existing
releasedir.
2008-05-07 21:30:26 +00:00
dyoung
71b48a4b36 Move IPv6 syntax to af_inet6.c from ifconfig.c. Move IFKW() macro
from ifconfig.c to parse.h for reuse.
2008-05-07 21:29:27 +00:00
dyoung
8a08b505d5 Move ISO, AppleTalk, carp(4) syntax from ifconfig.c to af_iso.c,
af_atalk.c, carp.c, respectively.
2008-05-07 20:45:01 +00:00
dyoung
e3cf2a1157 Sprinkle 'static const' on keyword objects. 2008-05-07 20:12:31 +00:00
dyoung
48fa574a64 Move vlan(4) syntax from ifconfig.c into vlan.c. 2008-05-07 20:11:15 +00:00
dyoung
8bc06077c3 Move tunnel syntax into tunnel.c. Move net80211 'list' command
syntax into ieee80211.c.
2008-05-07 20:03:27 +00:00
dyoung
ad19851f11 Move net80211 and agr(4) syntax out of ifconfig.c and into ieee80211.c
and agr.c, respectively.
2008-05-07 19:55:24 +00:00
dyoung
e4942eb316 Interpret 'prefixlen 0' as the maximum prefix length, as ifconfig
has always done.
2008-05-07 18:17:42 +00:00
dyoung
ed7181ed99 Fix a bug that I introduced in rev 1.88, where the default IPv6
prefix length changed from 64 to 128.  While I am here, allow an
address to be given with prefix length /0, but interpret it as
/128.
2008-05-07 18:08:30 +00:00
mlelstv
85de90b807 return the length without padding. 2008-05-07 17:56:09 +00:00
joerg
d72a9bc7fd First part of twa(4) improvements:
- more/better diagnostic messages
- dynamically allocate units in preparation for 9650+ support
- better distribute queue slots over disks according to size
- drain large request queue on 9550
- keep track of resets, will be needed for 9650.

This changes have been contributed by Wasabi Systems.
2008-05-07 17:47:20 +00:00
christos
8eef858ae2 patch from Dennis den Brok for foomatic 2008-05-07 17:44:44 +00:00
njoly
88ca4016fd Restore sched_native2linux() KASSERTs, i accidentally disabled in a
previous commit.
2008-05-07 15:18:35 +00:00
bouyer
a868052c66 Wait 100ms after we resseting the PHY and found that a device is preent.
Some device seems to need a bit of delay before being ready to accept a
command (such as my SATA cdrom drive)  May fix port-i386/38548.
As a bonus this makes the dmesg output prettier, by not mixing PHY
status with ATA/ATAPI probe.
2008-05-07 13:52:12 +00:00
tsutsui
8e98bd4e5e Tweak a structure definition for DMA registers. 2008-05-07 13:02:00 +00:00
tsutsui
3367ee4762 - add an entry of gcc4/vax ICE on compiling ddb/db_command.c
- note gcc version in a vax gcc 2.95 entry
- remove obsolete gcc 3.3.2/arm -fno-strict-aliasing
- use mdate and restore cdate in gcc4-m68000
2008-05-07 12:50:35 +00:00
bouyer
993c458b34 Sync with ipv4 icmp_input(): make sure the mbuf is writable and
contains the entire icmp message befre calling icmp6_input().
should fix "panic: mbuf too short for IPv6 header" seen by several peoples.
2008-05-07 11:28:37 +00:00
tron
e70ab693a2 Change the argument of _PROP_RWLOCK_TRYRDLOCK() to the lock member and not
its address to be consistent with all the other macros.
2008-05-07 10:16:41 +00:00
tron
2916b940f8 Replace _prop_rwlock_tryrdlock() by a macro _PROP_RWLOCK_TRYRDLOCK().
This avoids build failures in stand alone binaries (e.g. bootloaders)
where there is no "pa_rwlock" member in the "_prop_array" structure.
2008-05-07 10:01:50 +00:00
yamt
4a30ae1037 tprof_start: fix workqueue's IPL. 2008-05-07 08:48:11 +00:00
joerg
1e127b8726 Remove some prototypes that are not implemented. Make some functions
static that are only used in intr.c.
2008-05-07 07:00:16 +00:00
jdc
fd15456f57 Correct Sbus register definitions. 2008-05-07 06:36:48 +00:00
simonb
4ec02db9e9 Fix a "#define<tab><tab>" that crept in to previous. 2008-05-07 05:40:01 +00:00
yamt
2f1a30af0d agrsetport: fix a use of uninitialized variable. 2008-05-07 01:13:51 +00:00
macallan
5572494305 Make the priority ordering code actually work.
Thanks to Izumi Tsutsui for bugging me repeatedly about the problem.
2008-05-07 00:39:12 +00:00
ad
39e9d8a066 doh 2008-05-06 23:03:03 +00:00
ad
cf45b9bae4 rw_tryenter: there is a few instruction race between reading rw_owner and
doing the cmpxchg, where another thread can successfully get a read hold
on the lock. That shouldn't fail anyone trying trying to get a read
hold. So for read locks, never bail just because the CAS fails, only bail
if we the status bits in the lock word say we can't have it.
2008-05-06 22:57:39 +00:00
xtraeme
35fe7cdcf1 prop_object_iterator_next() and prop_object_iterator_reset() were
acquiring the rwlock recursively in some paths.

Introduce _prop_rwlock_tryrdlock() and use it in these functions, so
that the rwlock is *always* acquired once, while here add some
_PROP_RWLOCK_OWNED asserts to verify.

This definitely fixes the "locking against myself" panics.
2008-05-06 22:57:26 +00:00
uwe
5e2fa55b72 For sh3 set default DBG to "-Os -freorder-blocks" which is almost like -O2
but without -falign-* that is too zealous for low-memory sh3 machines.
2008-05-06 22:19:11 +00:00
dyoung
f32d909d6e Use the right key, "ifcaps" not "ifcap", in do_setifcaps(). assert()
that the object associated with that key is the right size.
2008-05-06 21:58:05 +00:00
jdc
93d3122a7c Add more initialisation steps (read reset register; pause; set burst size
in config register).

This fixes the continuous interrupt stream previously seen.  It is now
possible to run `ifconfig gem0 up`.  However, "gem0: device timeout"
messages appear and we don't appear to receive any interrupts.
2008-05-06 21:24:40 +00:00
dyoung
1c6c1fd531 Extract subroutine do_setifcaps() and fix the bug that uwe@ reported
in capabilities-setting.

Use prop_dictionary_util(3).

Rename the parser snpaoffset to parse_snpaoffset.
2008-05-06 21:20:05 +00:00
dyoung
502f5a16a5 Use prop_dictionary_util(3).
Re-use set80211() some more.
2008-05-06 21:18:17 +00:00
dyoung
fac0aeb0a0 Use prop_dictionary_util(3). 2008-05-06 21:13:20 +00:00
jdc
cde723377a Add some Sbus-specific definitions (more registers and more values in the
Sbus Config register).
2008-05-06 21:09:34 +00:00
jdc
d91c968da7 Treat ledma the same way as sbus and dma when looking for the boot path.
Original Ultra 1's with sbus -> ledma -> le can now network boot again.
(From martin@).
2008-05-06 21:07:57 +00:00
njoly
24cbc2830b - Make semctl SETVAL/SETALL commands validate the semaphore value to
be set, which needs to be in the range [0,SEMVMX].
- Adjust the man page.
2008-05-06 20:25:09 +00:00
ad
82f138617e sys_unmount: drop ref to root dir before dounmount(), otherwise we'll
always get EBUSY.
2008-05-06 19:14:32 +00:00
dyoung
4e8b81ea3e Use prop_dictionary_util(3). 2008-05-06 18:58:47 +00:00
ad
42d0626726 PR kern/38141 lookup/vfs_busy acquire rwlock recursively
Simplify the mount locking. Remove all the crud to deal with recursion on
the mount lock, and crud to deal with unmount as another weirdo lock.

Hopefully this will once and for all fix the deadlocks with this. With this
commit there are two locks on each mount:

- krwlock_t mnt_unmounting. This is used to prevent unmount across critical
  sections like getnewvnode(). It's only ever read locked with rw_tryenter(),
  and is only ever write locked in dounmount(). A write hold can't be taken
  on this lock if the current LWP could hold a vnode lock.

- kmutex_t mnt_updating. This is taken by threads updating the mount, for
  example when going r/o -> r/w, and is only present to serialize updates.
  In order to take this lock, a read hold must first be taken on
  mnt_unmounting, and the two need to be held across the operation.

One effect of this change: previously if an unmount failed, we would make a
half hearted attempt to back out of it gracefully, but that was unlikely to
work in a lot of cases. Now while an unmount that will be aborted is in
progress, new file operations within the mount will fail instead of being
delayed. That is unlikely to be a problem though, because if the admin
requests unmount of a file system then s(he) has made a decision to deny
access to the resource.
2008-05-06 18:43:44 +00:00
ad
a4e0004be3 LOCKDEBUG: try to speed it up a bit by not using so much global state.
This will break the build briefly but will be followed by another commit
to fix that..
2008-05-06 18:40:57 +00:00
dyoung
55927815b6 Use prop_dictionary_util(3). 2008-05-06 18:35:38 +00:00
dyoung
42acbb2b0d Fix syntax error in last. 2008-05-06 18:16:34 +00:00
dyoung
990c1a7873 Cosmetic: use return rc ? 0 : -1;
Make sure to release a prop_object_t that I am no longer using.
2008-05-06 18:09:50 +00:00
dyoung
a2e4fb3562 Use prop_dictionary_util(3) some more.
When we read interface flags and capabilities from the kernel, take
care not to record them in our current environment (env), but record
them in the output environment (oenv), instead.  This helps us get
interface capabilities and flags right.
2008-05-06 17:29:04 +00:00