Various storvsc bug fixes.

Bug #1347169 reported by vivek yadav
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
High
Andy Whitcroft
Utopic
Fix Released
High
Andy Whitcroft

Bug Description

Over last week we have made changes and fix bugs in storvsc , please include these patch set .

[PATCH V3 1/7] Drivers: scsi: storvsc: Change the limits to reflect the values
on the host In Hyper-V, each port/path/target maps to 1 scsi host adapter.
In reality, the path/target is not used (ie always set to 0) so our scsi host
adapter essentially has 1 bus with 1 target that contains up to 256 luns.

http://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=01a1fc6a17a33edc6b43aca255b31f51497e2414

[PATCH V3 2/7] Drivers: scsi: storvsc: Set cmd_per_lun to reflect value
supported by the Host Set cmd_per_lun to reflect value supported by the
Host.

http://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=4a1e22529bda70eacde631bf4611b61b7aac9ae6

[PATCH V3 3/7] Drivers: scsi: storvsc: Filter commands based on the storage
protocol version
Going forward it is possible that some of the commands that are not currently
implemented will be implemented on future Windows hosts. Even if they are not
implemented, we are told the host will corrrectly handle unsupported
commands (by returning appropriate return code and sense information).
Make command filtering depend on the host version.

http://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=5aacedc1953dcaa1434a179147861319c919503e

[PATCH V3 4/7] Drivers: scsi: storvsc: Fix a bug in handling VMBUS protocol
version
Based on the negotiated VMBUS protocol version, we adjust the size of the
storage protocol messages. The two sizes we currently handle are pre-win8 and
post-win8. In WS2012 R2, we are negotiating higher VMBUS protocol version than
the win8 version. Make adjustments to correctly handle this.

http://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=0d0da066835a1194f3a6c425054db90b089e74ea

[PATCH 5/7] Drivers: scsi: storvsc: Implement a timedout handler
    On Azure, we have seen instances of unbounded I/O latencies. To deal with
this issue, implement handler that can reset the timeout. Note that the
host gaurantees that it will respond to each command that has been issued.

http://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=ec5dafb2361fb393e12745bda837707be2041436

[PATCH 6/7] drivers: scsi: storvsc: Set srb_flags in all cases
Correctly set SRB flags for all valid I/O directions. Some IHV drivers on the
Windows host require this. The host validates the command and SRB flags
prior to passing the command down to native driver stack.

http://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=20e9f28dd87e62d10f2c434396c734da43329c57

[PATCH 7/7] drivers: scsi: storvsc: Correctly handle TEST_UNIT_READY failure
On some Windows hosts on FC SANs, TEST_UNIT_READY can return SRB_STATUS_ERROR.
Correctly handle this. Note that there is sufficient sense information to
support scsi error handling even in this case.

http://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=27ac92916691eab6c9ca74db19a4b13084d5c78d

Thanks,
Abhishek

Revision history for this message
Brad Figg (brad-figg) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. From a terminal window please run:

apport-collect 1347169

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

I looked through a couple of the commits and they all seem upstream and cc'd to stable as well. Are there any of the commits that you list in the bug not upstream and/or not been accepted into upstream stable?

Changed in linux (Ubuntu):
importance: Undecided → Medium
tags: added: kernel-da-key kernel-hyper-v
Changed in linux (Ubuntu):
status: Incomplete → Triaged
Changed in linux (Ubuntu):
importance: Medium → High
Revision history for this message
vivek yadav (vyadav) wrote :

Hi Joseph, They are all upsteam and accepted .

Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

Thanks, Vivek. That is good news. These commits will all be picked up into Ubuntu through usual update process. Is there a need to have the commits in before the usual update process?

Revision history for this message
Andy Whitcroft (apw) wrote :

As yet none of these has hit linus' mainline tree.

Revision history for this message
Andy Whitcroft (apw) wrote :

Bah, and this demonstrates why linux-next sha1s are a problem, they are now in mainline with different shas:

  commit 4cd83ecdac20d30725b4f96e5d7814a1e290bc7e
  Author: K. Y. Srinivasan <email address hidden>
  Date: Sat Jul 12 09:48:26 2014 -0700

    Drivers: scsi: storvsc: Change the limits to reflect the values on the host
  v3.17-rc1~8^2~27

  commit 52f9614dd8294e95d2c0929c2d4f64b077ae486f
  Author: K. Y. Srinivasan <email address hidden>
  Date: Sat Jul 12 09:48:27 2014 -0700

    Drivers: scsi: storvsc: Set cmd_per_lun to reflect value supported by the Host
  v3.17-rc1~8^2~26

  commit 8caf92d80526f3d7cc96831ec18b384ebcaccdf0
  Author: K. Y. Srinivasan <email address hidden>
  Date: Sat Jul 12 09:48:28 2014 -0700

    Drivers: scsi: storvsc: Filter commands based on the storage protocol version
  v3.17-rc1~8^2~25

  commit adb6f9e1a8c6af1037232b59edb11277471537ea
  Author: K. Y. Srinivasan <email address hidden>
  Date: Sat Jul 12 09:48:29 2014 -0700

    Drivers: scsi: storvsc: Fix a bug in handling VMBUS protocol version
  v3.17-rc1~8^2~24

  commit 56b26e69c8283121febedd12b3cc193384af46b9
  Author: K. Y. Srinivasan <email address hidden>
  Date: Sat Jul 12 09:48:30 2014 -0700

    Drivers: scsi: storvsc: Implement a eh_timed_out handler
  v3.17-rc1~8^2~23

  commit f885fb73f64154690c2158e813de56363389ffec
  Author: K. Y. Srinivasan <email address hidden>
  Date: Sat Jul 12 09:48:31 2014 -0700

    drivers: scsi: storvsc: Set srb_flags in all cases
  v3.17-rc1~8^2~22

  commit 3533f8603d28b77c62d75ec899449a99bc6b77a1
  Author: K. Y. Srinivasan <email address hidden>
  Date: Sat Jul 12 09:48:32 2014 -0700

    drivers: scsi: storvsc: Correctly handle TEST_UNIT_READY failure
  v3.17-rc1~8^2~21

