Re: [PATCH] btrfs-progs: tests: Introduce expand_command() to inject aruguments more accurately

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 2020/4/4 上午8:52, David Sterba wrote:
> On Mon, Mar 30, 2020 at 03:02:32PM +0800, Qu Wenruo wrote:
>> [PROBLEM]
>> We want to inject $INSTRUMENT (mostly valgrind) before btrfs command but
>> after root_helper.
>>
>> Currently we won't inject $INSTRUMENT at all if we are using
>> root_helper.
>> This means the coverage is not good enough.
>>
>> [FIX]
>> This patch introduce a new function, expand_command(), to handle all
>> parameter/argument injection, including existing 'btrfs check' inject.
>>
>> This function will:
>> - Detect where to inject $INSTRUMENT
>>   If we have root_helper and the command is target command
>>   (btrfs/mkfs.btrfs/btrfs-convert), then we inject $INSTRUMENT after
>>   root_helper.
>>   If we don't have root_helper, and the command is target command,
>>   we inject $INSTRUMENT before the command.
>>   Or we don't inject $INSTRUMENT (it's not the target command).
>>
>> - Use existing spec facility to inject extra arguments
>>
>> - Use an array to restore to result
>>   To avoid bash interpret the IFS inside path/commands.
>>
>> Now we can make sure no matter if we use root_helper, $INSTRUMENT is
>> always injected corrected.
>>
>> Signed-off-by: Qu Wenruo <wqu@xxxxxxxx>
> 
> I don't know why, but with this patch (without my fixups) the misc tests
> get stuck at 004-shrink-fs. Per 'ps' output it's inside the test.sh
> script so not waiting for sync or such. I need to do the releease so
> will skip this patch as it's not critical.
> 
Strangely, with my patch, the "for (( i = 1; i <= 7; i++)); do" loop
stuck at i = 6 forever, thus doing the fallocating again and again on
the same file.

Will pin down the cause and address your comment in next version.

Thanks,
Qu

Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux