 |

Kernel 2.6 based: April 2004 stream
|
 |
|
 |
|
jump to next patch
jump
to xref jump to Download
Area
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-12-april2004.tar.gz
/ MD5 ... accumulated patch, recommended (2005-01-24)
linux-2.6.5-s390-12-april2004-patches.tar.gz
/ MD5 ... per-problem-patches, recommended (2005-01-24)
These patches contain the following linux kernel bug fixes:
| Description: |
cio: Various problems in machine check handling. |
| Symptom: |
kslowcrw oops-es, subchannels and ccw devices do not reflect the
current state of the machine, machine hangs after logical vary
off/on. |
| Problem: |
Double unregister of devices or live locks on the bus semaphores
could be triggered. Check whether a device had a sibling in the
tree was incorrect. Some information in subchannels was not
updated. |
| Solution: |
Rework machine check handling for devices: Do not de-register ccw
devices directly from the subchannel's remove function but delay
it. Subsequently, use bitops to prevent de-register of not yet
registered ccw devices. Delete pending times after a machine check.
Update ssd_info after de- and re-registering a device. Fix detection
if another device needs to be de-registered when de- and
re-registering.
Fix some timing issues uncovered by the above changes. |
| Problem-ID: |
12853 |
| Description: |
dasd: Possible memory access violation in low memory situations. |
| Symptom: |
When using any of the release device, reserve device,
unconditional reserve, or performance statistics IOCTLs in a low
memory situation, memory access violations may occur. |
| Problem: |
Incorrect return code checking when calling a memory allocation
function within these IOCTLs. Instead of aborting, an error
pointer is referenced and used as buffer. |
| Solution: |
Correct return code checking. |
| Problem-ID: |
12833 |
| Description: |
dasd: Unexpected behavior when using DASD DIAG access. |
| Symptom: |
Accessing non-ECKD DASD devices via DIAG will fail for device
formats with a block size other than 512 bytes.
Also, after modifying the use_diag and ro sysfs-attributes of a
DASD device which was not set online, reading these attributes
will not return the modified value but default values. |
| Problem: |
The format analysis routine expects a DIAG block read request to
fail if expected and formatted block sizes do not match. This is
not true for non-ECKD DASD devices.
Also, the method to access the values for use_diag and ro
incorrectly rely on data which is only present after a device is
set online. |
| Solution: |
The format analysis routine expects a DIAG block read request to
fail if expected and formatted block sizes do not match. This is
not true for non-ECKD DASD devices.
Also, the method to access the values for use_diag and ro
incorrectly rely on data which is only present after a device is
set online. |
| Problem-ID: |
12835 |
| Description: |
kernel: Race condition between no-HZ-timer and RCU. |
| Symptom: |
System may stop during boot. |
| Problem: |
Race condition for a CPU that has RCU pending and goes idle. |
| Solution: |
Do not let the CPU go idle if RCU is pending for this CPU. |
| Problem-ID: |
12972 |
| Description: |
qeth: Possible kernel BUG when displaying add4/6 sysfs attributes. |
| Symptom: |
When displaying the ipa_takeover, vipa, or rxip add4/add6 sysfs
attributes, a kernel BUG is triggered when a large number of
ipa_takeover, vipa, or proxy ARP entries are registered. |
| Problem: |
sysfs attributes may only display a buffer not larger than
PAGE_SIZE. |
| Solution: |
Check size of output buffer. Do not display more than PAGE_SIZE
bytes. |
| Problem-ID: |
12764 |
| Description: |
qeth: Check if AIF is available on hardware. |
| Symptom: |
Activation of HiperSocket queues failed with rc=-5. |
| Problem: |
Enabling of the AIF time delay disablement facility does
fail if AIF is not supporterd on hardware (e.g. on z900). |
| Solution: |
Check if AIF is available on hardware. |
| Problem-ID: |
13256 |
| Description: |
tape: Discipline removal possible while tapes are online. |
| Symptom: |
A discipline module can be removed while there are still devices
online. |
| Problem: |
Module count is not incremented/decremented correctly. |
| Solution: |
Increment usage count when a device is set online and decrement
the usage count when the device is set offline. |
| Problem-ID: |
12856 |
| Description: |
xip2fs: Memory leak on unmount. |
| Symptom: |
Slab cache (size 32 on 64bit) grows when doing lots of mount and
umount combinations. |
| Problem: |
Percpu_counter initialized in fill_super, but not destroyed in
put_super. |
| Solution: |
Destroy percpu_counter in put_super. |
| Problem-ID: |
13020 |
| Description: |
zfcp: Data Miscompares with FCP attached FAStT and cable pull. |
| Symptom: |
BLAST reported "File ID Miscompare" during test runs. |
| Problem: |
During cable pull data underruns occurred for SCSI commands.
The data underruns were not correctly reported to the SCSI stack.
So the SCSI stack handled those commands as completed succesfully. |
| Solution: |
Set DID_ERROR as result for SCSI commands with data underrun and
correctly set resid field for such commands. |
| Problem-ID: |
10999 |
| Description: |
zfcp: Several race conditions in zfcp. |
| Symptom: |
Possible kernel Oops when:
(1) Setting an adapter online and offline while units are attached,
(2) Rebooting Linux after an adapter was set offline,
(3) Port is removed while an ADISC command is pending. |
| Problem: |
(1) Registration of devices at SCSI stack is asynchronous.
(2) When debug feature is deregistered for an adapter some
dbf-pointers are not cleared which are still used during
reboot.
(3) Missing reference counting in link-test-procedure. |
| Solution: |
(1) Make registration of devices with SCSI stack synchronous.
(2) Clear pointers after debug feature is deregistered for an
adapter.
(3) Increment reference count for ports during link-test-procedure. |
| Problem-ID: |
13265 |
| Description: |
zfcp: z/VM-Guest hang-up on cable pull. |
| Symptom: |
z/VM-Guest hang-up. (unable to login, no I/O, no answers to ping). |
| Problem: |
Function del_timer_sync was called in interrupt context. This
caused an endless loop in del_timer_sync. |
| Solution: |
Use del_timer instead of del_timer_sync when running in interrupt
context. |
| Problem-ID: |
12858 |
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)
|
|
 |
|
 |