[PATCH 3/4] xfs: revert to using a kthread for AIL pushing

Stefan Priebe - Profihost AG s.priebe at profihost.ag
Wed Oct 19 06:16:23 CDT 2011


> On 2011.10.10 at 12:45 +1100, Dave Chinner wrote:
>> On Thu, Oct 06, 2011 at 02:33:00PM -0400, Christoph Hellwig wrote:
>>> Currently we have a few issues with the way the workqueue code is used to
>>> implement AIL pushing:
>>>
>>>   - it accidentally uses the same workqueue as the syncer action, and thus
>>>     can be prevented from running if there are enough sync actions active
>>>     in the system.
>>>   - it doesn't use the HIGHPRI flag to queue at the head of the queue of
>>>     work items
>>>
>>> At this point I'm not confident enough in getting all the workqueue flags and
>>> tweaks right to provide a perfectly reliable execution context for AIL
>>> pushing, which is the most important piece in XFS to make forward progress
>>> when the log fills.
>>>
>>> Revert back to use a kthread per filesystem which fixes all the above issues
>>> at the cost of having a task struct and stack around for each mounted
>>> filesystem.  In addition this also gives us much better ways to diagnose
>>> any issues involving hung AIL pushing and removes a small amount of code.
>>>
>>> Signed-off-by: Christoph Hellwig<hch at lst.de>
>>> Reported-by: Stefan Priebe<s.priebe at profihost.ag>
>>> Tested-by: Stefan Priebe<s.priebe at profihost.ag>
>>
>> I'd much prefer to fix the problems with the workqueue usage than
>> revert back to using a thread, but seeing as I cannot reproduce the
>> hangs I can't really track down whatever problem there is. So,
>> a bit reluctantly:

Any news on this problem? What happens with the next long term stable 
kernel 3.0.X? How do you proceed with this bug?

Stefan




More information about the xfs mailing list