Commit Graph

11157 Commits

Author SHA1 Message Date
Poul-Henning Kamp
6ca4ca2476 When we transfer time from one timecounter to the next, use nanouptime(),
not nanotime();  Otherwise we end up in 2026...

Fix the arg to dummy_get_timecount()
1998-07-02 21:35:02 +00:00
Bill Paul
ab48ff6913 Add workaround to allow the FreeBSD boot block to work on
Kapok Computer Co. notebook with AMI 'WinBIOS' which seems to insist
on having a short jump and nop as the first instructions in the
boot sector code. The prevailing theory is that the BIOS is doing
some sort of boot sector virus detection and refusing to run any
boot block that doesn't start with the same instruction sequence as
MS-DOG boot sector code. If this is the case, it would be nice if it
actually printed an error message to this effect instead of just
saying 'FAILED.'

This workaround has no effect on the boot sector code other than to
increase its size by three bytes.
1998-07-02 15:36:35 +00:00
Søren Schmidt
22ae800eb6 Fix the N'th occurance of missed bits due to opt_???? mucking.
Doesn't anybody TEST code before committing....

This is the N+1'th time these laste couble of days...
1998-07-02 14:09:44 +00:00
KATO Takenori
936f266f99 Moved `#ifndef NFS_NOSERVER' after including nfs.h. 1998-07-02 12:41:42 +00:00
KATO Takenori
1479b9a895 Sync with sys/i386/conf/options.i386 revision 1.82. 1998-07-02 12:40:01 +00:00
KATO Takenori
a723d97973 Sync with sys/i386/i386/machdep.c revision 1.302. 1998-07-02 12:39:32 +00:00
KATO Takenori
3744016942 Sync with sys/i386/boot/netboot/Makefile, bootmenu.c, main.c and
ns8390.c revisions 1.18, 1.15, 1.22 and 1.13, respectiely.
1998-07-02 12:37:36 +00:00
Julian Elischer
7d82bea53d Remove out of date comment. 1998-07-02 06:31:25 +00:00
Julian Elischer
f8db905cdb Remove unused option 1998-07-02 05:50:57 +00:00
Julian Elischer
b3adeeb209 Remove the option to keep IPFW diversion backwards compatible
WRT diversion reinjection. No-one has been bitten by the new behaviour
that I know of.
1998-07-02 05:49:12 +00:00
Bruce Evans
7f591b7e4b Fixed missing options headers. Options that affect LKMs shouldn't
exist.
1998-07-01 17:10:00 +00:00
Bruce Evans
857c5980c4 Added opt_vmpage.h to SRCS so that it actually gets created. 1998-07-01 17:02:57 +00:00
Poul-Henning Kamp
8cb5266728 Add 3 sysctl variables for future use by ps)1_ 1998-06-30 21:25:58 +00:00
Poul-Henning Kamp
c557e6528b Add PSE36 to the bits we know by name. 1998-06-30 19:41:21 +00:00
Søren Schmidt
7b8e054911 Leading whitespace in Makefile are TABS not spaces.... 1998-06-30 16:09:28 +00:00
Bruce Evans
673796a715 Nuked opt_defunct.h and kern_opt.c. config(8) now generates good enough
warnings about all unknown options.
1998-06-30 14:43:04 +00:00
John-Mark Gurney
ae3efda3a4 add new opt_nfs.h to cleanfiles... 1998-06-30 11:29:01 +00:00
John-Mark Gurney
bd362ab12d fix more of my breakage... :(
create opt_vmpage.h
1998-06-30 11:28:06 +00:00
Poul-Henning Kamp
9dccbd5bcb Sigh, we need this one now. 1998-06-30 11:20:19 +00:00
John-Mark Gurney
56786ee91b fix buildworld hopefully be3fore anyone complains...
NFS_*TIMO should possibly be converted to sysctl vars (jkh's suggestion),
but in some cases it looks like nfs keeps a copy of the value in a struct

hash sizes are already ifdef'd KERNEL, so there aren't userland inpact
from them...
1998-06-30 11:19:22 +00:00
Poul-Henning Kamp
6e56beb6d2 These are a selection of small problems and annoyances with the netboot
code. Apart from the first one, none really affect typical configurations
but are nevertheless unnecessary limitations. We use netbooted PCs as
student X-terminals and all of the below fixes have been useful. Apologies
for including them all in one PR, but some are just too silly or trivial
to send on their own!

a)     Newer SMC cards have hardware addresses starting with 00:E0.
      Netboot compares the MAC address with 00:00:C0 to determine
      if it is a WD/SMC card, so it fails to detect these.

b)     Netboot is unable to boot kzipped kernels, as it assumes that
      the kernel load address is 0x100000.

c)     Users can abort the booting process and enter arbitrary network
      addresses, or boot from a floppy disk. This can be a problem when
      netbooted machines are used in a student environment.

d)     It is not possible to set all options via bootp. For example there
      is no way to remotely force a client to boot from disk. With both
      SECURE_BOOT(patch below) and NO_TFTP defined, short of unplugging
      the eprom there is no way at all to get the client to boot locally.
      A generic solution is to allow complete netboot commands to be sent
      using bootp lines such as:
	      :T132="diskboot":
e)     The last character of netboot command names is not checked. You
      can type 'iz 10.0.0.1' and it will be interpreted as 'ip'. This
      is only important if you try to add a new command which is the
      same as an existing one except for the last character.

f)     We have a configuration where multiple servers are willing to serve
      a diskless client. The tftp config file, or the bootptab entry on
      each server must specify the root and swap filesystems as 'ip:/fs'
      even though 'ip' will usually be the responding server's IP address.
      It would be nice if netboot could automatically prepend the server's
      IP address to an entry specified as just '/fs', so that multiple
      servers can use the same tftp or bootp configuration files. Admittedly
      this is hardly a major problem!

PR:		7098
Submitted by:	Ian Dowse <iedowse@maths.tcd.ie>
1998-06-30 11:10:29 +00:00
Poul-Henning Kamp
53592f437b #include sys/libkern.h instead of stdlib.h.
PR:		7105
Reviewed by:	phk
Submitted by:	Robert Watson <robert+freebsd@cyrus.watson.org>
1998-06-30 11:05:11 +00:00
Poul-Henning Kamp
5fa7f62e66 Byte count statistics of multicast vifs are invalid.
The problem is caused by a wrong endianess in the sum.

PR:		7115
Submitted by:	Joao Carlos Mendes Luis <jonny@jonny.eng.br>
1998-06-30 10:56:31 +00:00
John-Mark Gurney
b039fc4c34 remove option LINUX as it did nothing, add DEBUG_LINUX to debug the
linux emulation...

(actually moved LINUX to opt_dontuse.h)
1998-06-30 08:40:33 +00:00
John-Mark Gurney
3f139a1a4c move OVERRIDE_TUNER from i386 to general options... it's not i386
specific
1998-06-30 08:32:51 +00:00
John-Mark Gurney
a9e837f479 document options to hardwire GUS irq/dmas... 1998-06-30 08:24:02 +00:00
John-Mark Gurney
e261d589ff document PCI_QUIET that prevents pci from compiling in so many strings 1998-06-30 08:13:27 +00:00
John-Mark Gurney
20f718132d document some VM paging options for cache sizes:
PQ_NOOPT	no coloring
PQ_LARGECACHE	used for 512k/16k cache
PQ_HUGECACHE	used for 1024k/16k cache
1998-06-30 08:01:30 +00:00
John-Mark Gurney
b529c5e67c make NO_SCSI_SENSE a proper option (already documented in LINT) 1998-06-30 07:47:44 +00:00
John-Mark Gurney
a9c94e9b71 document and make EXPORTMFS a new style option 1998-06-30 07:36:33 +00:00
John-Mark Gurney
df394affa2 convert some nfs tunables to options, these are:
NFS_MINATTRTIMO         VREG attrib cache timeout in sec
NFS_MAXATTRTIMO
NFS_MINDIRATTRTIMO      VDIR attrib cache timeout in sec
NFS_MAXDIRATTRTIMO
NFS_GATHERDELAY         Default write gather delay (msec)
NFS_UIDHASHSIZ          Tune the size of nfssvc_sock with this
NFS_WDELAYHASHSIZ       and with this
NFS_MUIDHASHSIZ         Tune the size of nfsmount with this
NFS_NOSERVER            (already documented in LINT)
NFS_DEBUG               turn on NFS debugging

also, because NFS_ROOT is used by very different files, it has been
renamed to opt_nfsroot.h instead of the old opt_nfs.h....
1998-06-30 03:01:37 +00:00
Bruce Evans
ec10b53530 Fixed bogus dependency on `beforedepend'. File targets should never
depend on phony targets or they would always be out of date.
1998-06-29 18:52:33 +00:00
Poul-Henning Kamp
52bd565f39 Update generated files 1998-06-28 10:04:01 +00:00
Poul-Henning Kamp
67f4e2ed05 Add trailing newline to sys/syscall.mk so that diff doesn't choke on it. 1998-06-28 10:01:52 +00:00
David Greenman
c87e2930e6 Added a sysctl variable kern.sugid_coredump for controlling coredump
behavior of setuid/setgid binaries that defaults to 0 (coredump disabled).
1998-06-28 08:37:45 +00:00
Justin T. Gibbs
b66655cf37 Some revisions of the aic7880 have a problem where, if the
data fifo is full, but the PCI input latch is not empty,
HDMAEN cannot be cleared.  The fix used here is to attempt
to drain the data fifo until there is space for the input
latch to drain and HDMAEN de-asserts.

