xfs-masters
[Top] [All Lists]

[xfs-masters] [Bug 418] unwritten extents remain unwritten after mmap()

To: xfs-master@xxxxxxxxxxx
Subject: [xfs-masters] [Bug 418] unwritten extents remain unwritten after mmap() modifies them
From: bugzilla-daemon@xxxxxxxxxxx
Date: Fri, 2 Sep 2005 14:06:25 -0700
Reply-to: xfs-masters@xxxxxxxxxxx
Sender: xfs-masters-bounce@xxxxxxxxxxx
http://oss.sgi.com/bugzilla/show_bug.cgi?id=418





------- Additional Comments From solamyl@xxxxxxxxx  2005-09-02 14:06 CST -------
We probably encountered the same problem.

Our program is some kind of 'file distribution agent' used in distributed 
computing. It receives data from a network connection, stores them into a file 
and forwards them again over another network connection to the next computer on 
a list.

Daily job is to distribute about 300 files of average size 600MB. Each file is 
created with ftruncate(), then preallocated with xfs_alloc() and then mmaped(). 
Data are written into mmaped memory and then msynced().

All worked fine, until we have used xfs_alloc() or xfs_resvsp() functions to 
pre-allocate files (it was necessary to ensure low fragmentation of the files). 
Problem was that the parts of the files were not written onto the disk and were 
regulary lost! Problem showed especially when the volume of the transfered 
files exceeded size of operating memory (probaly some broken caches started to 
flush or release pages).

It seemed to me like if o.s. wes thinking that the modified page was already 
written even if it really was not, or o.s. did not noticed, that the page was 
changed at all.

After lots of testing we have changed mmaping files to open/write/close 
functions and problem disappeared (we must use xfs_alloc() to lower 
fragmentation).

I hope it would help you solve the problem.


-- 
Configure bugmail: http://oss.sgi.com/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.


<Prev in Thread] Current Thread [Next in Thread>
  • [xfs-masters] [Bug 418] unwritten extents remain unwritten after mmap() modifies them, bugzilla-daemon <=