Commit Graph

68111 Commits

Author SHA1 Message Date
scw
571f89c4ad Slight re-org of the alignment/ast exit macro to better mimic the
original behaviour WRT cpsr/I32_bit handling.
2003-11-14 16:57:28 +00:00
tsutsui
b2fe3a3641 - define LIBSA_USE_MEMCPY and LIBSA_USE_MEMSET
- set WARNS?=1
2003-11-14 16:53:37 +00:00
tsutsui
212f884f43 Misc cleanup:
- KNF
- WARNSfy
- remove __P()
- remove register declarations
- const'ify some variables
- make some local functions/variables static
- bcopy -> memcpy
- bcmp -> memcmp
- bzero -> memset
- space/TAB fix
etc.
2003-11-14 16:52:40 +00:00
itojun
4b26585bd4 s/in_ifaddr/in_ifaddrhead/. not really tested 2003-11-14 15:04:48 +00:00
tsutsui
306f405de0 Use "" rather than '\0' for null string. 2003-11-14 13:08:45 +00:00
lukem
91441af9b4 Revert previous; it is not the correct solution to the problem of
the host tool build in usr.sbin/installboot.
2003-11-14 12:07:42 +00:00
tsutsui
6a20c93bb1 Revert part of previous NULL -> '\0' changes, where actually NULL is required. 2003-11-14 11:39:49 +00:00
dsl
438ae29810 Remove the .if !target(dependall) so that 'make dependall' works (again)
for the kernel.
2003-11-14 08:33:36 +00:00
dsl
ea669558c6 Only include machine/disklabel.h if MAXPARTITIONS is undefined.
With care should allow sys/disklabel.h to be used in MI/host code.
2003-11-14 08:03:16 +00:00
jonathan
ae4accd0de Use ip_randomid(), dependent on either __NetBSD__ preprocessor
token or FreeBSD RANDOM_IP_ID config option.
2003-11-14 07:15:28 +00:00
jonathan
a03a5696d5 include <sys/mbuf.h> before FAST_IPSEC-dependent headers. 2003-11-14 07:13:25 +00:00
uwe
b12f3576c6 Use assembler version of bswap64. 2003-11-14 00:39:17 +00:00
uwe
be72e49c47 bswap64 written in assembler. 2003-11-14 00:38:17 +00:00
scw
bb0221494d Since data_abort_handler() may have to decode the instruction at tf->tf_pc
to determine if a fault is read or write, make sure tf->tf_pc is 32-bit
aligned before dereferencing it.

Otherwise, deliver an illegal instruction signal to the process. We don't
support execution of Thumb code at this time.
2003-11-14 00:21:30 +00:00
uwe
8fdd163272 Eliminate bzero. 2003-11-13 23:55:20 +00:00
fvdl
6cdccae32c Remove leftover debugging printf. 2003-11-13 23:00:54 +00:00
scw
c86e508708 On Rhine III, don't set VR_EECSR_LOAD before reading the MAC address.
This reloads the entire EEPROM, not just the MAC address, which can
cause problems for the host PCI bus under certain circumstances. The
chip already loads the EEPROM at powerup/reset anyway.

XXX: This probably applies to the other Rhine variants too, but I don't
have a data sheet to confirm this behaviour.
2003-11-13 22:29:09 +00:00
bouyer
9494bbf9c9 If we detected an old drive on a channel, clear (ATA|ATAPI) for both
drives on the channel.
2003-11-13 22:18:10 +00:00
simonb
d707aa947b Be consistent with "#define<tab>" in previous change. 2003-11-13 20:14:27 +00:00
tsutsui
302df7965a Backout part of rev 1.4 which caused uninitialized pointer dereference.
(How does it works!?)
2003-11-13 15:53:31 +00:00
tsutsui
d859f28a2d Use 32bit daddr_t for now so that uboot.lif works again.
XXX The real fix is adding prototype declarations for all functions.
2003-11-13 15:50:46 +00:00
christos
6dfe125b9c we could have lpt at puc. 2003-11-13 14:39:38 +00:00
sekiya
466d2c1848 libsa's iso9660 routines don't handle rockridge. Alter installation kernel
fixup routines accordingly -- we'll use "ip2x" and "ip3x" for install kernel
names rather than "netbsd-INSTALL32_IPxy".
2003-11-13 14:31:54 +00:00
tsutsui
9b10e90d9a Don't use htobe32() for int16_t values. 2003-11-13 14:07:01 +00:00
tsutsui
a0795dd18e Use int16_t and int32_t rather than short and int. 2003-11-13 14:06:22 +00:00
manu
b5139de154 Enforce good santity checks with Mach messages sizes:
1) make sure Mach servers will not work on data beyond the end of the
   request message buffer.