This is a 1 instruction fix, so it should have no performance
impact.
1998-06-28 02:58:57 +00:00
Doug Rabson
14c35d6ca0 Add options for selecting ELF or KLD symbols in DDB. 1998-06-28 01:03:13 +00:00
Doug Rabson
f4487e1157 Make breakpoints and single-step work. 1998-06-28 01:00:27 +00:00
Doug Rabson
c2e7b2e40f Forgot to mention:
Obtained from: NetBSD
1998-06-28 00:59:26 +00:00
Doug Rabson
0282b90962 Add DDB symbol support for ELF and KLD. The KLD support only supports global
symbols so its not too useful.  Changes to the kernel linker to allow it to
supply DDB with symbols will come later.
1998-06-28 00:57:28 +00:00
Doug Rabson
6edf3d9144 Supply the symbol table as an argument to X_db_symbol_values (required for elf). 1998-06-28 00:55:02 +00:00
Doug Rabson
7045d394b1 Use db_addr_t for the breakpoint address in db_set_single_step. 1998-06-28 00:52:50 +00:00
Doug Rabson
3bf983fb25 Add a macro for testing the e_machine field of Elf64_Ehdr. 1998-06-28 00:50:35 +00:00
Doug Rabson
949398af9d Use elf symbols in DDB. 1998-06-28 00:48:48 +00:00
Doug Rabson
812e7ee3e3 Allow gentrap. 1998-06-28 00:47:50 +00:00
Doug Rabson
eb9fc51b1d Call ddb_trap() for gentrap on SimOS since I am using gentrap for DDB
breakpoints (SimOS uses bpt itself for external debuggers).
1998-06-28 00:47:20 +00:00
Doug Rabson
454157c1d3 Add a hack to get the ELF symbols from where SIMOS leaves them. 1998-06-28 00:45:50 +00:00
Doug Rabson
1b7d1a7357 machine/conf.h no longer exists. 1998-06-28 00:44:51 +00:00
Doug Rabson
431e760b94 Make db_tok_number a long to allow typing 64bit numbers on alpha. 1998-06-27 15:40:56 +00:00
Doug Rabson
c111a701df Use %+11ln for printing in r format to make it work for 64bit registers. 1998-06-27 15:39:51 +00:00
Doug Rabson
44dc956d24 Add some stack backtrace support. Pretty fragile but its a start. 1998-06-27 15:37:43 +00:00
Doug Rabson
eb74dcc872 Use %lx for printing register contents. 1998-06-27 15:35:57 +00:00
Doug Rabson
b87cfa799e Make uoff_t compile. 1998-06-27 15:35:00 +00:00
John Hay
a910fdcb88 Only make struct xtcpcb visable if _NETINET_IN_PCB_H_ and _SYS_SOCKETVAR_H_
are defined.
Reviewed by:	bde
1998-06-27 07:30:45 +00:00
Poul-Henning Kamp
94c69b7e15 Make vprint() print dev_t in hex also. 1998-06-27 07:28:49 +00:00
Poul-Henning Kamp
81b42c386e Report the type from the inode, not the vnode. 1998-06-27 06:45:04 +00:00
Poul-Henning Kamp
c259b8dd2b Report the mode as the result of the VOP_GETATTR rather than the
vnodes type, they may not correspond.
1998-06-27 06:43:09 +00:00
Poul-Henning Kamp
7c281842e3 Remove isdisk() hacks. 1998-06-26 18:14:25 +00:00
Poul-Henning Kamp
761b9eeed9 Add D_DISK flag. 1998-06-26 18:13:57 +00:00
Jordan K. Hubbard
d94ce17be4 Flesh this document out just a little in response to some user
questions and also recommend linking over copying since, at this stage,
a stale copy is a real concern.
1998-06-26 10:35:55 +00:00
Dmitrij Tejblum
6bfc1a02b1 Remove "not hungly" panics. Cookies now used by the linux and ibcs2
emulators. The emulators assume that filesystem may just ignore cookies, and
handle this case correctly. So we just ignore cookies.

