<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/s390, branch v2.6.28</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>[SCSI] zfcp: prevent double decrement on host_busy while being busy</title>
<updated>2008-12-01T16:18:20+00:00</updated>
<author>
<name>Swen Schillig</name>
<email>swen@vnet.ibm.com</email>
</author>
<published>2008-11-27T10:44:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=f7a65e92e4bef3ccf9e008ed8cd52d914b6a4adb'/>
<id>f7a65e92e4bef3ccf9e008ed8cd52d914b6a4adb</id>
<content type='text'>
The zfcp_scsi_queuecommand was not acting according to the standard
when the respective unit was not available. In this case an -EBUSY was
returned, which is not valid in itself, and in addition scsi_done
was called. This combination is not allowed and was leading to a
double finish of the request and therefor double decrement of the
host_busy counter.

Signed-off-by: Swen Schillig &lt;swen@vnet.ibm.com&gt;
Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The zfcp_scsi_queuecommand was not acting according to the standard
when the respective unit was not available. In this case an -EBUSY was
returned, which is not valid in itself, and in addition scsi_done
was called. This combination is not allowed and was leading to a
double finish of the request and therefor double decrement of the
host_busy counter.

Signed-off-by: Swen Schillig &lt;swen@vnet.ibm.com&gt;
Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] zfcp: fix deadlock between wq triggered port scan and ERP</title>
<updated>2008-12-01T16:18:04+00:00</updated>
<author>
<name>Swen Schillig</name>
<email>swen@vnet.ibm.com</email>
</author>
<published>2008-11-26T17:07:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=fca55b6fb587e42c7761ee30bd1a6c313a9270c9'/>
<id>fca55b6fb587e42c7761ee30bd1a6c313a9270c9</id>
<content type='text'>
Waiting for the ERP to be finished in a task running in the global
kernel work-queue is a bad idea, especially if the ERP needs to run
another job in this work-queue before it can finish. -&gt; deadlock.

This patch removes the necessity to wait for a finished ERP from the
scan task and moves the job scheduling to the end of the ERP.

Signed-off-by: Swen Schillig &lt;swen@vnet.ibm.com&gt;
Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Waiting for the ERP to be finished in a task running in the global
kernel work-queue is a bad idea, especially if the ERP needs to run
another job in this work-queue before it can finish. -&gt; deadlock.

This patch removes the necessity to wait for a finished ERP from the
scan task and moves the job scheduling to the end of the ERP.

Signed-off-by: Swen Schillig &lt;swen@vnet.ibm.com&gt;
Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] zfcp: eliminate race between validation and locking</title>
<updated>2008-12-01T16:17:50+00:00</updated>
<author>
<name>Swen Schillig</name>
<email>swen@vnet.ibm.com</email>
</author>
<published>2008-11-26T17:07:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0ac55aa90f2c3bd08e57e52a513b82b18ce0a5bc'/>
<id>0ac55aa90f2c3bd08e57e52a513b82b18ce0a5bc</id>
<content type='text'>
The check of having a valid pointer was performed before the
processing was secured by the lock. Between those two steps the
pointer can turn invalid.  During further processing another value is
used (referenced by the pointer described above) as a function pointer
which is never verified to be valid either, resulting under some
circumstances in an invalid function call.  This patch is fixing both
issues.

Signed-off-by: Swen Schillig &lt;swen@vnet.ibm.com&gt;
Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The check of having a valid pointer was performed before the
processing was secured by the lock. Between those two steps the
pointer can turn invalid.  During further processing another value is
used (referenced by the pointer described above) as a function pointer
which is never verified to be valid either, resulting under some
circumstances in an invalid function call.  This patch is fixing both
issues.

Signed-off-by: Swen Schillig &lt;swen@vnet.ibm.com&gt;
Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] zfcp: verify for correct rport state before scanning for SCSI devs</title>
<updated>2008-12-01T16:17:34+00:00</updated>
<author>
<name>Swen Schillig</name>
<email>swen@vnet.ibm.com</email>
</author>
<published>2008-11-26T17:07:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=26871c97d52e50dc574bd01967926650643b142a'/>
<id>26871c97d52e50dc574bd01967926650643b142a</id>
<content type='text'>
Prevent a SCSI target scan for a rport which have turned invalid
in the meantime.

Signed-off-by: Swen Schillig &lt;swen@vnet.ibm.com&gt;
Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Prevent a SCSI target scan for a rport which have turned invalid
in the meantime.

Signed-off-by: Swen Schillig &lt;swen@vnet.ibm.com&gt;
Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] zfcp: returning an ERR_PTR where a NULL value is expected</title>
<updated>2008-12-01T16:17:14+00:00</updated>
<author>
<name>Swen Schillig</name>
<email>swen@vnet.ibm.com</email>
</author>
<published>2008-11-26T17:07:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=633528c304f20b5c2e3e04d48f620548ce08b12e'/>
<id>633528c304f20b5c2e3e04d48f620548ce08b12e</id>
<content type='text'>
Aborting a SCSI cmnd might requrie to send a abort_fsf_cmnd. If the
creation of this fsf_req fails an ERR_PTR is returned where a NULL
value would be expected as an error indicator. This ERR_PTR is
dereferenced as valid fsf_req in succeeding processing leading to
an error.

Signed-off-by: Swen Schillig &lt;swen@vnet.ibm.com&gt;
Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Aborting a SCSI cmnd might requrie to send a abort_fsf_cmnd. If the
creation of this fsf_req fails an ERR_PTR is returned where a NULL
value would be expected as an error indicator. This ERR_PTR is
dereferenced as valid fsf_req in succeeding processing leading to
an error.

