A while back I posted a patch to re-dirty pages on I/O error to handle errors from xfs_trans_reserve() that was failing with ENOSPC when trying to convert delayed allocations. I'm now seeing xfs_tran
Is this problem being seen in the real world, or just in artificial test workloads? What the reserve pool is supposed to do is provide sufficient blocks to allow dirty data to be flushed, xattrs to b
Dave Chinner wrote: On Fri, Sep 26, 2008 at 03:31:23PM +1000, Lachlan McIlroy wrote: A while back I posted a patch to re-dirty pages on I/O error to handle errors from xfs_trans_reserve() that was fa
And the main cause is what? Direct I/O into unwritten extents? It's the same problem - allocation can cause consumption of blocks in the BMBT tree. At ENOSPC, it's not the allocbt that is being split
Dave Chinner wrote: On Fri, Sep 26, 2008 at 05:45:10PM +1000, Lachlan McIlroy wrote: Dave Chinner wrote: On Fri, Sep 26, 2008 at 03:31:23PM +1000, Lachlan McIlroy wrote: A while back I posted a patch
By that I assume you mean that there are lots of threads waiting in xlog_state_get_iclog_space()? IIUC, you are trying to say that delayed allocation is failing with ENOSPC in xfs_iomap_write_allocat