Date: Thu, 26 Feb 2009 18:58:41 +0000 (UTC) From: Andriy Gapon <avg@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/fs/udf udf.h udf_vfsops.c udf_vnops.c Message-ID: <200902261900.n1QJ0Cug020398@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
avg 2009-02-26 18:58:41 UTC FreeBSD src repository Modified files: sys/fs/udf udf.h udf_vfsops.c udf_vnops.c Log: SVN rev 189082 on 2009-02-26 18:58:41Z by avg udf_readatoffset: read through directory vnode, do not read > MAXBSIZE Currently bread()-ing through device vnode with (1) VMIO enabled, (2) bo_bsize != DEV_BSIZE (3) more than 1 block results in data being incorrectly cached. So instead a more common approach of using a vnode belonging to fs is now employed. Also, prevent attempt to bread more than MAXBSIZE bytes because of adjustments made to account for offset that doesn't start on block boundary. Add expanded comments to explain the calculations. Also drop unused inline function while here. PR: kern/120967 PR: kern/129084 Reviewed by: scottl, kib Approved by: jhb (mentor) Revision Changes Path 1.16 +1 -16 src/sys/fs/udf/udf.h 1.61 +2 -2 src/sys/fs/udf/udf_vfsops.c 1.83 +20 -7 src/sys/fs/udf/udf_vnops.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200902261900.n1QJ0Cug020398>