2005-09-01 kernel 2.6.5 bug fix patch 26 ("April 2004")

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

linux-2.6.5-s390-26-april2004.tar.gz / MD5 ... accumulated patch, recommended (2005-09-01)

linux-2.6.5-s390-26-april2004-patches.tar.gz / MD5 ... per-problem-patches, recommended (2005-09-01)

These patches contain the following linux kernel bug fixes:

Description:
ctc: A race condition and a busy wait performance problem caused by behavior of the transmit function.
Symptom:
Packet order reversion and performance loss.
Problem:
Spinlock acquired too late and non optimal busy-flag usage.
Solution:
Moving spinlock up and changing busy flag handling.
Problem-ID:
17067
Description:
cio: I/O blocked after cable pull/re-plug with all paths gone.
Symptom:
If all paths for a device are pulled and afterwards replugged, I/O is no longer possible.
Problem:
After a resource accessibility event, cio scans for affected subchannels. The scan does not continue if a subchannel is found for which a link address had been provided in the event information.
Solution:
Continue scanning for further subchannels.
Problem-ID:
17452
Description:
ctcmpc: Missing storage free in exception case.
Symptom:
Slow leak of size-131072(DMA) buffers on system using ctcmpc channels can eventually cause system instability.
Problem:
ctcmpc did not free skb allocated if MPC group was not in the correct state to process received data. Can occur if data received during small window after one of the read-write channel pair channels went down.
Solution:
Add storage free when MPC group not in state to accept data.
Problem-ID:
17420
Description:
qeth: channel bonding ping causes skb resource problems.
Symptom:
Channel bonding ping dies with "no buffer space available".
Problem:
skbs are not freed.
Solution:
Free old skb in qeth_realloc_headroom after duplicating skb.
Problem-ID:
17120
Description:
qeth: Disable IPV6 for HiperSockets.
Symptom:
HiperSockets Network Concentrator does not work with newer HiperSockets microcode.
Problem:
IPV6 for HiperSockets is not fully implemented in the qeth driver. Since the latest HiperSockets microcode reports that IPV6 is supported, the qeth driver does not handle the IPV6 code paths correctly.
Solution:
Disable hard coded IPV6 support for HiperSockets in the qeth driver.
Problem-ID:
17438
Description:
qeth: HiperSockets do not work with enabled fake_ll option.
Symptom:
When specifying the fake_ll option on a HiperSockets device, no more network traffic is possible for this device.
Problem:
Because qeth_fake_header() function is not called in the send path, the mac header of the network packet is missing.
Solution:
In case of dev->hard_header points to qeth_fake_header, do not set NUD_NOARP, but call the original arp_constructor. The network stack will then call dev->hard_header (qeth_fake_header), and the mac header will be reserved.
Problem-ID:
17454
Description:
qeth: recovery problem after vary off/on
Symptom:
Network does not always recover after vary off/on of OSA devices.
Problem:
qeth_main.c should invoke ccw_device_set_offline for all 3 ccw_devices belonging to the interface. It stops doing this as soon as such an invocation fails.
Solution:
Make sure ccw_device_set_offline() is invoked for all 3 devices in __qeth_set_offline even though some of them are failing.
The same logic applies to qeth_halt_channel() and qeth_clear_channel() invocations.
Problem-ID:
16811
Description:
s390dbf: Inconsistent output of debug areas. Wrong timestamps of debug entries.
Symptom:
Inconsistent output for debug areas, when reading debug views. Wrong output for microseconds section of timestamps.
Problem:
Missing lock for debug area when snapshot of debug area data is created. Used struct time_val instead of struct time_spec for output of timestamps.
Solution:
Add lock for debug area, when making snapshot of debug area. Use time_spec instead of time_val.
Problem-ID:
17349

Everybody should apply this patch.

To create the complete linux kernel sources, the following patches need to be applied in sequence:

linux-2.6.5.tar.gz (see www.kernel.org/pub/linux/kernel/v2.6)
+ linux-2.6.5-s390-base-april2004.diff (IBM)
+ linux-2.6.5-s390-01-april2004.diff (IBM)
+ xipfs612 (see linuxvm.org/patches/index.html)
+ xipfs622 (see linuxvm.org/patches/index.html)
+ linux-2.6.5-s390-02-april2004.diff (IBM)
+ linux-2.6.5-s390-03-april2004.diff (IBM)
+ single threaded workqueue patch (see marc.theaimsgroup.com/?l=bk-commits-head&m=108305028322900&q=raw)
+ linux-2.6.5-s390-04-april2004.diff (IBM)
+ linux-2.6.5-s390-05-april2004.diff (IBM)
+ linux-2.6.5-s390-06-april2004.diff (IBM)
+ linux-2.6.5-s390-07-april2004.diff (IBM)
+ linux-2.6.5-s390-08-april2004.diff (IBM)
+ linux-2.6.5-s390-09-april2004.diff (IBM)
+ linux-2.6.5-s390-10-april2004.diff (IBM)
+ linux-2.6.5-s390-11-april2004.diff (IBM)
+ linux-2.6.5-s390-12-april2004.diff (IBM)
+ linux-2.6.5-s390-13-april2004.diff (IBM)
+ linux-2.6.5-s390-14-april2004.diff (IBM)
+ linux-2.6.5-s390-15-april2004.diff (IBM)
+ linux-2.6.5-s390-16-april2004.diff (IBM)
+ linux-2.6.5-s390-17-april2004.diff (IBM)
+ linux-2.6.5-s390-18-april2004.diff (IBM)
+ linux-2.6.5-s390-19-april2004.diff (IBM)
+ linux-2.6.5-s390-20-april2004.diff (IBM)
+ linux-2.6.5-s390-21-april2004.diff (IBM)
+ linux-2.6.5-s390-22-april2004.diff (IBM)
+ linux-2.6.5-s390-23-april2004.diff (IBM)
+ linux-2.6.5-s390-24-april2004.diff (IBM)
+ linux-2.6.5-s390-25-april2004.diff (IBM)
+ linux-2.6.5-s390-26-april2004.diff (IBM)

Contact the IBM team

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