02:55 PM PST
December 13, 2017

IBM Linux Technology Center

Test Team

Verification summary report of JFS on LVM

July 26, 2001


Acknowledgments

All of the hardware used for this test was provided by the Open Source Development Lab. We would like to thank Christine Moore and Aaron Burt, of the OSDL, without whose help we would have been unable to perform this testing.

Introduction

This document summarizes the initial JFS on LVM test effort of the IBM Linux Technology Center Test(LTC) Team. It describes:

Test approach

Testing occurred in two phases: a basic regression test, and an extended duration or robustness test. The regression phase was executed to determine a base level of functionality, the robustness phase was executed to determine filesystem behavior on large volumes. Testing occurred on a single logical volume running JFS. This logical volume was created twice for this test effort, once at 1023.97Gb and once at 1Tb.

Unresolved issues

The only issue for this test was a null pointer exception during the large file removal.

Areas for further testing

JFS would benefit from additional testing in environments that push Linux and filesystem limits, volumes of 2+ terabyte and systems with 4Gb - 64Gb ram. Currently such testing is beyond the capacity of LTC Test to complete; there is either a hardware, software, or resource challenge.

Test environment

This section details the distributions, and kernel versions, and defines the hardware configurations used during testing.

Distributions

Initial test efforts focused on commercially available distributions. The LTC is continually evaluating its test environment and may add additional distributions in the future. The distribution and release for this test effort was:

  • RedHat 7.1

Kernels

The 2.4.5 kernel from kernel.org was used exclusively for this test effort. It was patched with the 1.0.1 version of JFS. CONFIG_SD_EXTRA_DEVS in /usr/src/linux/drivers/scsi/hosts.h was changed from 2 to 400, and RELOAD_FIRMWARE in /usr/src/linux/drivers/scsi/qlogicfc.c was changed to 0. Both of these changes were made to ensure proper function from the fibre channel card.

Hardware configurations

The equipment used for this testing was provided by the Open Source Development Lab.
NameProcessor MemoryStorage
dev8-0008-PIII8Gb2-36Gb Hard Drives, 2-448Gb Raid Trays, 2-180Gb Trays from SAN

Logical volumes

LVM version 0.9.1_beta7 was used exclusively for this test effort.

Test cases and observations

The IOzone, lftool, and fsthrasher tests were run to exercise the JFS filesystem on LVM.
IOzone

Location:http://www.iozone.org/
Description:IOzone is benchmarking tool placed in an iterative loop to generate extended load on the filesystem. This test executes through 3 iterations as a regression.
Planned Test Duration:Basic regression
Longest Test Duration:NA
Hardware:dev8-000
Kernel:2.4.5
Distributions:RedHat 7.1
Parameters:-A
Observations:Three iterations of this test were executed against both volume configurations without incident.
 
lftool
Location:This test is currently not available external to IBM.
Description:This test creates and reads into large files. It is designed to test creation of files greater than 2Gb.
Planned Test Duration:Basic regression
Longest Test Duration:22.95 hours
Hardware:dev8-000
Kernel:2.4.5
Distributions:RedHat 7.1
Parameters:921543
Observations:This test was run against the first logical volume. It ran for 22.95 hours and created a single file of 921543Mb. When this file was deleted, an exception occurred on the system but the file was deleted. The df -T, ls -la, and the stack dump for this test follows.
df -T
	Filesystem    Type   1k-blocks      Used Available Use% Mounted on
	/dev/sda6     ext2     1035660    106696    876356  11% /
	/dev/sda1     ext2       23302      8068     14031  37% /boot
	/dev/sdb6     ext2     4134396        88   3924288   1% /home
	/dev/sda7     ext2     4134900      2688   3922164   1% /tmp
	/dev/sda5     ext2     4134900    822500   3102352  21% /usr
	/dev/sdb1     ext2     4134428     14776   3909628   1% /var
	/dev/jaws/lvol1
				   jfs   1023935776 943785288  80150488  93% /terrorbyte

	
ls -la
	total 943660044
	drwxr-xr-x    2 root     root          256 Jul 17 22:41 .
	drwxr-xr-x   19 root     root         4096 Jul 16 23:23 ..
	-rwxr-xr-x    1 root     root     966307872768 Jul 17 22:36 large_file
	-rw-r--r--    1 root     root          176 Jul 17 22:41 temp
	
Stack Dump
	Unable to handle kernel NULL pointer dereference
	at virtual address 00000010
	 printing eip:
	c0185346
	*pde = 00000000
	Oops: 0002
	CPU:    1
	EIP:    0010:[]
	EFLAGS: 00010246
	eax: 01007a4f   ebx: 00000000   ecx: 0f420148   edx: 00000000
	esi: 00000000   edi: 00000000   ebp: f64a24a0   esp: c549bd24
	ds: 0018   es: 0018   ss: 0018
	Process jfsCommit (pid: 8, stackpage=c549b000)
	Stack: 00000000 00000809 00000000 00000000 00000000 ebac2000 00001a4f fe0de000
		   00000000 01007a4f 00000000 00000000 01007a4f 00000000 df2f6030 c019626f
		   eb9d25e0 01007a4f 00000000 00000000 00000000 00000001 00001000 c549be04
	Call Trace: []  [] [] [] [] [] []
		   [] [] [] [] [] [] [] []
		   [] [] [] [] [] [] []

	Code: 83 4a 10 08 52 e8 70 ba 00 00 8d 85 6c 01 00 00 5a f0 ff 8d
	
 
fsthrasher
Location:This test is currently not available external to IBM.
Description:This test creates a set of user defined files and then performs reads and writes into these files.
Planned Test Duration:96 hour robustness
Longest Test Duration:96 hours
Hardware:dev8-000
Kernel:2.4.5
Distributions:RedHat 7.1
Parameters:-b 2000 -f 256 -i 600 -p 12 -r 50 -s 1024 -x 96
Observations:This test ran for 96 hours and generated about 600 million reads and writes on the filesystem. 256 2Gb files were used this generated about 50% utilization of the filesystem. Currently the fsthrasher test is being updated to support a greater number of files and files of greater than 2Gb.
df -T
	Filesystem    Type   1k-blocks      Used Available Use% Mounted on
	/dev/sda6     ext2     1035660    106856    876196  11% /
	/dev/sda1     ext2       23302      8068     14031  37% /boot
	/dev/sdb6     ext2     4134396        88   3924288   1% /home
	/dev/sda7     ext2     4134900      3472   3921380   1% /tmp
	/dev/sda5     ext2     4134900    829060   3095792  22% /usr
	/dev/sdb1     ext2     4134428     15108   3909296   1% /var
	/dev/jaws/lvol1
				   jfs   1073676084 524445216 549230868  49% /terrorbyte
	
 

Test Team

Test Lead:James M. Kenefick Jr.
Test Engineer:Jay Inman
Test Engineer:Jeff Martin
Test Engineer:Paul Larson

IBM Corporation and its logos are registered trademarks of International Business Machines.
Linux is a trademark of Linus Torvalds.
RedHat and its logo are registered trademarks of RedHat, Inc.
Other company, product, and service names may be trademarks or service marks of others.