xfs
[Top] [All Lists]

Re: [PATCH v3 00/10] xfs_ioc_bulkstat code refactoring and consolidation

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: [PATCH v3 00/10] xfs_ioc_bulkstat code refactoring and consolidation
From: Jeff Liu <jeff.liu@xxxxxxxxxx>
Date: Thu, 31 Jul 2014 15:55:43 +0800
Cc: "xfs@xxxxxxxxxxx" <xfs@xxxxxxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20140729232748.GI26465@dastard>
References: <538D92B6.5050402@xxxxxxxxxx> <20140729232748.GI26465@dastard>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0
Hi Dave,

On 07/30/2014 07:27 AM, Dave Chinner wrote:
> On Tue, Jun 03, 2014 at 05:17:42PM +0800, Jeff Liu wrote:
>> Hi folk,
>>
>> This is the revised patches for xfs_ioc_bulkstat consolidation and code
>> refactoring. As per Christoph's comments, I'm not include the per AG
>> inumber patch in this series given that I don't actually introduce the
>> relevant inumbers interface now. Similar to that reason, I also dropped
>> the per AG bulkstat patch, it would be included in parallel quota check
>> series.
>>
>>
>> v3->v2:
>> - one major bug fix is at xfs_bulkstat_ag_ichunk() regarding the user buffer
>>   pointer operations, it should be defined as a pointer-to-pointer since it
>>   would be updated inside xfs_bulkstat_ag_ichunk().
>>
>> - separate xfs_inumber consolidate patch into two patches, the first one
>>   fix the formater function return value and consolidate the codes, another
>>   one does the actual logic changes for better error handling.
>>
>> - Add a separate patch to get rid of the redundant user buffer count
>>   checks at xfs_bulkstat()
>>
>> - fixed agino calculation issue at xfs_bulkstat_grab_ichunk().
>>
>> v2: http://oss.sgi.com/archives/xfs/2014-04/msg00554.html
>> v1: http://oss.sgi.com/archives/xfs/2013-12/msg00901.html
>>
>>
>> Any comments are welcome!
> 
> Hi Jeff, I ported this to the current dev tree based on the
> xfs-libxfs-restructure branch, and I keep seeing fsstress failing
> with memory corruption after random bulkstat ioctls. I see regular
> failures with generic/013, generic/068, xfs/167 and the other
> fstress tests also randomly fail. The typical failure is glibc
> detected memory heap corruption on freeing the bulkstat structure
> after the ioctl:
> 
> generic/068 42s ...*** Error in `./ltp/fsstress': double free or corruption 
> (!prev): 0x00007f0224000b70 ***
> ======= Backtrace: =========

Sorry for my late response and thanks for help porting this patch series.

Now I can reproduce this issue frequently with generic/013, will try to fix
it ASAP.

Cheers,
-Jeff

<Prev in Thread] Current Thread [Next in Thread>