Patch "Revert "usb: hub: do not clear BOS field during reset device"" has been added to the 4.4-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    Revert "usb: hub: do not clear BOS field during reset device"

to the 4.4-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     revert-usb-hub-do-not-clear-bos-field-during-reset-device.patch
and it can be found in the queue-4.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.


>From e5bdfd50d6f76077bf8441d130c606229e100d40 Mon Sep 17 00:00:00 2001
From: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
Date: Sat, 20 Feb 2016 14:19:34 -0800
Subject: Revert "usb: hub: do not clear BOS field during reset device"

From: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

commit e5bdfd50d6f76077bf8441d130c606229e100d40 upstream.

This reverts commit d8f00cd685f5c8e0def8593e520a7fef12c22407.

Tony writes:

This upstream commit is causing an oops:
d8f00cd685f5 ("usb: hub: do not clear BOS field during reset device")

This patch has already been included in several -stable kernels.  Here
are the affected kernels:
4.5.0-rc4 (current git)
4.4.2
4.3.6 (currently in review)
4.1.18
3.18.27
3.14.61

How to reproduce the problem:
Boot kernel with slub debugging enabled (otherwise memory corruption
will cause random oopses later instead of immediately)
Plug in USB 3.0 disk to xhci USB 3.0 port
dd if=/dev/sdc of=/dev/null bs=65536
(where /dev/sdc is the USB 3.0 disk)
Unplug USB cable while dd is still going
Oops is immediate:

Reported-by: Tony Battersby <tonyb@xxxxxxxxxxxxxxx>
Cc: Du, Changbin <changbin.du@xxxxxxxxx>
Cc: Roger Quadros <rogerq@xxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
 drivers/usb/core/hub.c |    8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -5392,6 +5392,7 @@ static int usb_reset_and_verify_device(s
 	}
 
 	bos = udev->bos;