Signed-off-by: Swen Schillig &lt;swen@vnet.ibm.com&gt;
Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] zfcp: Fix opening of wka ports</title>
<updated>2008-12-01T16:16:59+00:00</updated>
<author>
<name>Christof Schmitt</name>
<email>christof.schmitt@de.ibm.com</email>
</author>
<published>2008-11-26T17:07:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1c1cba17a9078c83a80a099bc207b208d664a13a'/>
<id>1c1cba17a9078c83a80a099bc207b208d664a13a</id>
<content type='text'>
Running two wka_port_get calls in parallel could issue two open_port
requests, overwriting the port handle. Don't issue an open_port
for the state PORT_OPENING, and only read the data from GOOD
responses.

Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Acked-by: Swen Schillig &lt;swen@vnet.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Running two wka_port_get calls in parallel could issue two open_port
requests, overwriting the port handle. Don't issue an open_port
for the state PORT_OPENING, and only read the data from GOOD
responses.

Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Acked-by: Swen Schillig &lt;swen@vnet.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] zfcp: fix remote port status check</title>
<updated>2008-12-01T16:16:44+00:00</updated>
<author>
<name>Martin Petermann</name>
<email>martin@linux.vnet.ibm.com</email>
</author>
<published>2008-11-26T17:07:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=bce02614cd1b3d669af1195695e503e818b60fae'/>
<id>bce02614cd1b3d669af1195695e503e818b60fae</id>
<content type='text'>
For an incoming RSCN it was checked by the ZFCP_STATUS_PORT_DID_DID
define to re-open a remote port or to test the connection. Since this
define was re-used it was also necessary to replace that define with
ZFCP_STATUS_PORT_PHYS_OPEN.

Signed-off-by: Martin Petermann &lt;martin@linux.vnet.ibm.com&gt;
Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For an incoming RSCN it was checked by the ZFCP_STATUS_PORT_DID_DID
define to re-open a remote port or to test the connection. Since this
define was re-used it was also necessary to replace that define with
ZFCP_STATUS_PORT_PHYS_OPEN.

Signed-off-by: Martin Petermann &lt;martin@linux.vnet.ibm.com&gt;
Signed-off-by: Christof Schmitt &lt;christof.schmitt@de.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6</title>
<updated>2008-11-15T19:38:02+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2008-11-15T19:38:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=011331483da8842bc4ab6f2b4e88df60b25eb817'/>
<id>011331483da8842bc4ab6f2b4e88df60b25eb817</id>
<content type='text'>
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
  [S390] fix s390x_newuname
  [S390] dasd: log sense for fatal errors
  [S390] cpu topology: fix locking
  [S390] cio: Fix refcount after moving devices.
  [S390] ftrace: fix kernel stack backchain walking
  [S390] ftrace: disable tracing on idle psw
  [S390] lockdep: fix compile bug
  [S390] kvm_s390: Fix oops in virtio device detection with "mem="
  [S390] sclp: emit error message if assign storage fails
  [S390] Fix range for add_active_range() in setup_memory()
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
  [S390] fix s390x_newuname
  [S390] dasd: log sense for fatal errors
  [S390] cpu topology: fix locking
  [S390] cio: Fix refcount after moving devices.
  [S390] ftrace: fix kernel stack backchain walking
  [S390] ftrace: disable tracing on idle psw
  [S390] lockdep: fix compile bug
  [S390] kvm_s390: Fix oops in virtio device detection with "mem="
  [S390] sclp: emit error message if assign storage fails
  [S390] Fix range for add_active_range() in setup_memory()
</pre>
</div>
</content>
</entry>
<entry>
<title>[S390] dasd: log sense for fatal errors</title>
<updated>2008-11-14T17:18:54+00:00</updated>
<author>
<name>Stefan Haberland</name>
<email>stefan.haberland@de.ibm.com</email>
</author>
<published>2008-11-14T17:18:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=a9cffb227d59db526286cc9f84bf258e68a97470'/>
<id>a9cffb227d59db526286cc9f84bf258e68a97470</id>
<content type='text'>
The logging of sense data for fatal errors was accidentally removed
during Hyper PAV implementation.

Signed-off-by: Stefan Haberland &lt;stefan.haberland@de.ibm.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The logging of sense data for fatal errors was accidentally removed
during Hyper PAV implementation.

Signed-off-by: Stefan Haberland &lt;stefan.haberland@de.ibm.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[S390] cio: Fix refcount after moving devices.</title>
<updated>2008-11-14T17:18:54+00:00</updated>
<author>
<name>Cornelia Huck</name>
<email>cornelia.huck@de.ibm.com</email>
</author>
<published>2008-11-14T17:18:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=85acc407bf1c49fb40b8f461c2c7526af736d87e'/>
<id>85acc407bf1c49fb40b8f461c2c7526af736d87e</id>
<content type='text'>
In ccw_device_move_to_orphanage(), a replacing ccw_device
is searched via get_{disc,orphaned}_ccwdev_by_dev_id()
which obtain a reference on the returned ccw_device.
This reference must be given up again after the device
has been moved to its new parent.

Signed-off-by: Cornelia Huck &lt;cornelia.huck@de.ibm.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In ccw_device_move_to_orphanage(), a replacing ccw_device
is searched via get_{disc,orphaned}_ccwdev_by_dev_id()
which obtain a reference on the returned ccw_device.
This reference must be given up again after the device
has been moved to its new parent.

Signed-off-by: Cornelia Huck &lt;cornelia.huck@de.ibm.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