Also sync *_readdir "prototypes" with reality.
1998-06-25 16:54:41 +00:00
Poul-Henning Kamp
b62591052c Remove bdevsw_add(), change the only two users to use bdevsw_add_generic().
Extend cdevsw to be superset of bdevsw.
Remove non-functional bdev lkm support.
Teach wcd what the open() args mean.
1998-06-25 11:28:07 +00:00
KATO Takenori
e379d366dd Sync with sys/i386/conf/Makefile.i386 revision 1.115. 1998-06-25 10:49:49 +00:00
Mike Smith
324bac9ffe Oops, add ppc to the 'tty' imask. 1998-06-24 22:01:32 +00:00
Poul-Henning Kamp
01a88d0e2d When some functions were added to sys/queue.h (1.15, 1.16),
the queue diagram (in comment, showing member functions)
update were slipped.

PR:		7048
Submitted by:	SAWADA Mizuki <miz@qb3.so-net.ne.jp>
1998-06-24 20:51:09 +00:00
Eivind Eklund
1fcddf2eea Fix race condition for creation of vnode_if.c and vnode_if.h.
Exact problem pointed out by: Cyrus Rahman <cr@jcmax.com>
1998-06-24 13:55:32 +00:00
KATO Takenori
6aa96b0f62 Sync with sys/i386/isa/syscons.c revision 1.264. 1998-06-24 13:37:50 +00:00
KATO Takenori
d035c1e702 Sync with sys/i386/isa/syscons.c revision 1.208. 1998-06-24 13:37:23 +00:00
Kazutaka YOKOTA
bf41934ccb Don't refer to mouse_info.u.datea.[xyz] while processing MOUSE_BUTTON_EVENT
ioctl.  These fields don't have valid values for this ioctl.
PR: kern/6928
Submitted by: Bill Fenner <fenner@parc.xerox.com>
1998-06-24 10:21:30 +00:00
Poul-Henning Kamp
e29bc9add4 Avoid some panics in sio_unload which gets called with various dirt
if the attach of a modem card failed.
1998-06-24 09:23:32 +00:00
Brian Somers
0579bd7175 Add CUSEEME support. This has *not* been tested, nor
could I find anyone to test it, so please report any
problems to me.
1998-06-24 06:58:00 +00:00
Poul-Henning Kamp
96563a5b55 Typo fix.
Reviewed by:	phk
Submitted by:	John Hay <jhay@mikom.csir.co.za>
1998-06-22 21:09:10 +00:00
KATO Takenori
986ecdf316 Sync with sys/i386/isa/if_ed.c and npx.c revisions 1.143 and 1.61,
respectively.
1998-06-22 08:06:58 +00:00
KATO Takenori
b0eb6f6a10 Sync with sys/i386/i386/machdep.c revision 1.301. 1998-06-22 08:05:12 +00:00
KATO Takenori
76ed357a00 Sync with sys/i386/isa/if_fe.c revision 1.42. 1998-06-22 08:03:52 +00:00
Bruce Evans
add4ae9324 Fixed (?) races in mark_buffer_dirty(). We abuse the buffer cache
by hacking on locked buffers without getblk()ing them, and we didn't
even use splbio() to prevent biodone() changing the buffer underneath
use when a write completes.  I think there was no problem in practice
on i386's because the operations on b_flags and numdirtybufs happen to
be atomic.  We still depend on biodone()'s operations on b_flags not
interfering with ours.  I think there is only interference for B_ERROR,
and this is harmless because errors for async writes are ignored anyway.

