Page navigation
- Linux kernel version 2.4.7 experimental downloads
- z90crypt OCO module (64-bit) [2002-01-21]
- Patch for "order 2 allocation relief" [2001-12-12]
- Experimental OCO modules (64-bit) for "Order 2 allocation" patch [2001-11-23]
- Patch for "order 2 allocation relief" [2001-11-09]
- Experimental OCO modules (64-bit) for "Order 2 allocation" patch [2001-11-09]
- Experimental OCO modules (31-bit) [2001-11-09]
This page will be used to accommodate code drops that are EXPERIMENTAL. Experimental code drops only have 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.4.7 experimental downloads
The purpose of experimental code drops is early publication of on-going efforts at IBM to allow for
- code review and
- early experiments by "power users".
This page may also be used to "submit" code into the development streams of open source projects.
Warning You may not use experimental 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 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.
| Date | Component | Downloadable |
|---|---|---|
| 2002-01-21 | Experimental OCO module z90crypt 64-bit | z90crypt(2) for standard and "on-demand" timer. |
| 2001-12-12 | Patch for "order 2 allocation relief" | linux-2.4.7-order2-2 (superseded) |
| 2001-11-23 | Experimental OCO modules 64-bit |
lcs-2.4.7-s390x-4-order2 (superseded)
qdio-2.4.7-s390x-5-order2 (superseded) qeth-2.4.7-s390x-5-order2 (superseded) |
| 2001-11-09 |
Patch for "order 2 allocation relief"
Experimental OCO modules 64-bit Experimental OCO modules 31-bit |
linux-2.4.7-order2 (superseded)
lcs-2.4.7-s390x-3-order2 (superseded) qdio-2.4.7-s390x-4-order2 (superseded) qeth-2.4.7-s390x-4-order2 (superseded) z90crypt-2.4.7-s390-1 (superseded) |
z90crypt OCO module (64-bit) [2002-01-21]
-
z90crypt-2.4.7-s390x-2.tar.gz | MD5 and
z90crypt-2.4.7-s390x-2-timer.tar.gz | MD5 (2002-01-21)
The cryptographic device driver z90crypt for 64-bit is provided for the first time.
Using z90crypt on 64-bit Kernel 2.4.7 requires the "additional IOCTL translation support" kernel-patch introduced 2002-01-21.
Documentation for z90crypt is included in the "Linux for zSeries Device Driver and Installation Commands" manual.
Using z90crypt on VM-guests requires z/VM 4.2 and APAR VM62905.
Patch for "order 2 allocation relief" [2001-12-12]
- linux-2.4.7-order2-2.tar.gz | MD5 experimental (2001-12-12)
This patch contains a complete replacement for the original (2001-11-09) "order 2 allocation relief" patch. The original patch decreased the kernel stack size to 8KB which turned out to be not enough. As a side-effect of this new patch there is no longer a need for special OCO-modules.
- Description:
- Order 2 allocation relief.
- Symptom:
- Under stress and after long uptimes of a 64 bit system the error message "__alloc_pages: 2-order allocation failed." appears and either the fork of a new process fails or an active process dies.
- Problem:
- The order 2 allocation problem is based in the size of the region and segment tables as defined by the zSeries architecture. A full region or segment table in 64 bit mode takes 16 KB of contiguous real memory. The page allocation routines do not guarantee that a higher order allocation will succeed due to memory fragmentation.
- Solution:
- The order 2 allocation fix is supposed to reduce the number of order 2 allocations for the region and segment tables to a minimum. To do so it uses a feature of the architecture that allows to create incomplete region and segment tables. In almost all cases a process does not need full region or segment tables. If a full region or segment table is needed it is reallocated to the full size.
Important notices:
- This patch is very S/390 specific and breaks all other architectures.
- This patch does only work for a 64-bit Linux for zSeries kernel and should not be applied if you intend to build a 31-bit kernel.
- This patch is not compatible with the 2001-10-12 (nor the 2001-09-14) "on-demand timer" patch.
To create the complete linux kernel sources, the following patches need to be applied in sequence:
linux-2.4.7.tar.gz (GNU)
+ linux-2.4.7-s390.diff (IBM)
+ linux-2.4.7-s390-1.diff (IBM)
+ linux-2.4.7-s390-2.diff (IBM)
+ linux-2.4.7-s390-3.diff (IBM)
+ linux-2.4.7-s390-4.diff (IBM)
+ linux-2.4.7-order2-2.diff (IBM)
Experimental OCO modules (64-bit) for "Order 2 allocation" patch [2001-11-23]
The following experimental 64-bit OCO modules are required for a 64-bit kernel with the 2001-11-09 patch for "Order 2 allocation relief" applied.
These experimental 64-bit modules are functionally equivalent to the 2001-11-23 recommended modules.
- lcs-2.4.7-s390x-4-order2.tar.gz | MD5 2001-11-23
- qdio-2.4.7-s390x-5-order2.tar.gz | MD5 2001-11-23
- qeth-2.4.7-s390x-5-order2.tar.gz | MD5 2001-11-23
Patch for "order 2 allocation relief" [2001-11-09]
- linux-2.4.7-order2.tar.gz | MD5 experimental (2001-11-09)
This patch contains the following linux kernel bug fixes:
- Description:
- Order 2 allocation relief.
- Symptom:
- Under stress and after long uptimes of a 64 bit system the error message "__alloc_pages: 2-order allocation failed." appears and either the fork of a new process fails or an active process dies.
- Problem:
- The order 2 allocation problem is based in the size of the region and segment tables as defined by the zSeries architecture. A full region or segment table in 64 bit mode takes 16 KB of contiguous real memory. The page allocation routines do not guarantee that a higher order allocation will succeed due to memory fragmentation.
- Solution:
- The order 2 allocation fix is supposed to reduce the number of order 2 allocations for the region and segment tables to a minimum. To do so it uses a feature of the architecture that allows to create incomplete region and segment tables. In almost all cases a process does not need full region or segment tables. If a full region or segment table is needed it is reallocated to the full size.
Important notices:
- This patch is very S/390 specific and breaks all other architectures.
- This patch does only work for a 64-bit Linux for zSeries kernel and should not be applied if you intend to build a 31-bit kernel.
- This patch is not compatible with the 2001-10-12 (nor the 2001-09-14) "on-demand timer" patch.
- 64-bit kernels built with this patch applied require special OCO-modules.
To create the complete linux kernel sources, the following patches
need to be applied in sequence:
linux-2.4.7.tar.gz (GNU)
+ linux-2.4.7-s390.diff (IBM)
+ linux-2.4.7-s390-1.diff (IBM)
+ linux-2.4.7-s390-2.diff (IBM)
+ linux-2.4.7-s390-3.diff (IBM)
+ linux-2.4.7-order2.diff (IBM)
Experimental OCO modules (64-bit) for "Order 2 allocation" patch [2001-11-09]
The following experimental 64-bit OCO modules are required for a 64-bit kernel with the 2001-11-09 patch for "Order 2 allocation relief" applied.
These experimental 64-bit modules are functionally equivalent to the 2001-11-09 recommended modules.
- lcs-2.4.7-s390x-3-order2.tar.gz | MD5 2001-11-09
- qdio-2.4.7-s390x-4-order2.tar.gz | MD5 2001-11-09
- qeth-2.4.7-s390x-4-order2.tar.gz | MD5 2001-11-09
Experimental OCO modules (31-bit) [2001-11-09]
- z90crypt-2.4.7-s390-1.tar.gz | MD5 2001-11-09
z90crypt comments & improvements since 2001-09-28 2.4.7 drop.
Bugfixes.