Subject: CVS commit: syssrc
To: None <source-changes@netbsd.org>
From: Bill Sommerfeld <sommerfeld@netbsd.org>
List: source-changes
Date: 08/24/1999 16:29:10
Module Name: syssrc
Committed By: sommerfeld
Date: Tue Aug 24 23:29:09 UTC 1999
Modified Files:
syssrc/sys/miscfs/fdesc: fdesc_vnops.c
syssrc/sys/miscfs/kernfs: kernfs_vnops.c
syssrc/sys/miscfs/procfs: procfs_vnops.c
Log Message:
Fix PR8270:
Problem turned out to be due to improper handling of reads beyond EOF:
they should just return without error with the uio unchanged, and the
caller will recognize this as a zero-byte return (EOF).
The previous fix to protect directory reads against bogus uio_offset
values returned EINVAL, which broke mount -o union, which only
union'ed in the lower directory if the upper directory cleanly
returned EOF.
While we're here, protect kernfs as well.
To generate a diff of this commit:
cvs rdiff -r1.51 -r1.52 syssrc/sys/miscfs/fdesc/fdesc_vnops.c
cvs rdiff -r1.65 -r1.66 syssrc/sys/miscfs/kernfs/kernfs_vnops.c
cvs rdiff -r1.66 -r1.67 syssrc/sys/miscfs/procfs/procfs_vnops.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.