Don't use mark_buffer_dirty() except for superblock-related metadata.
It was used in just one case where ordinary BSD buffering is more
natural.
1998-06-21 21:06:04 +00:00
Bruce Evans
9b7a8fb7d8 Removed unused function ll_w_block(). It has always had races due
to not using splbio(), and has rotted a little.  The races were
probably harmless in practice because this function was only used
for superblock updates, and separate superblock updates are probably
prevented from running into each other by doing part of the update
synchronously.
1998-06-21 19:56:31 +00:00
Bruce Evans
be160d60ab Removed unused includes. 1998-06-21 18:02:50 +00:00
Bruce Evans
b391e5cdc4 Removed unused includes.
Ifdefed conditionally used includes.
1998-06-21 17:46:53 +00:00
Bruce Evans
86ef30b746 Removed unused includes.
Ifdefed conditionally used includes.
1998-06-21 17:08:08 +00:00
Bruce Evans
2d7fa8d877 Removed unused includes.
Ifdefed conditionally used includes.
Finished rev.1.39.  (I only submitted the request.)
1998-06-21 16:51:06 +00:00
Bruce Evans
4d2540b074 Removed unused includes.
Don't depend on "implicit int".
1998-06-21 15:54:11 +00:00
Bruce Evans
2773aa0ef6 Removed unused includes.
Don't depend on "implicit int".
Don't bloat the data section with explicit initialization to 0.
1998-06-21 15:49:39 +00:00
Bruce Evans
e5b19842ef Removed unused includes. 1998-06-21 14:53:44 +00:00
Bruce Evans
71a5654a7b Ifdefed a conditionally used include. 1998-06-21 14:45:00 +00:00
Stephen McKay
3006f10bdb Remove bogus comment that teleported in from sys/i386/i386/mp_machdep.c. 1998-06-21 14:08:27 +00:00
Bruce Evans
abc97a0611 Moved P1003 options from the middle of the devices section to the
end of the main options section.

