From owner-cvs-sys Sun Jul 9 01:14:00 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id BAA21752 for cvs-sys-outgoing; Sun, 9 Jul 1995 01:14:00 -0700 Received: (from joerg@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id BAA21699 ; Sun, 9 Jul 1995 01:12:32 -0700 Date: Sun, 9 Jul 1995 01:12:32 -0700 From: Joerg Wunsch Message-Id: <199507090812.BAA21699@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/net if.h Sender: cvs-sys-owner@freebsd.org Precedence: bulk joerg 95/07/09 01:12:30 Modified: sys/net if.h Log: Move some struct definitions outside of struct's, so their scopes for C++ will match the scopes for C. Submitted by: Warner Losh From owner-cvs-sys Sun Jul 9 01:15:56 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id BAA21862 for cvs-sys-outgoing; Sun, 9 Jul 1995 01:15:56 -0700 Received: (from joerg@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id BAA21785 ; Sun, 9 Jul 1995 01:14:29 -0700 Date: Sun, 9 Jul 1995 01:14:29 -0700 From: Joerg Wunsch Message-Id: <199507090814.BAA21785@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/scsi st.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk joerg 95/07/09 01:14:27 Modified: sys/scsi st.c Log: PR #kern/572: >Synopsis: Booting w/scsi tape in drive causes first use to fail Booting with a tape in a SCSI tape drive will cause the first use of the tape to fail with the following message: st0: bad request, must be between 0 and 0. Submitted by: mpp@legarto.minn.net (Mike Pritchard) From owner-cvs-sys Sun Jul 9 07:29:59 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id HAA00304 for cvs-sys-outgoing; Sun, 9 Jul 1995 07:29:59 -0700 Received: (from root@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id HAA00294 ; Sun, 9 Jul 1995 07:29:48 -0700 Date: Sun, 9 Jul 1995 07:29:48 -0700 From: David Greenman Message-Id: <199507091429.HAA00294@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/netinet ip_fw.c ip_fw.h ip_fwdef.c ip_input.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk davidg 95/07/09 07:29:47 Modified: sys/netinet ip_fw.c ip_fw.h ip_fwdef.c ip_input.c Log: Fixed panic that occurs on certain firewall rejected packets that was caused by dtom() being used on an mbuf cluster. The fix involves passing around the mbuf pointer. Submitted by: Bill Fenner From owner-cvs-sys Mon Jul 10 01:40:10 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id BAA00800 for cvs-sys-outgoing; Mon, 10 Jul 1995 01:40:10 -0700 Received: (from root@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id BAA00779 ; Mon, 10 Jul 1995 01:39:53 -0700 Date: Mon, 10 Jul 1995 01:39:53 -0700 From: David Greenman Message-Id: <199507100839.BAA00779@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/sys sysctl.h Sender: cvs-sys-owner@freebsd.org Precedence: bulk davidg 95/07/10 01:39:51 Modified: sys/sys sysctl.h Log: Killed bogus sparc #ifdef. From owner-cvs-sys Mon Jul 10 01:49:20 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id BAA01246 for cvs-sys-outgoing; Mon, 10 Jul 1995 01:49:20 -0700 Received: (from root@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id BAA01231 ; Mon, 10 Jul 1995 01:49:03 -0700 Date: Mon, 10 Jul 1995 01:49:03 -0700 From: David Greenman Message-Id: <199507100849.BAA01231@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/vm vm_glue.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk davidg 95/07/10 01:49:00 Modified: sys/vm vm_glue.c Log: Increased global RSS limit to total RAM. From owner-cvs-sys Mon Jul 10 01:53:46 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id BAA01474 for cvs-sys-outgoing; Mon, 10 Jul 1995 01:53:46 -0700 Received: (from root@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id BAA01454 ; Mon, 10 Jul 1995 01:53:26 -0700 Date: Mon, 10 Jul 1995 01:53:26 -0700 From: David Greenman Message-Id: <199507100853.BAA01454@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/vm vm_extern.h vm_glue.c vm_pageout.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk davidg 95/07/10 01:53:24 Modified: sys/vm vm_extern.h vm_glue.c vm_pageout.c Log: swapout_threads() -> swapout_procs(). From owner-cvs-sys Mon Jul 10 08:22:51 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id IAA12086 for cvs-sys-outgoing; Mon, 10 Jul 1995 08:22:51 -0700 Received: (from wollman@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id IAA12075 ; Mon, 10 Jul 1995 08:22:40 -0700 Date: Mon, 10 Jul 1995 08:22:40 -0700 From: "Garrett A. Wollman" Message-Id: <199507101522.IAA12075@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/net route.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk wollman 95/07/10 08:22:40 Modified: sys/net route.c Log: When adding a route, set rt_ifa and rt_ifp a little earlier so that the protocol-specific add routine can examine it if desired. From owner-cvs-sys Mon Jul 10 08:39:29 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id IAA12940 for cvs-sys-outgoing; Mon, 10 Jul 1995 08:39:29 -0700 Received: (from wollman@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id IAA12930 ; Mon, 10 Jul 1995 08:39:19 -0700 Date: Mon, 10 Jul 1995 08:39:19 -0700 From: "Garrett A. Wollman" Message-Id: <199507101539.IAA12930@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/netinet in_rmx.c tcp_input.c tcp_var.h Sender: cvs-sys-owner@freebsd.org Precedence: bulk wollman 95/07/10 08:39:17 Modified: sys/netinet in_rmx.c tcp_input.c tcp_var.h Log: tcp_input.c - keep track of how many times a route contained a cached rtt or ssthresh that we were able to use tcp_var.h - declare tcpstat entries for above; declare tcp_{send,recv}space in_rmx.c - fill in the MTU and pipe sizes with the defaults TCP would have used anyway in the absence of values here From owner-cvs-sys Mon Jul 10 09:16:03 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id JAA14125 for cvs-sys-outgoing; Mon, 10 Jul 1995 09:16:03 -0700 Received: (from wollman@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id JAA14114 ; Mon, 10 Jul 1995 09:16:01 -0700 Date: Mon, 10 Jul 1995 09:16:01 -0700 From: "Garrett A. Wollman" Message-Id: <199507101616.JAA14114@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/netinet ip_icmp.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk wollman 95/07/10 09:16:01 Modified: sys/netinet ip_icmp.c Log: ICMP messages received from broken hosts which reply to multicast packets were mistakenly delivered, rather than getting thrown out, which caused substantial lossage. Submitted by: Bill Fenner From owner-cvs-sys Mon Jul 10 09:36:14 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id JAA14499 for cvs-sys-outgoing; Mon, 10 Jul 1995 09:36:14 -0700 Received: from server.netcraft.co.uk ([194.72.238.2]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id JAA14491 ; Mon, 10 Jul 1995 09:36:10 -0700 Received: (from paul@localhost) by server.netcraft.co.uk (8.6.11/8.6.9) id RAA02603; Mon, 10 Jul 1995 17:36:24 +0100 From: Paul Richards Message-Id: <199507101636.RAA02603@server.netcraft.co.uk> Subject: Re: cvs commit: src/sys/kern kern_sysctl.c To: peter@haywire.dialix.com (Peter Wemm) Date: Mon, 10 Jul 1995 17:36:24 +0100 (BST) Cc: CVS-commiters@freefall.cdrom.com, cvs-sys@freefall.cdrom.com In-Reply-To: from "Peter Wemm" at Jul 9, 95 10:56:58 am Reply-to: paul@freebsd.org X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Content-Length: 971 Sender: cvs-sys-owner@freebsd.org Precedence: bulk In reply to Peter Wemm who said > > On Sat, 8 Jul 1995, Peter Wemm wrote: > > Modified: sys/kern kern_sysctl.c > > Log: > > This implements enough of the BSDI extensions to the net-2 ogetkerninfo() > > syscall to allow applications linked against their libc's uname() to > > work. Netscape 1.1N being a prime example, which prints: > > "uname() failed. cant tell what system we're running on". > > This change is a little ugly, but that's mainly because of the "interesting" > > semantics of the BSDI extension. > > Since ogetkerninfo() is only enabled by COMPAT_43, Netscape will only > > be affected on kernels with that option (eg: "GENERIC") > > Reviewed by: davidg > > Sorry. I forgot to mention that it closes PR 562... Umm, well, close it then? -- Paul Richards, Bluebird Computer Systems. FreeBSD core team member. Internet: paul@FreeBSD.org, http://www.freebsd.org/~paul Phone: 0370 462071 (Mobile), +44 1222 457651 (home) From owner-cvs-sys Tue Jul 11 10:20:25 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id KAA27704 for cvs-sys-outgoing; Tue, 11 Jul 1995 10:20:25 -0700 Received: (from bde@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id KAA27694 ; Tue, 11 Jul 1995 10:20:21 -0700 Date: Tue, 11 Jul 1995 10:20:21 -0700 From: Bruce Evans Message-Id: <199507111720.KAA27694@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/i386/i386 conf.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk bde 95/07/11 10:20:20 Modified: sys/i386/conf LINT sys/i386/i386 conf.c Log: Enable pcvt in LINT and don't generate a compile time error if syscons and pcvt are both configured when LINT is defined. There will be a link time error instead. This is to test building of pcvt more often. From owner-cvs-sys Tue Jul 11 10:59:29 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id KAA28727 for cvs-sys-outgoing; Tue, 11 Jul 1995 10:59:29 -0700 Received: (from bde@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id KAA28715 ; Tue, 11 Jul 1995 10:59:24 -0700 Date: Tue, 11 Jul 1995 10:59:24 -0700 From: Bruce Evans Message-Id: <199507111759.KAA28715@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/i386/isa syscons.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk bde 95/07/11 10:59:23 Modified: sys/i386/isa syscons.c Log: Speed up the inner loop of ansi_put() by a few percent. syscons' output is now only about 4-5 times slower than I want. It loses a factor of 2 for scrolling output by unnecessarily copying the screen buffer, a factor of 4/3 for dumb OPOST processing, and a factor of 3/2 for clist processing. From owner-cvs-sys Tue Jul 11 11:36:19 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id LAA29829 for cvs-sys-outgoing; Tue, 11 Jul 1995 11:36:19 -0700 Received: (from bde@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id LAA29765 ; Tue, 11 Jul 1995 11:34:31 -0700 Date: Tue, 11 Jul 1995 11:34:31 -0700 From: Bruce Evans Message-Id: <199507111834.LAA29765@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/i386/isa syscons.c syscons.h Sender: cvs-sys-owner@freebsd.org Precedence: bulk bde 95/07/11 11:34:31 Modified: sys/i386/isa syscons.c syscons.h Log: Fix races in scstart(). q_to_b() wasn't called at spltty(), so there were two races: - q_to_b() might unexpectedly return 0 (e.g, after a keyboard signal flushes the output queue and isn't echoed). ansi_put() interprets 0 bytes as 4GB... - more output (e.g. for echoes) might arrive afer q_to_b() returns 0. Then scstart() returns presumably and the new output might not be handled for a long time. Remove unused function scxint(). Fix prototypes (foo() isn't a prototype). From owner-cvs-sys Tue Jul 11 11:46:19 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id LAA00505 for cvs-sys-outgoing; Tue, 11 Jul 1995 11:46:19 -0700 Received: from gndrsh.aac.dev.com (gndrsh.aac.dev.com [198.145.92.241]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id LAA00497 ; Tue, 11 Jul 1995 11:46:15 -0700 Received: (from rgrimes@localhost) by gndrsh.aac.dev.com (8.6.11/8.6.9) id LAA16428; Tue, 11 Jul 1995 11:46:18 -0700 From: "Rodney W. Grimes" Message-Id: <199507111846.LAA16428@gndrsh.aac.dev.com> Subject: Re: cvs commit: src/sys/i386/isa syscons.c syscons.h To: bde@freefall.cdrom.com (Bruce Evans) Date: Tue, 11 Jul 1995 11:46:18 -0700 (PDT) Cc: CVS-commiters@freefall.cdrom.com, cvs-sys@freefall.cdrom.com In-Reply-To: <199507111834.LAA29765@freefall.cdrom.com> from "Bruce Evans" at Jul 11, 95 11:34:31 am X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 669 Sender: cvs-sys-owner@freebsd.org Precedence: bulk > > bde 95/07/11 11:34:31 > > Modified: sys/i386/isa syscons.c syscons.h > Log: > Fix races in scstart(). q_to_b() wasn't called at spltty(), so there > were two races: > - q_to_b() might unexpectedly return 0 (e.g, after a keyboard signal > flushes the output queue and isn't echoed). ansi_put() interprets > 0 bytes as 4GB... Might this fix the problem that has been reported as ``switching VT's at a rate of 1 a second for about 2 to 3 minutes will result in a system hang?'' -- Rod Grimes rgrimes@gndrsh.aac.dev.com Accurate Automation Company Reliable computers for FreeBSD From owner-cvs-sys Tue Jul 11 11:50:52 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id LAA00792 for cvs-sys-outgoing; Tue, 11 Jul 1995 11:50:52 -0700 Received: (from bde@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id LAA00782 ; Tue, 11 Jul 1995 11:50:48 -0700 Date: Tue, 11 Jul 1995 11:50:48 -0700 From: Bruce Evans Message-Id: <199507111850.LAA00782@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/libkern scanc.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk bde 95/07/11 11:50:48 Modified: sys/libkern scanc.c Log: Rearrange the inner loop of scanc() to get better code on i*86's (on an i486, 10 cycles (+ cache misses) instead of 15). The change should be a no-op if the compiler is any good. The best possible i*86 code for the same algorithm is only 1 more cycle faster on i486's so I don't want to bother implementing an assembler version. scanc() is a bottleneck for OPOST processing. It is naturally about 4 times as slow as bcopy() on 32-bit systems. From owner-cvs-sys Tue Jul 11 12:24:25 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id MAA01528 for cvs-sys-outgoing; Tue, 11 Jul 1995 12:24:25 -0700 Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.34]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id MAA01519 ; Tue, 11 Jul 1995 12:24:08 -0700 Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.9/8.6.9) id FAA26105; Wed, 12 Jul 1995 05:21:38 +1000 Date: Wed, 12 Jul 1995 05:21:38 +1000 From: Bruce Evans Message-Id: <199507111921.FAA26105@godzilla.zeta.org.au> To: bde@freefall.cdrom.com, rgrimes@gndrsh.aac.dev.com Subject: Re: cvs commit: src/sys/i386/isa syscons.c syscons.h Cc: CVS-commiters@freefall.cdrom.com, cvs-sys@freefall.cdrom.com Sender: cvs-sys-owner@freebsd.org Precedence: bulk >> Modified: sys/i386/isa syscons.c syscons.h >> Log: >> Fix races in scstart(). q_to_b() wasn't called at spltty(), so there >> were two races: >> - q_to_b() might unexpectedly return 0 (e.g, after a keyboard signal >> flushes the output queue and isn't echoed). ansi_put() interprets >> 0 bytes as 4GB... >Might this fix the problem that has been reported as ``switching VT's >at a rate of 1 a second for about 2 to 3 minutes will result in a system >hang?'' Probably not. I think attempting to print 4GB will just print some garbage and then panic when an unmapped page is hit. Bruce From owner-cvs-sys Tue Jul 11 12:40:06 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id MAA02019 for cvs-sys-outgoing; Tue, 11 Jul 1995 12:40:06 -0700 Received: (from bde@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id MAA02001 ; Tue, 11 Jul 1995 12:39:57 -0700 Date: Tue, 11 Jul 1995 12:39:57 -0700 From: Bruce Evans Message-Id: <199507111939.MAA02001@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/kern tty_subr.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk bde 95/07/11 12:39:56 Modified: sys/kern tty_subr.c Log: Optimize the zeroing of quotes. b_to_q() was always taking about 20% of its time zeroing quotes although quotes are not very common. E.g., there are never any quotes in output queues. From owner-cvs-sys Wed Jul 12 13:04:02 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id NAA23217 for cvs-sys-outgoing; Wed, 12 Jul 1995 13:04:02 -0700 Received: from disperse.demon.co.uk (disperse.demon.co.uk [158.152.1.77]) by freefall.cdrom.com (8.6.10/8.6.6) with SMTP id NAA23206 ; Wed, 12 Jul 1995 13:03:50 -0700 Received: from post.demon.co.uk by disperse.demon.co.uk id aa22699; 12 Jul 95 19:21 +0100 Received: from bagpuss.demon.co.uk by post.demon.co.uk id aa26771; 12 Jul 95 19:20 +0100 Received: (karl@localhost) by bagpuss.demon.co.uk (3.1/3.1) id SAA14679; Wed, 12 Jul 1995 18:02:06 +0100 From: Karl Strickland Message-Id: <199507121702.SAA14679@bagpuss.demon.co.uk> Subject: Re: cvs commit: src/sys/i386/isa syscons.c syscons.h To: "Rodney W. Grimes" Date: Wed, 12 Jul 1995 18:02:05 +0100 (BST) Cc: bde@freefall.cdrom.com, CVS-commiters@freefall.cdrom.com, cvs-sys@freefall.cdrom.com In-Reply-To: <199507111846.LAA16428@gndrsh.aac.dev.com> from "Rodney W. Grimes" at Jul 11, 95 11:46:18 am X-Mailer: ELM [version 2.4 PL23] Content-Type: text Content-Length: 1377 Sender: cvs-sys-owner@freebsd.org Precedence: bulk > > > > > bde 95/07/11 11:34:31 > > > > Modified: sys/i386/isa syscons.c syscons.h > > Log: > > Fix races in scstart(). q_to_b() wasn't called at spltty(), so there > > were two races: > > - q_to_b() might unexpectedly return 0 (e.g, after a keyboard signal > > flushes the output queue and isn't echoed). ansi_put() interprets > > 0 bytes as 4GB... > > Might this fix the problem that has been reported as ``switching VT's > at a rate of 1 a second for about 2 to 3 minutes will result in a system > hang?'' I'm glad to hear I'm not the only one with this problem, I was trying to track this down the other day - but when it hangs the system, it really does hang it - I couldnt even prod it by provoking an NMI. I can usually hang it in a lot less than 2/3 minutes - it seems to happen more often when you switch away from the X11 screen (I run xdm on startup) - last time I tried it, it hung first time. I had this problem under FreeBSD 1.x as well - few weeks ago I switched to pcvt because of it. I'll try and hang it with these latest fixes... -- ------------------------------------------+----------------------------------- Mailed using ELM on FreeBSD | Karl Strickland PGP 2.3a Public Key Available. | Internet: karl@bagpuss.demon.co.uk | From owner-cvs-sys Thu Jul 13 01:49:07 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id BAA26017 for cvs-sys-outgoing; Thu, 13 Jul 1995 01:49:07 -0700 Received: (from davidg@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id BAA26001 ; Thu, 13 Jul 1995 01:48:51 -0700 Date: Thu, 13 Jul 1995 01:48:51 -0700 From: David Greenman Message-Id: <199507130848.BAA26001@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/vm device_pager.c device_pager.h kern_lock.c lock.h swap_pager.c swap_pager.h vm.h vm_extern.h vm_fault.c vm_glue.c vm_inherit.h vm_init.c vm_kern.c vm_map.c vm_map.h vm_meter.c vm_mmap.c vm_object.c vm_object.h vm_page.c vm_page.h vm_pageout.c vm_pageout.h vm_pager.c vm_pager.h vm_swap.c vnode_pager.c vnode_pager.h Sender: cvs-sys-owner@freebsd.org Precedence: bulk davidg 95/07/13 01:48:49 Modified: sys/conf files sys/i386/i386 machdep.c pmap.c vm_machdep.c sys/i386/include pmap.h sys/kern vfs_subr.c vfs_syscalls.c vfs_vnops.c sys/miscfs/procfs procfs_mem.c sys/nfs nfs_subs.c nfs_vnops.c sys/sys mman.h proc.h sys/ufs/ffs ffs_vfsops.c sys/ufs/lfs lfs_vnops.c sys/vm device_pager.c device_pager.h kern_lock.c lock.h swap_pager.c swap_pager.h vm.h vm_extern.h vm_fault.c vm_glue.c vm_inherit.h vm_init.c vm_kern.c vm_map.c vm_map.h vm_meter.c vm_mmap.c vm_object.c vm_object.h vm_page.c vm_page.h vm_pageout.c vm_pageout.h vm_pager.c vm_pager.h vm_swap.c vnode_pager.c vnode_pager.h Log: NOTE: libkvm, w, ps, 'top', and any other utility which depends on struct proc or any VM system structure will have to be rebuilt!!! Much needed overhaul of the VM system. Included in this first round of changes: 1) Improved pager interfaces: init, alloc, dealloc, getpages, putpages, haspage, and sync operations are supported. The haspage interface now provides information about clusterability. All pager routines now take struct vm_object's instead of "pagers". 2) Improved data structures. In the previous paradigm, there is constant confusion caused by pagers being both a data structure ("allocate a pager") and a collection of routines. The idea of a pager structure has escentially been eliminated. Objects now have types, and this type is used to index the appropriate pager. In most cases, items in the pager structure were duplicated in the object data structure and thus were unnecessary. In the few cases that remained, a un_pager structure union was created in the object to contain these items. 3) Because of the cleanup of #1 & #2, a lot of unnecessary layering can now be removed. For instance, vm_object_enter(), vm_object_lookup(), vm_object_remove(), and the associated object hash list were some of the things that were removed. 4) simple_lock's removed. Discussion with several people reveals that the SMP locking primitives used in the VM system aren't likely the mechanism that we'll be adopting. Even if it were, the locking that was in the code was very inadequate and would have to be mostly re-done anyway. The locking in a uni-processor kernel was a no-op but went a long way toward making the code difficult to read and debug. 5) Places that attempted to kludge-up the fact that we don't have kernel thread support have been fixed to reflect the reality that we are really dealing with processes, not threads. The VM system didn't have complete thread support, so the comments and mis-named routines were just wrong. We now use tsleep and wakeup directly in the lock routines, for instance. 6) Where appropriate, the pagers have been improved, especially in the pager_alloc routines. Most of the pager_allocs have been rewritten and are now faster and easier to maintain. 7) The pagedaemon pageout clustering algorithm has been rewritten and now tries harder to output an even number of pages before and after the requested page. This is sort of the reverse of the ideal pagein algorithm and should provide better overall performance. 8) Unnecessary (incorrect) casts to caddr_t in calls to tsleep & wakeup have been removed. Some other unnecessary casts have also been removed. 9) Some almost useless debugging code removed. 10) Terminology of shadow objects vs. backing objects straightened out. The fact that the vm_object data structure escentially had this backwards really confused things. The use of "shadow" and "backing object" throughout the code is now internally consistent and correct in the Mach terminology. 11) Several minor bug fixes, including one in the vm daemon that caused 0 RSS objects to not get purged as intended. 12) A "default pager" has now been created which cleans up the transition of objects to the "swap" type. The previous checks throughout the code for swp->pg_data != NULL were really ugly. This change also provides the rudiments for future backing of "anonymous" memory by something other than the swap pager (via the vnode pager, for example), and it allows the decision about which of these pagers to use to be made dynamically (although will need some additional decision code to do this, of course). 13) (dyson) MAP_COPY has been deprecated and the corresponding "copy object" code has been removed. MAP_COPY was undocumented and non- standard. It was furthermore broken in several ways which caused its behavior to degrade to MAP_PRIVATE. Binaries that use MAP_COPY will continue to work correctly, but via the slightly different semantics of MAP_PRIVATE. 14) (dyson) Sharing maps have been removed. It's marginal usefulness in a threads design can be worked around in other ways. Both #12 and #13 were done to simplify the code and improve readability and maintain- ability. (As were most all of these changes) TODO: 1) Rewrite most of the vnode pager to use VOP_GETPAGES/PUTPAGES. Doing this will reduce the vnode pager to a mere fraction of its current size. 2) Rewrite vm_fault and the swap/vnode pagers to use the clustering information provided by the new haspage pager interface. This will substantially reduce the overhead by eliminating a large number of VOP_BMAP() calls. The VOP_BMAP() filesystem interface should be improved to provide both a "behind" and "ahead" indication of contiguousness. 3) Implement the extended features of pager_haspage in swap_pager_haspage(). It currently just says 0 pages ahead/behind. 4) Re-implement the swap device (swstrategy) in a more elegant way, perhaps via a much more general mechanism that could also be used for disk striping of regular filesystems. 5) Do something to improve the architecture of vm_object_collapse(). The fact that it makes calls into the swap pager and knows too much about how the swap pager operates really bothers me. It also doesn't allow for collapsing of non-swap pager objects ("unnamed" objects backed by other pagers). From owner-cvs-sys Thu Jul 13 02:10:53 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id CAA27011 for cvs-sys-outgoing; Thu, 13 Jul 1995 02:10:53 -0700 Received: (from davidg@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id CAA27000 ; Thu, 13 Jul 1995 02:10:47 -0700 Date: Thu, 13 Jul 1995 02:10:47 -0700 From: David Greenman Message-Id: <199507130910.CAA27000@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/net if.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk davidg 95/07/13 02:10:46 Modified: sys/net if.c Log: (2.1.0 branch) Bring in changes from rev 1.16 and 1.17: made "P2P_LOCALADDR_SHARE" standard and fixed one remaining bug with P2P address handling. From owner-cvs-sys Thu Jul 13 03:15:22 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id DAA29462 for cvs-sys-outgoing; Thu, 13 Jul 1995 03:15:22 -0700 Received: (from davidg@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id DAA29449 ; Thu, 13 Jul 1995 03:15:10 -0700 Date: Thu, 13 Jul 1995 03:15:10 -0700 From: David Greenman Message-Id: <199507131015.DAA29449@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/vm default_pager.c default_pager.h Sender: cvs-sys-owner@freebsd.org Precedence: bulk davidg 95/07/13 03:15:09 Added: sys/vm default_pager.c default_pager.h Log: Oops, forgot to add the "default" pager files... NOTE: libkvm, w, ps, 'top', and any other utility which depends on struct proc or any VM system structure will have to be rebuilt!!! Much needed overhaul of the VM system. Included in this first round of changes: 1) Improved pager interfaces: init, alloc, dealloc, getpages, putpages, haspage, and sync operations are supported. The haspage interface now provides information about clusterability. All pager routines now take struct vm_object's instead of "pagers". 2) Improved data structures. In the previous paradigm, there is constant confusion caused by pagers being both a data structure ("allocate a pager") and a collection of routines. The idea of a pager structure has escentially been eliminated. Objects now have types, and this type is used to index the appropriate pager. In most cases, items in the pager structure were duplicated in the object data structure and thus were unnecessary. In the few cases that remained, a un_pager structure union was created in the object to contain these items. 3) Because of the cleanup of #1 & #2, a lot of unnecessary layering can now be removed. For instance, vm_object_enter(), vm_object_lookup(), vm_object_remove(), and the associated object hash list were some of the things that were removed. 4) simple_lock's removed. Discussion with several people reveals that the SMP locking primitives used in the VM system aren't likely the mechanism that we'll be adopting. Even if it were, the locking that was in the code was very inadequate and would have to be mostly re-done anyway. The locking in a uni-processor kernel was a no-op but went a long way toward making the code difficult to read and debug. 5) Places that attempted to kludge-up the fact that we don't have kernel thread support have been fixed to reflect the reality that we are really dealing with processes, not threads. The VM system didn't have complete thread support, so the comments and mis-named routines were just wrong. We now use tsleep and wakeup directly in the lock routines, for instance. 6) Where appropriate, the pagers have been improved, especially in the pager_alloc routines. Most of the pager_allocs have been rewritten and are now faster and easier to maintain. 7) The pagedaemon pageout clustering algorithm has been rewritten and now tries harder to output an even number of pages before and after the requested page. This is sort of the reverse of the ideal pagein algorithm and should provide better overall performance. 8) Unnecessary (incorrect) casts to caddr_t in calls to tsleep & wakeup have been removed. Some other unnecessary casts have also been removed. 9) Some almost useless debugging code removed. 10) Terminology of shadow objects vs. backing objects straightened out. The fact that the vm_object data structure escentially had this backwards really confused things. The use of "shadow" and "backing object" throughout the code is now internally consistent and correct in the Mach terminology. 11) Several minor bug fixes, including one in the vm daemon that caused 0 RSS objects to not get purged as intended. 12) A "default pager" has now been created which cleans up the transition of objects to the "swap" type. The previous checks throughout the code for swp->pg_data != NULL were really ugly. This change also provides the rudiments for future backing of "anonymous" memory by something other than the swap pager (via the vnode pager, for example), and it allows the decision about which of these pagers to use to be made dynamically (although will need some additional decision code to do this, of course). 13) (dyson) MAP_COPY has been deprecated and the corresponding "copy object" code has been removed. MAP_COPY was undocumented and non- standard. It was furthermore broken in several ways which caused its behavior to degrade to MAP_PRIVATE. Binaries that use MAP_COPY will continue to work correctly, but via the slightly different semantics of MAP_PRIVATE. 14) (dyson) Sharing maps have been removed. It's marginal usefulness in a threads design can be worked around in other ways. Both #12 and #13 were done to simplify the code and improve readability and maintain- ability. (As were most all of these changes) TODO: 1) Rewrite most of the vnode pager to use VOP_GETPAGES/PUTPAGES. Doing this will reduce the vnode pager to a mere fraction of its current size. 2) Rewrite vm_fault and the swap/vnode pagers to use the clustering information provided by the new haspage pager interface. This will substantially reduce the overhead by eliminating a large number of VOP_BMAP() calls. The VOP_BMAP() filesystem interface should be improved to provide both a "behind" and "ahead" indication of contiguousness. 3) Implement the extended features of pager_haspage in swap_pager_haspage(). It currently just says 0 pages ahead/behind. 4) Re-implement the swap device (swstrategy) in a more elegant way, perhaps via a much more general mechanism that could also be used for disk striping of regular filesystems. 5) Do something to improve the architecture of vm_object_collapse(). The fact that it makes calls into the swap pager and knows too much about how the swap pager operates really bothers me. It also doesn't allow for collapsing of non-swap pager objects ("unnamed" objects backed by other pagers). From owner-cvs-sys Thu Jul 13 03:29:54 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id DAA29994 for cvs-sys-outgoing; Thu, 13 Jul 1995 03:29:54 -0700 Received: (from davidg@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id DAB29977 ; Thu, 13 Jul 1995 03:29:37 -0700 Date: Thu, 13 Jul 1995 03:29:37 -0700 From: David Greenman Message-Id: <199507131029.DAB29977@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/vm default_pager.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk davidg 95/07/13 03:29:36 Modified: sys/vm default_pager.c Log: Added a copyright to this file. From owner-cvs-sys Thu Jul 13 03:54:38 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id DAA01395 for cvs-sys-outgoing; Thu, 13 Jul 1995 03:54:38 -0700 Received: (from rgrimes@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id DAA01385 ; Thu, 13 Jul 1995 03:54:27 -0700 Date: Thu, 13 Jul 1995 03:54:27 -0700 From: "Rodney W. Grimes" Message-Id: <199507131054.DAA01385@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/conf newvers.sh Sender: cvs-sys-owner@freebsd.org Precedence: bulk rgrimes 95/07/13 03:54:26 Modified: sys/conf newvers.sh Log: This is a major rework of newvers.sh to put it back much closer to what CSRG had, plus make things like, TYPE, REVISION, and BRANCH easy to set, and derive RELEASE and VERSION from them. Kill the JUST_TELL_ME hack, it is no longer needed. Kill DISTNAME, I could find no reveference to it any place in the source tree. Now I just need to rework a few bits in release/Makefile, but want to wait and talk to jkh about that. Oh, and your now all running: TYPE="FreeBSD" REVISION="2.2" BRANCH="CURRENT" and the -BUILD-yymmdd is dead and gone. The date was already in the version[] string, no need for it to be there in 2 formats! From owner-cvs-sys Thu Jul 13 04:01:42 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id EAA01735 for cvs-sys-outgoing; Thu, 13 Jul 1995 04:01:42 -0700 Received: (from rgrimes@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id EAA01724 ; Thu, 13 Jul 1995 04:01:39 -0700 Date: Thu, 13 Jul 1995 04:01:39 -0700 From: "Rodney W. Grimes" Message-Id: <199507131101.EAA01724@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/conf newvers.sh Sender: cvs-sys-owner@freebsd.org Precedence: bulk rgrimes 95/07/13 04:01:38 Modified: sys/conf newvers.sh Log: Branch: RELENG_2_1_0 cvs update -j1.17 newvers.sh Plus set REVISION to 2.1 and BRANCH to STABLE. From owner-cvs-sys Thu Jul 13 08:01:58 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id IAA10780 for cvs-sys-outgoing; Thu, 13 Jul 1995 08:01:58 -0700 Received: (from jkh@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id IAA10728 ; Thu, 13 Jul 1995 08:01:43 -0700 Date: Thu, 13 Jul 1995 08:01:43 -0700 From: "Jordan K. Hubbard" Message-Id: <199507131501.IAA10728@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/i386/isa seagate.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk jkh 95/07/13 08:01:40 Modified: sys/i386/isa seagate.c Log: The following patch for v1.8 (2.0.5R) of seagate.c allows it to work with Future Domain TMC-885 controllers. These beasts were just different enough in a number of perverse ways to be recognised but not work with the seagate stuff. I also whacked in blind transfers for DATAIN and DATAOUT phases - this more than doubles my throughput. If you're dubious about that, comment out the definition of SEA_BLINDTRANSFER. Anyway if you're running an ST01 or TMC-950 controller, please give this a go, I'd like to see if anything's broken for those beasts. Submitted by: Stephen Hocking From owner-cvs-sys Thu Jul 13 09:10:16 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id JAA14780 for cvs-sys-outgoing; Thu, 13 Jul 1995 09:10:16 -0700 Received: (from bde@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id JAA14708 ; Thu, 13 Jul 1995 09:09:07 -0700 Date: Thu, 13 Jul 1995 09:09:07 -0700 From: Bruce Evans Message-Id: <199507131609.JAA14708@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/scsi sctarg.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk bde 95/07/13 09:09:04 Modified: sys/scsi sctarg.c Log: Fix benign function type mismatch. From owner-cvs-sys Thu Jul 13 10:55:23 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id KAA19393 for cvs-sys-outgoing; Thu, 13 Jul 1995 10:55:23 -0700 Received: (from dfr@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id KAA19379 ; Thu, 13 Jul 1995 10:55:15 -0700 Date: Thu, 13 Jul 1995 10:55:15 -0700 From: Doug Rabson Message-Id: <199507131755.KAA19379@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/nfs nfs_vnops.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk dfr 95/07/13 10:55:14 Modified: sys/nfs nfs_vnops.c Log: I believe that the following fix to nfs_vnops.c should do the trick w.r.t. the problem "when a file is truncated on the server after being written on a client under NFSv3, the client doesn't see the size drop to zero". (As you noted, the problem is that NMODIFIED wasn't being cleared by nfs_close when it flushed the buffers. After checking through the code, the only place where NMODIFIED was used to test for the possibility of dirty blocks was in nfs_setattr(). The two cases are safe to do when there aren't dirty blocks, so I just took out the tests. Unfortunately, testing for v_dirtyblkhd.lh_first being non-null is not sufficient, since there are times when the code moves blocks to the clean list and then back to the dirty list.) Submitted by: rick@snowhite.cis.uoguelph.ca From owner-cvs-sys Fri Jul 14 02:26:05 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id CAA29026 for cvs-sys-outgoing; Fri, 14 Jul 1995 02:26:05 -0700 Received: (from davidg@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id CAA29006 ; Fri, 14 Jul 1995 02:25:54 -0700 Date: Fri, 14 Jul 1995 02:25:54 -0700 From: David Greenman Message-Id: <199507140925.CAA29006@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/i386/i386 trap.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk davidg 95/07/14 02:25:53 Modified: sys/i386/i386 trap.c Log: Fixed bug that caused page tables to be faulted twice instead of once. Submitted by: John Dyson From owner-cvs-sys Fri Jul 14 16:14:55 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id QAA04592 for cvs-sys-outgoing; Fri, 14 Jul 1995 16:14:55 -0700 Received: from ibp.ibp.fr (ibp.ibp.fr [132.227.60.30]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id QAB04582 ; Fri, 14 Jul 1995 16:14:37 -0700 Received: from blaise.ibp.fr (blaise.ibp.fr [132.227.60.1]) by ibp.ibp.fr (8.6.12/jtpda-5.0) with ESMTP id BAA12165 ; Sat, 15 Jul 1995 01:14:03 +0200 Received: from (uucp@localhost) by blaise.ibp.fr (8.6.12/jtpda-5.0) with UUCP id BAA19206 ; Sat, 15 Jul 1995 01:13:54 +0200 Received: (from roberto@localhost) by keltia.frmug.fr.net (8.7.Beta.9/keltia-uucp-2.2) id BAA04616; Sat, 15 Jul 1995 01:12:58 +0200 (MET DST) From: Ollivier Robert Message-Id: <199507142312.BAA04616@keltia.frmug.fr.net> Subject: Re: cvs commit: src/sys/vm device_pager.c device_pager.h kern_lock.c lock.h swap_pager.c swap_pager.h vm.h vm_extern.h vm_fault.c vmOR To: davidg@freefall.cdrom.com (David Greenman) Date: Sat, 15 Jul 1995 01:12:58 +0200 (MET DST) Cc: CVS-commiters@freefall.cdrom.com, cvs-sys@freefall.cdrom.com Reply-To: roberto@keltia.freenix.fr (Ollivier Robert) In-Reply-To: <199507130848.BAA26001@freefall.cdrom.com> from "David Greenman" at Jul 13, 95 01:48:51 am X-Operating-System: FreeBSD 2.2-CURRENT ctm#880 X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Sender: cvs-sys-owner@freebsd.org Precedence: bulk It seems that David Greenman said: > NOTE: libkvm, w, ps, 'top', and any other utility which depends on struct > proc or any VM system structure will have to be rebuilt!!! You can add gdb to the list, I learned it today :-) -- Ollivier ROBERT -=- The daemon is FREE! -=- roberto@keltia.frmug.fr.net FreeBSD keltia 2.2-CURRENT #5: Fri Jul 14 12:28:04 MET DST 1995 From owner-cvs-sys Sat Jul 15 06:34:56 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id GAA23887 for cvs-sys-outgoing; Sat, 15 Jul 1995 06:34:56 -0700 Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.34]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id GAA23853 ; Sat, 15 Jul 1995 06:34:28 -0700 Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.9/8.6.9) id XAA22323; Sat, 15 Jul 1995 23:33:49 +1000 Date: Sat, 15 Jul 1995 23:33:49 +1000 From: Bruce Evans Message-Id: <199507151333.XAA22323@godzilla.zeta.org.au> To: davidg@freefall.cdrom.com, roberto@keltia.frmug.fr.net Subject: Re: cvs commit: src/sys/vm device_pager.c device_pager.h kern_lock.c lock.h swap_pager.c swap_pager.h vm.h vm_extern.h vm_fault.c vmOR Cc: CVS-commiters@freefall.cdrom.com, cvs-sys@freefall.cdrom.com Sender: cvs-sys-owner@freebsd.org Precedence: bulk >> NOTE: libkvm, w, ps, 'top', and any other utility which depends on struct >> proc or any VM system structure will have to be rebuilt!!! >You can add gdb to the list, I learned it today :-) And libkvm.so.2.0. It uses a nice sysctl() so that it can read the proc table independently of its structure or contents, and a nasty division by sizeof(struct kinfo_proc) just to find the number of processes. This size has decreased from 620 (?) to 592 from removing 3 * 4 bytes of padding from struct proc and the remaining bytes from some change in nested vm structure(s) (removing simple locks?). Incrementing the major version of libkvm won't really fix this problem. Old libraries just won't work with new kernels when the interface changes significantly. The change in libkvm probably need not be significant (there should be more sysctls or libkvm should use more). It's interesting that the libkvm.so.2.0 on the 2.0R cdrom still works with kernels from just before the vm changes. The padding in struct proc became useless when the vm structures were changed, but perhaps it should be restored together with some vm padding so that the changes aren't visible in applications. Bruce From owner-cvs-sys Sat Jul 15 07:22:29 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id HAA27169 for cvs-sys-outgoing; Sat, 15 Jul 1995 07:22:29 -0700 Received: from Root.COM (implode.Root.COM [198.145.90.1]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id HAA27162 ; Sat, 15 Jul 1995 07:22:16 -0700 Received: from corbin.Root.COM (corbin [198.145.90.18]) by Root.COM (8.6.11/8.6.5) with ESMTP id HAA12863; Sat, 15 Jul 1995 07:21:42 -0700 Received: from localhost (localhost [127.0.0.1]) by corbin.Root.COM (8.6.11/8.6.5) with SMTP id HAA00524; Sat, 15 Jul 1995 07:22:48 -0700 Message-Id: <199507151422.HAA00524@corbin.Root.COM> To: Bruce Evans cc: CVS-commiters@freefall.cdrom.com, cvs-sys@freefall.cdrom.com Subject: Re: cvs commit: src/sys/vm device_pager.c device_pager.h kern_lock.c lock.h swap_pager.c swap_pager.h vm.h vm_extern.h vm_fault.c vmOR In-reply-to: Your message of "Sat, 15 Jul 95 23:33:49 +1000." <199507151333.XAA22323@godzilla.zeta.org.au> From: David Greenman Reply-To: davidg@Root.COM Date: Sat, 15 Jul 1995 07:22:47 -0700 Sender: cvs-sys-owner@freebsd.org Precedence: bulk >with kernels from just before the vm changes. The padding in struct >proc became useless when the vm structures were changed, but perhaps it >should be restored together with some vm padding so that the changes >aren't visible in applications. I went down that road originally, but there were too many affected data structures, so I decided it wasn't worth all the padding hacks. I instead decided to remove the padding hacks that were already there. -DG From owner-cvs-sys Sat Jul 15 07:26:34 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id HAA27300 for cvs-sys-outgoing; Sat, 15 Jul 1995 07:26:34 -0700 Received: from gndrsh.aac.dev.com (gndrsh.aac.dev.com [198.145.92.241]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id HAA27294 ; Sat, 15 Jul 1995 07:26:27 -0700 Received: (from rgrimes@localhost) by gndrsh.aac.dev.com (8.6.11/8.6.9) id HAA04688; Sat, 15 Jul 1995 07:25:01 -0700 From: "Rodney W. Grimes" Message-Id: <199507151425.HAA04688@gndrsh.aac.dev.com> Subject: Re: cvs commit: src/sys/vm device_pager.c device_pager.h kern_lock.c lock.h swap_pager.c swap_pager.h vm.h vm_extern.h vm_fault. To: davidg@Root.COM Date: Sat, 15 Jul 1995 07:25:01 -0700 (PDT) Cc: bde@zeta.org.au, CVS-commiters@freefall.cdrom.com, cvs-sys@freefall.cdrom.com In-Reply-To: <199507151422.HAA00524@corbin.Root.COM> from "David Greenman" at Jul 15, 95 07:22:47 am X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 789 Sender: cvs-sys-owner@freebsd.org Precedence: bulk > > >with kernels from just before the vm changes. The padding in struct > >proc became useless when the vm structures were changed, but perhaps it > >should be restored together with some vm padding so that the changes > >aren't visible in applications. > > I went down that road originally, but there were too many affected data > structures, so I decided it wasn't worth all the padding hacks. I instead > decided to remove the padding hacks that were already there. I hope there are no intentions of bringing this code into 2.1, as breaking compatibility with 2.0.5 would be a really bad thing to do to the user base :-(. -- Rod Grimes rgrimes@gndrsh.aac.dev.com Accurate Automation Company Reliable computers for FreeBSD From owner-cvs-sys Sat Jul 15 07:28:00 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id HAA27408 for cvs-sys-outgoing; Sat, 15 Jul 1995 07:28:00 -0700 Received: from Root.COM (implode.Root.COM [198.145.90.1]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id HAA27401 ; Sat, 15 Jul 1995 07:27:55 -0700 Received: from corbin.Root.COM (corbin [198.145.90.18]) by Root.COM (8.6.11/8.6.5) with ESMTP id HAA12895; Sat, 15 Jul 1995 07:27:21 -0700 Received: from localhost (localhost [127.0.0.1]) by corbin.Root.COM (8.6.11/8.6.5) with SMTP id HAA00567; Sat, 15 Jul 1995 07:28:28 -0700 Message-Id: <199507151428.HAA00567@corbin.Root.COM> To: "Rodney W. Grimes" cc: CVS-commiters@freefall.cdrom.com, cvs-sys@freefall.cdrom.com Subject: Re: cvs commit: src/sys/vm device_pager.c device_pager.h kern_lock.c lock.h swap_pager.c swap_pager.h vm.h vm_extern.h vm_fault. In-reply-to: Your message of "Sat, 15 Jul 95 07:25:01 PDT." <199507151425.HAA04688@gndrsh.aac.dev.com> From: David Greenman Reply-To: davidg@Root.COM Date: Sat, 15 Jul 1995 07:28:27 -0700 Sender: cvs-sys-owner@freebsd.org Precedence: bulk >> >> >with kernels from just before the vm changes. The padding in struct >> >proc became useless when the vm structures were changed, but perhaps it >> >should be restored together with some vm padding so that the changes >> >aren't visible in applications. >> >> I went down that road originally, but there were too many affected data >> structures, so I decided it wasn't worth all the padding hacks. I instead >> decided to remove the padding hacks that were already there. > >I hope there are no intentions of bringing this code into 2.1, as breaking >compatibility with 2.0.5 would be a really bad thing to do to the >user base :-(. No, _definately_ not. We would sooner scrap 2.1R completely. -DG From owner-cvs-sys Sat Jul 15 09:02:05 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id JAA02024 for cvs-sys-outgoing; Sat, 15 Jul 1995 09:02:05 -0700 Received: (from davidg@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id JAA01964 ; Sat, 15 Jul 1995 09:01:49 -0700 Date: Sat, 15 Jul 1995 09:01:49 -0700 From: David Greenman Message-Id: <199507151601.JAA01964@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/kern vfs_bio.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk davidg 95/07/15 09:01:48 Modified: sys/kern vfs_bio.c Log: Resize buffers if they aren't the correct size. Several months ago we made a change to NFS that caused buffers at EOF to be variable size. This had the undesired side-effect of breaking delayed writes on NFS. This fixes it. Submitted by: John Dyson From owner-cvs-sys Sat Jul 15 11:47:13 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id LAA14437 for cvs-sys-outgoing; Sat, 15 Jul 1995 11:47:13 -0700 Received: from disperse.demon.co.uk (disperse.demon.co.uk [158.152.1.77]) by freefall.cdrom.com (8.6.10/8.6.6) with SMTP id LAB14430 ; Sat, 15 Jul 1995 11:47:02 -0700 Received: from post.demon.co.uk by disperse.demon.co.uk id aa11735; 15 Jul 95 19:16 +0100 Received: from bagpuss.demon.co.uk by post.demon.co.uk id aa14445; 15 Jul 95 19:16 +0100 Received: (karl@localhost) by bagpuss.demon.co.uk (3.1/3.1) id TAA01877; Sat, 15 Jul 1995 19:16:13 +0100 From: Karl Strickland Message-Id: <199507151816.TAA01877@bagpuss.demon.co.uk> Subject: Re: cvs commit: src/sys/i386/isa syscons.c syscons.h To: Karl Strickland Date: Sat, 15 Jul 1995 19:16:13 +0100 (BST) Cc: rgrimes@gndrsh.aac.dev.com, bde@freefall.cdrom.com, CVS-commiters@freefall.cdrom.com, cvs-sys@freefall.cdrom.com In-Reply-To: <199507121702.SAA14679@bagpuss.demon.co.uk> from "Karl Strickland" at Jul 12, 95 06:02:05 pm X-Mailer: ELM [version 2.4 PL23] Content-Type: text Content-Length: 1055 Sender: cvs-sys-owner@freebsd.org Precedence: bulk > > Might this fix the problem that has been reported as ``switching VT's > > at a rate of 1 a second for about 2 to 3 minutes will result in a system > > hang?'' > > I'm glad to hear I'm not the only one with this problem, I was trying to > track this down the other day - but when it hangs the system, it really > does hang it - I couldnt even prod it by provoking an NMI. I can usually > hang it in a lot less than 2/3 minutes - it seems to happen more often > when you switch away from the X11 screen (I run xdm on startup) - last > time I tried it, it hung first time. > > I had this problem under FreeBSD 1.x as well - few weeks ago I switched to > pcvt because of it. I'll try and hang it with these latest fixes... Unfortunately, I can still hang it :-( -- ------------------------------------------+----------------------------------- Mailed using ELM on FreeBSD | Karl Strickland PGP 2.3a Public Key Available. | Internet: karl@bagpuss.demon.co.uk | From owner-cvs-sys Sat Jul 15 22:39:28 1995 Return-Path: cvs-sys-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id WAA06310 for cvs-sys-outgoing; Sat, 15 Jul 1995 22:39:28 -0700 Received: (from davidg@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id WAA06297 ; Sat, 15 Jul 1995 22:39:24 -0700 Date: Sat, 15 Jul 1995 22:39:24 -0700 From: David Greenman Message-Id: <199507160539.WAA06297@freefall.cdrom.com> To: CVS-commiters, cvs-sys Subject: cvs commit: src/sys/i386/i386 trap.c Sender: cvs-sys-owner@freebsd.org Precedence: bulk davidg 95/07/15 22:39:23 Modified: sys/i386/i386 trap.c Log: Truncate the fault address to a page boundry when calling vm_fault(). The last change to fix the fault-twice bug with page tables wasn't quite complete.