+	udev->bos = NULL;
 
 	for (i = 0; i < SET_CONFIG_TRIES; ++i) {
 
@@ -5484,11 +5485,8 @@ done:
 	usb_set_usb2_hardware_lpm(udev, 1);
 	usb_unlocked_enable_lpm(udev);
 	usb_enable_ltm(udev);
-	/* release the new BOS descriptor allocated  by hub_port_init() */
-	if (udev->bos != bos) {
-		usb_release_bos_descriptor(udev);
-		udev->bos = bos;
-	}
+	usb_release_bos_descriptor(udev);
+	udev->bos = bos;
 	return 0;
 
 re_enumerate:


Patches currently in stable-queue which might be from gregkh@xxxxxxxxxxxxxxxxxxx are

queue-4.4/drm-dp-move-hw_mutex-up-the-call-stack.patch
queue-4.4/net-vrf-remove-direct-access-to-skb-data.patch
queue-4.4/tcp-fix-tcpi_segs_in-after-connection-establishment.patch
queue-4.4/tun-bpf-fix-suspicious-rcu-usage-in-tun_-attach-detach-_filter.patch
queue-4.4/mpls-find_outdev-check-for-err-ptr-in-addition-to-null-check.patch
queue-4.4/ipv4-fix-broadcast-packets-reception.patch
queue-4.4/ipv4-only-create-late-gso-skb-if-skb-is-already-set-up-with-checksum_partial.patch
queue-4.4/alsa-hda-asus-n750jv-external-subwoofer-fixup.patch
queue-4.4/ppp-release-rtnl-mutex-when-interface-creation-fails.patch
queue-4.4/ext4-add-lockdep-annotations-for-i_data_sem.patch
queue-4.4/bridge-allow-zero-ageing-time.patch
queue-4.4/qlge-fix-receive-packets-drop.patch
queue-4.4/revert-pci-add-helpers-to-manage-pci_dev-irq-and-pci_dev-irq_managed.patch
queue-4.4/drm-radeon-add-a-dpm-quirk-for-all-r7-370-parts.patch
queue-4.4/mac80211-fix-unnecessary-frame-drops-in-mesh-fwding.patch
queue-4.4/sd-fix-excessive-capacity-printing-on-devices-with-blocks-bigger-than-512-bytes.patch
queue-4.4/iio-gyro-bmg160-fix-buffer-read-values.patch
queue-4.4/mac80211-avoid-excessive-stack-usage-in-sta_info.patch
queue-4.4/alsa-hda-fixup-speaker-pass-through-control-for-nid-0x14-on-alc225.patch
queue-4.4/alsa-hda-fix-headset-support-and-noise-on-hp-elitebook-755-g2.patch
queue-4.4/powerpc-mm-fixup-preempt-underflow-with-huge-pages.patch
queue-4.4/parisc-fix-kernel-crash-with-reversed-copy_from_user.patch
queue-4.4/perf-cure-event-pending_disable-race.patch
queue-4.4/v4l-vsp1-set-the-sru-ctrl0-register-when-starting-the-stream.patch
queue-4.4/ppp-take-reference-on-channels-netns.patch
queue-4.4/alsa-usb-audio-skip-volume-controls-triggers-hangup-on-dell-usb-dock.patch
queue-4.4/mac80211-fix-ibss-scan-parameters.patch
queue-4.4/rocker-set-fdb-cleanup-timer-according-to-lowest-ageing-time.patch
queue-4.4/bridge-allow-set-bridge-ageing-time-when-switchdev-disabled.patch
queue-4.4/parisc-unbreak-handling-exceptions-from-kernel-modules.patch
queue-4.4/usb-uas-limit-qdepth-at-the-scsi-host-level.patch
queue-4.4/usb-uas-add-a-new-no_report_luns-quirk.patch
queue-4.4/qmi_wwan-add-sierra-wireless-em74xx-device-id.patch
queue-4.4/pkcs-7-pkcs7_validate_trust-initialize-the-_trusted-output-argument.patch
queue-4.4/ax25-add-link-layer-header-validation-function.patch
queue-4.4/net-validate-variable-length-ll-headers.patch
queue-4.4/libnvdimm-pfn-fix-uuid-validation.patch
queue-4.4/xfrm-fix-crash-observed-during-device-unregistration-and-decryption.patch
queue-4.4/au0828-fix-au0828_v4l2_close-dev_state-race-condition.patch
queue-4.4/mips-fix-msa-ld-unaligned-failure-cases.patch
queue-4.4/tcp-dccp-remove-obsolete-warn_on-in-icmp-handlers.patch
queue-4.4/mmc-sdhci-pci-add-support-and-pci-ids-for-more-broxton-host-controllers.patch
queue-4.4/arm64-opcodes.h-add-arm-big-endian-config-options-before-including-arm-header.patch
queue-4.4/drm-radeon-add-a-dpm-quirk-for-sapphire-dual-x-r7-370-2g-d5.patch
queue-4.4/alsa-hda-fix-white-noise-on-asus-n750jv-headphone.patch
queue-4.4/ip6_tunnel-set-rtnl_link_ops-before-calling-register_netdevice.patch
queue-4.4/parisc-avoid-function-pointers-for-kernel-exception-routines.patch
queue-4.4/ppp-ensure-file-private_data-can-t-be-overridden.patch
queue-4.4/sh_eth-fix-null-pointer-dereference-in-sh_eth_ring_format.patch
queue-4.4/ext4-ignore-quota-mount-options-if-the-quota-feature-is-enabled.patch
queue-4.4/usb-renesas_usbhs-fix-to-avoid-using-a-disabled-ep-in-usbhsg_queue_done.patch
queue-4.4/ipv4-don-t-do-expensive-useless-work-during-inetdev-destroy.patch
queue-4.4/pinctrl-nomadik-fix-pull-debug-print-inversion.patch
queue-4.4/coda-fix-error-path-in-case-of-missing-pdata-on-non-dt-platform.patch
queue-4.4/packet-validate-variable-length-ll-headers.patch
queue-4.4/sh_eth-advance-rxdesc-later-in-sh_eth_ring_format.patch
queue-4.4/libnvdimm-fix-smart-data-retrieval.patch
queue-4.4/mlxsw-spectrum-check-requested-ageing-time-is-valid.patch
queue-4.4/alsa-hda-fix-front-mic-problem-for-a-hp-desktop.patch
queue-4.4/pinctrl-pistachio-fix-mfio84-89-function-description-and-pinmux.patch
queue-4.4/farsync-fix-off-by-one-bug-in-fst_add_one.patch
queue-4.4/macvtap-always-pass-ethernet-header-in-linear.patch
queue-4.4/qmi_wwan-add-d-link-dwm-221-b1-device-id.patch
queue-4.4/alsa-usb-audio-add-a-sample-rate-quirk-for-phoenix-audio-tmx320.patch
queue-4.4/nfs-use-file_dentry.patch
queue-4.4/ipv6-udp-fix-udp_mib_ignoredmulti-updates.patch
queue-4.4/perf-do-not-double-free.patch
queue-4.4/cdc-acm-fix-null-pointer-reference.patch
queue-4.4/ipv4-initialize-flowi4_flags-before-calling-fib_lookup.patch
queue-4.4/sctp-lack-the-check-for-ports-in-sctp_v6_cmp_addr.patch
queue-4.4/ipv6-count-in-extension-headers-in-skb-network_header.patch
queue-4.4/net-qca_spi-don-t-clear-iff_broadcast.patch
queue-4.4/iio-gyro-bmg160-fix-endianness-when-reading-axes.patch
queue-4.4/net-fix-use-after-free-in-the-recvmmsg-exit-path.patch
queue-4.4/xen-events-mask-a-moving-irq.patch
queue-4.4/usb-renesas_usbhs-avoid-null-pointer-derefernce-in-usbhsf_pkt_handler.patch
queue-4.4/mac80211-properly-deal-with-station-hashtable-insert-errors.patch
queue-4.4/pinctrl-sunxi-fix-a33-external-interrupts-not-working.patch
queue-4.4/pcmcia-db1xxx_ss-fix-last-irq_to_gpio-user.patch
queue-4.4/alsa-timer-use-mod_timer-for-rearming-the-system-timer.patch
queue-4.4/ipv4-l2tp-fix-a-potential-issue-in-l2tp_ip_recv.patch
queue-4.4/ath9k-fix-buffer-overrun-for-ar9287.patch
queue-4.4/vxlan-fix-missing-options_len-update-on-rx-with-collect-metadata.patch
queue-4.4/kvm-x86-inject-pending-interrupt-even-if-pending-nmi-exist.patch
queue-4.4/drm-radeon-add-another-r7-370-quirk.patch
queue-4.4/usb-renesas_usbhs-disable-tx-irq-before-starting-tx-dmac-transfer.patch
queue-4.4/staging-android-ion-set-the-length-of-the-dma-sg-entries-in-buffer.patch
queue-4.4/hid-wacom-fix-bamboo-one-oops.patch
queue-4.4/tuntap-restore-default-qdisc.patch
queue-4.4/usbvision-fix-overflow-of-interfaces-array.patch
queue-4.4/ipv6-l2tp-fix-a-potential-issue-in-l2tp_ip6_recv.patch
queue-4.4/usbnet-cleanup-after-bind-in-probe.patch
queue-4.4/au0828-fix-dev_state-handling.patch
queue-4.4/qlcnic-remove-unnecessary-usage-of-atomic_t.patch
queue-4.4/kvm-x86-reduce-default-value-of-halt_poll_ns-parameter.patch
queue-4.4/iommu-don-t-overwrite-domain-pointer-when-there-is-no-default_domain.patch
queue-4.4/drm-amdgpu-gmc-use-proper-register-for-vram-type-on-fiji.patch
queue-4.4/alsa-hda-apply-fix-for-white-noise-on-asus-n550jv-too.patch
queue-4.4/iio-st_magn-always-define-st_magn_trigger_set_state.patch
queue-4.4/net-jme-fix-suspend-resume-on-jmc260.patch
queue-4.4/rtnl-fix-msg-size-calculation-in-if_nlmsg_size.patch
queue-4.4/udp6-fix-udp-ipv6-encap-resubmit-path.patch
queue-4.4/btrfs-fix-crash-invalid-memory-access-on-fsync-when-using-overlayfs.patch
queue-4.4/pinctrl-freescale-imx-fix-bogus-check-of-of_iomap-return-value.patch
queue-4.4/usbvision-fix-crash-on-detecting-device-with-invalid-configuration.patch
queue-4.4/fs-add-file_dentry.patch
queue-4.4/bonding-fix-bond_get_stats.patch
queue-4.4/alsa-hda-realtek-enable-the-alc292-dock-fixup-on-the-thinkpad-t460s.patch
queue-4.4/compiler-gcc-disable-ftracer-for-__noclone-functions.patch
queue-4.4/alsa-usb-audio-add-a-quirk-for-plantronics-bt300.patch
queue-4.4/iio-accel-bmc150-fix-endianness-when-reading-axes.patch
queue-4.4/btrfs-fix-file-data-loss-caused-by-fsync-after-rename-and-new-inode.patch
queue-4.4/pinctrl-sh-pfc-only-use-dummy-states-for-non-dt-platforms.patch
queue-4.4/drm-amdgpu-gmc-move-vram-type-fetching-into-sw_init.patch
queue-4.4/ipv6-re-enable-fragment-header-matching-in-ipv6_find_hdr.patch
queue-4.4/bpf-avoid-copying-junk-bytes-in-bpf_get_current_comm.patch
queue-4.4/arm64-replace-read_lock-to-rcu-lock-in-call_step_hook.patch
queue-4.4/tunnel-clear-ipcb-skb-opt-before-dst_link_failure-called.patch
queue-4.4/net-bcmgenet-fix-dma-api-length-mismatch.patch
queue-4.4/hid-usbhid-fix-inconsistent-reset-resume-reset-resume-behavior.patch
queue-4.4/qlcnic-fix-mailbox-completion-handling-during-spurious-interrupt.patch
queue-4.4/hwmon-max1111-return-enodev-from-max1111_read_channel-if-not-instantiated.patch
queue-4.4/net-fix-bridge-multicast-packet-checksum-validation.patch
queue-4.4/revert-pci-x86-implement-pcibios_alloc_irq-and-pcibios_free_irq.patch
queue-4.4/cdc_ncm-toggle-altsetting-to-force-reset-before-setup.patch
queue-4.4/revert-x86-pci-don-t-alloc-pcibios-irq-when-msi-is-enabled.patch
queue-4.4/revert-usb-hub-do-not-clear-bos-field-during-reset-device.patch
queue-4.4/mld-igmp-fix-reserved-tailroom-calculation.patch
queue-4.4/mm-fix-invalid-node-in-alloc_migrate_target.patch
queue-4.4/tcp-convert-cached-rtt-from-usec-to-jiffies-when-feeding-initial-rto.patch
queue-4.4/tipc-revert-tipc-use-existing-sk_write_queue-for-outgoing-packet-chain.patch
queue-4.4/virtio-virtio-1.0-cs04-spec-compliance-for-reset.patch
queue-4.4/mlx4-add-missing-braces-in-verify_qp_parameters.patch
queue-4.4/mac80211-fix-txq-queue-related-crashes.patch
queue-4.4/rbd-use-gfp_noio-consistently-for-request-allocations.patch
queue-4.4/drm-udl-use-unlocked-gem-unreferencing.patch
queue-4.4/net-qca_spi-clear-iff_tx_skb_sharing.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]