22919 Commits

Author SHA1 Message Date
obrien
c3b27201d1 ELF kernels should use an ELF sysvec. This allows us to move a.out
specific files to those platforms that acutally support a.out.
2000-11-05 10:41:35 +00:00
marcel
228f80f471 Fix getdents syscall.
The offset field in struct dirent was set to the offset of
the next dirent in rev 1.36. The offset was calculated from
the current offset and the record length. This offset does
not necessarily match the real offset when we are using
cookies. Therefore, also use the cookies to set the offset
field in struct dirent if we're using cookies to iterate
through the dirents.
2000-11-05 07:31:17 +00:00
marcel
ff963f8fc8 Fix breakage for parallel builds. 2000-11-05 03:10:45 +00:00
phk
e58bfcf4db Always emply the NCO to attenuate jitter. The Receive clock recovery
circuit generates too much jitter to be used directly as xmit clock.

Don't miscount pending bytes in weird error conditions.

Drop the rest of a packet if we run out of tx-md's.

Trig the xmit-frame signal on rising edge, this fixed the one-bit-too-late
position of the HDLC frames in E1 mode.
2000-11-04 23:23:27 +00:00
bmilekic
51dc2fe61b Change the sf_bufs wakeups to be wakeup_one(), because we don't want to
wakeup all of the sleeping threads when we free only one buffer. This
avoids us having to needlessly try again (and fail, and go back to
sleep) for all the threads sleeping. We will now only wakeup the
thread we know will succeed.

Reviewed by: green
2000-11-04 21:55:25 +00:00
obrien
eb3fe2715f Our SHRT_MIN definition was actually 4 bits too big.
Submitted by:	Bradley T. Hughes <bhughes@trolltech.com>
2000-11-04 21:01:44 +00:00
jlemon
88c9bb192d tp->snd_recover is part of the New Reno recovery algorithm, and should
only be checked if the system is currently performing New Reno style
fast recovery.  However, this value was being checked regardless of the
NR state, with the end result being that the congestion window was never
opened.

Change the logic to check t_dupack instead; the only code path that
allows it to be nonzero at this point is NewReno, so if it is nonzero,
we are in fast recovery mode and should not touch the congestion window.

Tested by:	phk
2000-11-04 15:59:39 +00:00
bde
048bdff41c Added used include of <machine/bus.h> -- don't depend on evil namespace
pollution in <sys/mutex.h>.  This was half fixed in rev.1.3 of
midwayreg.h.  The pollution exposed the bug that this driver was using
toy versions of the bus space macros under FreeBSD.  Disabling the
toy versions made this driver compile but dependent on the pollution.
There was still a toy version of bus_space_read_1() in unreachable code.
2000-11-04 15:03:34 +00:00
bde
a9f20e6f32 Enabled the used include of <machine/bus.h> -- don't depend on evil
namespace pollution in <sys/mutex.h>.  This was half fixed in rev.1.3
of midwayreg.h.  The pollution exposed the bug that this driver was
using toy versions of the bus space macros under FreeBSD.  Disabling
the toy versions made this driver compile and maybe support PIO space,
but dependent on the pollution.
2000-11-04 14:31:47 +00:00
ume
4f20c9a97c Make compilable. if_fddisubr.c depended on sys/malloc.h by my
previous commit.

Reported by:	Jim Bryant <jbryant@A010-0935.KSCY.splitrock.net>
2000-11-04 14:21:23 +00:00
rnordier
d72251aa84 Support a.out: avoid (%dx) in in/out instructions, and use an m4
macro to supply underscores for externals.
2000-11-04 13:03:52 +00:00
ps
2cfec00a84 MF4: Add LOADER_TFTP_SUPPORT make.conf flag. 2000-11-04 08:43:13 +00:00
bde
fee8e1a16f Fixed breakage of mknod() in rev.1.48 of ext2_vnops.c and rev.1.126 of
ufs_vnops.c:

1) i_ino was confused with i_number, so the inode number passed to
   VFS_VGET() was usually wrong (usually 0U).
2) ip was dereferenced after vgone() freed it, so the inode number
   passed to VFS_VGET() was sometimes not even wrong.

Bug (1) was usually fatal in ext2_mknod(), since ext2fs doesn't have
space for inode 0 on the disk; ino_to_fsba() subtracts 1 from the
inode number, so inode number 0U gives a way out of bounds array
index.  Bug(1) was usually harmless in ufs_mknod(); ino_to_fsba()
doesn't subtract 1, and VFS_VGET() reads suitable garbage (all 0's?)
from the disk for the invalid inode number 0U; ufs_mknod() returns
a wrong vnode, but most callers just vput() it; the correct vnode is
eventually obtained by an implicit VFS_VGET() just like it used to be.

