linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* spurious -ENOSPC on XFS
@ 2009-01-12 11:14 Mikulas Patocka
  2009-01-12 15:11 ` Christoph Hellwig
  2009-01-13 21:49 ` Dave Chinner
  0 siblings, 2 replies; 24+ messages in thread
From: Mikulas Patocka @ 2009-01-12 11:14 UTC (permalink / raw)
  To: xfs; +Cc: linux-kernel

Hi

I discovered a bug in XFS in delayed allocation.

When you take a small partition (52MB in my case) and copy many small 
files on it (source code) that barely fits there, you get -ENOSPC. Then 
sync the partition, some free space pops up, click "retry" in MC an the 
copy continues. They you get again -ENOSPC, you must sync, click "retry" 
and go on. And so on few times until the source code finally fits on the 
XFS partition.

This misbehavior is apparently caused by delayed allocation, delayed 
allocation does not exactly know how much space will be occupied by data, 
so it makes some upper bound guess. Because free space count is only a 
guess, not the actual data being consumed, XFS should not return -ENOSPC 
on behalf of it. When the free space overflows, XFS should sync itself, 
retry allocation and only return -ENOSPC if it fails the second time, 
after the sync.

Mikulas

^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2009-02-05  7:44 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-01-12 11:14 spurious -ENOSPC on XFS Mikulas Patocka
2009-01-12 15:11 ` Christoph Hellwig
2009-01-13  5:58   ` Lachlan McIlroy
2009-01-14 22:16     ` Dave Chinner
2009-01-15  0:57       ` Lachlan McIlroy
2009-01-15  8:47         ` Dave Chinner
2009-01-13 21:49 ` Dave Chinner
2009-01-14  4:28   ` Mikulas Patocka
2009-01-18 17:31     ` Christoph Hellwig
2009-01-20 19:38       ` Mikulas Patocka
2009-01-20 23:24         ` Dave Chinner
2009-01-22 20:59           ` Christoph Hellwig
2009-01-22 22:43             ` Christoph Hellwig
2009-01-23 20:14               ` Mikulas Patocka
2009-01-24  7:12                 ` Dave Chinner
2009-01-29 16:39                   ` Mikulas Patocka
2009-01-29 16:45                     ` Mikulas Patocka
2009-01-31 23:57                     ` Dave Chinner
2009-02-02 17:36                       ` Mikulas Patocka
2009-02-03  3:27                         ` Dave Chinner
2009-02-03 20:05                           ` Mikulas Patocka
2009-02-04 12:08                             ` Dave Chinner
2009-02-05  4:31                               ` Mikulas Patocka
2009-02-05  7:43                                 ` Dave Chinner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).