如何验证/测试/基准测试EXT4文件系统上的功能集

时间:2013-11-15 06:50:45

标签: linux linux-kernel filesystems linux-device-driver

我想验证/测试/基准我添加到ext4 kernel_tree/fs的功能集。

我遇到了Spruce Linux文件系统驱动程序验证。特别是对于文件系统。

项目托管@ https://code.google.com/p/spruce/wiki/GettingStarted。 这是针对x86的。

我在武器目标上工作,在开始之前我几乎没有问题。

  1. 之前是否有人在Spruce工作过。

  2. 如何使用ARM的Spruce项目,我们需要为ARM端口吗?

  3. 直接交叉编译或需要进行任何更改。

  4. 我已经阅读了这篇论文:http://syrcose.ispras.ru/2012/files/submissions/25_syrcose2012_submission_21.pdf

    没有关于ARM及其支持的信息。

    请有人解释/帮助谁有关于Spruce项目的工作经验/知识。

2 个答案:

答案 0 :(得分:2)

  1. Spruce打算按如下方式工作。它提供了一组测试,使给定文件系统的内核模块尽可能多地执行代码中的路径。它允许使用一些外部分析器(例如KEDR framework中的工具)来检测不同类型的错误:内存泄漏等。

    所有这些主要用于x86。

    虽然可以将测试本身移植到ARM,但是还需要选择在该平台上工作的分析器。 KEDR工具目前仅适用于x86,但可以在ARM上尝试使用KmemleakFault injection facilities和其他工具。

  2. Spruce似乎还在进行中。我知道,你在他们的问题跟踪器上开了一张关于ARM支持的票,我认为,这是正确的做法。

  3. 我还建议您查看Phoronix Test Suite。它目前广泛用于测试和基准测试,包括文件系统内核模块的分析。例如,请参阅this article。它seems to work on ARM虽然我自己没有尝试过。

答案 1 :(得分:0)

测试/验证文件系统的最佳工具是xfstests。我编写了一些工具,可以轻松验证ext4的xfstests。有关详细信息,请参阅:http://thunk.org/gce-xfstests

还有一个alpha测试级别支持直接在ARM上使用它:http://thread.gmane.org/gmane.comp.file-systems.ext4/53649/focus=53659

这已被成功用于在Android设备上测试ext4,但老实说,我所做的大部分时间都是用来攻击Android内核,直到它构建在x86上,然后使用kvm-xfstests gce-xfstests ,因为它更方便。特别是对于gce-xfstests,我可以做一个“一劳永逸”,然后当测试完成时,我会在我的电子邮件中收到一份测试报告。与Android arm xfstests tarball一样,自动化尚未完成,因此您必须手动设置外部USB连接USB设备,通过某种USB C集线器连接,或者如果您要使用一个OTG usb适配器,你需要确保Android设备在驱动OTG usb端口时能够接收电源---你必须手动设置chroot。除非BSP内核被严重滥用,否则你无法弄清楚如何使它在x86上构建(让MSM内核在x86上工作并不容易)在gce-xfstests上进行测试可能会更加简单一天。

相关问题