10940 Commits

Author SHA1 Message Date
bde
26666467e4 Added used include of <i386/isa/isa_device.h> - don't depend on
pollution in <sys/conf.h>
1998-06-17 13:54:59 +00:00
bde
a1e69b9f83 Fixed a misdeclaration. This unhides type mismatches which will be
fixed soon.
1998-06-17 12:14:55 +00:00
kato
f8ad884633 Sync with sys/i386/isa/sio.c revision 1.207. 1998-06-17 09:27:15 +00:00
kato
3dd20fc6df Sync with sys/i386/isa/conf/files.i386 revision 1.198. 1998-06-17 09:26:23 +00:00
bde
552ad26fff Backed out rev.1.183, which had nothing to do with its log message.
It was to support a half-baked optimization of certain long long
divisions in gcc-2.8 and/or egcs.  We now avoid these divisions.
1998-06-16 14:55:27 +00:00
bde
58834da70e Use copyout() instead of bcopy() to copy the image to user space.
bcopy() caused panics under heavy paging (not quite as suspected -
the kernel stack seemed to get corrupted).

Fixed long lines.

Reviewed by:	phk
1998-06-16 14:36:40 +00:00
bde
0fd89b46c5 Don't log "unexpected" events on never-opened devices. Events left
over from the probe are now expected for incompatible UARTs that
deliver IRQs as a strobe (low) instead of a level (high).

Discard events on going-away devices too.  Endless loops may have
been possible when an active pccard was removed.
1998-06-16 11:05:59 +00:00
kato
988417407e Sync with sys/i386/isa/syscons.c revision 1.263. 1998-06-15 13:06:33 +00:00
bde
c7898a453b Oops, uoff_t can't be used here yet. 1998-06-15 04:50:55 +00:00
julian
fadb1f2352 fix another typo 1998-06-15 00:35:47 +00:00
julian
bb9945ef90 Oops
left a "break;" out of the last patch
it complains for every loopback packet..
1998-06-14 23:53:43 +00:00
julian
7e20c7add6 Try narrow down the culprit sending undefined packet types through the loopback 1998-06-14 20:58:17 +00:00
ahasty
a75c402e98 Reviewed by: Amancio
Submitted by:	Randall Hopper <rhh@ct.picker.com>
    The patch supports using the X10 Mouse Remote in both stand-alone and
pass-through configurations, so you can plug your mouse and remote into the
same serial port, use the mouse for X, and use the remote for other apps
like Fxtv. For instance, we can now control fxtv via the remote control
just like a TV : change channels, mute, increase volume, zoom video,
freeze frame 8)

     The mouse events are channeled through the syscons/sysmouse I/F like
normal, and the remote buttons are "syphoned off" to a UNIX-domain stream
socket (defined as _PATH_MOUSEREMOTE in <machine/mouse.h>) for a
remote-aware app to grab and use.

For further info on the X10 Mouse Remote see:
http://www.x10.com/products/x10_mk19a.htm
1998-06-14 20:05:27 +00:00
julian
fb17974b6a Slight change to directory cleanup
Makes soft updates a bit cleaner. Eliminates some warnings about
'corrupted directories' from fsck.
1998-06-14 19:31:28 +00:00
julian
87c50f4db6 Horrible hack to allow newfs to work again in SLICE kernels.
Real fix in the making but requires editing 60+ files. (every damn driver)
1998-06-14 19:00:12 +00:00
dfr
b60a0e8d3d Oops, wrong file again. 1998-06-14 17:35:55 +00:00
gibbs
f4029dc308 Add support for the Storage Dimensions SDC3222F.
PR: 6261
Submitted by: "Matthew N. Dodd" <winter@jurai.net>
1998-06-14 16:41:57 +00:00
bde
a90040b583 Avoid an egcs pessimization for 64-bit signed division on i386's.
Pre-2.8 versions of gcc generate a call to __divdi3() for all 64-bit
signed divisions, but egcs optimizes them to a shift and fixup when
the divisor is a constant power of 2.  Unfortunately, it generates
a call to __cmpdi2() for the fixup, although all except possibly
ancient versions of gcc and egcs do ordinary 64-bit comparisons
inline.
1998-06-14 15:52:00 +00:00
bde
76251ad832 Added uoff_t. 1998-06-14 15:26:03 +00:00
bde
964096b168 Removed LOCORE ifdef. This header isn't used for locore stuff.
Use uoff_t instead of `unsigned long long' for unsigned offsets.

Fixed some style bugs.
1998-06-14 15:21:27 +00:00
bde
4308a30345 Define 64-bit types in terms of __int64_t and __uint64_t.
Define an unsigned version of off_t (uoff_t) if KERNEL is defined.
This is useful for micro-optimizing expressions involving off_t's
where you know that the values are non-negative but the compiler
doesn't know it.

Fixed a gratuitous ANSIism.
1998-06-14 14:08:21 +00:00
bde
313d7e968d Added typedefs for __int64_t and __uint64_t. These will be used to avoid
explicit use of `[unsigned] long long' and `[u]quad_t'.