Bug (2) usually doesn't happen.
2000-11-04 08:10:56 +00:00
obrien
f955d70e8c Now have the `linux' module on the Alpha too. 2000-11-04 07:31:46 +00:00
obrien
e8e876209c Fix generated include path.
Approved by:	JKH
2000-11-04 07:21:37 +00:00
bmilekic
8b319d105d Setup and put to use the mutex lock for sf_freelist, the sendfile(2) bufs
freelist. Should now be thread-friendly, in part.

Note: More work is needed in uipc_syscalls.c, but it will have to wait until
the socket locking issues are at least 80% implemented and committed.
2000-11-04 07:16:08 +00:00
obrien
b01bea2a94 Fix the Elf64 branding initialization. 2000-11-04 05:04:47 +00:00
bp
099f33073e v_interlock is a mutex now, not simple lock. 2000-11-04 02:42:11 +00:00
ken
b1f245fc31 Fix a problem with the previous revision (1.42) that showed up with audio
CDs.

With audio CDs, you can't just do a READ(10) call on most drives without
first setting the blocksize with a mode select command.  The disklabel code
does a read of the first sector of the media to find a label if it exists.

This caused drives to return an error when an audio CD was in the drive,
due to the problem described above.

The solution is to read the table of contents on the CD, and only attempt
to read the disklabel if the first track is a data track.

This works on all the various CD and DVD media I have tried, but further
testing (especially with Video CDs and other mode 2 media) will be
needed to determine if this is a universal solution.
2000-11-04 02:05:25 +00:00
sos
4db8e6376f Fix breakage on some ATA chips that dont have busmastering set.
Tidy up the probe a bit..
2000-11-03 17:09:34 +00:00
bde
2041bf0212 Support filesystems with the not-so-new "sparse_superblocks" feature.
When this feature is enabled, mke2fs doesn't necessarily allocate a
super block and its associated descriptor blocks for every group.
The (non-)allocations are reflected in the block bitmap.  Since the
filesystem code doesn't write to these blocks except for the first
superblock, all it has to do to support them is to not count them in
ext2_statfs() and not attempt to check them at mount time in
ext2_check_blocks_bitmap() (the check has never been enabled in
FreeBSD anyway).
2000-11-03 16:41:48 +00:00
msmith
a1750a3801 If we can't get a command to back the bio we just took off the queue,
put the bio back, otherwise we'll drop it when we bail.  This was
causing bio lossage under load, leading to eventual system lockup.
2000-11-03 16:11:05 +00:00
n_hibma
ea844cd674 Regen. 2000-11-03 15:19:42 +00:00
n_hibma
80a80a08ce Sone -> Sony
Submitted by:	Hiroyuki Aizu <aizu@jaist.ac.jp>
2000-11-03 15:19:00 +00:00
ume
5466253d29 check whether the packet is tunnel mode. reported from <larse@ISI.EDU>
Obtained from:	KAME
2000-11-03 06:10:56 +00:00
jhb
33bdacce8c Fix an order of operations buglet. ! has higher precedence than &. This
should fix the warnings about bpf not calling make_dev().
2000-11-03 00:51:41 +00:00
wpaul
c647c97850 Create a pcn_setfilt() routine that twiddles the promiscuous mode
and nobroadcast bits in the mode register and call it both from
pcn_init() and pcn_ioctl(). Sometimes we need to force the state
of the nobroadcast bit after switching out of promisc mode.
2000-11-03 00:37:45 +00:00
wpaul
a963a930c8 Grrrr. Remember to bzero() the mediainfo structures after we allocate
them. If we leave garbage in them, the dc_apply_fixup() routine may
try to follow bogus pointers when applying the reset fixup.

Noticed by: Andrew Gallatin
2000-11-03 00:03:03 +00:00
jhb
da2d7c0fb1 The Number of Fixed Disks at memory location 0x475 is only 1 byte, not a
2 byte word.  This fixes machines that probe 30-odd hard drives during boot
in the loader.

Submitted by:	Helpful folks at Tyan via ps
2000-11-02 23:28:12 +00:00
tegge
8e9f33e1ce Clear the VFREE flag when the vnode is removed from the free list in
getnewvnode().  Otherwise routines called from VOP_INACTIVE() might
attempt to remove the vnode from a free list the vnode isn't on,
causing corruption.
PR:		18012
2000-11-02 21:42:54 +00:00
tegge
5262a5cdb7 Clear the MAP_ENTRY_USER_WIRED flag from cloned vm_map entries.
PR:		2840
2000-11-02 21:38:18 +00:00
phk
4e063f5534 Take VBLK devices further out of their missery.
This should fix the panic I introduced in my previous commit on this topic.
2000-11-02 21:14:13 +00:00
n_hibma
5fe3f7f833 AcerScan 320U's are braindead. Sometimes they do not return strings
descriptors and if they do the strings are nonsense.
2000-11-02 20:42:34 +00:00
gallatin
47e0f18a13 zap a stray include that snuck in with rev 1.56
Submitted by:	Clive Lin <clive@CirX.ORG>
2000-11-02 18:51:32 +00:00
jlemon
9ae2a2ef48 Have tuninit() return an error if an interface address is NULL.
SIOCGIFSTATUS was returning at splimp(); fix this.  (to be MFC'd)

Submitted by:  Marius Bendiksen
2000-11-02 16:30:26 +00:00
gallatin
a443a14ba4 fix a comment that was inadvertantly changed by a cvs merge
pointed out by: obrien
2000-11-02 15:04:19 +00:00
sheldonh
97e0865a0a Retire the joy(8) script. Using shell scripts to load kernel loadable
modules is out of fashion.

There is still a joy(4) manual page to clue people into the existence of
the joy of FreeBSD.
2000-11-02 14:15:30 +00:00
sheldonh
f7c4ac38dc Retire linux(8). Using shell scripts to load kernel loadable modules is
out of fashion.  This particular case, unlike joy(8) and friends which
are just plain silly, did more than just load a kernel loadable module.
However, /etc/rc and the linux_base port were adjusted a while back to
cope with the absence of this script.

The only outstanding reason to hang on to it would have been for the
linux(8) manual page, which clued folks into the existence of the
Linuxulator.  A new linux(4) was introduced a while back.  It does
a much better job.

This script just isn't useful any more.
2000-11-02 13:48:53 +00:00
ru
e238590f91 Fixed the bug I have introduced in icmp_error() in revision 1.44.
The amount of data we copy from the original IP datagram into the
ICMP message was computed incorrectly for IP packets with payload
less than 8 bytes.
2000-11-02 09:46:23 +00:00
sanpei
0c473d6c92 add support for 3Com 3c575TX Fast Etherlink XL.
Device information for 3C575-TX is from NetBSD,
sys/dev/cardbus/if_ex_cardbus.c file.

Reviewed by:	wpaul, imp
2000-11-02 06:49:38 +00:00
marcel
a472162cee Fix linux_ustat syscall. We only have cdevs now, so looking
for a block device isn't that useful anymore.

Reported by: Wesley Morgan <morganw@chemicals.tacorp.com>
Submitted by: gallatin
Acknowledged by: phk
2000-11-02 06:08:26 +00:00
obrien
0dc991a495 Sort. 2000-11-02 04:13:51 +00:00
msmith
0898051fd7 Improve the PCI interrupt routing code. Now the process is as follows:
- Look for a hardwired interrupt in the routing table for this
   bus/device/pin (we already did this).
 - Look for another device with the same link byte which has a hardwired
   interrupt.
 - Look for a PCI device matching an entry with the same link byte
   which has already been assigned an interrupt, and use that.
 - Look for a routable interrupt listed in the "PCI only" interrupts
   field and use that.
 - Pick the first interrupt that's marked as routable and use that.
2000-11-02 00:37:45 +00:00
wpaul
68862a0a68 Fix a couple of cases where I tried to release the I/O space resource twice
(once as as an I/O space resource and once as an IRQ resource). There was
a problem with this in if_rl too, which is how I found it.
2000-11-02 00:00:30 +00:00
wpaul
d454f22bf3 Fix 8-bit EEPROM breakage: compare against 0x8129, not 8129. 2000-11-01 23:56:46 +00:00
gallatin
cf4f3816fd Support for the linux ipc syscalls on the alpha, where each one has
its own syscall rather than going through a demux function like
linux_ipc() on i386
2000-11-01 23:17:31 +00:00
gallatin
b8fdbf65c5 use DUMMY macro and support from linux_util.h 2000-11-01 23:13:49 +00:00
gallatin
1174b5d169 Move the linux abi's alpha md files over to using David's build-time
syscall generation method
2000-11-01 23:07:25 +00:00
gallatin
1f8368b377 fix linux_termio and linux_termios structs on alpha. alpha differences
are in the termios struct (probably because linux wants to be compatible
with the osf/1 termios struct), not the termio struct.
2000-11-01 22:36:41 +00:00
phk
58beb59c80 Make internal clock sourcing work right by tying the NCO to the
Xtal reference instead of the CLADI input.

In unframed E1 mode, tie SIGFRZ low so that the mysycc doesn't
get confused.

Don't mask errors with OOF.  Don't ignore OOF errors.

Stop the channel before freeing mbufs in disconnect.

I still have no T1 devices to test with, so the T1 code is non-existent.
2000-11-01 22:04:15 +00:00