Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 13 Oct 1998 01:24:45 -0700 (PDT)
From:      David Greenman <dg@FreeBSD.ORG>
To:        cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG
Subject:   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:  <199810130824.BAA23019@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
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:
  
  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.
  
  Revision  Changes    Path
  1.10      +2 -2      src/sys/cam/scsi/scsi_da.c
  1.11      +4 -4      src/sys/i386/i386/busdma_machdep.c
  1.112     +3 -3      src/sys/i386/i386/vm_machdep.c
  1.32      +5 -5      src/sys/i386/ibcs2/imgact_coff.c
  1.47      +3 -3      src/sys/i386/include/param.h
  1.115     +2 -2      src/sys/i386/isa/isa.c
  1.177     +2 -2      src/sys/i386/isa/wd.c
  1.38      +4 -4      src/sys/kern/imgact_elf.c
  1.43      +3 -3      src/sys/kern/sys_pipe.c
  1.39      +3 -4      src/sys/kern/sysv_shm.c
  1.179     +9 -9      src/sys/kern/vfs_bio.c
  1.165     +3 -4      src/sys/kern/vfs_subr.c
  1.16      +4 -4      src/sys/vm/default_pager.c
  1.32      +9 -7      src/sys/vm/device_pager.c
  1.102     +5 -5      src/sys/vm/swap_pager.c
  1.77      +8 -8      src/sys/vm/vm_glue.c
  1.137     +2 -2      src/sys/vm/vm_map.c
  1.84      +4 -4      src/sys/vm/vm_mmap.c
  1.38      +4 -4      src/sys/vm/vm_pager.c
  1.17      +3 -3      src/sys/vm/vm_pager.h
  1.17      +2 -2      src/sys/vm/vm_unix.c
  1.100     +4 -4      src/sys/vm/vnode_pager.c
  1.12      +2 -2      src/sys/vm/vnode_pager.h

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199810130824.BAA23019>