[dpdk-dev] [RFC 0/4] Include resources in tests

Bruce Richardson bruce.richardson at intel.com
Fri Apr 29 16:42:27 CEST 2016


On Fri, Apr 29, 2016 at 03:11:32PM +0200, Jan Viktorin wrote:
> Hello,
> 
> this patch set introduces a mechanism to include a resource (in general a blob)
> into the test binary. This allows to make tests less dependent on the target
> testing environment. The first use case is testing of PCI bus scan by changing
> the hard-coded path (/sys/bus/pci/devices) to something different and provide
> a fake tree of devices with the test. It can help with testing of device-tree
> parsing as I've proposed in [1] where such mechanism was missing at that time.
> I'd like to use such framework for the SoC infra testing as well.
> 
> The patch set introduces a struct resource into the app/test. The resource is
> generic to include any kind of binary data. The binary data can be created in
> C or linked as an object file (created by objcopy). I am not sure where to
> place the objcopy logic and how to perform guessing of the objcopy arguments
> as they are pretty non-standard.
> 
> To include a complex resource (a file hierarchy), the last patch implements
> an archive extraction logic. So, it is possible to include a tar archive and
> unpack it before a test starts. Any ideas how to do this in a better way are
> welcome.
> 
> [1] http://comments.gmane.org/gmane.comp.networking.dpdk.devel/36545
> 
> Regards
> Jan Viktorin
> 

Hi Jan,

this looks really interesting, especially since just yesterday I was looking at
taking the million-entry lpm test routing table out of the C code and into a
separate resource file in this case an ini file.

In terms of a solution, I'm not convinced of the placing of the blobs inside the
test binary. I think a better solution would be to allow the different autotests
to take parameters from the commandline, so that the user can specify the path
to the file to use for the test. What would be your opinion of such a scheme?

/Bruce


More information about the dev mailing list