Turned on documented option OVERRIDE_TUNER.  LINT is primarily
for turning on options, not for documenting them.

Don't list IPFILTER twice (once as broken).
1998-06-21 13:36:53 +00:00
Bruce Evans
29c0cb37eb Fixed typo in ifdefed code. (NFS_ACDEBUG is not in LINT. Therefore,
code controlled by it did not even compile.)
1998-06-21 12:50:12 +00:00
Bruce Evans
4344f492c4 Added a missing options include. 1998-06-21 12:36:12 +00:00
Bruce Evans
df471779ea Round tickadj up. This prevents tickadj from being 0 when HZ > 500,
which makes adjtime(2) useless and confuses xntpd(8) into refusing
to start even when it would use the kernel PLL instead of adjtime().
The result is the same as recommended by tickadj(8), at least when
HZ divides 10^6.  Of course, you wouldn't want to actually use
adjtime() when HZ is large.  In the silly boundary case of HZ == 10^6,
tickadj == tick == 1 so the clock stops while adjtime() is active.
1998-06-21 12:22:35 +00:00
Bruce Evans
316bbd5c6f Converted add_interrupt_randomness() to take a `void *' arg. Rewrote
mmioctl() to fix hundreds of style bugs and a few error handling bugs
(don't check for superuser privilege for inappropriate ioctls, don't
check the input arg for the output-only MEM_RETURNIRQ ioctl, and don't
return EPERM for null changes).
1998-06-21 11:33:32 +00:00
Peter Wemm
6054307b92 Merge ipfilter 3.2.3 -> 3.2.7 changes onto mainline. 1998-06-20 18:37:51 +00:00
Peter Wemm
122221ad20 This commit was generated by cvs2svn to compensate for changes in r37071,
which included commits to RCS files with non-trunk default branches.
1998-06-20 18:18:05 +00:00
Peter Wemm
aeee047f95 Import ipfilter 3.2.7 kernel components 1998-06-20 18:18:05 +00:00
Peter Wemm
8bc3cd6211 Zap what appears to be a relic of the older version of zlib. The other
maintained mbuf based ppp-deflate.c's have removed this.
1998-06-20 16:55:44 +00:00
Peter Wemm
aa8859a838 Missing splx(). 1998-06-20 16:39:35 +00:00
Peter Wemm
a97a7d9e61 Merge ppp changes from 2.3.3 -> 2.3.5. I have spotted some more
problems, which I'll have a go at shortly.
1998-06-20 16:28:04 +00:00
Peter Wemm
cf6961e696 ELF versions of __warn_references() and __weak_reference(). Note that this
doesn't work with libc/net/res_stubs.c since gas wants the weak reference
to take place in the same context as the real definition, presumably so
that it can get hold of the symbol typing etc.
However, this doesn't matter for libc/elf since we don't have binaries
that use the old symbol names.
1998-06-18 18:35:04 +00:00
Bruce Evans
5a2ae61fec Converted isa_strayintr() to take a `void *' arg. 1998-06-18 16:08:46 +00:00
Bruce Evans
9a2daf9190 Changed the type of an isa/general interrupt handler to take a
`void *' arg.  Fixed or hid most of the resulting type mismatches.
Handlers can now be updated locally (except for reworking their
global declarations in isa_device.h).
1998-06-18 15:32:09 +00:00
Bruce Evans
a5211c115d Renambed sbintr to sb_intr to avoid a conflict with the (now
unconditionally declared although it can't be configured together
with snd) extern function sbintr.
1998-06-17 16:59:30 +00:00
Bruce Evans
e9b998f0be Don't depend on <sys/conf.h> declaring isa device structs or isa
interrupt handlers.  pcm is not in LINT, so it is hard to test.
1998-06-17 16:54:22 +00:00
KATO Takenori
64c4ba0748 Delete redundant declaration of lptintr. 1998-06-17 16:33:14 +00:00
KATO Takenori
a880d1a224 Declare bsintr when PC98 is defined. 1998-06-17 16:32:23 +00:00
KATO Takenori
a47dddaf2d Sync with sys/i386/conf/Makefile.i386 revision 1.114. 1998-06-17 16:30:53 +00:00
KATO Takenori
d5f1066e45 Sync with sys/i386/i386/machdep.c revision 1.300. 1998-06-17 16:30:16 +00:00
KATO Takenori
f8330c4760 Sync with sys/i386/isa/if_ed.c revision 1.142. 1998-06-17 16:29:27 +00:00
Bruce Evans
461792a572 The isa device configuration hook was especially useless here. 1998-06-17 15:55:22 +00:00
Bruce Evans
afafca8bcb Don't generate declarations for isa device structs in "ioconf.h".
Don't generate declarations for isa interrupt handlers at all.
Isa interrupt handlers are now declared in <i386/isa/isa_device.h>
but should be converted take a `void *' arg and staticized as
soon as possible.

