From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16911 invoked by alias); 10 Dec 2005 00:44:43 -0000 Received: (qmail 16894 invoked by uid 9475); 10 Dec 2005 00:44:43 -0000 Date: Sat, 10 Dec 2005 00:44:00 -0000 Message-ID: <20051210004443.16892.qmail@sourceware.org> From: bmarzins@sourceware.org To: cluster-cvs@sources.redhat.com Subject: cluster/gfs-kernel/src/gfs ops_file.c Mailing-List: contact cluster-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Post: List-Help: , Sender: cluster-cvs-owner@sourceware.org X-SW-Source: 2005-q4/txt/msg00281.txt.bz2 List-Id: CVSROOT: /cvs/cluster Module name: cluster Branch: RHEL4U2 Changes by: bmarzins@sourceware.org 2005-12-10 00:44:43 Modified files: gfs-kernel/src/gfs: ops_file.c Log message: Fix for bz 142849 When you do gfs_write on a stuffed inode, you don't update the page cache, because the inodes are stored in the buffer cache. This doesn't effect reads, because gfs special cases the stuffed reads. Unfortunately, sendfile needs to use the page cache, because it relys on the destination socket's sendpage routine to work. So my fix is: after you do a write on a stuffed inode, if the first page of the file is cached (It appears from looking at the code that there is already an assumption that stuffed inodes will never be more than a page in length) mark the cached page as not uptodate. Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs-kernel/src/gfs/ops_file.c.diff?cvsroot=cluster&only_with_tag=RHEL4U2&r1=1.16&r2=1.16.8.1