Commit Graph

75442 Commits

Author SHA1 Message Date
yamt
dad03fda36 introduce new types, blist_bitmap_t and blist_blkno_t,
and use them instead of uint64_t.
make them 32-bit for now because it's what swap slot allocation code uses.
2005-04-06 13:09:10 +00:00
yamt
a1bde39425 move implementation details from blist.h into subr_blist.c. 2005-04-06 11:36:37 +00:00
yamt
a1e1c4e82e - add a missing cast in the 1-bit optimization case of blst_leaf_alloc.
- use uint64_t rather than daddr_t/u_daddr_t and rename SWAP -> BLIST.

XXX 32 bit is enough?  will revisit later.
2005-04-06 11:35:54 +00:00
yamt
2c8d11ba2b make blist compilable on netbsd. 2005-04-06 11:33:54 +00:00
yamt
186b3b1026 bring in blist from freebsd as-is. 2005-04-06 11:32:06 +00:00
perseant
c9d4fa4c0d Fix some locking issues that appeared with the simple_lock work.
Address a "pager_map" deadlock in lfs_putpages().
2005-04-06 04:30:46 +00:00
jmcneill
4b6fb213ba Replace tab after #define with space. 2005-04-05 16:06:49 +00:00
jmcneill
a3592a3ef9 Add new mixer class 'AudioCmodem' -> "modem", used to set the line/handset
levels on soft modems.
2005-04-05 16:05:56 +00:00
kurahone
f7707899c1 Added sysctl tunable limits for the number of maximum SACK holes
per connection and per system.