Updated CONFIGVERS.  New configs are very incompatible with
previous versions.
1998-06-17 15:16:53 +00:00
Bruce Evans
084d9853ca Don't declare isa device structs or isa interrupt handlers in <sys/conf>,
and don't depend on them being declared there.  This will cause lots of
warnings for a few minutes until config is updated.  Interrupt handlers
should never have been configured by config, and the machine generated
declarations get in the way of changing the arg type from int to void *.
1998-06-17 14:58:04 +00:00
Bruce Evans
0291915fb3 Added used include of "ioconf.h" - don't depend on pollution in
<sys/conf.h>.  I'm fixing isa interrupt handler configuration and
this is just a quick fix to keep SCSI configuration unharmed.
1998-06-17 14:13:15 +00:00
Bruce Evans
f878d7eebd Include <i386/isa/pnp.h> after including its prerequisite
<i386/isa/isa_device.h> - don't depend on pollution in <sys/conf.h>
including the prerequisite earlier.
1998-06-17 14:01:00 +00:00
Bruce Evans
b6f37c1954 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
Bruce Evans
a249e02605 Fixed a misdeclaration. This unhides type mismatches which will be
fixed soon.
1998-06-17 12:14:55 +00:00
KATO Takenori
0495b7f964 Sync with sys/i386/isa/sio.c revision 1.207. 1998-06-17 09:27:15 +00:00
KATO Takenori
14f155eeb0 Sync with sys/i386/isa/conf/files.i386 revision 1.198. 1998-06-17 09:26:23 +00:00
Bruce Evans
2ebd0c3795 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
Bruce Evans
f95ac73519 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
Bruce Evans
eca52014bd 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 Takenori
f67d01d564 Sync with sys/i386/isa/syscons.c revision 1.263. 1998-06-15 13:06:33 +00:00
Bruce Evans
7cac38703b Oops, uoff_t can't be used here yet. 1998-06-15 04:50:55 +00:00
Julian Elischer
2b8a366cf8 fix another typo 1998-06-15 00:35:47 +00:00
Julian Elischer
05b3ccef36 Oops
left a "break;" out of the last patch
it complains for every loopback packet..
1998-06-14 23:53:43 +00:00
Julian Elischer
201c2527a9 Try narrow down the culprit sending undefined packet types through the loopback 1998-06-14 20:58:17 +00:00
Amancio Hasty
6797869271 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 Elischer
c619155f0e 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 Elischer
8e6a14825c 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
Doug Rabson
7066d59cef Oops, wrong file again. 1998-06-14 17:35:55 +00:00
Justin T. Gibbs
994fe7649c 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
Bruce Evans
4c4918c9e4 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
Bruce Evans
a525aa3424 Added uoff_t. 1998-06-14 15:26:03 +00:00
Bruce Evans
f0c2a198e7 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
Bruce Evans
54968d29c0 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
Bruce Evans
23adf828d5 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
Doug Rabson
2f41bd7203 Declare zs_cnattach. 1998-06-14 13:58:57 +00:00
Doug Rabson
b1bf661000 [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
Doug Rabson
99d11cde56 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
Bruce Evans
25874f75bc 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
Doug Rabson
ef219789e1 Elf64_Shdr.sh_size should be Elf64_Size not Elf64_Word. 1998-06-14 13:24:09 +00:00
Bruce Evans
a395dbb153 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
Bruce Evans
ecf723aa39 Avoid a 64-bit division in kernfs_readdir(). Fixed related overflows
and arg checking.
1998-06-14 12:34:42 +00:00
Bruce Evans
26d7294956 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
Bruce Evans
a41878a77a 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 Price
396ffb2e6b Add a macro tweak.
PR:		6932
Submitted by:	Nick Sayer <nsayer@quack.kfu.com>
1998-06-13 19:36:22 +00:00
Steve Price
56cef66e8c 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 Wemm
12b77dc845 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
Poul-Henning Kamp
938ee3ce4d 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 Elischer
9d3f194df3 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
Poul-Henning Kamp
389825d558 Update to draft-mogul-pps-api-02.txt as submitted to IETF 1998-06-12 23:15:53 +00:00
Julian Elischer
28ed032673 Note which version of Kirk's sources this corresponds to. 1998-06-12 21:21:26 +00:00
Julian Elischer
aa75cb86b4 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 Elischer
6b1214b0fc Remove 3 occurances of __FUNCTION__ 1998-06-12 20:03:26 +00:00
David Greenman
f4fabec6b0 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 Elischer
ed7509ace4 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 Elischer
0cab75363d include opt_ipdivert.h so we get correct options 1998-06-12 02:48:47 +00:00
Julian Elischer
bab04eb816 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 Elischer
6d0ba44288 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
Doug Rabson
c48c13cb5a Reimplement spl*() as function calls. Implement software interrupts. 1998-06-11 11:51:27 +00:00
Doug Rabson
3900ddb2dc 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
Doug Rabson
bcb4edfc14 Add missing Id keywords. 1998-06-11 07:15:55 +00:00
Julian Elischer
32f5d4d843 Replace 'sleep()' with 'tsleep()'
Accidentally imported from Kirk's codebase.

Pointed out by: various.
1998-06-10 22:02:14 +00:00
Doug Rabson
9d8b200937 Make these files compile. 1998-06-10 21:21:31 +00:00
Doug Rabson
71cf4ef7be Add my own copyright to this file. In this case not even the comments
resemble the NetBSD source so the NetBSD copyright has been removed.
1998-06-10 20:48:03 +00:00
Julian Elischer
8c221701c3 Fix for "live inode" panic.
Submitted by: Kirk McKusick <mckusick@McKusick.COM>
Reviewed by: yeah right...
1998-06-10 20:45:46 +00:00
Doug Rabson
10bd78e08d Add my own copyright to this file. The only remnants of NetBSD code here
are in the comments.  As such the NetBSD copyright is included to protect
the valuable intellectual copyright included in those comments.
1998-06-10 20:40:59 +00:00
Doug Rabson
ecf6bca146 Add yet another copyright. If some CVS wizard feels like nuking the versions
that so offend Jason Thorpe then they can.
1998-06-10 20:35:10 +00:00
Doug Rabson
64f14464e5 Fix mangled Id keyword. 1998-06-10 20:13:32 +00:00
Doug Rabson
f7491b1657 Add Id keyword. 1998-06-10 20:11:16 +00:00
Julian Elischer
4af0bb0f9e Remove buggy debugging code. 1998-06-10 20:03:16 +00:00
Doug Rabson
5c09fbfe64 Add missing copyrights. Thanks to Jason Thorpe for politely noting the
mistake...
1998-06-10 19:59:41 +00:00
Alexander Langer
6ead682113 ENOPNOTSUPP --> EOPNOTSUPP
PR:		6906
Submitted by:	Steven G. Kargl <kargl@troutmask.apl.washington.edu>
1998-06-10 19:56:06 +00:00
Julian Elischer
939001af5c Back out John's changes 1.45 -> 1.46
Kirk confirms that the original semantic was what he wanted...
(well, a very slight difference)
May fix "dangling deps" panic with soft updates.
1998-06-10 19:27:56 +00:00
Julian Elischer
28913ebe4e Submitted by: Kirk McKusick <mckusick@McKusick.COM>
Fix for potential hang when trying to reboot the system or
to forcibly unmount a soft update enabled filesystem.
FreeBSD already handled the reboot case differently, this is however a better
fix.
1998-06-10 18:13:19 +00:00
Doug Rabson
dd08c7e27d I accidentally committed the wrong file, sorry. 1998-06-10 17:54:37 +00:00
Dmitrij Tejblum
40b0939a15 Back out previous change. This behavior is at least completely
"susv2"-compliant.
1998-06-10 13:46:46 +00:00
Poul-Henning Kamp
1de24c3a4e When system act as IPX router (sysctl -w net.ipx.ipx.ipxforwarding=1,
running IPXRouted -s) between IPX configured interfaces, it generate
syslog messages "ipx_ctlinput: cmd 15." even if kernel compiled with
IPXPRINTFS=0 and IPX_ERRPRINTFS=0 options.

PR:		6875
Reviewed by:	phk
Submitted by:	Vladimir A. Jakovenko <vovik@ntu-kpi.kiev.ua>
1998-06-10 12:52:11 +00:00
Poul-Henning Kamp
4342fa9172 Correct name and number for sxdc modules
PR:		6891
Reviewed by:	phk
Submitted by:	Nick Sayer <nsayer@quack.kfu.com>
1998-06-10 12:49:54 +00:00
Dmitrij Tejblum
75065d2cd8 Also return EOPNOTSUPP rather than EINVAL for not supported owner and group
changes.
1998-06-10 11:36:01 +00:00
Doug Rabson
897cd717a5 Add initial support for the FreeBSD/alpha kernel. This is very much a
work in progress and has never booted a real machine.  Initial
development and testing was done using SimOS (see
http://simos.stanford.edu for details).  On the SimOS simulator, this
port successfully reaches single-user mode and has been tested with
loads as high as one copy of /bin/ls :-).

Obtained from: partly from NetBSD/alpha
1998-06-10 10:57:29 +00:00
Doug Rabson
8c12612cf6 64bit fixes: don't cast pointers to int. 1998-06-10 10:31:08 +00:00
Doug Rabson
2b605d0804 64bit fixes: don't cast p->p_retval to an int*. 1998-06-10 10:30:23 +00:00
Doug Rabson
831b9ef2be 64bit fixes: use u_long not int for ioctl command. 1998-06-10 10:29:31 +00:00
Doug Rabson
10d4743f6f 64bit fixes: use size_t not u_int for sizes. 1998-06-10 10:28:29 +00:00
Doug Rabson
2ef49ddfcb 64bit fixes: p->p_retval is a register_t[] not an int[]. 1998-06-10 10:27:43 +00:00
KATO Takenori
a06a8629ce Sync with sys/i386/isa/clock.c revision 1.124. 1998-06-10 08:25:23 +00:00
Peter Wemm
7a204420d3 Don't silently accept attempts to change flags where they are not
supported.
1998-06-10 06:34:57 +00:00
Peter Wemm
c3a24f69d9 Return EOPNOTSUPP rather than EINVAL for flags that are not supported. 1998-06-10 06:30:31 +00:00
Brian Somers
dfcb634be3 Quieten gcc 2.8.1 1998-06-10 00:26:19 +00:00
Dmitrij Tejblum
ffbdd68eba Fix typo in a comment. 1998-06-09 13:20:29 +00:00
Poul-Henning Kamp
a58f0f8e66 Add a tc_ prefix to struct timecounter members.
Urged by:	bde
1998-06-09 13:10:54 +00:00
Bruce Evans
1afde994e9 Pass lists of possible root devices and their names up to the
machine-independent code and try mounting the devices in the
lists instead of guessing alternative root devices in a machine-
dependent way.

autoconf.c:
Reject preposterous slice numbers instead of silently converting
them to COMPATIBILITY_SLICE.

Don't forget to force slice = COMPATIBILITY_SLICE in the floppy
device name.

Eliminated most magic numbers and magic device names in setroot().

Fixed dozens of style bugs.

vfs_conf.c:
Put the actual root device name instead of "root_device" in the
mount struct if the actual name is available.  This is useful after
booting with -s.  If it were set in all cases then it could be used
to do mount(8)'s ROOTSLICE_HUNT and fsck(8)'s hotroot guess better.
1998-06-09 12:52:35 +00:00
Bruce Evans
39b14624c5 Updated generated files. 1998-06-09 03:36:59 +00:00
Bruce Evans
e7c1c309fa Don't generate COMPAT_43 cruft if there are no COMPAT_43 syscalls.
In particular, don't generate an include of "opt_compat.h" if it
wouldn't affect anything we create.  This will fix recent breakage
of the ibcs2 LKM.  The ibcs2 syscall files were not regenerated
properly, so the LKM didn't break immediately when we started
generating this extraneous include.
1998-06-09 03:32:05 +00:00
Bruce Evans
9ae58db7a3 Include "opt_compat.h" explicitly instead of depending on
makesyscalls.sh generating it as pollution.

Don't attempt to separate the includes by newlines.  makesyscalls.sh
just ignores newlines.
1998-06-09 03:28:14 +00:00
Bruce Evans
afba897ff2 Fixed `make depend', which I broke here about a month ago by moving
the null default for `depend' from bsd.dep.mk to bsd.obj.mk.
bsd.kmod.mk included these files in a bad order, so it picked up
the null default.
1998-06-09 02:55:40 +00:00
Julian Elischer
3f2419f9e4 The version of the softdep changes in FreeBSD broke the
(doingdirectory && !newparent) case of ufs_rename().
rename("D1/X/", "D2/Y/") gives a wrong link count for D2.

Submitted by: Bruce Evans <bde@zeta.org.au>
Reviewed by: Kirk McKusick <mckusick@McKusick.COM>
1998-06-08 23:55:33 +00:00
Julian Elischer
01f0fef31b Don't let ifunit() modify the string passed as an argument.
it may be in the text segment and write protected.
1998-06-08 20:33:29 +00:00
John Dyson
0d3dd8fbc5 Remove some junk left over from a previous commit.
Submitted by:	phk
1998-06-08 18:18:28 +00:00
Bruce Evans
414c93f3aa Updated generated files. 1998-06-08 11:08:35 +00:00
Bruce Evans
bf0955a99d Fixed some style bugs in output (missing tabs and unparenthesized macros).
Fixed some style bugs in source (mostly, superfluous backslashes).
1998-06-08 11:02:00 +00:00