Tim Gardner (timg-tpi)
Changed in linux (Ubuntu Utopic):
assignee: nobody → Andy Whitcroft (apw)
status: Triaged → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (3.3 KiB)

This bug was fixed in the package linux - 3.16.0-11.16

---------------
linux (3.16.0-11.16) utopic; urgency=low

  [ Mauricio Faria de Oliveira ]

  * [Config] Switch kernel to vmlinuz (from vmlinux) on ppc64el
    - LP: #1358920

  [ Peter Zijlstra ]

  * SAUCE: (no-up) mmu_notifier: add call_srcu and sync function for listener to delay call and sync
    - LP: #1361300

  [ Tim Gardner ]

  * [Config] CONFIG_ZPOOL=y
    - LP: #1360428
  * Release Tracking Bug
    - LP: #1361308

  [ Upstream Kernel Changes ]

  * Revert "net/mlx4_en: Fix bad use of dev_id"
    - LP: #1347012
  * net/mlx4_en: Reduce memory consumption on kdump kernel
    - LP: #1347012
  * net/mlx4_en: Fix mac_hash database inconsistency
    - LP: #1347012
  * net/mlx4_en: Disable blueflame using ethtool private flags
    - LP: #1347012
  * net/mlx4_en: current_mac isn't updated in port up
    - LP: #1347012
  * net/mlx4_core: Use low memory profile on kdump kernel
    - LP: #1347012
  * Drivers: scsi: storvsc: Change the limits to reflect the values on the host
    - LP: #1347169
  * Drivers: scsi: storvsc: Set cmd_per_lun to reflect value supported by the Host
    - LP: #1347169
  * Drivers: scsi: storvsc: Filter commands based on the storage protocol version
    - LP: #1347169
  * Drivers: scsi: storvsc: Fix a bug in handling VMBUS protocol version
    - LP: #1347169
  * Drivers: scsi: storvsc: Implement a eh_timed_out handler
    - LP: #1347169
  * drivers: scsi: storvsc: Set srb_flags in all cases
    - LP: #1347169
  * drivers: scsi: storvsc: Correctly handle TEST_UNIT_READY failure
    - LP: #1347169
  * namespaces: Use task_lock and not rcu to protect nsproxy
    - LP: #1328088
  * net: xgene: Check negative return value of xgene_enet_get_ring_size()
  * mm/zbud: change zbud_alloc size type to size_t
    - LP: #1360428
  * mm/zpool: implement common zpool api to zbud/zsmalloc
    - LP: #1360428
  * mm/zpool: zbud/zsmalloc implement zpool
    - LP: #1360428
  * mm/zpool: update zswap to use zpool
    - LP: #1360428
  * ideapad-laptop: Change Lenovo Yoga 2 series rfkill handling
    - LP: #1341296
  * iommu/amd: Fix for pasid initialization
    - LP: #1361300
  * iommu/amd: Moving PPR fault flags macros definitions
    - LP: #1361300
  * iommu/amd: Drop oprofile dependency
    - LP: #1361300
  * iommu/amd: Fix typo in amd_iommu_v2 driver
    - LP: #1361300
  * iommu/amd: Don't call mmu_notifer_unregister in __unbind_pasid
    - LP: #1361300
  * iommu/amd: Don't free pasid_state in mn_release path
    - LP: #1361300
  * iommu/amd: Get rid of __unbind_pasid
    - LP: #1361300
  * iommu/amd: Drop pasid_state reference in ppr_notifer error path
    - LP: #1361300
  * iommu/amd: Add pasid_state->invalid flag
    - LP: #1361300
  * iommu/amd: Don't hold a reference to mm_struct
    - LP: #1361300
  * iommu/amd: Don't hold a reference to task_struct
    - LP: #1361300
  * iommu/amd: Don't call the inv_ctx_cb when pasid is not set up
    - LP: #1361300
  * iommu/amd: Don't set pasid_state->mm to NULL in unbind_pasid
    - LP: #1361300
  * iommu/amd: Remove change_pte mmu_notifier call-back
    - LP: #1361300
  * iommu/amd: Fix device_state reference counting
    - LP: #1361300...

Read more...

Changed in linux (Ubuntu Utopic):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.