This page contains patches that are EXPERIMENTAL. They had only limited testing and may not install or function in all environments. These patches need not be compatible with other patches on developerworks for LINUX for S/390 either.

LINUX kernel version 2.2.19 experimental downloads

The purpose of this page is early publication of on-going efforts at IBM to allow for

This page may also be used to "submit" code into the development streams of open source projects.

Warning You may not use these patches on a production system or on any system that may get authority over a production system or access to data of a production system. Disregarding this rule may result in severe data loss.

Experimental patches will eventually disappear as they will be included in a following release unless proven wrong or replaced by better code.

If you download any software from this web site please be aware of the Warranty Disclaimer and Limitation of Liabilities.

Available experimental downloads for linux kernel version 2.2.19
Date Component Downloadable
2001-07-23 Patches linux-2.2.19-fixes.tar.gz
linux-2.2.19-tape.tar.gz
linux-2.2.19-ctc.tar.gz
2001-04-26 Patches linux-2.2.19-s390-dump.tar.gz
linux-2.2.19-s390-kerntypes.tar.gz
2001-04-26 OCO modules lcs-2.2.19-s390.tar.gz
qdio-2.2.19-s390.tar.gz
qeth-2.2.19-s390.tar.gz
2001-04-18 Code drop linux-2.2.19-s390-tar.gz

Patches

Release notes:

This patch includes changes that update the experimental Standalone Dump to the same level as the recommended Kernel 2.2.16 Standalone Dump alpha patch. (See the release notes of the recommended patch.)

This patch contains the following fixes for the linux kernel version 2.2.19:

Description:
Kernel hangs under heavy load.
Symptom:
When running under heavy load the system can deadlock.
Problem:
The program check handler is called disabled. This can lead to a deadlock with other processors that try to send inter-process signals while holding a lock that is needed in the program check handler.
Description:
Symptom:
Problem:
During IPL/Boot the common I/O layer establishes path groups during internal device recognition, regardless whether any device driver will eventually operate the device. This is now avoided unless a device driver explicitly claims ownership for a device.
Description:
Kernel reboot problem
Symptom:
The system fails to start up correctly after a reboot.
Problem:
The CCW prefetch control bit in the operation request block was not set in the reipl routine. This leads to incorrect execution of self-modifying IPL CCW chains.
Description:
in_interrupt counting incorrect
Symptom:
NFS ceases to work after some time.
Problem:
irq_enter/irq_exit was not done in the I/O interruption path. This makes cli() continue processing without waiting for the global_irq_lock although another processor is in interrupt. This leads to various other problems besides this one (NFS).
Description:
Parameter parsing problem.
Symptom:
Some multiline kernel parameter won't work.
Problem:
Some editors use the sequence 0x0d0a as line end delimiter instead of 0x0a. The character 0x0d was not converted to a blank which can confuse the parameter parsing.
Description:
User program crashes on entry to signal handler.
Symptom:
The SIGILL signal handler could crash trying to recover from special illegal instructions.
Problem:
Instructions that switch the address space control are intercepted by the linux kernel after the instruction has been executed. The access space control bits in the user PSW need to be reset before calling the signal handler.
Description:
Dynamically allocated DASD majors do not perform well.
Symptom:
The disk I/O performance for DASD devices in dynamically allocated majors (all but major 94, from /dev/dasdbm on) is poor.
Problem:
The generic block device layer does not perform merging of requests to these devices due to a static list of device driver's major numbers that support request merging.
Description:
Console device node major 5/minor 1 does not work with 3215.
Symptom:
The 3215 device driver does not react to activity on the special device node major 5/minor 1.
Problem:
The 3215 function that is supposed to return the device number of the console device returned a wrong number.
Description:
Kernel problems related to the compiler version.
Symptom:
An "old" (2.2.x) kernel compiled with the new 2.95.3 compiler backend does not work at all.
Problem:
The new compiler backend has an improved condition code handling that makes better use of the condition code. This requires that all inline assemblies that clobber the condition code specify that fact on the clobber list.
Description:
Register information incorrect after a panic or a halt.
Symptom:
After a panic or a halt command the lowcores of the CPUs do not contain the dumped registers.
Problem:
The order "stop and store status" dumps the processor registers into absolute 0 and not into real 0. The fixed code now uses the orders "stop" and "store status at address" to make every CPU dump to its own prefix page.
Description:
IP checksum recalculation in ip_decrease_ttl.
Symptom:
Decreased TCPIP performance because of dropped packages.
Problem:
The calculation in ip_decrease_ttl on a 16 bit variable can overflow with the result that the time to live field in the ip header is wrong. Extending the variable to 32 bit solves the problem.

To create the complete kernel sources, the following patches need to be applied in sequence:
linux-2.2.19.tar.gz (GPL)
+ linux-2.2.19-s390.diff (IBM)
+ linux-2.2.19-s390-dump.diff (IBM)
+ linux-2.2.19-s390-kerntypes.diff (IBM)
+ linux-2.2.19-fixes.diff (IBM)

Release notes:

This patch includes changes that bring the experimental tape device driver to the same level as the recommended Kernel 2.2.16 tape device driver alpha patch. (See also the release notes of the recommended patch.)

To create the complete kernel sources, the following patches need to be applied in sequence:
linux-2.2.19.tar.gz (GPL)
+ linux-2.2.19-s390.diff (IBM)
+ linux-2.2.19-s390-dump.diff (IBM)
+ linux-2.2.19-s390-kerntypes.diff (IBM)
+ linux-2.2.19-fixes.diff (IBM)
+ linux-2.2.19-tape.diff (IBM)

Release notes:

This patch contains the backport of the new channel to channel device driver from kernel version 2.4.5 to kernel version 2.2.19.

Please note that this is an updated alternative to the recommended CTC driver in Kernel version 2.2.16.

To create the complete kernel sources, the following patches need to be applied in sequence:
linux-2.2.19.tar.gz (GPL)
+ linux-2.2.19-s390.diff (IBM)
+ linux-2.2.19-s390-dump.diff (IBM)
+ linux-2.2.19-s390-kerntypes.diff (IBM)
+ linux-2.2.19-fixes.diff (IBM)
+ linux-2.2.19-tape.diff (IBM)
+ linux-2.2.19-ctc.diff (IBM)

Release notes:

This patch provides LINUX for S/390 stand alone dump records for generating system memory dumps on DASD volumes and tapes. The dumps can be analyzed with the dump analysis tool 'lcrash', included in the lkcdutils package, which provides support for Linux for S/390 with version 3.1.2. It can be downloaded from: ftp://oss.sgi.com/projects/lkcd/download/3.1.2/lkcdutils The latest version of lcrash, which is an independent open source project, can be obtained from: http://sourceforge.net/projects/lkcd
This patch applies against the vanilla 2.2.19 kernel sources with the linux-2.2.19-s390.diff.

Release notes:

This patch contains a dummy module that includes headers for all kernel types that the dump analysis tool lcrash needs. The kernel type information is used as input by the lcrash utility when analyzing system crash dumps or the live system. This patch applies against the vanilla 2.2.19 kernel sources with the linux-2.2.19-s390.diff.

OCO Modules

The following device drivers are compatible with the experimental Linux kernel version 2.2.19 and are object code only. Documentation on their use can be found in the LINUX for S/390 device drivers manual in the Documentation section.

Restrictions for QDIO base support and OSA-Express Gigabit Ethernet Driver:

Code Drop

Release notes:

This patch provides an updated S/390 backend for linux kernel version 2.2.19. It contains the following:

Contact the IBM team

If you want to contact the Linux on System z IBM team refer to the Contact the Linux on System z IBM team page.