mwts-filesystem
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
MWTS-FILESYSTEM --------------- INTRODUCTION mwts-filesystem is a test package aimed for measuring file system performance. Verifying file system performance is important for delivering good end user experience on the device. Test cases can be targeted for example following filesystems/devices: - MMC (fat) - root filesystem (ext4,ext3,ubifs) - temp filesystem (ext4,ext3,tmpfs) - eMMC (fat) (embedded memorycard) - eMMC (ext3,ext4) - USB mass storage In different test cases you can test for example for each device: - read throughput - write throughput - create file latency - create dir latency - remove file latency - remove dir latency - sync latency Build in General test case package test root file system, tmp file system and device as USB mass storage. Paths and devices are different in platform and devices, so you must install also platform test package, which installs this package or change /usr/lib/tests/FilesystemTest.conf by hand. SOURCE CODE AND COMPILING Look doc/MWTS.README. Doxygen API documentation can be generated by running 'doxygen' in mwts-filesystem root directory ENVIRONMENT REQUIREMENTS All test cases are executed in device except Mass Storage test cases. Mass Storage test cases are executed in PC Linux. You need to have USB-cable connection to device. Device asks mode and you must select mass storage mode. Now PC mounts automatically devices MMC and embedded MMC cards into PC. All devices don't have MMC or eMMC cards, so check what is mounted and there. Main trend seens to be, that device does not have SD-card place for exterternal SD-card to plug in. EXECUTING TESTS For local test cases you need to connect to device using ssh connection and start MIN tool using command 'min'. Look doc/MWTS.README. EXECUTING MASS STORAGE TESTS Mass Storage test cases are executed in PC Linux. Expected functionality of the device is like this: You need to have USB-cable connection to device. Device asks mode and you must select mass storage mode. Now PC mounts automatically devices MMC and embedded MMC cards into PC. When this is written, this kind of functionality is not found in any MeeGo device, writer has tested. To test devices Mass Storage capabilities, tests asset provides for you convinience utilities to set up Mass Storage mode in any device, that has USB-fuctionality and big enough root filesystem. Utility "/usr/bin/make_mass_storege_filesystem.sh" is a script that makes 1 GB Mass Storage file in device and sets device in Mass Storage mode. It should be run as "root" in device, so copy it to device. USB cable should be connected between PC and device. If you run this script in USB-networking, USB-networking hangs at the end of script, because Mass Storage mode is set on. New file is created in device, so all date in Mass Stirage created this way is destroyed. Utility "/usr/bin/set_mass_storege_mode.sh" sets device to mass storage mode using sharing file created with script described above. It does not destroy anything. In most moders linux distributions, they found that device is in mass storage mode providing it automatically mounted in "/media/MeeGo". This is set in test assets configuration file as default for Mass Storage Cases. Check also /usr/lib/tests/FilesystemTest.conf that devices mass storage cards are mounted in directories conf file says. If needed, correct conf to adapt your device. EXECUTING MASS STORAGE TESTS for EXPERTS If this is not enough for your needs to test Mass Storage and if you are an expert or wan't to be one, you can refer Internet instructions, for instance <http://www.linux-usb.org/gadget/file_storage.html> <http://www.linux-usb.org/usbtest/> Connect into device. You should have root privileges in device. Try to load use mass storage module by hand. Command like this can work modprobe g_file_storage file=/dev/mmcblk0p3 stall=0 On the desktop PC you can mount mass storage device by hand: sudo mkdir -p /mnt/meego sudo mount -t vfat /dev/sdb /mnt/meego -o gid=<username>,uid=<username>,rw Note, that you must change /usr/lib/tests/FilesystemTest.conf to adapt these directories. TEST RESULTS Test results can be found from device in directory /var/log/tests/ Result files are named according to test cases, <test_case_name>.result file contains overall information about test run and measured values. MIN SCRIPTER INTERFACE SelectTarget UBI|TMP|EMMC_FAT|EMMC_EXT3|EMMC_EXT4|USBMSD_MMC|USBMSD_EMMC selects target where testing is done SelectSource UBI|TMP|EMMC_FAT|EMMC_EXT3||EMMC_EXT4|USBMSD_MMC|USBMSD_EMMC selects source in copy tests SetIterationCount <count> set number of iterations to be run for latency cases SetBlockSize <size> set block size for file write/read/copy cases SetBlockCount <count> set number of blocks to be transferred in write/read/copy cases CreateFileLatency test latency of creating a file on selected device RemoveFileLatency test latency of removing a file from selected device MoveFileLatency test latency of moving a file on selected device CreateDirLatency test latency of creating a directory on selected device RemoveDirLatency test latency of removing a directory from selected device SyncLatency measure data synchronization latency on device ReadSpeed measure reading speed on selected target device WriteSpeed measure writing speed to selected target device CopySpeed measure copying speed to from source device to target device FormatTarget format target device (if applicable) KNOWN ISSUES When this was written, none of tested MeeGo device provided UI to set device into Mass Storage mode, when USB-cable is plugged in. You should adapt intructions given above to set up mass stoage by extra utilities provided by test asset, these utilities are not official distributions functionality.