Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 13 Oct 1998 07:46:21 -0400 (EDT)
From:      Chuck Robey <chuckr@mat.net>
To:        David Greenman <dg@FreeBSD.ORG>
Cc:        freebsd-current@FreeBSD.ORG
Subject:   Re: cvs commit: src/sys/cam/scsi scsi_da.c src/sys/i386/i386       busdma_machdep.c vm_machdep.c src/sys/i386/ibcs2 imgact_coff.c         src/sys/i386/include param.h src/sys/i386/isa isa.c wd.c         src/sys/kern imgact_elf.c sys_pipe.c sysv_shm.c vfs_bio.c ...
Message-ID:  <Pine.BSF.4.05.9810130742430.19357-100000@picnic.mat.net>
In-Reply-To: <199810130824.BAA23019@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 13 Oct 1998, David Greenman wrote:

> dg          1998/10/13 01:24:45 PDT
> 
>   Modified files:
>     sys/cam/scsi         scsi_da.c 
>     sys/i386/i386        busdma_machdep.c vm_machdep.c 
>     sys/i386/ibcs2       imgact_coff.c 
>     sys/i386/include     param.h 
>     sys/i386/isa         isa.c wd.c 
>     sys/kern             imgact_elf.c sys_pipe.c sysv_shm.c 
>                          vfs_bio.c vfs_subr.c 
>     sys/vm               default_pager.c device_pager.c 
>                          swap_pager.c vm_glue.c vm_map.c vm_mmap.c 
>                          vm_pager.c vm_pager.h vm_unix.c 
>                          vnode_pager.c vnode_pager.h 
>   Log:
>   Fixed two potentially serious classes of bugs:

David, I'm having the inetd type problem on a system I can't bring to
current, it's using a kernel from back in August, but I was wondering if
it might be worth my while to see if these changes might possibly
backport that far, without breaking other things.  Could I get your
non-binding guess on that, would it be worth my time to see if I could
do that?

It's the problem that seems to be caused by starvation.

>   
>   1) The vnode pager wasn't properly tracking the file size due to
>      "size" being page rounded in some cases and not in others.
>      This sometimes resulted in corrupted files. First noticed by
>      Terry Lambert.
>      Fixed by changing the "size" pager_alloc parameter to be a 64bit
>      byte value (as opposed to a 32bit page index) and changing the
>      pagers and their callers to deal with this properly.
>   2) Fixed a bogus type cast in round_page() and trunc_page() that
>      caused some 64bit offsets and sizes to be scrambled. Removing
>      the cast required adding casts at a few dozen callers.
>      There may be problems with other bogus casts in close-by
>      macros. A quick check seemed to indicate that those were okay,
>      however.

----------------------------+-----------------------------------------------
Chuck Robey                 | Interests include any kind of voice or data 
chuckr@glue.umd.edu         | communications topic, C programming, and Unix.
213 Lakeside Drive Apt T-1  |
Greenbelt, MD 20770         | I run Journey2 and picnic (FreeBSD-current)
(301) 220-2114              | and jaunt (NetBSD).
----------------------------+-----------------------------------------------





To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.05.9810130742430.19357-100000>