 |
|
Available for Linux kernel version 2.4.7 are the following
downloads (latest one first).
For technical details like Hardware and Software requirements for
kernel level 2.4, please refer to the 2.4.7 technical details page.
The restrictions which apply to these downloads are in the 2.4.7 restrictions page. For kernel
2.4 based documentation (31- and 64-bit), please refer to the
2.4.7 documentation page.
This page contains OCO modules that are EXPERIMENTAL. They had only
limited testing and may not install or function in all
environments.
Warning You may not use these experimental OCO modules 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.
|
If you download any software from this web site please be aware of the
Warranty Disclaimer and Limitation of Liabilities.
Linux kernel version 2.4.7 recommended downloads stream
| Date |
Component |
Downloadable |
| 2002-07-25 |
Jul25 2002 patches |
gcc-2.95.3-s390-5
binutils-2.11.90.0.27-s390-4
|
| 2002-07-04 |
Jul04 2002 patch |
binutils-2.11.90.0.27-s390-3
|
| 2002-06-17 |
Recommended OCO modules 31-bit
Recommended OCO modules 64-bit
|
qdio(9) and qeth(9) for standard and "on-demand" timer.
qdio(9) and qeth(9) for standard and "on-demand" timer.
|
| 2002-06-04 |
Jun04 2002 patch
|
gcc-2.95.3-s390-4
|
| 2002-04-15 |
Apr15 2002 patches
|
linux-2.4.7-s390-7
linux-2.4.7-timer-4
|
| 2002-03-18 |
Mar18 2002 patches
|
gcc-2.95.3-s390-3
linux-2.4.7-order2-4
|
| 2002-03-04 |
Mar 04 lcs patch
|
linux-2.4.7-s390-6-lcs
|
| 2002-03-01 |
Recommended OCO modules 31-bit
Recommended OCO modules 64-bit
|
qdio(8) and qeth(8) for standard and "on-demand" timer.
(superseded)
qdio(8) and qeth(8) for standard and "on-demand" timer.
(superseded)
|
| 2002-02-28 |
64-bit: undefined weak external bug
binutils undefined weak external bug-fix
glibc-2.2.4 undefined weak external bug-fix
|
undef-weak-bug.txt
binutils-2.11.90.0.27-s390-2
glibc-2.2.4-s390-3
|
| 2002-02-27 |
Feb27 2002 patches
|
glibc-2.2.4-s390-2
|
| 2002-02-26 |
Feb26 2002 patches
|
s390-tools-5
|
| 2002-01-21 |
Jan21 2002 patches
Recommended OCO modules 31-bit
Recommended OCO modules 64-bit
|
linux-2.4.7-s390-5
linux-2.4.7-timer-3
(superseded)
linux-2.4.7-order2-3
(superseded)
lcs(6) and z90crypt(2) for standard and "on-demand"
timer.
qdio(7) and qeth(7) (superseded)
lcs(6) for standard and "on-demand" timer.
qdio(7) and qeth(7) (superseded)
|
| 2001-12-12 |
Dec12 2001 patch
Recommended OCO modules 31-bit
Recommended OCO modules 64-bit
|
s390-tools-4
lcs(5), qdio(6), and qeth(6) for standard and "on-demand"
timer. (superseded)
lcs(5), qdio(6), and qeth(6) for standard and "on-demand"
timer. (superseded)
|
| 2001-11-23 |
Nov23 2001 patches
Recommended OCO modules 31-bit
Recommended OCO modules 64-bit
|
linux-2.4.7-s390-4
linux-2.4.7-s390-2-timer
(superseded)
lcs(4), qdio(5), and qeth(5) for standard and "on-demand"
timer. (superseded)
lcs(4), qdio(5), and qeth(5) for standard and "on-demand"
timer. (superseded)
|
| 2001-11-09 |
Nov09 2001 patches
Recommended OCO modules 31-bit
Recommended OCO modules 64-bit
|
linux-2.4.7-s390-3
s390-tools-3
lcs(3), qdio(4), and qeth(4) for standard and "on-demand"
timer. (superseded)
lcs(3), qdio(4), and qeth(4) for standard and "on-demand"
timer. (superseded)
|
| 2001-10-12 |
Oct12 2001 patches
Recommended OCO modules 31-bit
Recommended OCO modules 64-bit
|
binutils-2.11.90.0.27-s390-1
gcc-2.95.3-s390-2
gdb-5.0-s390-2
glibc-2.2.4-s390-1
linux-2.4.7-s390-2
linux-2.4.7-s390-timer
(superseded)
strace-4.2.20010119-s390-1
s390-tools-2
lcs(2), qdio(3), and qeth(3) for standard and "on-demand"
timer. (superseded)
lcs(2), qdio(3), and qeth(3) for standard and "on-demand"
timer. (superseded)
|
| 2001-09-28 |
Recommended OCO modules (31-bit)
Experimental OCO modules (64-bit)
Experimental OCO module (31-bit)
|
qdio(2), and qeth(2) for standard and "on-demand" timer.
(superseded)
qdio(2), and qeth(2) for standard and "on-demand" timer.
(superseded)
z90crypt-2.4.7-s390
(superseded)
|
| 2001-09-14 |
Sep14 2001 patches
Experimental OCO modules (64-bit)
|
binutils-2.11.90.0.27-brxlg
gcc-2.95.3-s390-1
gdb-5.0-s390-1
linux-2.4.7-s390-1
linux-2.4.7-timer
(superseded)
s390-tools-1
lcs(1), qdio(1), and qeth(1) for standard and "on-demand"
timer. (superseded)
|
| 2001-08-20 |
Aug20 2001 patches
OCO modules (31-bit)
Experimental OCO modules (64-bit)
|
binutils-2.11.90.0.27-s390
gcc-2.95.3-s390
gdb-5.0-s390
glibc-2.2.4-s390
linux-2.4.7-s390
linux-2.4.7-s390-kerntypes
modutils-2.4.7
strace-4.2.20010119-s390
s390-tools
lcs, qdio, and qeth for the standard timer.
(superseded)
lcs, qdio, and qeth for the standard timer.
(superseded)
|
-
gcc-2.95.3-s390-5.tar.gz MD5 recommended
(2002-07-25)
-
This patch contains the following compiler bug fixes:
| Description: |
Literal pool overflow handling. |
| Symptom: |
Compiler aborts with 'multiple literal pool' internal compiler
error, or otherwise generates incorrect code for routines using
>4K literals. |
| Problem: |
The compiler uses a per-function literal pool to access
immediate constants too large for the S/390 immediate instructions.
This pool is limited to a size of 4 KB. Fortunately, nearly all
routines do not exceed this limit, but some -usually automatically
generated code- do.
To cope with this situation, the compiler tried to split the
literal pool into multiple 'pool chunks', each smaller than 4 KB.
The algorithms used to perform this split, however, suffered from
several design flaws that could cause the compiler to abort
(because it wouldn't find a proper place to split the pools) or
else generate invalid code -especially when using -fpic/-fPIC-
(because it split the pools at invalid places without noticing
it). |
| Solution: |
The whole literal pool handling was completely replaced for gcc
3.1.1 and above; the new algorithm solves all those problems. This
patch backports the new literal pool overflow handling to the gcc
2.95.3 compiler. |
You will need this patch only if you run into problems caused by
literal pool overflows.
To create the complete compiler sources, the following patches
need to be applied in sequence:
gcc-2.95.3.tar.gz (see gcc.gnu.org)
+ gcc-2.95.3-s390.diff (IBM)
+ gcc-2.95.3-s390-1.diff (IBM)
+ gcc-2.95.3-s390-2.diff (IBM)
+ gcc-2.95.3-s390-3.diff (IBM)
+ gcc-2.95.3-s390-4.diff (IBM)
+ gcc-2.95.3-s390-5.diff (IBM)
-
binutils-2.11.90.0.27-s390-4.tar.gz MD5
recommended (2002-07-25)
-
This patch contains the following binutils bug fixes:
| Description: |
Linker crashes. |
| Symptom: |
The static link of some special object files crashes the
linker. |
| Problem: |
The final, static link of object files that do not contain any
direct references to dynamic symbols but only indirect ones crashes
the linker because the dynobj pointer and the got pointer are used
but never initialised. |
| Solution: |
Initialise the dynobj pointer if it is needed and avoid
accessing the got section if it does not exists. |
Everybody should apply this patch.
Note: You should apply the glibc-2.2.4-s390-3 patch to
your system as well but you need to be careful with it. Please read
the description for the "Undefined weak
external" bug for details about this problem.
To create the complete binutils sources, the following patches need
to be applied in sequence: binutils-2.11.90.0.27.tar.gz (see
ftp://www.kernel.org/pub/linux/devel/binutils/)
+ binutils-2.11.90.0.27-s390.diff (IBM)
+ binutils-2.11.90.0.27-s390-1.diff (IBM)
+ binutils-2.11.90.0.27-s390-2.diff (IBM)
+ binutils-2.11.90.0.27-s390-3.diff (IBM)
+ binutils-2.11.90.0.27-s390-4.diff (IBM)
|
-
binutils-2.11.90.0.27-s390-3.tar.gz MD5
recommended (2002-07-04)
-
This patch contains the following binutils bug fixes:
| Description: |
Broken relocation sections. |
| Symptom: |
Dynamic linker error message "unexpected reloc type" or program
crashes / malfunctions. |
| Problem: |
There are two problems in regard to the relocation sections.
First hidden symbols are not excluded from the final link in all
cases, dependent on the link order. Second the calculation of the
size of the relocation sections is incorrect if hidden symbols have
been excluded. |
| Solution: |
Correct tests to exclude hidden symbols from the relocation
sections in the final link and rework section allocation for .rela
section to determine the correct size. |
Everybody should apply this patch.
Note: You should apply the glibc-2.2.4-s390-3 patch to your system
as well but you need to be careful with it: Please read the
description for the "Undefined weak
external" bug for details.
To create the complete binutils sources, the following patches need
to be applied in sequence: binutils-2.11.90.0.27.tar.gz (see
ftp://www.kernel.org/pub/linux/devel/binutils/)
+ binutils-2.11.90.0.27-s390.diff (IBM)
+ binutils-2.11.90.0.27-s390-1.diff (IBM)
+ binutils-2.11.90.0.27-s390-2.diff (IBM)
+ binutils-2.11.90.0.27-s390-3.diff (IBM)
|
|
The qdio and qeth 31-bit and 64-bit OCO-modules of
2002-06-17 are replacements for the 2002-03-01 recommended qdio and
qeth modules (see below description).
Recommended OCO modules 31-bit
Recommended OCO modules 64-bit
2002-06-17: OSA-Express QDIO enhancement under VM Gigabit
Ethernet throughput (transactions per second) can potentially
increase while potentially reducing the VM CP cost (CPU cycles per
transaction) for Linux guests using Gigabit Ethernet or Fast
Ethernet OSA-Express running QDIO under supported levels of VM, if
the follwing requirements are installed:
- qeth and qdio for Linux on zSeries
- qdio (part of kernel 2.4.17-may2002 patches) and qeth
(OCO-module) from the Recommended "May 2002
stream" page contain the necessary functionality since
2002-05-31.
- The qdio and qeth OCO-modules for the other two kernel 2.4
streams have been upgraded with retrofits of this functionality,
see:
- OSA-Express QDIO
- zSeries 900 GA3: Driver 3G, OSA microcode level
3.0A,
MCLs: J11204.007 and J11204.008
(available May 03, 2002)
- zSeries 900 GA2: Driver 3C, OSA microcode level:
2.26
MCLs: J10630.013 and J10630.014
(available May 20, 2002)
- zSeries 800 GA1: Driver 3G, OSA microcode level
3.0A
MCLs: J11204.007 and J11204.008
(available May 03, 2002)
- S/390 Parallel Enterprise Servers G5 and G6: Driver 26,
OSA microcode level: 4.25
MCLs: F99904.032 and F99904.033
(available May 16, 2002)
- Please refer to the
TCP/IP Stack Limitation on OSA-Express News-Flash for
related interesting information.
- VM/ESA and z/VM
- z/VM 4.3:
- All enhancements included.
- z/VM 4.2:
- APAR: VM62938, PTF: UM30225
- APAR: VM63034, PTF: UM30290
- z/VM 4.1:
- APAR: VM63034, PTF: UM30289
- APAR: VM63036, PTF: UM30293
- z/VM 3.1:
- APAR: VM63034, PTF: UM30288
- APAR: VM63036, PTF: UM30292
- VM/ESA 2.4:
- APAR: VM63034, PTF: UM30287
- APAR: VM63036, PTF: UM30291
-
Please refer to the OSA-Express QDIO
performance enhanced in OSA-Express QDIO performance enhanced in
consolidated Linux under z/VM environments document
providing more details.
|
|
-
gcc-2.95.3-s390-4.tar.gz MD5 recommended
(2002-06-04)
-
This patch contains the following compiler bug fixes:
| Description: |
Use of LOAD ADDRESS vs. ADD for pointer computation. |
| Symptom: |
Compiler generates incorrect code. |
| Problem: |
In some cases, when compiling code that takes the address of a
local stack variable near code involving conditions (if / while /
...), the generated code will be incorrect. This is caused by the
compiler using an ADD instruction (which modifies the condition
code) at a point where it expects a LOAD ADDRESS to be used (which
preserves the condition code). |
| Solution: |
Use LA to compute addresses of local variables. |
| Description: |
Inline memcpy problem. |
| Symptom: |
Compiler generates incorrect code. |
| Problem: |
When generating code to implement memcpy inline, the compiler
assumes in some cases incorrectly that after the memcpy completes,
certain registers still hold the addresses pointing to the start of
the source and/or target memory areas, although these registers
were in fact modified by the inline memcpy code. |
| Solution: |
Rewrite the corresponding insn patterns to remove the incorrect
assumptions. |
| Description: |
Dead code elimination of complex switch statements. |
| Symptom: |
Compiler generates incorrect code. |
| Problem: |
When the source code contains a complex switch statement (one
that would be implemented using a jump target table), and *all* its
cases prove to contain dead code (i.e. code that has no effect on
subsequent computations and can be completely deleted by the
compiler), and therfore the compiler decides to remove the whole
switch statement, it will in some cases erroneously remove some of
code *following* the switch statement as well. |
| Solution: |
Emit barrier following the indirect jump insn. |
| Description: |
Illegal address constants on 64-bit. |
| Symptom: |
Internal compiler error "unrecognized insn". |
| Problem: |
In some rare cases, the compiler would generate an illegal
address constant, causing an ICE. |
| Solution: |
Don't generate illegal address constants. |
Everyone using the compiler should apply this patch.
To create the complete compiler sources, the following patches
need to be applied in sequence:
gcc-2.95.3.tar.gz (see gcc.gnu.org)
+ gcc-2.95.3-s390.diff (IBM)
+ gcc-2.95.3-s390-1.diff (IBM)
+ gcc-2.95.3-s390-2.diff (IBM)
+ gcc-2.95.3-s390-3.diff (IBM)
+ gcc-2.95.3-s390-4.diff (IBM)
|
|
-
linux-2.4.7-s390-7.tar.gz MD5 recommended
(2002-04-15)
-
This patch contains the following linux kernel bug fixes:
| Description: |
Console setup restrictions. |
| Symptom: |
Unable to use a 3215/3270 device as console on an LPAR. |
| Problem: |
The console setup code explicitly tests for VM or P/390 before
it accepts a 3215 or 3270 console device. |
| Solution: |
Remove machine type restrictions from conmode_setup. |
| Description: |
Dasd driver. |
| Symptom: |
Stress test with device attach/detach hangs the system. |
| Problem: |
Concurrent changes to the states of dasd devices lead to
inconsistencies. |
| Solution: |
Add a lock that prevents concurrent changes of device
state. |
| Description: |
Read-only status of dasd devices. |
| Symptom: |
/proc/dasd/devices indicated reported read-only/read-write
status for device that have been modified with the BLKROSET i/o
control. |
| Problem: |
The default BLKROSET i/o control implementation sets the
read-only/read-write bit in the block device layer but the dasd
driver has bits of his own. |
| Solution: |
Implement a private BLKROSET i/o control for dasd that keeps
the bits in the block device layer and in the dasd driver
consistent. |
| Description: |
Dasd device bringup. |
| Symptom: |
The system crashes in dasd device bringup. |
| Problem: |
The bottom half can be called early with a request on the block
device queue. The bottom half requeues the request to the internal
dasd queue although the device is in a state where this may not
happen yet. |
| Solution: |
Plug the device while it is initialized. |
| Description: |
Diag discipline not working. |
| Symptom: |
Dasd devices that are addressed with the diag discipline do not
work. |
| Problem: |
There are two different problems that prevent the diag
discipline from working. 1) pfault and dasd diag use the same
external interrupt number. If pfault is active the diag discipline
never gets interrupts. 2) diag devices only get promoted to state
ready but not to state online. |
| Solution: |
Fix the two problems: 1) deliver external interrupts to all
interrupt handlers with matching external interrupt number and let
the interrupt handler filter out "their" requests. 2) do not return
from dasd_set_device_level with -EAGAIN for diag devices. |
| Description: |
31 bit emulation. |
| Symptom: |
31 bit programs running in the 31 bit emulation under 64 bit
linux do not work correctly. |
| Problem: |
SVC emulation is incorrect in various aspects. 1) the 31 bit
personality is missing, 2) emulation of sys_stime and sys_sysctl
can fail because of incorrect 31/64 bit argument conversion, 3)
emulation of MSGSND/MSGRCV ipc system call returned different
results in error cases, 4) emulation of sys_shmctl uses an
incorrect layout for IPC_64 type shared memory, 5) missing pointer
conversion in sys_fcntl emulation and 6) emulation of old_getrlimit
is incorrect. |
| Solution: |
Add 31 bit personality and correct emulation of svcs. |
| Description: |
Kernel compilation with gcc 3.1. |
| Symptom: |
Kernel compilation with gcc version 3.1 fails. |
| Problem: |
Some kernel code that used to work with gcc 2.95.3 is rejected
by gcc 3.1. |
| Solution: |
Fix the code so that gcc 3.1 accepts it. |
| Description: |
Machine check enabling. |
| Symptom: |
No or late machine check handling. |
| Problem: |
The bit for enabling machine checks in the PSW is not set while
a processor sleeps in cpu_idle and is not set at all for 64
bit. |
| Solution: |
Set the machine check bit in the relevant PSW masks. |
| Description: |
Channel device layer. |
| Symptom: |
None. |
| Problem: |
It is not possible to specify multiple parameters with a single
channel device configuration string. |
| Solution: |
Allow multiple add_parms in the channel device configuration
strings. |
| Description: |
iucv inoperational after reboot. |
| Symptom: |
The iucv interface does not work after a reboot. |
| Problem: |
The shutdown of the iucv interface needs to be done on the same
cpu that did the initialization. |
| Solution: |
Remember which cpu did the initialization and call it to do the
shutdown. |
| Description: |
Reboot failures. |
| Symptom: |
Reboot either loops or end with disabled wait. |
| Problem: |
Two problems. 1) the start subchannel on the reipl ccw can fail
and 2) a cpu is deactivated but still holds a lock that is needed
by the reipl function. |
| Solution: |
Try to start the reipl ccw multiple times and force all cpus
into a state where all locks that the reipl functions needs are
free. |
| Description: |
Common i/o layer. |
| Symptom: |
Device inaccessible after chpid offline/online. |
| Problem: |
Calculation of path group id depends on cpu id. |
| Solution: |
Introduce a global path group id that is used as default for
set path group id. |
| Description: |
Common i/o layer. |
| Symptom: |
Possible kernel oops writing to /proc/cio_ignore. |
| Problem: |
The input string to /proc/cio_ignore is copied to a buffer that
is one byte short. |
| Solution: |
Fix the allocation for the buffer. |
| Description: |
Backtrace over signal frames. |
| Symptom: |
catchsegv can crash if the fault happens in a signal
handler. |
| Problem: |
The backchain in the signal frame is not setup. |
| Solution: |
Set the backchain in the signal frame to point to the
interrupted stack frame. |
| Description: |
3270 device numbers. |
| Symptom: |
The devices file system entries for a 3270 device with a 4
digit device number are incorrect. |
| Problem: |
The output of 3270 device numbers is restricted to 3
digits. |
| Solution: |
Allow 4 digits in the print statements of 3270 device
numbers. |
| Description: |
Type conversion in __put_user/__get_user. |
| Symptom: |
System calls fail although the input is correct. |
| Problem: |
__put_user/__get_user are not doing proper type conversion. If
the user space pointer does not point to the same type as the
variable given in the argument to __put_user/__get_user this leads
to problems. This is especially true for the emulation of 31 bit
system calls on 64 bit linux. |
| Solution: |
Do proper type conversion like it is done in
put_user/get_user. |
Everybody should apply this patch.
These changes do not affect the OCO-modules.
To create the complete linux kernel sources, the following
patches need to be applied in sequence:
linux-2.4.7.tar.gz (original kernel source)
+ 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-s390-5.diff (IBM)
+ linux-2.4.7-s390-6-lcs.diff (IBM)
+ linux-2.4.7-s390-7.diff (IBM)
-
linux-2.4.7-timer-4.tar.gz MD5 recommended
(2002-04-15)
Release notes: (2002-04-15: adaption to above 2002-04-15
kernel-patches)
On demand timer patch:
Category operating system. Contains a patch for the linux kernel
2.4.7 that changes the timing method from the regular 100 hz
interrupts to on demand timer interrupts. This saves some cpu
cycles in an idle linux image. The drawback is that a busy linux
image will do a small amount of additional work every time the
switch between user mode and kernel mode is done. In short if you
are running many images under VM the on demand timers are useful
but you probably don't want to use it running under LPAR or native.
The patch introduces a configuration option CONFIG_NO_HZ_TIMER that
lets you choose between the old and the new behavior. Note that
you'll need different qdio, qeth, and z90crypt modules if you use
the no hz timer option.
To create the complete linux kernel sources, the following
patches need to be applied in sequence:
linux-2.4.7.tar.gz (original kernel source)
+ 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-s390-5.diff (IBM)
+ linux-2.4.7-s390-6-lcs.diff (IBM)
+ linux-2.4.7-s390-7.diff (IBM)
+ linux-2.4.7-timer-4.diff (IBM)
|
|
-
linux-2.4.7-order2-4.tar.gz MD5 recommended
(2002-03-18)
-
This patch supersedes the recommended 2.4.7 "order 2 allocation
relief" patch of 2002-01-21.
| Description: |
Order 2 allocation relief. (Applies to 64-bit,
only) |
| 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, but doesn't break other
architectures.
- This patch does only work for a 64-bit Linux for zSeries kernel
but can also be applied if you intend to build a 31-bit
kernel.
- This patch is now compatible with the "On-demand timer
patch". You can now apply both patches to the same kernel.
- Earlier versions of this patch required the use of special OCO
modules. This is no longer the case with this patch: the regular
OCO modules (for standard 100 Hz timer) can be used.
To create the complete linux kernel sources, the following
patches need to be applied in sequence:
linux-2.4.7.tar.gz (original kernel source)
+ 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-s390-5.diff (IBM)
+ linux-2.4.7-s390-6-lcs.diff (IBM)
+ linux-2.4.7-order2-4.diff (IBM)
|
-
linux-2.4.7-s390-6-lcs.tar.gz MD5
recommended (2002-03-04)
-
This patch contains the source code for the lcs device
driver.
- The LCS device driver (formerly available as OCO, only) is now
provided in source-code form.
- This version of the LCS-driver contains the source-code for the
2002-01-21 (same as 2001-12-12) kernel 2.4.7 OCO-modules for 31-
and 64-bit.
- The lcs network driver supports OSA-2 Ethernet Token Ring, and
OSA-Express Fast Ethernet in non-QDIO mode.
- Documentation can be found in the Linux for S/390 & zSeries
Device Driver and Installation Commands manuals.
Everybody should apply this patch.
To create the complete linux kernel sources, the following
patches need to be applied in sequence:
linux-2.4.7.tar.gz (original kernel source)
+ 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-s390-5.diff (IBM)
+ linux-2.4.7-s390-6-lcs.diff (IBM)
|
|
Recommended OCO modules 31-bit
The qdio and qeth 31-bit and 64-bit OCO-modules of
2002-03-01 are replacements for the previously recommended (qdio
and qeth) modules.
HiperSockets support for qdio and qeth
HiperSockets support for VM-guests is available on z/VM 4.2,
only and and requires the application of the PTFs for the following
APARs: VM62938 and VM63034.
Please check the VM service information for latest available
updates: VM Info-APAR II12444 contains useful information for using
Linux under VM.
OCO-modules qdio and qeth must be selected correctly for kernels
with or without the "on-demand timer" patch applied.
On-demand timer 31-bit kernels now need:
qdio-2.4.7-s390-8-timer.tar.gz, and
qeth-2.4.7-s390-8-timer.tar.gz.
Standard 100 Hertz timer 31-bit kernels: qdio-2.4.7-s390-8.tar.gz,
and qeth-2.4.7-s390-8.tar.gz.
Recommended OCO modules 64-bit
OCO-modules qdio and qeth must be selected correctly for kernels
with or without the "on-demand timer" patch applied.
Note that the "order 2 allocation relief" no longer requires
special OCOs.
HiperSockets support for qdio and qeth
HiperSockets support for VM-guests is available on z/VM 4.2,
only and and requires the application of the PTFs for the following
APARs: VM62938 and VM63034.
Please check the VM service information for latest available
updates: VM Info-APAR II12444 contains useful information for using
Linux under VM.
On-demand timer 64-bit kernels now need:
qdio-2.4.7-s390x-8-timer.tar.gz, and
qeth-2.4.7-s390x-8-timer.tar.gz
Standard 100 Hertz timer 64-bit kernels now need:
qdio-2.4.7-s390x-8.tar.gz, and qeth-2.4.7-s390x-8.tar.gz
|
|
-
binutils-2.11.90.0.27-s390-2.tar.gz MD5
recommended (2002-02-28)
This patch contains the following binutils bug fixes:
| Description: |
PLT call optimization problem. |
| Symptom: |
64 bit programs crash after a glibc upgrade to 2.2.5. |
| Problem: |
A call via the procedure link table (PLT) to an undefined weak
external references gets optimized to a pc relative call by the
linker. That in turn gets replaced by a call to 0 because the
function is undefined. This turns out to be incorrect as soon as
the weak function is defined. This is the case for the
__register_frame_info symbol that wasn't exported from the glibc
prior to version 2.2.5 but is exported starting with this version.
The call to __register_frame_info is done from crtbeginS.o which is
linked to every 64 bit binary. This means that every single 64 bit
executable contains an incorrect call that lets the program crash
as soon as a glibc is installed that exports the symbol
__register_frame_info. |
| Solution: |
Prevent pc relative optimzation for undefined weak external
references. |
|
Everybody should apply this patch.
Note: You should apply the glibc-2.2.4-s390-3 patch to
your system as well but you need to be careful with it. Please read
undef-weak-bug for details about this problem.
To create the complete binutils sources, the following patches
need to be applied in sequence:
binutils-2.11.90.0.27.tar.gz (GNU)
+ binutils-2.11.90.0.27-s390.diff (IBM)
+ binutils-2.11.90.0.27-s390-1.diff (IBM)
+ binutils-2.11.90.0.27-s390-2.diff (IBM)
-
glibc-2.2.4-s390-3.tar.gz MD5 recommended
(2002-02-28)
This patch contains the following glibc bug fixes:
| Description: |
C++ exception handling on 64 bit doesn't work correctly. |
| Symptom: |
C++ program crash or misbehave throwing exceptions. |
| Problem: |
The versions for the seven symbols __register_frame,
__register_frame_table, __deregister_frame, __register_frame_info,
__deregister_frame_info, __frame_state_for and
__register_frame_info_table concerning exception handling are
missing for 64 bit. |
| Solution: |
Add versions for the seven symbols for 64 bit. |
|
Everybody should apply this patch.
Note: You need to be careful upgrading your system. This
patch without the binutils-2.11.90.0.27-s390-2 patch and a
recompile of all executables will break your system. Please read
undef-weak-bug.txt for details about this problem.
To create the complete glibc sources, the following patches need
to be applied in sequence:
glibc-2.2.4.tar.gz (GNU)
+ glibc-linuxthreads-2.2.4.tar.gz (GNU)
+ glibc-2.2.4-s390.diff (IBM)
+ glibc-2.2.4-s390-1.diff (IBM)
+ glibc-2.2.4-s390-2.diff (IBM)
+ glibc-2.2.4-s390-3.diff (IBM)
|
|
-
glibc-2.2.4-s390-2.tar.gz MD5 recommended
(2002-02-27)
This patch contains the following glibc bug fixes:
| Description: |
Pthread race conditions. |
| Symptom: |
Hanging/crashing threads. |
| Problem: |
The MEMORY_BARRIER definition is missing. This potentially
creates race conditions because the compiler may schedule
instructions past synchronisation points. |
| Solution: |
Define MEMORY_BARRIER. |
|
| Description: |
Profile counting on 31 bit does not work. |
| Symptom: |
The profile counts for programs compiled with -g are zero. |
| Problem: |
The high order bit is not removed from the profile address in
profil_counter. |
| Solution: |
Remove the high order bit for 31 bit addresses. |
|
| Description: |
libSegFault does not work. |
| Symptom: |
catchsegv crashes. |
| Problem: |
The second parameter to register_dump in the REGISTER_DUMP
macro is incorrect. |
| Solution: |
Fix register_dump call. |
|
| Description: |
Missing definition in resource.h. |
| Symptom: |
Compile problems with pdksh. |
| Problem: |
The RLIMIT_LOCKS definition is missing in resource.h. |
| Solution: |
Add RLIMIT_LOCKS. |
|
Everybody should apply this patch.
To create the complete glibc sources, the following patches need
to be applied in sequence:
glibc-2.2.4.tar.gz (GNU)
+ glibc-linuxthreads-2.2.4.tar.gz (GNU)
+ glibc-2.2.4-s390.diff (IBM)
+ glibc-2.2.4-s390-1.diff (IBM)
+ glibc-2.2.4-s390-2.diff (IBM)
|
-
s390-tools-5.tar.gz MD5 recommended
(2002-02-26)
This patch contains the following s390-tools bug fix:
| Description: |
dasd tools only working with one DASD API version. |
| Symptom: |
The tools refuse to work with a different DASD API version. A
'API version mismatch' message is written. |
| Problem: |
The tools are checking for the DASD API version and are only
operating with one API version (specified at compile time). |
| Solution: |
All tools are now able to handle the minimum DASD API version
specified at compile time and all above DASD API versions. |
|
Everybody should apply this patch.
To create the complete S/390 tools sources, the following patches
need to be applied in sequence:
s390-tools.tar.gz (IBM)
+ s390-tools-1.diff (IBM)
+ s390-tools-2.diff (IBM)
+ s390-tools-3.diff (IBM)
+ s390-tools-4.diff (IBM)
+ s390-tools-5.diff (IBM)
|
-
linux-2.4.7-s390-5.tar.gz MD5 recommended
(2002-01-21)
This patch contains the following linux kernel bug
fixes:
| Description: |
Initial ramdisk problem. |
| Symptom: |
Kernel fails to find a filesystem on an initial ramdisk if the
root filesystem does not live on the ramdisk. |
| Problem: |
The segment descriptor in the init thread points to the user
space instead of pointing to the kernel space. |
| Solution: |
Correct the segment descriptor. |
| Description: |
Signal information incomplete. |
| Symptom: |
The information in the siginfo_t on entry to a signal handler
does not contain all information it should contain. |
| Problem: |
The exception handlers do not pass a siginfo structure to the
do_trap function. Therefore the si_code and the address of the
fault are not passed to the user space signal handler. |
| Solution: |
Create and pass siginfo structures to do_trap for the different
signal handlers. |
| Description: |
31 bit emulation of sys_select. |
| Symptom: |
31 bit programs on 64 bit linux hang. |
| Problem: |
The conversion of the struct timeval in sys32_select is done
incorrectly. This leads to huge timeout values, causing the 31 bit
programs to "hang". |
| Solution: |
Correct the struct timeval conversion. |
| Description: |
31-bit emulation of sys_semctl. |
| Symptom: |
Problems with 31 bit programs on 64-bit Linux. |
| Problem: |
The conversion of struct ipc64_perm was done incorrectly. This
could lead to incorrect permission settings being passed to the
sys_semctl system call. |
| Solution: |
Correct the struct ipc64_perm conversion. |
| Description: |
CMS minidisks on 64-bit. |
| Symptom: |
On 64-bit Linux, CMS minidisks are not detected. |
| Problem: |
The partition detection code contained code that was not
portable to 64-bit. This caused CMS labels to be incorrectly parsed
and therefore CMS minidisks were not detected. |
| Solution: |
Fix partition detection. |
In addition, the patch contains the following feature:
- Add IOCTL translation support for the crypto driver to the
31-bit emulation layer. This allows accessing the crypto driver
from 31-bit applications running in a 64-bit system. (See z90crypt
64-bit OCO-modules.)
Everybody should apply this patch.
To create the complete linux kernel sources, the following
patches need to be applied in sequence:
linux-2.4.7.tar.gz (original kernel source)
+ 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-s390-5.diff (IBM)
-
linux-2.4.7-timer-3.tar.gz MD5 recommended
(2002-01-21)
Release notes:
On demand timer patch:
Category operating system. Contains a patch for the linux kernel
2.4.7 that changes the timing method from the regular 100 hz
interrupts to on demand timer interrupts. This saves some cpu
cycles in an idle linux image. The drawback is that a busy linux
image will do a small amount of additional work every time the
switch between user mode and kernel mode is done. In short if you
are running many images under VM the on demand timers are useful
but you probably don't want to use it running under LPAR or native.
The patch introduces a configuration option CONFIG_NO_HZ_TIMER that
lets you choose between the old and the new behavior. Note that
you'll need different lcs, qdio, qeth, and z90crypt modules if you
use the no hz timer option.
Important notice:
In earlier versions of the timer patch, kernels built with the
patch applied but with CONFIG_NO_HZ_TIMER switched off were
still incompatible with the regular OCO modules (and also to
the timer-patch OCO modules). This problem is fixed in this version
of the patch. If CONFIG_NO_HZ_TIMER is switched off, the kernel is
now compatible with the regular OCO modules.
Note that the "order 2 allocation relief" patch for 64 bit is
not compatible with the "on-demand timer" patch.
-
linux-2.4.7-order2-3.tar.gz MD5 recommended
(2002-01-21)
This patch is identical with the experimental 2.4.7 "order 2
allocation relief" patch from 2001-12-12. It has been moved from
the experimental to the recommended state for 64 bit.
| Description: |
Order 2 allocation relief. (Applies to 64-bit,
only) |
| 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 incompatible with the "On-demand timer
patch". You currently cannot apply both patches to the same
kernel.
- Earlier versions of this patch required the use of special OCO
modules. This is no longer the case with this patch: the regular
OCO modules (for standard 100 Hz timer) can be used.
To create the complete linux kernel sources, the following
patches need to be applied in sequence:
linux-2.4.7.tar.gz (original kernel source)
+ 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-s390-5.diff (IBM)
+ linux-2.4.7-order2-3.diff (IBM)
Recommended OCO modules 31-bit
The lcs, qdio, qeth 31-bit and 64-bit OCO-modules
of 2002-01-21 are replacements for the previously recommended
modules.
HiperSockets support for qdio and qeth
- The support of HiperSockets was tested completely for Linux for
S/390 running under LPAR.
- HiperSockets support for VM-guests is available on z/VM 4.2,
only, and requires the application of PTFs for APAR VM62938.
Please check the VM service information for latest available
updates. (VM Info-APAR II12444 contains useful information for
using Linux under VM.)
- The regression tests for Linux for S/390 HiperSockets support
for VM-guests are still in progress.
OCO-modules lcs, qdio,qeth, and z90crypt must be selected correctly
for kernels with or without the 2002-01-21 "on-demand timer" patch
applied.
On-demand timer 31-bit kernels with the 2002-01-21 patches now
need: lcs-2.4.7-s390-6-timer.tar.gz,
qdio-2.4.7-s390-7-timer.tar.gz, qeth-2.4.7-s390-7-timer.tar.gz, and
z90crypt-2.4.7-s390-2-timer.tar.gz.
Standard 100 Hertz timer 31-bit kernels with the 2002-01-21 patches
now need: lcs-2.4.7-s390-6.tar.gz, qdio-2.4.7-s390-7.tar.gz,
qeth-2.4.7-s390-7.tar.gz, and z90crypt-2.4.7-s390-2.tar.gz.
Recommended OCO modules 64-bit
OCO-modules lcs, qdio, qeth, and z90crypt must be selected
correctly for kernels with or without the 2002-01-21 "on-demand
timer" patch applied.
Note that the "order 2 allocation relief" patch is now recommended
and furthermore no longer requires special OCOs.
HiperSockets support for qdio and qeth
- The support of HiperSockets was tested completely for Linux for
zSeries running under LPAR.
- HiperSockets support for VM-guests is available on z/VM 4.2,
only, and requires the application of PTFs for APAR VM62938.
Please check the VM service information for latest available
updates. (VM Info-APAR II12444 contains useful information for
using Linux under VM.)
- The regression tests for Linux for zSeries HiperSockets support
for VM-guests are still in progress.
On-demand timer 64-bit kernels with the 2002-01-21 patches now
need: lcs-2.4.7-s390x-6-timer.tar.gz,
qdio-2.4.7-s390x-7-timer.tar.gz, and
qeth-2.4.7-s390x-7-timer.tar.gz
Standard 100 Hertz timer 64-bit kernels with the 2002-01-21 patches
now need: lcs-2.4.7-s390x-6.tar.gz, qdio-2.4.7-s390x-7.tar.gz, and
qeth-2.4.7-s390x-7.tar.gz
|
-
s390-tools-4.tar.gz MD5 recommended
(2001-12-12)
This patch contains the following s390-tools bug fix:
| Description: |
fdasd: missing 390 data set name for big disks. |
| Symptom: |
One of the 390 data set names, which exists for each partition,
is missing for modell 9 DASDs. |
| Problem: |
The modell 9 DASD needs a special freespace label within the
VTOC. In this case the "last available FMT1 DSCB"-pointer wasn't
set to the right label. |
| Solution: |
This pointer is now set correctly. |
|
Everybody should apply this patch.
To create the complete S/390 tools sources, the following patches
need to be applied in sequence:
s390-tools.tar.gz (IBM)
+ s390-tools-1.diff (IBM)
+ s390-tools-2.diff (IBM)
+ s390-tools-3.diff (IBM)
+ s390-tools-4.diff (IBM)
Recommended OCO modules 31-bit
The lcs, qdio, qeth 31-bit and 64-bit OCO-modules
of 2001-12-12 are replacements for the previously recommended
modules.
HiperSockets support for qdio and qeth
- The support of HiperSockets was tested for Linux for S/390
running under LPAR only.
- Linux for S/390 HiperSockets support for VM-guests on z/VM 4.2
requires the application of z/VM-PTFs (e.g. APAR VM62938). Please
check the VM service information for latest available updates.
OCO-modules lcs, qdio, and qeth must be selected correctly for
kernels with or without the 2001-11-23 "on-demand timer" patch
applied.
On-demand timer 31-bit kernels with the 2001-11-23 patches now
need: lcs-2.4.7-s390-5-timer.tar.gz,
qdio-2.4.7-s390-6-timer.tar.gz, and
qeth-2.4.7-s390-6-timer.tar.gz.
Standard 100 Hertz timer 31-bit kernels with the 2001-11-23 patches
now need: lcs-2.4.7-s390-5.tar.gz, qdio-2.4.7-s390-6.tar.gz, and
qeth-2.4.7-s390-6.tar.gz.
Recommended OCO modules 64-bit
OCO-modules lcs, qdio, and qeth must be selected correctly for
kernels with or without the 2001-11-23 "on-demand timer" patch
applied.
HiperSockets support for qdio and qeth
- The support of HiperSockets was tested for Linux for zSeries
running under LPAR only.
- Linux for zSeries HiperSockets support for VM-guests on z/VM
4.2 requires the application of z/VM-PTFs (e.g. APAR VM62938).
Please check the VM service information for latest available
updates.
On-demand timer 64-bit kernels with the 2001-11-23 patches now
need: lcs-2.4.7-s390x-5-timer.tar.gz,
qdio-2.4.7-s390x-6-timer.tar.gz, and
qeth-2.4.7-s390x-6-timer.tar.gz
Standard 100 Hertz timer 64-bit kernels with the 2001-11-23 patches
now need: lcs-2.4.7-s390x-5.tar.gz, qdio-2.4.7-s390x-6.tar.gz, and
qeth-2.4.7-s390x-6.tar.gz
|
The 2001-11-23 set of Linux Kernel version 2.4.7 recommended
patches for Linux for S/390 and Linux for zSeries deliver several
fixes and updates.
Furthermore the 31-bit and 64-bit recommended OCO-modules lcs,
qdio, qeth have been updated with bug-fixes.
Together with the 2001-11-09, 2001-10-12 and 2001-09-14 patches
applied on top of the first set (2001-08-20) of kernel 2.4.7
recommended patches, Linux for S/390 31-bit distributions and Linux
for zSeries 64-bit distributions can be built using:
- kernel, kernel-headers, kerntypes 2.4.7
- gcc 2.95.3
- glibc, glibc-devel 2.2.4
- binutils 2.11.90.0.27
- gdb 5.0 (Note that the 2001-09-11 gdb 5.1 alpha-patch is
experimental, not recommended)
- modutils 2.4.7 (Note that the 2001-08-20 modutils 2.4.6
alpha-patch is integrated into modutils 2.4.7 and no additional
patch on top is required)
- s390-tools 1.0
- strace 4.2 (2001-01-19 snapshot from Red Hat 7.1)
and the updated recommended 31-bit and 64-bit OCO-modules lcs,
qdio, qeth.
Please check out the Restrictions page on Kernel
2.4.7.
Please refer to the Experimental page
for an experimental kernel 2.4.7 patch for 64-bit distributions and
the matching 64-bit OCO modules.
Please see the kernel 2.4 Documentation page for the 31-bit and
64-bit manuals.
"On-demand Timer"
- The 2001-11-23 kernel 2.4.7-s390-2-timer patch includes a
replacement for the "on-demand timer" (introduced 2001-09-14 and
replaced 2001-10-12).
Important notice: The OCO-modules lcs, qdio, and qeth
must be selected correctly for kernels with or without the
"on-demand timer" patch applied:
- On-demand timer kernels now need:
lcs-2.4.7-s390[x]-4-timer.tar.gz,
qdio-2.4.7-s390[x]-5-timer.tar.gz, and
qeth-2.4.7-s390[x]-5-timer.tar.gz
- Standard 100 Hertz timer kernels now need:
lcs-2.4.7-s390[x]-4.tar.gz, qdio-2.4.7-s390[x]-5.tar.gz, and
qeth-2.4.7-s390[x]-5.tar.gz
-
linux-2.4.7-s390-4.tar.gz MD5 recommended
(2001-11-23)
Release notes:
This patch contains the following linux kernel bug fixes:
| Description: |
Compilation of sysinfo. |
| Symptom: |
/proc/sysinfo is missing. |
| Problem: |
The file that contains the implementation of the new
/proc/sysinfo entry has not been added to the Makefile. Hence it is
not compiled and /proc/sysinfo is missing in the running
system. |
| Solution: |
Add sysinfo.o to the s390 drivers Makefile. |
| Description: |
Export dasd_device_from_kdev. |
| Symptom: |
No symptom. |
| Problem: |
A dasd module can't use the dasd_device_from_kdev function
because it is inline and the symbol name is not exported. This
function is needed if a dasd module wants to use dynamic i/o
controls. |
| Solution: |
Export symbol dasd_device_from_kdev. |
| Description: |
A kernel built without the proc filesystem panics during
boot. |
| Symptom: |
When CONFIG_PROC_FS is not selected, the kernel will compile
but panic during boot when trying to create a /proc entry in
s390io. |
| Problem: |
The common I/O layer tries to create /proc entries even though
the proc filesystem is disabled. |
| Solution: |
Exclude the proc filesystem interface functions from s390io if
the proc filesystem is switched off. |
| Description: |
Signal problem in the VFS layer. |
| Symptom: |
Endless kernel loop. |
| Problem: |
The signal info codes from the kernel header file siginfo.h
miss some bits that are used internally to control the handling of
the signal. |
| Solution: |
Add the missing bits to the siginfo codes. |
| Description: |
Network throughput problem with high cpu load. |
| Symptom: |
CPU intensive workload slows down network traffic. |
| Problem: |
The wakeup of a process does not cause a preemptive reschedule
of the CPU intensive process due to a comparison problem between
unsigned integers of different size. |
| Solution: |
Fix the comparison so that the preemptive reschedule
works. |
| Description: |
CTC problem on machines with more that 2G memory. |
| Symptom: |
Very slow data flow when using TCP/IP (e.g. ftp
transfers). |
| Problem: |
Usage of IDA lists with CTC did not work, resulting in a lot of
dropped packets due to TCP checksum errors. |
| Solution: |
Using memcpy to low memory transfer buffer instead of IDA
lists. |
Everybody should apply this 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)
Release notes:
On demand timer patch:
Category operating system. Contains a patch for the linux kernel
2.4.7 that changes the timing method from the regular 100 hz
interrupts to on demand timer interrupts. This saves some cpu
cycles in an idle linux image. The drawback is that a busy linux
image will do a small amount of additional work every time the
switch between user mode and kernel mode is done. In short if you
are running many images under VM the on demand timers are useful
but you probably don't want to use it running under LPAR or native.
The patch introduces a configuration option CONFIG_NO_HZ_TIMER that
lets you choose between the old and the new behavior. Note that
you'll need different lcs, qdio, and qeth modules if you use the no
hz timer option.
Recommended OCO modules 31-bit
The lcs, qdio, qeth 31-bit and 64-bit OCO-modules
of 2001-11-23 are replacements for the previously recommended
modules.
OCO-modules lcs, qdio, and qeth must be selected correctly for
kernels with or without the 2001-11-23 "on-demand timer" patch
applied.
On-demand timer 31-bit kernels with the 2001-11-23 patches now
need: lcs-2.4.7-s390-4-timer.tar.gz,
qdio-2.4.7-s390-5-timer.tar.gz, and
qeth-2.4.7-s390-5-timer.tar.gz.
Standard 100 Hertz timer 31-bit kernels with the 2001-11-23 patches
now need: lcs-2.4.7-s390-4.tar.gz, qdio-2.4.7-s390-5.tar.gz, and
qeth-2.4.7-s390-5.tar.gz.
Recommended OCO modules 64-bit
OCO-modules lcs, qdio, and qeth must be selected correctly for
kernels with or without the 2001-11-23 "on-demand timer" patch
applied.
On-demand timer 64-bit kernels with the 2001-11-23 patches now
need: lcs-2.4.7-s390x-4-timer.tar.gz,
qdio-2.4.7-s390x-5-timer.tar.gz, and
qeth-2.4.7-s390x-5-timer.tar.gz
Standard 100 Hertz timer 64-bit kernels with the 2001-11-23 patches
now need: lcs-2.4.7-s390x-4.tar.gz, qdio-2.4.7-s390x-5.tar.gz, and
qeth-2.4.7-s390x-5.tar.gz
|
The 2001-11-09 set of Linux Kernel version 2.4.7 and s390 tools
recommended patches for Linux for S/390 and Linux for zSeries
deliver several fixes and updates.
Furthermore the 31-bit and 64-bit recommended OCO-modules lcs,
qdio, qeth have been updated with bug-fixes.
Together with the 2001-10-12 and 2001-09-14 patches applied on
top of the first set (2001-08-20) of kernel 2.4.7 recommended
patches, Linux for S/390 31-bit distributions and Linux for zSeries
64-bit distributions can be built using:
- kernel, kernel-headers, kerntypes 2.4.7
- gcc 2.95.3
- glibc, glibc-devel 2.2.4
- binutils 2.11.90.0.27
- gdb 5.0 (Note that the 2001-09-11 gdb 5.1 alpha-patch is
experimental, not recommended)
- modutils 2.4.7 (Note that the 2001-08-20 modutils 2.4.6
alpha-patch is integrated into modutils 2.4.7 and no additional
patch on top is required)
- s390-tools 1.0
- strace 4.2 (2001-01-19 snapshot from Red Hat 7.1)
and the updated recommended 31-bit and 64-bit OCO-modules lcs,
qdio, qeth.
Please check out the Restrictions page on Kernel
2.4.7.
Please refer to the Experimental page
for an experimental kernel 2.4.7 patch for 64-bit distributions and
the matching 64-bit OCO modules. An updated z90crypt 31-bit OCO
module is also provided there.
Please see the kernel 2.4 Documentation page for the 31-bit and
64-bit manuals.
"On-demand Timer"
- The 2001-10-12 kernel 2.4.7 patches included a replacement for
the "on-demand timer" (introduced 2001-09-14).
Important notice: The OCO-modules lcs, qdio, and qeth
must be selected correctly for kernels with or without the
"on-demand timer" patch applied:
- On-demand timer kernels now need:
lcs-2.4.7-s390[x]-3-timer.tar.gz,
qdio-2.4.7-s390[x]-4-timer.tar.gz, and
qeth-2.4.7-s390[x]-4-timer.tar.gz
- Standard 100 Hertz timer kernels now need:
lcs-2.4.7-s390[x]-3.tar.gz, qdio-2.4.7-s390[x]-4.tar.gz, and
qeth-2.4.7-s390[x]-4.tar.gz
- An updated z90crypt 31-bit OCO-module is also provided.
-
-
linux-2.4.7-s390-3.tar.gz MD5 recommended
(2001-11-09)
Release notes:
This patch contains the following linux kernel bug fixes:
| Description: |
Reset of files in VM reader. |
| Symptom: |
The files in the VM reader running on a P/390 are not
resetted. |
| Problem: |
The test that used to decide if a reset should be done is wrong
if the system is running on a P/390. |
| Solution: |
Make the decision if the reset should be done only dependent on
the VM flag in the cpu id. |
| Description: |
PFAULT on 31 bit. |
| Symptom: |
No efficiency improvement with pfault on 31 bit. |
| Problem: |
The check in the pfault interrupt handler for the pfault
subcode is wrong. The interrupt handler is left without doing
anything. The system doesn't crash but you won't see a benefit
either. |
| Solution: |
Fix the subcode check. |
| Description: |
llseek in the 31 bit emulation. |
| Symptom: |
31 bit programs running under the 31 bit emulation layer on a
64 bit system create huge files with size > 4GB. |
| Problem: |
The llseek system call in the 31 bit emulation layer is
converted incorrectly. |
| Solution: |
Fix the conversion routine for llseek. |
| Description: |
Locking problem in dasd driver. |
| Symptom: |
Kernel crash after formatting a device. |
| Problem: |
The function that cancels the format ccw in case of an error
doesn't lock the dasd device structure properly. This is a race
condition against the end of the i/o and can crash the system due
to null pointer access. |
| Solution: |
Properly lock the dasd device structures. |
| Description: |
Block padding for the short blocks of the common disk
layout. |
| Symptom: |
The first few blocks of a dasd formatted for the common disk
layout contain random data in the rear end of the block. |
| Problem: |
The first few blocks of a dasd formatted with the common disk
layout are physically shorter then the block size of the device.
The linux buffer for these blocks contain random data in the suffix
of the blocks that is not backed by phsical data. |
| Solution: |
Pad the suffix of the short blocks with byte pattern 0xe5. |
| Description: |
Channel device layer configuration. |
| Symptom: |
Additional parameters after an "add_parms" statement are not
recognized. |
| Problem: |
After parsing the add_parms statement the input pointer is not
moved to the next string. |
| Solution: |
Move the next string after parsing the add_parms
statement. |
| Description: |
I/O layer doesn't deliver interrupts. |
| Symptom: |
The device interrupt handler of a terminated ccw is not always
called. For example the halt of the long running rewind of a tape
device does not trigger the tape device interrupt handler. |
| Problem: |
The expression if a device has ending status does not cover all
cases. |
| Solution: |
Correctly check for ending status. |
| Description: |
System information. |
| Symptom: |
None. |
| Problem: |
A means to get information about the system configuration in
the user space is needed. The store system information instruction
is priviledged and can not be used from user space. |
| Solution: |
Provide a proc file system entry that contains the data that
can be extracted from the store system information
instruction. |
| Description: |
Busy loop in the partition detection |
| Symptom: |
The system hangs in the partition detection. |
| Problem: |
The skip of format 4/5/7 labels doesn't increase the number of
the label block. This leads to a busy loop that reads the same
block over and over again. |
| Solution: |
Increase the block number for format 4/5/7 label blocks. |
Everybody should apply this 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)
-
s390-tools-3.tar.gz MD5 recommended
(2001-11-09)
This patch contains the new s390-tool dasdview, which could be
used to display DASD and VTOC information or to dump the content of
a DASD to the console. For more information see the dasdview man
page.
In addition are there the following bug fixes:
| Description: |
fdasd: new menu entry. |
| Symptom: |
There was no way to see the z/OS data set names. |
| Problem: |
The mapping between partition number in the device node and the
z/OS data set name could change in case you do some strange
re-partitioning. There was no way to display this mapping. |
| Solution: |
New fdasd menu entry 's' to show the mapping between partition
number in the device node and the z/OS data set name. |
|
| Description: |
fdasd: partition number in z/OS data set name. |
| Symptom: |
Confusing mapping between partition number in the device node
and the z/OS data set name. |
| Problem: |
The partition number in the device node starts counting with
"1"and the partition number in the z/OS data set name started
counting with "0". |
| Solution: |
Both start counting from "1" and older partitions will be
converted automatically to the new numbering schema. |
|
| Description: |
dasdfmt: cylinderwise formatting. |
| Symptom: |
dasdfmt formats the disk cylinderwise if you are using the '-p'
or '-m' option, otherwise the disk will be formatted as one big
part. |
| Problem: |
none. |
| Solution: |
We will format cylinderwise in every case now. |
|
| Description: |
dasdfmt: signal handler. |
| Symptom: |
dasdfmt leaves the disk in the accepted state in case of an
abruption (e.g. Ctrl+C). |
| Problem: |
The disk is unusable until you reset it. |
| Solution: |
A signal handler sets the DASD back to the 'not formatted'
state in case of a abruption. |
Everybody should apply this patch.
To create the complete S/390 tools sources, the following patches
need to be applied in sequence:
s390-tools.tar.gz (IBM)
+ s390-tools-1.diff (IBM)
+ s390-tools-2.diff (IBM)
+ s390-tools-3.diff (IBM)
Recommended OCO modules 31-bit
The lcs, qdio, qeth 31-bit and 64-bit OCO-modules
of 2001-11-09 are replacements for the previously recommended
modules.
OCO-modules lcs, qdio, and qeth must be selected correctly for
kernels with or without the 2001-10-12 "on-demand timer" patch
applied.
On-demand timer 31-bit kernels with the 2001-11-09 patches now
need: lcs-2.4.7-s390-3-timer.tar.gz,
qdio-2.4.7-s390-4-timer.tar.gz, and
qeth-2.4.7-s390-4-timer.tar.gz.
Standard 100 Hertz timer 31-bit kernels with the 2001-11-09 patches
now need: lcs-2.4.7-s390-3.tar.gz, qdio-2.4.7-s390-4.tar.gz, and
qeth-2.4.7-s390-4.tar.gz.
Recommended OCO modules 64-bit
OCO-modules lcs, qdio, and qeth must be selected correctly for
kernels with or without the 2001-10-12 "on-demand timer" patch
applied.
On-demand timer 64-bit kernels with the 2001-11-09 patches now
need: lcs-2.4.7-s390x-3-timer.tar.gz,
qdio-2.4.7-s390x-4-timer.tar.gz, and
qeth-2.4.7-s390x-4-timer.tar.gz
Standard 100 Hertz timer 64-bit kernels with the 2001-11-09 patches
now need: lcs-2.4.7-s390x-3.tar.gz, qdio-2.4.7-s390x-4.tar.gz, and
qeth-2.4.7-s390x-4.tar.gz
|
|
The 2001-10-12 set of Linux Kernel version 2.4.7 (and related)
recommended patches for Linux for S/390 and Linux for zSeries
deliver several fixes and updates, along with updated OCO-modules
lcs, qdio, and qeth for 31-bit and 64-bit.
Together with the 2001-09-14 patches applied on top of the first
set (2001-08-20) of kernel 2.4.7 recommended patches, Linux for
S/390 31-bit distributions and Linux for zSeries 64-bit
distributions can be built using:
- kernel, kernel-headers, kerntypes 2.4.7
- gcc 2.95.3
- glibc, glibc-devel 2.2.4
- binutils 2.11.90.0.27
- gdb 5.0 (Note that the 2001-09-11 gdb 5.1 alpha-patch is
experimental, not recommended)
- modutils 2.4.7 (Note that the 2001-08-20 modutils 2.4.6
alpha-patch is integrated into modutils 2.4.7 and no additional
patch on top is required)
- s390-tools 1.0
- strace 4.2 (2001-01-19 snapshot from Red Hat 7.1)
with the recommended 31-bit and 64-bit OCO-modules lcs, qdio, qeth.
Please check out the Restrictions page on Kernel 2.4.7.
Please see the "Linux for zSeries (64-bit)" section of the Documentation page for the newly
provide kernel 2.4.7 64-bit related manuals:
- Device Drivers and Installation Commands
- Using the Dump Tools
The HiperSockets Device Driver manual on the same page has also
been updated with corrections. Notes on superseded items:
-
binutils-2.11.90.0.27-s390-1.tar.gz MD5
recommended (2001-10-12)
Release notes:
This patch contains the following binutils bug fix:
| Description: |
Warnings about zero index or base registers misleading. |
| Symptom: |
The assembler issues warnings about zero index or base
registers. |
| Problem: |
Explicitly specified zero index or base registers can indicate
faulty statements because if the register 0 is used as part of an
address 0 is added to the effective address instead of the content
of register 0. Sometimes it is useful to get these warnings but in
other cases there messages can be confusing. |
| Solution: |
Add an option "-mwarn-areg-zero" that enables the warnings
about zero index or base registers. Default is off. |
The patch contains the following additions and changes:
- Testcase library for the GNU assembler.
- Automatic generation of the instruction table from
s390-opc.txt.
Everybody should apply this patch.
To create the complete binutils sources, the following patches
need to be applied in sequence:
binutils-2.11.90.0.27.tar.gz (GNU)
+ binutils-2.11.90.0.27-s390.diff (IBM)
+ binutils-2.11.90.0.27-s390-1.diff (IBM)
-
-
gcc-2.95.3-s390-2.tar.gz MD5
recommended (2001-10-12)
This patch contains the following compiler bug fixes:
| Description: |
Incorrect use of LA (load address) instruction. |
| Symptom: |
LA used to add integers. |
| Problem: |
In some rare cases, the compiler would generate code using the
LA instruction to perform an integer addition. However, the LA
instruction does in fact do only a 31-bit addition, and hence can
only be safely used to compute 31-bit addresses, not arbitrary
32-bit integers. |
| Solution: |
Make sure that LA is never used unless it is known that the
result of LA will be used as an address. |
| Description: |
Bug in compiler common code (regmove). |
| Symptom: |
Incorrect code is generated. |
| Problem: |
In some rare cases, the compiler would generate code that
clobbers incoming function arguments. This was caused by a bug in
the regmove pass, which didn't properly check for that case. |
| Solution: |
Fix regmove. |
| Description: |
Bug in debug information generation. |
| Symptom: |
Unresolved symbols when linking optimized code compiled with
debug information. |
| Problem: |
In some rare cases, when linking code compiled with both high
optimization level and debug information, the debug data could
contain symbol references to symbols that were not actually present
in the code any more, because the optimizer had managed to
completely eliminate them. This would cause unresolved symbol
errors.
The problem would show up only for floating point variables that
are constant throughout a function.
|
| Solution: |
Don't emit debug data for those variables. |
| Description: |
Incorrect profiling code. |
| Symptom: |
Function profiling does not work (31-bit only). |
| Problem: |
The code emitted by the compiler when doing function profiling
(gcc -p) was incorrect. |
| Solution: |
Fix profiling code. |
| Description: |
Inefficient code generation. |
| Symptom: |
Performance regressions compared to gcc 2.95.2. |
| Problem: |
In some cases, performance of code generated with the latest
compiler was worse than performance of code generated with our gcc
2.95.2 based compilers. The reason for this is that the changes
introduced to support better condition code handling, while having
an overall positive effect on performance, could in some cases
result in worse code because other parts of the optimizer were
confused by the now more complex RTL code. In particular, this
affected the instruction scheduler and the use of base + index
register addressing modes. |
| Solution: |
Improve performance in those cases by:
- making better use of base + index addressing.
- improving the scheduler machine description.
- using the Haifa scheduler by default.
|
As it is not easily predictable which source code triggers the
code generation bugs fixed here, everyone using the compiler should
apply this patch.
To create the complete compiler sources, the following patches
need to be applied in sequence:
gcc-2.95.3.tar.gz (GNU)
+ gcc-2.95.3-s390.diff (IBM)
+ gcc-2.95.3-s390-1.diff (IBM)
+ gcc-2.95.3-s390-2.diff (IBM)
-
-
gdb-5.0-s390-2.tar.gz MD5 recommended
(2001-10-12)
This patch contains the following gdb bug fixes:
| Description: |
Incorrect stack frame analysis. |
| Symptom: |
gdb doesn't show the (full) stack backtrace. |
| Problem: |
In some cases, the stack frame analysis would get confused,
causing gdb to not show the full stack backtrace.
The problem was especially noticable on 64-bit, and when
backtracing out of a signal handler or glibc system call.
|
| Solution: |
Improved stack frame analysis. |
You should apply this patch if you are experiencing problems
with stack backtraces (for 64-bit support you should apply the
patch in any case).
To create the complete gdb sources, the following patches need
to be applied in sequence:
gdb-5.0.tar.gz (GNU)
+ gdb-5.0-s390.diff (IBM)
+ gdb-5.0-s390-1.diff (IBM)
+ gdb-5.0-s390-2.diff (IBM)
-
-
glibc-2.2.4-s390-1.tar.gz MD5
recommended (2001-10-12)
This patch contains the following glibc bug fixes:
| Description: |
Warnings about zero index or base registers misleading. |
| Symptom: |
Endless loop or crashes in user programs that use string
streams. |
| Problem: |
Using sputback on a strstreambuf object and subsequently
deleting it without reading the characters back would cause an
invalid memory area to be freed. That can lead to crashed or
endless loops. |
| Solution: |
Switch back to correct memory area in destructor function for
the strstreambuf object. |
| Description: |
64 bit pthread long jump function broken. |
| Symptom: |
pthread cleanup function not called on cancel. |
| Problem: |
The unwinding of the stack to a previous location in the
pthread long jump function fails because of an incorrect address
comparison. |
| Solution: |
Fix address comparison. |
Everybody should apply this patch.
To create the complete glibc sources, the following patches need
to be applied in sequence:
glibc-2.2.4.tar.gz (GNU)
+ glibc-linuxthreads-2.2.4.tar.gz (GNU)
+ glibc-2.2.4-s390.diff (IBM)
-
-
linux-2.4.7-s390-2.tar.gz MD5
recommended (2001-10-12)
This patch contains the following linux kernel bug fixes:
| Description: |
Pagex interrupts can overwrite program check information. |
| Symptom: |
User program crashes. |
| Problem: |
The pagex interrupt could overwrite the information in the
lowcore about the last program check because interrupts are
reenabled to early. The program check is then handled incorrectly
after the pagex interrupt returns. |
| Solution: |
Do not reenable the interrupts in the first level program check
handler. Let the second level program handler decide when the
interrupts should be reenabled. |
| Description: |
Inline assembly contraints too weak for latest compiler. |
| Symptom: |
Assembler error messages compiling the kernel. |
| Problem: |
The contraints of some inline assemblies allow a full memory
reference with offset, base and index register for instructions
that only accept memory references with offset and base
register. |
| Solution: |
Reload the full memory reference to a register or use the "a"
constraint in the inline assemblies. |
| Description: |
bottom half scheduling. |
| Symptom: |
Idle system load one instead of zero. |
| Problem: |
The timer interrupt handler dosn't call irq_enter/irq_exit
early enough causing the softirq daemon to be scheduled. The now
runnable softirq daemon increases the load and is scheduled
normally just to return immediatly. This only causes a slight
increase in the cpu usage the load is not really one. |
| Solution: |
Call irq_enter just after entering the timer interrupt handler
and irq_exit just before leaving. |
| Description: |
Missing symbol strstr. |
| Symptom: |
The load of a module fails because of undefined symbol
strstr. |
| Problem: |
The strstr function is not exported by the kernel. |
| Solution: |
Export the strstr function. |
| Description: |
Dasd performance problem. |
| Symptom: |
The dasd driver uses too much cpu. |
| Problem: |
The profiling code to collect the information for
/proc/dasd/statistics takes too much time. |
| Solution: |
Deactivate the dasd profiling. To reenable it the DASD_PROFILE
define needs to be set. |
| Description: |
Proc interface for dynamic addition/removal of dasd
devices. |
| Symptom: |
Dynamic add/remove of dasd devices does not succeed. |
| Problem: |
The /proc/dasd/devices interface doesn't accept strings ending
with a newline. |
| Solution: |
Strip newline from strings written to /proc/dasd/devices. |
| Description: |
Stopping tape driver operations. |
| Symptom: |
Kernel crashes after stopping tape operations. |
| Problem: |
If a tape operations is canceled the tape i/o request is not
stopped but the memory area that is used by the operation is freed.
The reused memory can be clobbered by the still running i/o
request. |
| Solution: |
Wait uninterruptible for the end of tape i/o requests. |
| Description: |
CTC i/o timeout problem. |
| Symptom: |
Kernel message "kernel timer added twice at ...". |
| Problem: |
The i/o timeout for the CTC channels is not deleted in all
cases. |
| Solution: |
Remove pending timer in the channel restart function. |
| Description: |
TCP/IP problems with sockets in TIME_WAIT state. |
| Symptom: |
Kernel crashes under heavy TCP/IP load. |
| Problem: |
There are two problems in the common TCP/IP code with regard to
the handling of sockets in the TIME_WAIT state. The first is a typo
that causes the reference count of the wrong socket to be
decremented and the second it a race condition. Both problems can
lead to clobbered socket memory. |
| Solution: |
Decrement reference count of the correct socket and avoid the
race condition by increasing the reference count. |
Everybody should apply this 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-timer.tar.gz MD5
recommended (2001-10-12)
Release notes:
On demand timer patch
Category operating system. Contains a patch for the linux kernel
2.4.7 that will change the timing method from the regular 100 hz
interrupts to on demand timer interrupts. This saves some cpu
cycles in an idle linux image. The drawback is that a busy linux
image will do a small amount of additional work every time the
switch between user mode and kernel mode is done. In short if you
are running many images under VM the on demand timers are useful
but you probably don't want to use it running under LPAR or native.
The patch introduces a configuration option CONFIG_NO_HZ_TIMER that
lets you choose between the old and the new behavior. Note that
you'll need different lcs and qeth modules if you use the no hz
timer option.
-
strace-4.2.20010119-s390-1.tar.gz MD5
recommended (2001-10-12)
This patch contains the following strace bug fix:
| Description: |
Follow-fork failed on 64-bit. |
| Symptom: |
strace -f does not work on 64-bit. |
| Problem: |
The follow-fork mechanism inserts an instruction into the
target process. This was not correctly adapted to 64-bit. |
| Solution: |
Fixed incorrect instruction. |
You should apply this patch if you want to use strace on the
64-bit zSeries architecture.
To create the complete strace sources, the following patches
need to be applied in sequence:
strace-4.2.20010119.tar.gz (RedHat 7.1)
+ strace-4.2.20010119-s390.diff (IBM)
+ strace-4.2.20010119-s390-1.diff (IBM)
-
-
s390-tools-2.tar.gz MD5 recommended
(2001-10-12)
This patch contains the following s390-tools bug fixes:
| Description: |
s390-tools default install location. |
| Symptom: |
The s390-tools binaries were installed into /bin. |
| Problem: |
As system administration tools, the default install location
for the s390-tools binaries should be /sbin, not /bin. |
| Solution: |
Change default install location to /sbin. |
| Description: |
fdasd creates invalid partitions. |
| Symptom: |
Error message "BUG: overlapping free space extents in FMT5
DSCB!" |
| Problem: |
fdasd miscalculated the partition borders if the option -c is
used. |
| Solution: |
Correct calculation. |
Everybody should apply this patch.
To create the complete S/390 tools sources, the following
patches need to be applied in sequence:
s390-tools.tar.gz (IBM)
+ s390-tools-1.diff (IBM)
+ s390-tools-2.diff (IBM)
Note:
There is a new lkcdutils version (4.0) which contains the dump
analysis tool "lcrash" with Linux for zSeries support (64-bit).
With this version of lcrash, it is possible to analyze 64-bit Linux
for zSeries system memory dumps. You can download it at:
"http://lkcd.sourceforge.net/download/4.0/lkcdutils".
Recommended OCO modules 31-bit
Recommended OCO modules 64-bit
|
|
Recommended OCO modules (31-bit) - qdio and qeth device
drivers
The following network device drivers are compatible with the
Linux kernel version 2.4.7 as of 2001-09-14 and are object code
only.
HiperSockets support for qdio and qeth
The qdio and qeth OCO modules based on kernel level 2.4.7 now
support HiperSockets as well as OSA-Express QDIO cards. The support
of HiperSockets was tested for Linux for S/390 running under LPAR
only.
In the Documentation
section you can find the Linux for S/390 Device Drivers and
Installation Commands manual and the new HiperSockets Device Driver
manual, which describe the use of these device drivers.
Configuration considerations:
Note: If you are using the linux-2.4.7-timer.diff and have
the CONFIG_NO_HZ_TIMER option switched on, you will have to use the
lcs or qeth module with the timer option (e.g.
lcs-2.4.7-s390-timer.o instead of lcs-2.4.7-s390-1.o)
Restrictions for QDIO base support and OSA-Express Driver:
- Multicasting has to be switched on in the kernel.
- The OSA Express Driver needs QDIO base support.
- Starting with microcode level 0146, OSA-Express QDIO require a
portname to be set in the device driver. This portname is specified
using "add_parms,0x10,portname:FOOBAR" (more details in the chandev
man page).
- Currently, OSA-Express QDIO and HiperSockets do not provide
broadcast functionality.
Broadcast functionality is only available on OSA-2 hardware.
LCS driver
The LCS driver remains unchanged since 2001-09-14.
Experimental OCO modules (64-bit) - qdio and qeth device
drivers
The following experimental 64-bit device drivers are compatible
with Linux kernel version 2.4.7 as of 2001-09-14 and are object
code only.
The qdio and qeth OCO modules now also support HiperSockets for
Linux for S/390 running under LPAR.
For configuration considerations refer to the corresponding
31-bit OCO modules as of 2001-09-28.
Note: If you are using the linux-2.4.7-timer.diff and
have the CONFIG_NO_HZ_TIMER option switched on, you will have to
use the modules with timer (e.g. qeth-2.4.7-s390x-2-timer.o instead
of qeth-2.4.7-s390x-2.o).
Experimental OCO module (31-bit) - z90crypt device
driver
The z90crypt device driver provides an I/O-like interface to any
PCI Cryptographic Coprocessors (PCICC) attached to an S/390. The
only cryptographic function currently supported is RSA PKCS private
key decrypt.
Installation and usage are described in the included README
file. Note that unless your system has at least one PCICC, this
driver does not work.
|
|
The 2001-09-14 set of Linux Kernel version 2.4.7 (and related)
recommended patches for Linux for S/390 and zSeries provides some
new functions and several fixes.
Recommended 31-bit OCO modules for Linux for S/390 and zSeries
are:
- 2001-09-28 qdio and qeth with HiperSockets
support
- 2001-09-14 lcs
Together with the 2001-08-20 set of Linux kernel version 2.4.7
(and related) recommended patches, a kernel 2.4.7-based Linux for
S/390 31-bit distribution can be built using:
- kernel, kernel-headers, kerntypes 2.4.7
- gcc 2.95.3
- glibc, glibc-devel 2.2.4
- binutils 2.11.90.0.27
- gdb 5.0 (Note that the 2001-09-11 gdb 5.1 alpha-patch is
experimental not recommended)
- modutils 2.4.7 (Note that the 2001-08-20 modutils 2.4.6
alpha-patch is integrated into modutils 2.4.7 and no additional
patch on top is required)
- s390-tools 1.0
- strace 4.2.2
with the 31-bit OCO-modules lcs, qdio, qeth.
Please check out the Restrictions page on Kernel
2.4.7.
Please see the Documentation
page for the updated kernel 2.4.7 manuals:
- Device Drivers and Installation Commands
- Using the Dump Tools
The 2001-09-11 kernel 2.4.7 patches include the new "on-demand
timer" which introduces a kernel configuration option
CONFIG_NO_HZ_TIMER that lets you choose between the regular 100
Hertz timer and the new on-demand timer. The on-demand timer should
improve throughput on z/VM systems running many, mostly idle Linux
for S/390 guests. It may slightly impact performance running Linux
for S/390 in other situations under VM (for example a few heavily
loaded images), in LPAR, or in native mode.
Therefore any Linux for S/390 distribution should include a
kernel built with the on-demand timer only as an alternate kernel
(providing a standard timer kernel for environments where the
on-demand timer may impact performance).
Important notice: The OCO-modules lcs, qdio, and qeth
must be selected correctly for kernels with or without the
on-demand timer activated:
- on-demand timer kernels need: lcs-2.4.7-s390-timer.tar.gz,
qdio-2.4.7-s390-2-timer.tar.gz and
qeth-2.4.7-s390-2-timer.tar.gz
- standard 100 Hertz timer kernels need: lcs-2.4.7-s390-1.tar.gz
qdio-2.4.7-s390-2.tar.gz and qeth-2.4.7-s390-2.tar.gz
Although several 64-bit related bug-fixes are included, the
64-bit tests are not yet concluded and the patches and OCO-modules
which are recommended for 31-bit are still considered experimental
for 64-bit environments.
jump to top
-
binutils-2.11.90.0.27-brxlg.tar.gz MD5
recommended
Release notes:
This patch contains the following binutils bug fix:
| Description: |
brxlg instruction syntax. |
| Symptom: |
Message "Error: unsupported relocation type" is issued
assembling brxlg. |
| Problem: |
The order of the operands of brxlg was entered incorrectly in
the instruction table of gas. |
| Solution: |
Correct the order of the operands of brxlg. |
Everybody using the 64 bit compiler dated 2001-08-18 should
apply this patch. The brxlg is rarely used but some very big
functions will require it.
To create the complete binutils sources, the following patches
need to be applied in sequence:
binutils-2.11.90.0.27.tar.gz (GNU)
+ binutils-2.11.90.0.27-s390.diff (IBM)
+ binutils-2.11.90.0.27-brxlg.diff (IBM)
-
-
gcc-2.95.3-s390-1.tar.gz MD5 recommended
Release notes:
This patch contains the following compiler bug fixes:
| Description: |
Bad prolog code with -mno-backchain option. |
| Symptom: |
Incorrect prolog code is generated. |
| Problem: |
Even with the -mno-backchain option, it is sometimes necessary
to maintain a backchain, e.g. when the stack frame is too large.
The check whether this is the case was wrong. |
| Solution: |
Check for correct condition. |
| Description: |
Bug in compiler common code (cse). |
| Symptom: |
Incorrect code is generated. |
| Problem: |
Due to a bug in the cse phase, under some (rare) circumstances
it was possible that the compiler did not notice that a register
was modified by an instruction, and hence generated invalid code.
This can only occur at high optimization level, and has been
noticed only in a single test case. |
| Solution: |
Fix cse. |
| Description: |
Wrong type definitions in the Fortran frontend for 64-bit. |
| Symptom: |
The Fortran frontend and the Fortran libraries use inconsistent
type definitions. |
| Problem: |
The Fortran support libaries try to find out the sizes of the
various integer data type by evaluating the ..._SIZE_TYPE macros in
header files. This breaks on S/390, as e.g. LONG_SIZE_TYPE is not a
compile-time constant (it depends on whether 32-bit or 64-bit code
is being generated). As a result, when building the Fortran
libraries for 64-bit, type definitions don't match what the Fortran
compiler expects, causing a variety of run-time problems. |
| Solution: |
Change the type definitions to work both on 32-bit and
64-bit. |
| Note: |
This is just a workaround, not a proper fix. It is not
guaranteed to work on non-S/390 architectures. This problem is
fixed correctly in gcc 3.0. |
As it is not easily predictable which source code triggers the
code generation bugs fixed here, everyone using the compiler should
apply this patch.
To create the complete compiler sources, the following patches
need to be applied in sequence:
gcc-2.95.3.tar.gz (GNU)
+ gcc-2.95.3-s390.diff (IBM)
+ gcc-2.95.3-s390-1.diff (IBM)
-
-
gdb-5.0-s390-1.tar.gz MD5 recommended
Release notes:
This patch contains the following gdb bug fix:
| Description: |
gdbserver support. |
| Problem: |
Compiling a cross debugger for S/390 is not possible. |
| Solution: |
Provide the support for cross debugging for S/390. |
| Note: |
The gdbserver doesn't support debugging multithreaded
applications on S/390 or any other platform. This patch also fixes
the target signal remapping for all platforms (for example SIGUSR1
used to be deliveres as SIGBUS). |
Everybody who wants to setup a gdbserver will need this
patch.
To create the complete gdb sources, the following patches need
to be applied in sequence:
gdb-5.0.tar.gz (GNU)
+ gdb-5.0-s390.diff (IBM)
+ gdb-5.0-s390-1.diff (IBM)
-
-
linux-2.4.7-s390-1.tar.gz MD5 recommended
Release notes:
This patch contains the following linux kernel bug fixes:
| Description: |
IUCV driver restrictions. |
| Symptom: |
Only 20 IUCV connections can be defined. |
| Problem: |
Static netdevice array only has room for 20 connections. |
| Solution: |
Complete rework of the IUCV driver. Now it uses the same state
machine approach like the CTC driver and dynamically allocates all
structures. |
| Description: |
Asynchronous interrupt kernel stack. |
| Symptom: |
Kernel crashes under heavy load. |
| Problem: |
With the new softirq scheme the kernel stack usage has
increased significantly. In the worst case the kernel stack
contains the stack frames for a system call, a program check, a
softirq and a hard irq. If the kernel stack overflows the task
structure is clobbered and this normally ends in a kernel
crash. |
| Solution: |
To reduce the kernel stack usage a second stack was introduced.
This stack contains the stack frames of asynchronous interrupts and
the stack frames used by execution of the softirq functions. |
| Description: |
Memory detection routine. |
| Symptom: |
Processes get killed with addressing exceptions. |
| Problem: |
In the boot process the full range of addresses between the end
of the kernel and the end of storage is added and later on unusable
areas are recognized. The removal of these areas doesn't work and
the areas are accessed as normal memory. |
| Solution: |
Create a list of usable memory blocks early in the boot process
and do not add the unusable memory in the first place. |
| Description: |
SMP inter-processor communication. |
| Symptom: |
Kernel crashes. |
| Problem: |
The next pointer in the list of functions to be called on a
processor might get corrupted if the storage of a list element is
reused to early. |
| Solution: |
Complete rework of smp_call_function to allow only for a single
outstanding function call and add a lock to protect against
concurrent uses. |
| Description: |
Internal timestamps inexact. |
| Symptom: |
Newer version of ping warn about "time of day goes back". |
| Problem: |
The timestamps used in the socket buffers are created by a call
over the function pointer do_get_fast_time. By default this pointer
refers to a functions that just copies the content of xtime without
adjusting it with the use of the hardware clock. |
| Solution: |
Set the pointer do_get_fast_timer to a function that uses the
tod clock to get precise time stamps. |
| Description: |
IEEE emulation for tceb, tcdb and tcxb. |
| Symptom: |
On machines without a real IEEE fpu the emulation warns about
unimplemented instructions like tceb, tcdb, tcxb, diebr and
didbr. |
| Problem: |
The emulation functions for some IEEE instructions have not
been implemented yet. |
| Solution: |
Implement some of the missing IEEE emulation functions. |
| Note: |
The two instructions diebr and didbr are still missing but the
GNU C compiler is not using them right now. |
| Description: |
Locking problems with module insertion/removal. |
| Symptom: |
Process and/or kernel crashes. |
| Problem: |
While modules are inserted/removed processes can crash if they
are revolving page faults at the same time the module_list is
changed. |
| Solution: |
Get the modlist_lock before searching the exception tables for
program checks. |
| Description: |
Dynamic attach/detach of devices. |
| Symptom: |
The dynamic attach of devices sometimes does not work. |
| Problem: |
The enabling of a subchannel with msch can fail for the first
try, the second try works. |
| Solution: |
After the first msch do a stsch, check if the device really is
enabled and retry if not. |
| Description: |
Dasd statistics. |
| Symptom: |
The information in /proc/dasd/statistics is incorrect. |
| Problem: |
The dasd profiling information is collected after the
processing for a request has finished, voiding the profiling
information. |
| Solution: |
Collect the profiling information before the request is
ended. |
| Description: |
Dasd autoprobe. |
| Symptom: |
The removal of the dasd module inserted without parameter
causes an oops. |
| Problem: |
For autoprobe the detected dasds are not enabled and no request
queue is allocated. The disable routine that is called when the
module is removed tries to free the non-existent request
queue. |
| Solution: |
Add a check for this condition. |
| Description: |
Dynamic dasd devices. |
| Symptom: |
Attaching/detaching dasd devices from linux causes kernel
crashes. |
| Problem: |
Deactivation of a dasd device either by a set off or a machine
check was not done correctly. |
| Solution: |
Correct deactivation code. |
| Description: |
Minidisk devices. |
| Symptom: |
Using the minidisk discipline of the dasd driver can cause
kernel crashes. |
| Problem: |
The request queue is changed in the minidisk interrupt function
without holding the device lock. A concurrent access to the request
queue on a different processor can destroy the request list. |
| Solution: |
Acquire the device lock in the interrupt function before
modifying the request queue. |
| Description: |
Debug area flush. |
| Symptom: |
None. |
| Problem: |
To analyse a problem it would be useful if the debug area can
be flushed of old entries. |
| Solution: |
Add an entry in the /proc filesystem that allows to flush the
debug area. |
| Description: |
Pfault handling. |
| Symptom: |
Pfault does not improve the cpu usage of linux if VM starts
paging linux guest memory. |
| Problem: |
A check in the pfault interrupt routine for the pfault subcode
is wrong. The processor resumes execution of the faulting process
immediatly which causes another pfault interrupt until the maximum
number of pfault interrupts is reached. Then the guest page fault
is resolved synchronously. |
| Solution: |
Fix the check. |
| Description: |
Rebooting 64 bit linux under zVM doesn't work. |
| Symptom: |
After all processes have been killed and all but the boot cpu
have been deactivated linux stops without restarting. |
| Problem: |
To reboot linux under VM the diagnose 8 is used to issue an IPL
command to VM. The diagnose 8 is not yet capable of accessing
memory above 2GB. The output buffer for the command was allocated
on the kernel stack that can reside above 2GB if the machine has
enough storage. |
| Solution: |
Use a static output buffer for passing the command and protect
against concurrent uses with a spinlock. |
| Description: |
Socket time stamps in 31 bit programs under 64 bit linux. |
| Symptom: |
31 bit programs get errors calling SIOCGSTAMP ioctl. |
| Problem: |
An ioctl was missing in the 31 bit emulation layer. |
| Solution: |
Add the iotcl. |
| Description: |
stat64 call in 31 bit programs under 64 bit linux. |
| Symptom: |
31 bit programs get wrong data calling stat64. |
| Problem: |
The 31 bit emulation of stat64 used an incorrect stat64
structure layout. |
| Solution: |
Use the correct stat64 structure. |
| Description: |
Signal delivery in 31 bit programs under 64 bit linux. |
| Symptom: |
31 bit programs are dumping their core. |
| Problem: |
The delivery of a signal to a 31 bit program under 64 bit linux
leads to segmentation faults because the signal handler was called
in the 64 bit addressing mode. |
| Solution: |
Set the correct mask for 31 bit addressing in the program
status word when delivering signals. |
| Description: |
CTC driver crashed with more then 2GB. |
| Symptom: |
Kernel crashes if CTC is used with more then 2GB memory. |
| Problem: |
The idal bit in the channel command words is handled
incorrectly. |
| Solution: |
Correctly set the idal bit. |
Everybody should apply this 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-timer.tar.gz MD5 recommended
Release notes:
On demand timer patch
Category operating system. Contains a patch for the linux kernel
2.4.7 that will change the timing method from the regular 100 hz
interrupts to on demand timer interrupts. This saves some cpu
cycles in an idle linux image. The drawback is that a busy linux
image will do a small amount of additional work every time the
switch between user mode and kernel mode is done. In short if you
are running many images under VM the on demand timers are useful
but you probably don't want to use it running under LPAR or native.
The patch introduces a configuration option CONFIG_NO_HZ_TIMER that
lets you choose between the old and the new behavior. Note that
you'll need different lcs and qeth modules if you use the no hz
timer option.
-
s390-tools-1.tar.gz MD5 recommended
Release notes:
This patch contains the following s390-tools bug
fixes/improvements:
| Description: |
fdasd: VTOC format 5 DSCB support |
| Symptom: |
OS/390 or z/OS cannot read free space information. |
| Problem: |
The FMT5 DSCB written by fdasd was empty. |
| Solution: |
Fdasd writes now a correct FMT5 DSCB containing free space
information. |
| Description: |
fdasd: VTOC format 7 DSCB support |
| Symptom: |
OS/390 or z/OS cannot read free space information on large
disks (>65535 tracks). |
| Problem: |
The FMT7 DSCB was missing. |
| Solution: |
Fdasd writes now in case of a large disk in addition to the
FMT5 a FMT7 DSCB containing free space information. |
| Description: |
fdasd: command line mode for one partition |
| Symptom: |
None. |
| Problem: |
Fdasd goes for every disk in interactive mode. You could not
use scripts for a large amount of disks. |
| Solution: |
The -a option of fdasd creates one big partition using the
whole disk without switching in interactive mode. |
| Description: |
fdasd: command line mode using a config file |
| Symptom: |
None. |
| Problem: |
Creating more than one partition in command line mode (e.g.
using scripts). |
| Solution: |
The -c option of fdasd uses a config file to create several
partitions without switching in interactive mode. |
| Description: |
fdasd: supress messages |
| Symptom: |
None. |
| Problem: |
Non-interactive mode of fdasd (-a or -c) produce to much output
(e.g. using scripts) |
| Solution: |
The -s option of fdasd to suppress messages. |
| Description: |
fdasd: wrong OS/390 data set name |
| Symptom: |
The data set name of the same partition has changed from an
OS/390 point of view. |
| Problem: |
Fdasd has changed the OS/390 data set name for a partition in
case you delete and re-create a partition within the same fdasd
session. |
| Solution: |
The OS/390 data set name does not change anymore. |
| Description: |
fdasd: OS/390 data set name contains blanks |
| Symptom: |
OS/390 is not able to read the data set names created by
fdasd. |
| Problem: |
The volume serial contained in the data set name was filled up
with blanks in case it had less than 6 characters. |
| Solution: |
The OS/390 data set name contains no blanks anymore and can
have different length, depending on the volser length. |
| Description: |
fdasd: read-only disk access |
| Symptom: |
Fdasd seems to write to a read-only disk, but doesn't really
write to that disk. |
| Problem: |
Fdasd doesn't complain about read-only disks, because the
fwrite function calls returned wrong values. |
| Solution: |
fdasd checks now for read-only disks and complains about
them. |
| Description: |
fdasd: wrong free space detection while adding partitions |
| Symptom: |
Fdasd seems not to recognize values for new partitions within
the range of existing partitions, but moves the value right behind
the existing partition without saying anything. |
| Problem: |
There was a message missing. |
| Solution: |
Fdasd gives the user a message, in case it moves input
values. |
| Description: |
fdasd: re-create the whole VTOC |
| Symptom: |
None. |
| Problem: |
How to re-create the whole VTOC without deleting every single
partition or in case the VTOC is corrupted. |
| Solution: |
Fdasd got a new menu entry 'r', which re-creates the VTOC and
deletes all partitions. |
| Description: |
dasdfmt: VTOC format 7 DSCB support |
| Symptom: |
OS/390 was not able to access large disks (>65536 trks)
correctly. |
| Problem: |
There was only a FMT5 DSCB containing free space information
OS/390 needs in case of a large disk a FMT7 DSCB. |
| Solution: |
Dasdfmt writes always a FMT5 DSCB and in case of a large disk
in addition a FMT7 DSCB. |
| Description: |
dasdfmt: formatting with a blksize >4096 or <512 |
| Symptom: |
The Disk remains in 'accepted' state and is no longer
usable. |
| Problem: |
The dasd driver returns error messages and forces dasdfmt to
terminate. |
| Solution: |
Dasdfmt checks now the given blksize and complains in case
blksize > 4096 or blksize < 512. |
| Description: |
dasdfmt: booting from a non-bootable disk |
| Symptom: |
System hangs with a 'program interrupt loop'. |
| Problem: |
Booting from a non-bootable disk results in a program interrupt
loop. |
| Solution: |
Dasdfmt writes now S/390 compatible boot straps while
formatting to get a 'disabled wait' in case of booting from a
non-bootable disk. |
| Description: |
Hashmarks for dasdfmt |
| Symptom: |
None. |
| Problem: |
Format progress is not visible and progress bar option is not
applicable for x3270 emulation. |
| Solution: |
Prints a hashmark every x cylinders, where x is an optional
parameter. |
| Description: |
Progress bar for dasdfmt. |
| Symptom: |
None. |
| Problem: |
Format progress is not visible. |
| Solution: |
Print a progress bar using the -p option. It is updated after
each cylinder. |
| Description: |
Multi volume support for system dump (tape 3480/90) |
| Symptom: |
Dump is incomplete. |
| Problem: |
The dump of a linux image won't fit on a single cartridge if
the memory size of the image is bigger then the capacity of the
cartridge. |
| Solution: |
Allow dumping on several tape cartridges. The zgetdump tool can
copy a multi volume dump to a file system in order to analyze
it. |
| Description: |
Tape device display support. |
| Symptom: |
The end of the system dump process is hard to find out. |
| Problem: |
The dump process stops by loading a disabled wait psw. This
fact is only reflected on the SE where it can easily be
overlooked. |
| Solution: |
Use the tape display to indicate the dump progress. |
| Description: |
64 bit support for dasd and tape dump. |
| Symptom: |
The 31 bit dump records will only copy up to 2GB of system
storage and the registers of all processors. |
| Note: |
To get 64 bit enabled dump tools, the s390-tools packages needs
to be compiled with the 64 bit tool chain. |
Everybody should apply this patch.
To create the complete s390-tools sources, the following patches
need to be applied in sequence:
s390-tools.tar.gz (IBM)
+ s390-tools-1.diff (IBM)
Experimental OCO modules (64-bit)
The following experimental 64-bit device drivers are compatible
with Linux kernel version 2.4.7 as of 2001-09-14 and are object
code only. Documentation on their use can be found in the Documentation section.
Note: If you are using the linux-2.4.7-timer.diff and have
the CONFIG_NO_HZ_TIMER option switched on, you will have to use
lcs-2.4.7-s390x-timer.o module instead of lcs-2.4.7-s390x-1.o and
qeth-2.4.7-s390x-timer.o instead of qeth-2.4.7-s390x-1.o.
Restrictions for QDIO base support and OSA-Express Gigabit
Ethernet Driver:
- Multicasting has to be switched on in the kernel.
- The Gigabit Ethernet Driver needs QDIO base support.
|
- binutils
Category application development tool. The binutils package is a
collection of various development tools like a linker, a utility
for creating, modifying and extracting from archives, a tool that
displays information from object files, a tool to generate an index
to the contents of an archive and so on.
The following patch contains a fix that adds a missing
instruction to the binutils.
binutils-2.11.90.0.27-s390.tar.gz MD5
(2001-08-20)
-
- gcc
Category application development tool. Contains the C Compiler
front-end including architecture dependent back-ends like the S/390
back-end that generates executables for Linux for S/390. The gcc is
an application that can be built to run on many different platforms
and does not need to run on Linux for S/390.
The following patch adds support for the S/390 and the zSeries
to GNU C version 2.95.3. The S/390 / zSeries backend has been
completely reworked to optimize the generated code in regard to the
condition code handling.
gcc-2.95.3-s390.tar.gz MD5 (2001-08-20)
-
- gdb
Category application development tool. Contains the GNU debugger.
It can be used as an interactive symbolic debugger as well as a
post-mortem debugger.
The following patch adds support for S/390 and zSeries to gdb
version 5.0.
gdb-5.0-s390.tar.gz MD5 (2001-08-20)
-
- glibc, glibc-devel
Category application development tool. These packages contain the
GNU C Runtime library for Linux.
The following patch contains some additional bug fixes that
enables the use of the glibc version 2.2.3 on S/390 and zSeries.
glibc-2.2.4-s390.tar.gz MD5 (2001-08-20)
-
- kernel, kernel-headers
Category operating system. Contains the Linux kernel source code as
well as the S/390 specific layer.
The following patch contains bug fixes and new features for the
Linux kernel version 2.4.7. The summary of important changes:
- Device File System is supported for all devices.
- Tape support. The tape device driver is no longer
experimental.
- Dynamic I/O improvements. This includes support for adding and
removing devices that are managed by the channel device layer.
- DASD error recovery. The complete set of error recovery
procedures for ECKD devices is implemented.
- Standard S/390 disk layout. A new DASD disk format is
introduced to Linux for S/390. A disk with the new format can have
up to three partitions and is mountable by any zSeries operating
system. A new formatting tool is used to create the new format (see
s390-tools package).
- The user space tools dasdfmt and silo are removed. The new
package s390-tools contains the replacement programs.
- All recent experimental bug fixes are integrated.
linux-2.4.7-s390.tar.gz MD5 (2001-08-20)
-
- linux-2.4.7 Kerntypes file
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. The dummy module
is built together with the kernel image or simply with: 'make
Kerntypes'. To create the complete kernel sources, the following
patches need to be applied in sequence:
linux-2.4.7.tar.gz (GPL)
+ linux-2.4.7-s390.diff (IBM)
+ linux-2.4.7-s390-kerntypes.diff (IBM)
linux-2.4.7-s390-kerntypes.tar.gz MD5
(2001-08-20)
-
- modutils
Category operating system. Contains the Linux kernel module tools.
For modutils-2.4.7 no patch needs to be applied for the S/390
backend.
-
- strace
Category application development tool. This application writes a
trace of system calls to the operating system. The following patch
contains the backend for zSeries.
strace-4.2.20010119-s390.tar.gz MD5
(2001-08-20)
-
- s390 tools
Category operating system. Contains the source tree of a set of
utilities that replace "dasdfmt" and "silo" from the kernel source.
The package contains:
- dasdfmt, which is used to low-level format ECKD-DASDs with
either the classic disk layout or the new zSeries compatible disk
layout.
- fdasd, which is used to create or modify partitions on
ECKD-DASDs formatted with the zSeries compatible disk layout.
- zipl, which is used to make either dasds or tapes bootable for
system IPL or system dump.
- zgetdump, which is used to retrieve system dumps from either
tapes or dasds.
s390-tools.tar.gz MD5 (2001-08-20)
OCO modules (31-bit):
These network device drivers are compatible with the Linux
kernel version 2.4.7 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 Driver:
- Multicasting has to be switched on in the kernel.
- The OSA Express Driver needs QDIO base support.
experimental OCO modules (64-bit):
The following experimental 64-bit device drivers are compatible
with Linux kernel version 2.4.7 and are object code only.
Documentation on their use can be found in the Documentation
section.
Restrictions for QDIO base support and OSA-Express Gigabit
Ethernet Driver:
- Multicasting has to be switched on in the kernel.
- The Gigabit Ethernet Driver needs QDIO base support.
|
|
 |
|
 |