Fixed disorder of and lack of comments for the types added in the previous
two commits.  Improved some comments.  The comments should be elswhere
(not duplicated in every MD file).
1998-06-14 14:00:47 +00:00
dfr
b4fb1227df Declare zs_cnattach. 1998-06-14 13:58:57 +00:00
dfr
037452c745 [Add missing files from previous commit]
Major changes to the generic device framework for FreeBSD/alpha:

* Eliminate bus_t and make it possible for all devices to have
  attached children.

* Support dynamically extendable interfaces for drivers to replace
  both the function pointers in driver_t and bus_ops_t (which has been
  removed entirely.  Two system defined interfaces have been defined,
  'device' which is mandatory for all devices and 'bus' which is
  recommended for all devices which support attached children.

* In addition, the alpha port defines two simple interfaces 'clock'
  for attaching various real time clocks to the system and 'mcclock'
  for the many different variations of mc146818 clocks which can be
  attached to different alpha platforms.  This eliminates two more
  function pointer tables in favour of the generic method dispatch
  system provided by the device framework.

Future device interfaces may include:

* cdev and bdev interfaces for devfs to use in replacement for specfs
  and the fixed interfaces bdevsw and cdevsw.

* scsi interface to replace struct scsi_adapter (not sure how this
  works in CAM but I imagine there is something similar there).

* various tailored interfaces for different bus types such as pci,
  isa, pccard etc.
1998-06-14 13:53:12 +00:00
dfr
dc295ed278 Major changes to the generic device framework for FreeBSD/alpha:
* Eliminate bus_t and make it possible for all devices to have
  attached children.

* Support dynamically extendable interfaces for drivers to replace
  both the function pointers in driver_t and bus_ops_t (which has been
  removed entirely.  Two system defined interfaces have been defined,
  'device' which is mandatory for all devices and 'bus' which is
  recommended for all devices which support attached children.

* In addition, the alpha port defines two simple interfaces 'clock'
  for attaching various real time clocks to the system and 'mcclock'
  for the many different variations of mc146818 clocks which can be
  attached to different alpha platforms.  This eliminates two more
  function pointer tables in favour of the generic method dispatch
  system provided by the device framework.

Future device interfaces may include:

* cdev and bdev interfaces for devfs to use in replacement for specfs
  and the fixed interfaces bdevsw and cdevsw.

* scsi interface to replace struct scsi_adapter (not sure how this
  works in CAM but I imagine there is something similar there).

* various tailored interfaces for different bus types such as pci,
  isa, pccard etc.
1998-06-14 13:46:10 +00:00
bde
a7d3dec6df Don't define away __attribute__() for the non-gcc and old-gcc cases.
Using __attribute__() in non-ifdefed code is just wrong if it changes
the semantics, and there is no way to ignore __attribute__() only in
the benign cases.

Don't use __attribute__ in non-ifdefed code here.  It was a benign
case, but we already have a macro (__unused) for this case.

Expanded comment about gotchas for __CONCAT() in the non-ANSI case.
1998-06-14 13:40:01 +00:00
dfr
1eddce4e7b Elf64_Shdr.sh_size should be Elf64_Size not Elf64_Word. 1998-06-14 13:24:09 +00:00
bde
a336cb95ff Avoid a 64-bit division in procfs_readdir(). Fixed related overflows.
Check args using the same expression as in fdesc and kernfs.  The check
was actually already correct, modulo overflow.  It could be tightened
up to either allow huge (aligned) offsets, treating them as EOF, or
disallow all offsets beyond EOF.

Didn't fix invalid address calculation &foo[i] where i may be out of
bounds.

Didn't fix shooting of foot using a private unportable dirent struct.
1998-06-14 12:53:39 +00:00
bde
6ee3b26044 Avoid a 64-bit division in kernfs_readdir(). Fixed related overflows
and arg checking.
1998-06-14 12:34:42 +00:00
bde
f38597edce Avoid 64-bit divisions and modulos. Fixed related overflows for weird
args.

This driver should not be used, since it calls uiomove() with interrupts
disabled.
1998-06-14 10:52:52 +00:00
bde
cc3e00bf7a Avoid a 64-bit division in fdesc_readdir(). Fixed related overflows
and missing arg checking.

Panic instead of returning bogus error codes or forgetting to check
all cases if fdesc_readdir() gets called for a non-directory.  This
can't happen.
1998-06-14 08:46:41 +00:00
steve
84ee66217a Add a macro tweak.
PR:		6932
Submitted by:	Nick Sayer <nsayer@quack.kfu.com>
1998-06-13 19:36:22 +00:00
steve
b0538909c0 Add a symlink from /dev/vga to /dev/ttyv0 when using DEVFS
for programs like doscmd.

PR:		6920
Submitted by:	Luoqi Chen <luoqi@chen.ml.org>
1998-06-13 18:53:22 +00:00
peter
05e156da67 Merge changes from vendor branch;
- connector selection values (should fix aui/bnc),
- non-shifting version of crc calculation using a table,
- interrupt mask adjustments,
- add some brackets where a #ifdef could break an if(),
- don't reset the card unless it's up.
1998-06-13 17:20:03 +00:00
phk
885f9e9d51 Introduce std_pps_ioctl() to automagically DTRT.
Add scaling capability to timex.offset, ntpd-4.0.73 will support this.
1998-06-13 09:30:26 +00:00
julian
98ec89f182 Allow a protocol to specify that it does NOT want to be looped back
even if it looks like it should (backwards compatibility with
old broken code) should get rid of some annoying messags.
1998-06-13 02:27:10 +00:00
phk
90b89a118c Update to draft-mogul-pps-api-02.txt as submitted to IETF 1998-06-12 23:15:53 +00:00
julian
e30abc2a08 Note which version of Kirk's sources this corresponds to. 1998-06-12 21:21:26 +00:00
julian
6b27bc7737 Fix the case when renaming to a file that you've just created and deleted,
that had an inode that has not yet been written to disk, when the inode of the
new file is also not yet written to disk, and your old directory entry is not
yet on disk but you need to remove it and the new name exists in memory
but has been deleted but the transaction to write the deleted name to disk
exists and has not yet been cancelled by the request to delete the non
existant name.  I don't know how kirk could have missed such a glaring
problem for so long. :-) Especially since the inconsitency survived on
the disk for a whole 4 second on average before being fixed by other code.
This was not a crashing bug but just led to filesystem inconsitencies
if you crashed.

Submitted by: Kirk McKusick (mckusick@mckusick.com)
1998-06-12 20:48:30 +00:00
julian
fd91ad6629 Remove 3 occurances of __FUNCTION__ 1998-06-12 20:03:26 +00:00
dg
6da95c02e7 Increased MAXTSIZ to 128MB...there are binaries that get quite large.
Increased DFLDSIZ to 128MB, as it is a better default.
Reviewed by:	jkh
1998-06-12 09:10:22 +00:00
julian
1ee51dd89f Go through the loopback code with a broom..
Remove lots'o'hacks.
looutput is now static.

Other callers who want to use loopback to allow shortcutting
should call the special entrypoint for this, if_simloop(), which is
specifically designed for this purpose. Using looutput for this purpose
was problematic, particularly with bpf and trying to keep track
of whether one should be using the charateristics of the loopback interface
or the interface (e.g. if_ethersubr.c) that was requesting the loopback.
There was a whole class of errors due to this mis-use each of which had
hacks to cover them up.

Consists largly of hack removal :-)
1998-06-12 03:48:19 +00:00
julian
eaeb937aa0 include opt_ipdivert.h so we get correct options 1998-06-12 02:48:47 +00:00
julian
7fe2cc176d Allow diverted packets from the transmit side to remember if they
had a recv interface and allow that state to be available
after re-injection for further tests.
1998-06-12 01:54:29 +00:00
julian
19e664debc Add B_NOCACHE to several cases where BSD4.4 only required a B_INVAL.
Change worked out by john and kirk in consort.
1998-06-11 17:44:32 +00:00
dfr
39d9d41bc8 Reimplement spl*() as function calls. Implement software interrupts. 1998-06-11 11:51:27 +00:00
dfr
2612cb112f Only build this on i386 for now. I may use it for the alpha later but
currently it doesn't compile.
1998-06-11 07:23:59 +00:00
dfr
ffb6f0fe45 Add missing Id keywords. 1998-06-11 07:15:55 +00:00
julian
da325152ee Replace 'sleep()' with 'tsleep()'
Accidentally imported from Kirk's codebase.

Pointed out by: various.
1998-06-10 22:02:14 +00:00
dfr
88b8a1bc7e Make these files compile. 1998-06-10 21:21:31 +00:00