2) make sure that on copying out the reply message buffer, we will not
   leak kernel data located after the buffer.
3) make sure that the server will not overwrite memory beyond the end
   of the reply message buffer. That check is the responsability of the
   server, there is just a DIAGNOSTIC test to check everything is in
   good shape. All currently implemented servers in NetBSD have been
   modified to check for this condition

While we are here, build the mach services table (formerly in mach_namemap.c)
and the services prototypes automatically from mach_services.master, just
as this is done for system calls.

The next step would be to fold the message formats in the mach_services.master
file, but this tends to be difficult, as some messages are quite long and
complex.
2003-11-13 13:40:39 +00:00
sekiya
c93054ffbf typo in include directive. 2003-11-13 12:53:05 +00:00
sekiya
959569cd0c bootloader targets have changed, which confused the install rules. 2003-11-13 12:42:18 +00:00
yamt
5ee0718f8f plug memory leak on error. 2003-11-13 11:59:46 +00:00
dsl
55302b835d Add hp300 LIF definitions 2003-11-13 08:17:12 +00:00
sekiya
40c0a4c30b loadfile truth check should be >=0, not >= 1. 2003-11-13 08:06:25 +00:00
sekiya
1ba2b99e3e More bootloader changes:
* if loading from cdrom, assume we're performing an install and
	  fix up bootpath/kernel to load the proper install kernel.
	* maximum filename length in volume header is eight characters.
	  Change boot.elf to ip2xboot, boot.ip32 to ip3xboot, and boot
	  to aoutboot (which matches kernel naming scheme as well).
2003-11-13 08:01:17 +00:00
chs
e07f0b9362 eliminate uvm_useracc() in favor of checking the return value of
copyin() or copyout().

uvm_useracc() tells us whether the mapping permissions allow access to
the desired part of an address space, and many callers assume that
this is the same as knowing whether an attempt to access that part of
the address space will succeed.  however, access to user space can
fail for reasons other than insufficient permission, most notably that
paging in any non-resident data can fail due to i/o errors.  most of
the callers of uvm_useracc() make the above incorrect assumption.  the
rest are all misguided optimizations, which optimize for the case
where an operation will fail.  we'd rather optimize for operations
succeeding, in which case we should just attempt the access and handle
failures due to insufficient permissions the same way we handle i/o
errors.  since there appear to be no good uses of uvm_useracc(), we'll
just remove it.
2003-11-13 03:09:28 +00:00
sekiya
2818624aab Include proper GENERIC32 templates (mechanical edit). 2003-11-13 02:59:37 +00:00
chs
709a3b4e52 two changes in improve scalability:
(1) split the single list of pages allocated to a pool into three lists:
     completely full, partially full, and completely empty.
     there is no longer any need to traverse any list looking for a
     certain type of page.

 (2) replace the 8-element hash table for out-of-page page headers
     with a splay tree.

these two changes (together with the recent enhancements to the wait code)
give us linear scaling for a fork+exit microbenchmark.
2003-11-13 02:44:01 +00:00
sekiya
28bee58d65 Rationalize config file scheme. Discussed at length with rafal@, pooka@, soren@. 2003-11-13 02:31:46 +00:00
jonathan
fa24e6f3f8 Add m_tag_delete_nonpesrsistent(), for deleting all packet tags on
mbuf chains which are recycled (e.g., ICMP reflection, loopback
interface).  A consensus was reached that such recycled packets should
behave (more-or-less) the same way if a new chain had been allocated
and the contents copied to that chain.