Idea taken from FreeBSD.
2005-04-05 01:07:17 +00:00
uwe
89f37124c6 Revert previous. It causes df(1) to reset my Jornada 680 sometimes.
And df(1) that is called during /etc/daily run resets it almost always.
2005-04-04 23:15:08 +00:00
jmcneill
7309363062 Work-in-progress of AC'97 modem support. Currently disabled by default
(can be enabled by options AUICH_ATTACH_MODEM), and untested. Shouldn't
have any impact on auich audio capabilities.
2005-04-04 19:41:50 +00:00
jmcneill
f1db07fc36 * Add more AC97 modem registers (from AC'97 revision 2.2)
* Add sysctls to control the modem's off-hook status (work in progress)
2005-04-04 18:52:30 +00:00
yamt
7abb70e1a5 scsipi_completion_thread:
if we seemt to need more resources after doing ADAPTER_REQ_GROW_RESOURCES,
yield cpu rather than busy-looping.  PR/25164.
2005-04-04 11:26:50 +00:00
martti
d927f0a6a7 s/Finish/Finnish/ 2005-04-04 09:08:54 +00:00
jmcneill
c74eb31f21 * Add support for skipping either the modem or audio AC'97 probes
via host_flags: AC97_HOST_SKIP_AUDIO, AC97_HOST_SKIP_MODEM
* If we're dealing with a modem codec, print the extended modem
  capabilities.
* Add basic AC'97 modem initialization support.
* Add some (but not all) AC'97 modem registers. More will be added later.
2005-04-04 02:08:58 +00:00
bouyer
0eb1762804 Add the ksym pseudo-device, for the benefit of kmem grovelers.
Pointed out by Jason Thorpe on port-xen.
2005-04-03 19:29:18 +00:00
martin
b14ee41fe5 Use UIO_SYSSPACE for NDINIT. Found by Eike Dehling. 2005-04-03 17:29:15 +00:00
martti
58b8abcbf8 Upgraded IPFilter to 4.1.8 2005-04-03 15:05:30 +00:00
martti
c775aec128 Import IPFilter 4.1.8 2005-04-03 15:01:04 +00:00
jdolecek
f96a65dd86 claim tra 2005-04-03 11:40:09 +00:00
jdolecek
6aef8a6e14 add tra* at mca? 2005-04-03 11:39:07 +00:00
jdolecek
8914aa326e white space cleanup, some KNF, long line wrapup 2005-04-03 11:36:32 +00:00
jdolecek
1c89179871 Add driver for MCA Tiara LANCard / Fujitsu mb86950 EtherStar. Driver provided
in PR kern/26899 by Dave Barnes.
2005-04-03 11:21:44 +00:00
jdolecek
29ff38e72d regen: add one more Tiara ID and Standard MicroSystems 3016/MC ID 2005-04-03 11:19:30 +00:00
jdolecek
91575be17a add one more Tiara ID and Standard MicroSystems 3016/MC ID 2005-04-03 11:17:49 +00:00
tron
6589458a53 Make sure that prefixes get purged. This fixes PR kern/21189,
PR kern/25968 and PR kern/27873.
2005-04-03 11:02:27 +00:00
jdolecek
fc38d3f3ac Make it possible for attachment to specify that the 16bit access shouldn't
be toggled in WE_MEM_{ENABLE|DISABLE} when receiving or transmitting packets.
Use this to switch the toggle off for MCA cards, since it causes NIC resets
there.

Fixes PR kern/26895 by Dave Barnes.
2005-04-03 10:56:59 +00:00
yamt
4b935040d0 tcp_input: update a comment to match with the code. 2005-04-03 05:02:46 +00:00
christos
8f3566ce61 PR/29782: Martin Husemann: procfs can not unmount when some process has its
current directory in curproc. Fix from Pedro Martelletto:
We cannot call vgone() from procfs_inactive() if we are coming from
vclean(). that's what's probably causing the deadlock.
2005-04-02 06:15:09 +00:00
perseant
1ebfc508b6 Protect various per-fs structures with fs->lfs_interlock simple_lock, to
improve behavior in the multiprocessor case.  Add debugging segment-lock
assertion statements.
2005-04-01 21:59:46 +00:00
yamt
e6d2a0e747 db_write_text: make this work on xen. 2005-04-01 13:00:57 +00:00
yamt
cde0e21683 unwrap short lines. 2005-04-01 12:37:27 +00:00
yamt
cf8d73702e bump to 3.99.3.
uvm_km_* API changes. (yamt-km merge)
2005-04-01 12:01:32 +00:00
yamt
6b2d8b66a4 merge yamt-km branch.
- don't use managed mappings/backing objects for wired memory allocations.
  save some resources like pv_entry.  also fix (most of) PR/27030.
- simplify kernel memory management API.
- simplify pmap bootstrap of some ports.
- some related cleanups.
2005-04-01 11:59:21 +00:00
matt
6cd3611cff P.k.py lp.kcrgow ao mabf ru go oycnn dak. _n.iajf_ t.fxrapeov
Allprk.e xf jrp.v
2005-04-01 05:49:26 +00:00
gavan
b246dedab4 Due to the increasing rarity of legacy keyboards, switch to a more contemporary default
layout for PC style keyboards.
2005-04-01 01:49:52 +00:00
christos
72ad9c4bc4 no point in assigning to ifq twice. 2005-03-31 21:19:35 +00:00
christos
200dc55908 fix compiling with -DALTQ 2005-03-31 21:14:52 +00:00
bouyer
78ea15ef7f Don't eventually leak vnx and bp on unconfigure, pointed out by YAMAMOTO
Takashi. Instead, let the current I/O complete before killing the thread.
2005-03-31 18:02:16 +00:00
explorer
fcc0a1f852 Fix error with ifq not being set before use. Explicitly set it to NULL just before it may be set to the fastq, since if this becomes a loop (and in one case already is) this will always work. ifq_enqueue2() is designed to handle this case. 2005-03-31 17:07:39 +00:00
explorer
4efbb8a57b Looks like a 'struct buf *bp' was left over from a previosu commit. Since kernel builds stop on this, removing it. 2005-03-31 16:46:13 +00:00
drochner
b3d10c788a regen 2005-03-31 16:36:03 +00:00
drochner
014fa21e82 emulate setreuid()/setregid(), from Eric Schnoebelen per PR
port-alpha/21870
2005-03-31 16:34:54 +00:00
christos
d7ec95d370 factor out the interface queueing code into two functions. One used by
the non point-to-point interfaces that has one queue, and one used by
the point to point interfaces that has two queues. No functional changes.
XXX: The ALTQ stuff makes the code ugly.
XXX: More cleanup to come
2005-03-31 15:48:13 +00:00
bouyer
f5abf7cc11 Use DEV_STRATEGY() instead of VOP_STRATEGY(). YAMAMOTO Takashi says it's not
safe to use VOP_STRATEGY() from interrupt context.
2005-03-31 13:35:02 +00:00
yamt
99229e5d39 introduce a function to drain bufq and use it where appropriate. 2005-03-31 11:28:53 +00:00
chs
c92634930b fix validation of new values when setting vm.{hi,low}water. fixes PR 29651. 2005-03-31 02:34:10 +00:00
bouyer
007f04c4a8 Make vnd do I/O to the underlying file from thread context. This
allows the strategy routine to be called from interrupt context, fixes
PR kern/29775 by Juan RP.
Now that pool_get() is only called from thread context, change PR_NOWAIT to
PR_WAITOK. Fix PR kern/26272 by Juergen Hannken-Illjes.
OK'd by thorpej@
2005-03-30 19:23:08 +00:00
christos
f9a341d1f6 PR/19837: Stephen Ma: signal(SIGCHLD, SIG_IGN) should not create zombies. 2005-03-30 17:07:50 +00:00
is
a0c9bc9616 Add IPv6 over GRE (contributed by Gert Doering in PR 29150). 2005-03-30 16:34:54 +00:00
skrll
8221a0eff7 Correct the comment against FKIOCTL and put the comment against FMASK back
where it belongs.
2005-03-30 13:15:13 +00:00
yamt
e53142951c - use IFQ_POLL/DEQUEUE rather than IF_DEQUEUE/PREPEND.
- handle tx queue full correctly.
2005-03-30 11:38:06 +00:00
yamt
73a5d8f913 s of sack is selective, not selection. pointed by Michael Eriksson. 2005-03-30 11:09:16 +00:00
yamt
8b0967ff45 protect tcpipqent with splvm. 2005-03-29 20:10:16 +00:00
yamt
c08e90ff51 tcp_output: lock reass queue when building sack. 2005-03-29 20:09:24 +00:00
christos
518587967d Re-enable chgsbsize. It should work now. 2005-03-29 18:18:06 +00:00
jmc
9c8f42a9a5 Add missing $HOST_SH to execution of walnut-mkimg.sh 2005-03-29 17:58:15 +00:00
he
8c10d661b0 Properly disable the bulk of chgsbsize(), completing revision 1.84.
This does an #if 0 / #endif, so that no code (or declarations!) are
left after the first "return 1", making this compilable for vax and
playsation2 again, both of which use gcc 2.95.3 or similar.
2005-03-29 15:57:17 +00:00
yamt
d1238feea1 re_encap: set RTK_TDESC_CMD_IPCSUM if any of checksum offloading is requested.
otherwise, RTK_TDESC_CMD_TCPCSUM/UDPCSUM don't seem to make any effect.
2005-03-29 09:52:31 +00:00
yamt
2c742b20e6 ip_reass: clear stale csum_flags. 2005-03-29 09:37:08 +00:00
yamt
c5544c42b5 nfsrv_rcv: don't do so_receive from socket upcall context.
while there's little benefits, it complicates locking and confuses
flow control.
2005-03-29 09:22:35 +00:00
thorpej
95cc3e3c00 - Add a alpha_shared_intr_reset_strays() function that resets the stray
interrupt counter for a given shared interrupt descriptor.
- When an interrupt is successfully handled, reset the strays counter,
  thus preventing a "slow leak" from eventually shutting off the interrupt
  vector.  Idea taken from pci_kn300.c (which was changed to use the new
  alpha_shared_intr_reset_strays() function).
2005-03-29 04:06:20 +00:00
thorpej
e633e8b61b - Define a VFS_ATTACH() macro that places a reference to a vfsops structure
into the "vfsops" link set.
- Use VFS_ATTACH() where vfsops are declared for individual file systems.
- In vfsinit(), traverse the "vfsops" link set, rather than vfs_list_initial[].
2005-03-29 02:41:05 +00:00
fvdl
6bfe21f4e0 Reverse the cyl_lo and cyl_hi reads for the AT_READREG case; previously,
the cyl_lo information would have been thrown away.
2005-03-28 22:08:51 +00:00
bouyer
b50ebb2aa2 Merge 1.1.14.3 from yamt-km branch:
We can't write directly to a gdt slot, we need to go though
xen_update_descriptor().

From YAMAMOTO Takashi: this is not a problem in HEAD, because
as the kva for gdt is pageable, when gdt_put_slot1 attempts to modify gdt,
the fault handler allocates and maps a new page for you.
So the kernel doesn't panic, but could leak some memory.
2005-03-28 16:40:41 +00:00
dogcow
f7c2079f42 add missing prototype for when CODA_COMPAT_5 is #define'd 2005-03-28 06:59:13 +00:00
christos
23b9ddb316 remove stray error(1) comment. 2005-03-28 01:05:13 +00:00
christos
18ffd946a1 It is silly to parse the comment in the header file to determine the
version number, when it is trivial to compute it directly. Also if
you are going to fork awk to do some work, do all of it there.
2005-03-27 23:27:31 +00:00
agc
b91008e6a8 Update the NetBSD version number in the trailing comment to match the
__NetBSD_Version__ in rev 1.213 of this file.
2005-03-27 23:12:55 +00:00
peter
5b342fe86a Correct the entry point for the coda5 LKM. 2005-03-27 18:43:47 +00:00
matt
9034eca609 Add code to preen proc0 cache fter loading a LKM.
(conditional on PMAP_NEED_PROCWR)
2005-03-27 08:34:41 +00:00
dyoung
24f08f73c6 correct logic so we recognize timeout on alloc
Noticed by:     Coverity Prevent analysis tool

From FreeBSD.  Thanks Sam Leffler for bringing this to my attention.
2005-03-27 00:49:14 +00:00
uwe
85589e4fcd Improve spelling in debug printfs. 2005-03-26 22:41:12 +00:00
bouyer
13e1355ec4 Remplace __insn_barrier() with x86_lfence() where appropriate.
While here, replace a panic() with a return of error code in xbdback.c.
2005-03-26 21:22:45 +00:00
bouyer
57d0b7f835 Don't assume we're on a uniprocessor system (the hypervisor may be running SMP)
and add "lock;" barrier to avoid instruction reordering in event handlings.
This fix the last issue with event loss I was getting on SMP systems.
2005-03-26 20:00:49 +00:00
christos
f2b82c7f8a make this compile again :-( 2005-03-26 19:40:31 +00:00
christos
aca59c847f Use vlog(9). Open-coding vlog here breaks lkm's because including
<sys/kprintf.h> includes opt_multiprocessor.h. One could argue
that the lock stuff should just move to subr_prf.c since nothing
else uses it.
2005-03-26 19:39:08 +00:00
christos
3136f75efa defopt IPFILTER_DEFAULT_BLOCK 2005-03-26 18:08:42 +00:00
christos
14685cd241 s/uvm_map_defaultaddr/uvm_default_mapaddr/ HI FRANK! 2005-03-26 17:10:43 +00:00
tsutsui
45bd685dbe mips_sdcache_forceinv has been removed.
XXX Should we check MIPS3_CONFIG_SE in mips3_cp0_config_read() and
XXX call r5k_enable_sdcache() accordingly here?
2005-03-26 10:04:29 +00:00
tsutsui
a8d2e55834 Add a workaround to handle virtual alias which may cause data corruption
on R5000/Rm52xx machines:
- Add a new global variable mips_cache_virtual_alias in mips/cache.c,
  which indicates that VIPT cache on the CPU could cause virtual alias
  and software support is required to handle it. (i.e. no VCED/VCEI)
- Add several cache flush/invalidate ops around KSEG0 access which
  might cause virtual alias if mips_cache_virtual_alias is true.
  (note checking mips_sdcache_line_size isn't valid for R5000/Rm52xx
   because only R4000/R4400 with L2 cache have VCED/VCEI)
- Remove a global variable mips_sdcache_forceinv, which is now superseded
  by new mips_cache_virtual_alias.

While here, also change some R4000/R4400 cache ops:
- Don't override mips_cache_alias_mask and mips_cache_prefer_mask with
  values based on MIPS3_MAX_PCACHE_SIZE for R4000/R4400 with L2 cache
  because it's still worth to reduce VCED/VCEI.
- Flush dcache in pmap_zero_page(9) unconditionally on all MIPS_HAS_R4K_MMU
  CPUs and remove cache flush code from cpu_lwp_fork() in vm_machdep.c.

Thanks to Markus W Kilbinger for testing patches on port-cobalt/port-mips.


XXX This fix is just a workaround because it doesn't handle all possible
XXX virtual aliases. As discussed on port-mips, maybe the real fix
XXX for virtual alias is to change MI UVM to adapt it to VIPT cache.
XXX (all VA mappings against the same PA must have the same VAC index etc.)
2005-03-26 09:51:02 +00:00
fvdl
c487efe4a7 Fix some things regarding COMPAT_NETBSD32 and limits/VM addresses.
* For sparc64 and amd64, define *SIZ32 VM constants.
* Add a new function pointer to struct emul, pointing at a function
  that will return the default VM map address. The default function
  is uvm_map_defaultaddr, which just uses the VM_DEFAULT_ADDRESS
  macro. This gives emulations control over the default map address,
  and allows things to be mapped at the right address (in 32bit range)
  for COMPAT_NETBSD32.
* Add code to adjust the data and stack limits when a COMPAT_NETBSD32
  or COMPAT_SVR4_32 binary is executed.
* Don't use USRSTACK in kern_resource.c, use p_vmspace->vm_minsaddr
  instead (emulations might have set it differently)
* Since this changes struct emul, bump kernel version to 3.99.2

Tested on amd64, compile-tested on sparc64.
2005-03-26 05:12:34 +00:00
christos
24ae046714 move an assignment up. 2005-03-26 04:37:04 +00:00
cube
78f44cbe4f Add attimer(4) configurations everywhere pcppi(4) exists, with the
following rule:
  If a pcppi device is enabled for an attachment, enable an attimer for the
  same attachement, otherwise comment it.
2005-03-25 23:28:43 +00:00
cube
d2d1a8c05c Make pcppi(4) use attimer(4) to set the pitch of the bell.
In case you don't configure an attimer(4) device in your kernel config,
you will simply lose the ability to set the pitch.  It will still beep.
2005-03-25 23:09:00 +00:00
cube
ff524d301a Add attimer(4) to the list. 2005-03-25 23:07:17 +00:00
cube
040e3b19e5 Add attimer(4) driver, with ISA and ACPI attachments.
attimer(4) is the new body of the part of pcppi(4) that mapped the TIMER1
register to set the pitch of the bell.  It was necessary to separate them
in order to have a working ACPI attachment (as the two appear as different
devices in the ACPI structures).
2005-03-25 23:06:19 +00:00
christos
b279845eed Don't free the wrong lock. Pointed out by Konrad Schroder 2005-03-25 22:48:23 +00:00
tsutsui
120ecb16f8 Switch cobalt port to use MI pci_configure_bus(9)
with options PCI_NETBSD_CONFIGURE.
Patch from KIYOHARA Takashi on port-cobalt.

This change makes siop(4) (and maybe all other PCI devices
using pci mem space) work on cobalt.
2005-03-25 15:01:57 +00:00
tsutsui
69528d1dad Allow MD PCI code to specify or disable PCI_COMMAND_PARITY_ENABLE
and PCI_CMMAND_SERR_ENABLE in MI pci_configure_bus(9).
Patch from PR kern/27423 by KIYOHARA Takashi with some changes by me,
approved by Allen Briggs.
2005-03-25 14:51:39 +00:00
yamt
2e2956423c don't bother to allocate gdt slots for tss
as we don't actually use them.
2005-03-25 10:27:03 +00:00
perseant
bb7bbb2d16 Don't sleep while holding the vnode interlock. Should take care of the
first panic case in PR #26043.
2005-03-25 01:45:05 +00:00
jmcneill
adf922e656 Update my email address (the one listed hasn't been active in years). 2005-03-24 22:31:58 +00:00
cube
bc5ea6f651 Set bit 0x2 of the first byte of the generated MAC address, to indicate it
is a locally administered address.  Pointed out by Ignatios Souvatzis.
2005-03-24 22:20:35 +00:00
bouyer
303cafe4e5 getblk() can return NULL if we are the pagedaemon. Check for this. 2005-03-24 20:13:17 +00:00
tron
0dd3209322 Regen. 2005-03-24 13:17:24 +00:00
tron
9ffaf42ec1 Add ids for ATI Radeon 9700 Pro and 9800 Pro. 2005-03-24 13:17:08 +00:00
chs
f31a80ccd3 avoid the need for recursive locking lfs_flush_dirops() by unlocking
the vnode around the call to this in the caller.
2005-03-24 04:00:33 +00:00
bouyer
091d59fa24 Don't assume all LUNs are probed before scsipi sets the mode, and always check
if lun_tagtbl needs to be allocated. Patch from john heasley in kern/29603.
2005-03-23 21:23:15 +00:00
christos
5586266e3c PR/29600: YAMAMOTO Takashi: cbb hangs on boot. From the PR:
It seems that we never get a power interrupt for 16 bit cards. The tsleep
has been changed to wait for 200ms maximum, before giving up instead of
waiting forever. XXX: Maybe that is too small for some laptops?
2005-03-23 20:53:19 +00:00