Some packet tags may in future be marked as "persistent" (e.g., for
mandatory access controls) and should persist across such deletion.
NetBSD as yet hos no persistent tags, so m_tag_delete_nonpersistent()
just deletes all tags. This should not be relied upon.
2003-11-13 01:48:12 +00:00
christos
a0e314dfe4 add noop wrapper functions for i386 2003-11-13 01:44:36 +00:00
cl
e2c29624f5 Prevent sa_newcachelwp() from creating new LWPs when the process is exiting.
This should fix PR 23418 which was also reported by Thomas Klausner and
Ian Fry (who also provided core dumps for analysis - thanks!).

Also g/c sa_yieldcall since it's now safe to put LWPs back into the cache.
Also return stacks in failure case.
2003-11-12 21:27:46 +00:00
dsl
0342c9586a - Count number of zombies and stopped children and requeue them at the top
of the sibling list so that find_stopped_child can be optimised to avoid
  traversing the entire sibling list - helps when a process has a lot of
  children.
- Modify locking in pfind() and pgfind() to that the caller can rely on the
  result being valid, allow caller to request that zombies be findable.
- Rename pfind() to p_find() to ensure we break binary compatibility.
- Remove svr4_pfind since p_find willnow do the job.
- Modify some of the SMP locking of the proc lists - signals are still stuffed.

Welcome to 1.6ZF
2003-11-12 21:07:37 +00:00
dbj
d3bad238a2 XXX an impossible malloc failure check in set_statfs_info 2003-11-12 20:38:24 +00:00
drochner
038b8b6573 Uhm - the last change broke everything but very simple setups.
(it only allowed to boot an nfs /netbsd automatically)
To make it work for people who can't tell the DHCP server to pass
the right kernel file to pxeboot, without losing flexibility for
people who can, do the following:
Use the filename given by the DHCP server if it contains a ":". A ":"
was already used to seperate filesystem and filename, so we don't
lose anything. Otoh, a path to pxeboot usually doesn't contain a ":",
so it should still work if we got the old pxeboot filename again.
2003-11-12 18:44:08 +00:00
jandberg
79eacc067d amidisplaycc.c:
Add screen types suitable for PAL displays, and fix typos
	in older screen type names; reported by Gunther Nikl.
amidisplay.4:
	Document the new screen types and add some misc information.
2003-11-12 17:42:40 +00:00
jandberg
3f581624a0 Fix bug/typo and rewrite some funnily structured code.
Pointed out by compiler warnings.
2003-11-12 17:26:36 +00:00
itojun
3107b5dcc0 implement net.inet6.ifq 2003-11-12 15:25:19 +00:00
itojun
d46ad3421a KNF 2003-11-12 15:00:05 +00:00
yamt
9a34eb3d5a - fix deadlocks due to using lock_status() from interrupt context.
- process pending queries in EcUnlock() to close a race window.
  now there's no need to do polling for EcQuery().
- reorder inline functions and other prototypes so that
  the formers can get needed prototypes.
- add missing prototypes.
2003-11-12 13:59:23 +00:00
cl
e6bcfbd5e0 catch up with in_ifaddr -> in_ifaddrhead rename 2003-11-12 13:40:16 +00:00
yamt
5980449814 use snprintf("%X") instead of "%x" + strupr(). 2003-11-12 13:18:24 +00:00
dsl
ec098b8a13 Double space for memory disk to 5MB, this costs (almost) nothing on the
install media and the kernels (and sysinst) will still run on a 16MB system.
(They haven't run on an 8MB system for a while - might affect 12MB though.)
The additional space in the root filesystem lets sysinst core dump properly!
2003-11-12 11:47:34 +00:00
augustss
2fecfb383c Don't free non-malloced memory. From mlang@delysid.org 2003-11-12 11:29:12 +00:00
ragge
4a9b211e76 Remove the FAST_MBSEARCH ifdef, send packet prediction is now default. 2003-11-12 10:48:04 +00:00
simonb
bb845a9d67 Use just "type" and not "sc->sc_type" in cominit().
Pointed out by Shoichi Miyake in private mail.
2003-11-12 06:27:59 +00:00
manu
40a3558468 mach_msg_ool_ports_descriptor_t describe a memory region containing
an array of mach_port_name_t, not mach_msg_port_descriptor_t.
2003-11-12 00:00:28 +00:00
fvdl
9d4e217e09 From FreeBSD:
* erratum: disable the nocrc RX bit, as it may cause problems on the 570{1-4}.
  adjust the length of the incoming packet accordingly to trim it.
* the 5704 has a smaller MBUF_POOL, so set a smaller value

Local change:
* Pass the autoneg force flag to mii_attach. Some PHYs need to be kicked
  out of their falsely autoneged 10baseT state with this.
2003-11-11 22:28:58 +00:00
drochner
ca3116d2f1 in_ifaddr -> in_ifaddrhead
use TAILQ_FOREACH macro
2003-11-11 21:41:11 +00:00
enami
67b61c37a8 Prevent mkdep from parsing compiler flags like -pipe. 2003-11-11 21:26:53 +00:00
drochner
14332cf998 fix interface address list traversal in if_detach():
The code was assuming that interface addresses are removed one-by-one.
With IPv6 and multicasts, removal of one address can remove other
addresses as side effect, which caused accesses of free()d memory.
2003-11-11 20:33:46 +00:00
jonathan
79bf8521a5 Change global head-of-local-IP-address list from in_ifaddr to
in_ifaddrhead. Recent changes in struct names caused a namespace
collision in fast-ipsec, which are most cleanly fixed by using
"in_ifaddrhead" as the listhead name.
2003-11-11 20:25:26 +00:00
manu
b6b7d129a1 Added mach_thread_set_state 2003-11-11 18:12:40 +00:00
manu
a2bed85761 Implement mach_thread_get_state.
While we are here, try to tag machine dependent functions in header files.
also transformed darwin_ppc_*_state into mach_ppc_*_state, as this is
what they really are (COMPAT_DARWIN is on the top of COMPAT_MACH, not the
other way around)
2003-11-11 17:31:59 +00:00
manu
95cc30edca Correctly implement task_suspend and task_resume: the struct proc is
taked from mp->mp_data.
2003-11-11 17:26:32 +00:00
pk
bb69a241e8 Remove ancient DDB-dependent `hide/integrate'.
Simplify lewrcsr/lerdcsr; read-back after write doesn't hurt on sun4 so
skip the cpu type test in generic kernels.
2003-11-11 15:01:05 +00:00
manu
6961fe8c08 Fix an unitialized variable bug that caused a crash in mach_task_suspend().
While we are there, resolved another mystery: the unallocated port described
in the comment removed by this commit was in fact allocated by mach_task_pid().
2003-11-11 15:00:09 +00:00
augustss
b87f6623d3 Regen. 2003-11-11 10:55:32 +00:00
augustss
7e013f13c6 Add a Cypress USB2 hub. 2003-11-11 10:54:56 +00:00
scw
f99d0398fb The previous commit had a #endif in the wrong place. 2003-11-11 08:27:16 +00:00
sekiya
b3023f06a5 Rework the boot loader:
* remove dead code,
	* streamline kernel selection logic,
	* various small bugfixes.
2003-11-11 06:47:00 +00:00
sekiya
fdf5374e91 Remove unused variables. 2003-11-11 06:42:15 +00:00
sekiya
f87a5a5324 Add getopt.c 2003-11-11 06:28:15 +00:00
christos
6dc8df292b KASSERT was not the right thing here. Instead only set the type if f_type
has been inititialized. Reported by pooka
2003-11-11 00:44:16 +00:00
jonathan
b86d07f435 Allocate sysctl oid for ipv4 sysctl node "ifq", define symbolic name, and
bump IPCTL_MAXID. (Should have been committed with other ifq sysctl changes).
2003-11-10 20:50:29 +00:00
jonathan
88ba77e705 Make per-protocol network input queue stats visible to userland via
sysctl. Add a protocol-independent sysctl handler to show the per-protocol
"struct ifq' statistics. Add IP(v4) specific call to the handler.
Other protocols can show their per-protocol input statistics by
allocating a sysclt node and calling sysctl_ifq() with their own struct ifq *.

As posted to tech-kern plus improvements/cleanup suggested by Andrew Brown.
2003-11-10 20:03:29 +00:00
rearnsha
31a79ddeb0 In vm_phsyseg_find, use u_int for start, len and try when doing a
binary search.  Avoids the need for signed division by 2.  Approved
by thorpej.
2003-11-10 16:13:05 +00:00
thorpej
9a0c12a504 Correct the size passed to a malloc() call when performing command
passthrough for userland management tools.
2003-11-10 15:35:39 +00:00
drochner
bc80d3e635 Reading the (non-MII) media status if the card is not running yields
"0xffff" (eg on i386) or a machine check (on alpha).
So don't read the status if !(UP&RUNNING).
2003-11-10 12:30:27 +00:00
itojun
f5c2aa04b0 splsoftnet() on spd/sad-dump-via-sysctl to ensure no 2 threads to go into
the function, or entries being removed during the dump operation.
suenaga@iij
2003-11-10 10:52:13 +00:00
wiz
c2f9db9c64 Update URLs; from Jared Yanovich via jmc@openbsd. 2003-11-10 09:02:08 +00:00
wiz
864bb22441 Update URL; from Jared Yanovich via jmc@openbsd. 2003-11-10 08:58:39 +00:00
wiz
34eb26eec2 Update URL; s/Linix/Linux/. From Jared Yanovich, forwarded by jmc@openbsd. 2003-11-10 08:55:41 +00:00
wiz
ee1b406595 Spell address with two d's. Inspired by similar changes in OpenBSD,
originating from Jonathon Gray and forwarded by jmc@openbsd.
2003-11-10 08:51:51 +00:00
fvdl
0a3fa4cdb1 Trim ramdisk and remove some unneeded options. 2003-11-10 00:52:28 +00:00
scw
62816f9d48 Ditch some obsolete toolchain definitions and flags. 2003-11-09 23:30:39 +00:00
manu
7c1e8e9716 There is some padding on the reply packet of vm_make_memory_entry too. 2003-11-09 23:17:15 +00:00
manu
ffe118644c Added missing padding fields in vm_make_memory_entry request packet. 2003-11-09 23:07:05 +00:00
manu
d7d1474c7a Typo 2003-11-09 23:05:29 +00:00
uwe
79ddf479da Add adc, j6x0pwr, j6x0tp. 2003-11-09 22:36:17 +00:00
christos
2cd9243922 - kill bzero/bcopy
- defopt stats and settings, removing their definitions from the files
- make code compile by eliminating multicharacter constants!?! and rearranging
  variable declarations so they are defined before used!?!
- help gcc with uninitialized variables
2003-11-09 22:11:12 +00:00
uwe
19d60bc09e Compile identity ntoh*/hton* only for big endian case. 2003-11-09 22:04:00 +00:00
petrov
8ab0c67f4e Lower PIL_AUD so /dev/audio will not interrupt and interfere with
scheduler. Fixes kern/23382.
2003-11-09 21:52:31 +00:00
scw
f64ae6c776 s/NULL/0/ 2003-11-09 21:39:48 +00:00
scw
4c4ac42348 More format string fallout. 2003-11-09 21:37:08 +00:00
scw
eb042dabb2 Fix format string lossage. 2003-11-09 21:12:08 +00:00
pk
72c519a615 __cpu_simple_unlock: avoid instruction re-ordering by the compiler. 2003-11-09 21:04:44 +00:00
scw
c55851c88b Fix format string warnings for platforms where
sizeof(db_addr_t) > sizeof(long). e.g. ILP32 on sh5.
2003-11-09 20:52:18 +00:00
martin
146396081b bzero/bcopy -> memset/memcpy 2003-11-09 16:41:52 +00:00
scw
6bf28caf3e bzero is no longer used in the kernel. 2003-11-09 16:12:57 +00:00
martin
76bfd5ab17 Nuke bcopy/bzero. 2003-11-09 14:28:56 +00:00
he
b158245614 Fix another instance where `offset' might have been used uninitialized,
by adding a non-DEBUG default: and a panic().
2003-11-09 14:26:15 +00:00
scw
cd75387049 Clear r3 to zero after dealing with the pseudo-header. 2003-11-09 12:24:48 +00:00