This is the start of the stable review cycle for the 4.14.162 release.
There are 91 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.
Responses should be made by Sat, 04 Jan 2020 22:01:54 +0000.
Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.14.162-r…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.14.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Linux 4.14.162-rc1
Taehee Yoo <ap420073(a)gmail.com>
gtp: avoid zero size hashtable
Taehee Yoo <ap420073(a)gmail.com>
gtp: fix an use-after-free in ipv4_pdp_find()
Taehee Yoo <ap420073(a)gmail.com>
gtp: fix wrong condition in gtp_genl_dump_pdp()
Eric Dumazet <edumazet(a)google.com>
tcp: do not send empty skb from tcp_write_xmit()
Eric Dumazet <edumazet(a)google.com>
tcp/dccp: fix possible race __inet_lookup_established()
Taehee Yoo <ap420073(a)gmail.com>
gtp: do not allow adding duplicate tid and ms_addr pdp context
Hangbin Liu <liuhangbin(a)gmail.com>
sit: do not confirm neighbor when do pmtu update
Hangbin Liu <liuhangbin(a)gmail.com>
vti: do not confirm neighbor when do pmtu update
Hangbin Liu <liuhangbin(a)gmail.com>
tunnel: do not confirm neighbor when do pmtu update
Hangbin Liu <liuhangbin(a)gmail.com>
net/dst: add new function skb_dst_update_pmtu_no_confirm
Hangbin Liu <liuhangbin(a)gmail.com>
gtp: do not confirm neighbor when do pmtu update
Hangbin Liu <liuhangbin(a)gmail.com>
ip6_gre: do not confirm neighbor when do pmtu update
Hangbin Liu <liuhangbin(a)gmail.com>
net: add bool confirm_neigh parameter for dst_ops.update_pmtu
Stefano Garzarella <sgarzare(a)redhat.com>
vhost/vsock: accept only packets with the right dst_cid
Antonio Messina <amessina(a)google.com>
udp: fix integer overflow while computing available space in sk_rcvbuf
Vladis Dronov <vdronov(a)redhat.com>
ptp: fix the race between the release of ptp_clock and cdev
Vladyslav Tarasiuk <vladyslavt(a)mellanox.com>
net/mlxfw: Fix out-of-memory error in mfa2 flash burning
Netanel Belgazal <netanel(a)amazon.com>
net: ena: fix napi handler misbehavior when the napi budget is zero
Hans de Goede <hdegoede(a)redhat.com>
pinctrl: baytrail: Really serialize all register accesses
David Engraf <david.engraf(a)sysgo.com>
tty/serial: atmel: fix out of range clock divider handling
Christophe Leroy <christophe.leroy(a)c-s.fr>
spi: fsl: don't map irq during probe
Eric Dumazet <edumazet(a)google.com>
hrtimer: Annotate lockless access to timer->state
Eric Dumazet <edumazet(a)google.com>
net: icmp: fix data-race in cmp_global_allow()
Eric Dumazet <edumazet(a)google.com>
net: add a READ_ONCE() in skb_peek_tail()
Eric Dumazet <edumazet(a)google.com>
inetpeer: fix data-race in inet_putpeer / inet_putpeer
Eric Dumazet <edumazet(a)google.com>
netfilter: bridge: make sure to pull arp header in br_nf_forward_arp()
Eric Dumazet <edumazet(a)google.com>
6pack,mkiss: fix possible deadlock
Florian Westphal <fw(a)strlen.de>
netfilter: ebtables: compat: reject all padding in matches/watchers
Logan Gunthorpe <logang(a)deltatee.com>
PCI/switchtec: Read all 64 bits of part_event_bitmap
Linus Torvalds <torvalds(a)linux-foundation.org>
filldir[64]: remove WARN_ON_ONCE() for bad directory entries
Linus Torvalds <torvalds(a)linux-foundation.org>
Make filldir[64]() verify the directory entry filename is valid
Mattias Jacobsson <2pi(a)mok.nu>
perf strbuf: Remove redundant va_end() in strbuf_addv()
Mahesh Bandewar <maheshb(a)google.com>
bonding: fix active-backup transition after link failure
Takashi Iwai <tiwai(a)suse.de>
ALSA: hda - Downgrade error message for single-cmd fallback
Marco Oliverio <marco.oliverio(a)tanaza.com>
netfilter: nf_queue: enqueue skbs with NULL dst
Alexander Lobakin <alobakin(a)dlink.ru>
net, sysctl: Fix compiler warning when only cBPF is present
Jan H. Schönherr <jschoenh(a)amazon.de>
x86/mce: Fix possibly incorrect severity calculation on AMD
Mike Rapoport <rppt(a)linux.ibm.com>
userfaultfd: require CAP_SYS_PTRACE for UFFD_FEATURE_EVENT_FORK
Johannes Weiner <hannes(a)cmpxchg.org>
kernel: sysctl: make drop_caches write-only
Ding Xiang <dingxiang(a)cmss.chinamobile.com>
ocfs2: fix passing zero to 'PTR_ERR' warning
Thomas Richter <tmricht(a)linux.ibm.com>
s390/cpum_sf: Check for SDBT and SDB consistency
Masahiro Yamada <yamada.masahiro(a)socionext.com>
libfdt: define INT32_MAX and UINT32_MAX in libfdt_env.h
Harald Freudenberger <freude(a)linux.ibm.com>
s390/zcrypt: handle new reply code FILTERED_BY_HYPERVISOR
Arnaldo Carvalho de Melo <acme(a)redhat.com>
perf regs: Make perf_reg_name() return "unknown" instead of NULL
Adrian Hunter <adrian.hunter(a)intel.com>
perf script: Fix brstackinsn for AUXTRACE
Diego Elio Pettenò <flameeyes(a)flameeyes.com>
cdrom: respect device capabilities during opening action
Chengguang Xu <cgxu519(a)mykernel.net>
f2fs: choose hardlimit when softlimit is larger than hardlimit in f2fs_statfs_project()
Masahiro Yamada <yamada.masahiro(a)socionext.com>
scripts/kallsyms: fix definitely-lost memory leak
Colin Ian King <colin.king(a)canonical.com>
apparmor: fix unsigned len comparison with less than zero
Vladimir Oltean <vladimir.oltean(a)nxp.com>
gpio: mpc8xxx: Don't overwrite default irq_set_type callback
Bart Van Assche <bvanassche(a)acm.org>
scsi: target: iscsi: Wait for all commands to finish before freeing a session
Anatol Pomazau <anatol(a)google.com>
scsi: iscsi: Don't send data to unbound connection
Finn Thain <fthain(a)telegraphics.com.au>
scsi: NCR5380: Add disconnect_mask module parameter
Maurizio Lombardi <mlombard(a)redhat.com>
scsi: scsi_debug: num_tgts must be >= 0
Subhash Jadavani <subhashj(a)codeaurora.org>
scsi: ufs: Fix error handing during hibern8 enter
peter chang <dpf(a)google.com>
scsi: pm80xx: Fix for SATA device discovery
Blaž Hrastnik <blaz(a)mxxn.io>
HID: Improve Windows Precision Touchpad detection.
Qian Cai <cai(a)lca.pw>
libnvdimm/btt: fix variable 'rc' set but not used
Hans de Goede <hdegoede(a)redhat.com>
HID: logitech-hidpp: Silence intermittent get_battery_capacity errors
Coly Li <colyli(a)suse.de>
bcache: at least try to shrink 1 node in bch_mca_scan()
Robert Jarzmik <robert.jarzmik(a)free.fr>
clk: pxa: fix one of the pxa RTC clocks
Finn Thain <fthain(a)telegraphics.com.au>
scsi: atari_scsi: sun3_scsi: Set sg_tablesize to 1 instead of SG_NONE
Gustavo L. F. Walbon <gwalbon(a)linux.ibm.com>
powerpc/security: Fix wrong message when RFI Flush is disable
David Hildenbrand <david(a)redhat.com>
powerpc/pseries/cmm: Implement release() function for sysfs device
Bean Huo <beanhuo(a)micron.com>
scsi: ufs: fix potential bug which ends in system hang
James Smart <jsmart2021(a)gmail.com>
scsi: lpfc: fix: Coverity: lpfc_cmpl_els_rsp(): Null pointer dereferences
Konstantin Khlebnikov <khlebnikov(a)yandex-team.ru>
fs/quota: handle overflows of sysctl fs.quota.* and report as unsigned long
Lee Jones <lee.jones(a)linaro.org>
mfd: mfd-core: Honour Device Tree's request to disable a child-device
Paul Cercueil <paul(a)crapouillou.net>
irqchip: ingenic: Error out if IRQ domain creation failed
Florian Fainelli <f.fainelli(a)gmail.com>
irqchip/irq-bcm7038-l1: Enable parent IRQ if necessary
Jeffrey Hugo <jeffrey.l.hugo(a)gmail.com>
clk: qcom: Allow constant ratio freq tables for rcg
Chao Yu <yuchao0(a)huawei.com>
f2fs: fix to update dir's i_pino during cross_rename
James Smart <jsmart2021(a)gmail.com>
scsi: lpfc: Fix duplicate unreg_rpi error in port offline flow
Bart Van Assche <bvanassche(a)acm.org>
scsi: tracing: Fix handling of TRANSFER LENGTH == 0 for READ(6) and WRITE(6)
Jan Kara <jack(a)suse.cz>
jbd2: Fix statistics for the number of logged blocks
Matthew Bobrowski <mbobrowski(a)mbobrowski.org>
ext4: update direct I/O read lock pattern for IOCB_NOWAIT
Aneesh Kumar K.V <aneesh.kumar(a)linux.ibm.com>
powerpc/book3s64/hash: Add cond_resched to avoid soft lockup warning
Anthony Steinhauser <asteinhauser(a)google.com>
powerpc/security/book3s64: Report L1TF status in sysfs
Chuhong Yuan <hslester96(a)gmail.com>
clocksource/drivers/asm9260: Add a check for of_clk_get
Eric Dumazet <edumazet(a)google.com>
dma-debug: add a schedule point in debug_dma_dump_mappings()
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/tools: Don't quote $objdump in scripts
Aneesh Kumar K.V <aneesh.kumar(a)linux.ibm.com>
powerpc/pseries: Don't fail hash page table insert for bolted mapping
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/pseries: Mark accumulate_stolen_time() as notrace
Dan Carpenter <dan.carpenter(a)oracle.com>
scsi: csiostor: Don't enable IRQs too early
James Smart <jsmart2021(a)gmail.com>
scsi: lpfc: Fix SLI3 hba in loop mode not discovering devices
David Disseldorp <ddiss(a)suse.de>
scsi: target: compare full CHAP_A Algorithm strings
Thierry Reding <treding(a)nvidia.com>
iommu/tegra-smmu: Fix page tables in > 4 GiB memory
Evan Green <evgreen(a)chromium.org>
Input: atmel_mxt_ts - disable IRQ across suspend
James Smart <jsmart2021(a)gmail.com>
scsi: lpfc: Fix locking on mailbox command completion
Sreekanth Reddy <sreekanth.reddy(a)broadcom.com>
scsi: mpt3sas: Fix clear pending bit in ioctl status
James Smart <jsmart2021(a)gmail.com>
scsi: lpfc: Fix discovery failures when target device connectivity bounces
-------------
Diffstat:
Makefile | 4 +-
arch/arm/boot/compressed/libfdt_env.h | 4 +-
arch/powerpc/boot/libfdt_env.h | 2 +
arch/powerpc/kernel/security.c | 21 +++--
arch/powerpc/kernel/time.c | 2 +-
arch/powerpc/mm/hash_utils_64.c | 10 +-
arch/powerpc/platforms/pseries/cmm.c | 5 +
arch/powerpc/tools/relocs_check.sh | 2 +-
arch/powerpc/tools/unrel_branch_check.sh | 4 +-
arch/s390/kernel/perf_cpum_sf.c | 17 +++-
arch/x86/kernel/cpu/mcheck/mce.c | 2 +-
drivers/cdrom/cdrom.c | 12 ++-
drivers/clk/pxa/clk-pxa27x.c | 1 +
drivers/clk/qcom/clk-rcg2.c | 2 +
drivers/clk/qcom/common.c | 3 +
drivers/clocksource/asm9260_timer.c | 4 +
drivers/gpio/gpio-mpc8xxx.c | 3 +-
drivers/hid/hid-core.c | 4 +
drivers/hid/hid-logitech-hidpp.c | 3 +
drivers/input/touchscreen/atmel_mxt_ts.c | 4 +
drivers/iommu/tegra-smmu.c | 11 ++-
drivers/irqchip/irq-bcm7038-l1.c | 4 +
drivers/irqchip/irq-ingenic.c | 15 ++-
drivers/md/bcache/btree.c | 2 +
drivers/mfd/mfd-core.c | 5 +
drivers/net/bonding/bond_main.c | 3 -
drivers/net/ethernet/amazon/ena/ena_netdev.c | 10 +-
drivers/net/ethernet/mellanox/mlxfw/mlxfw_mfa2.c | 7 +-
drivers/net/gtp.c | 111 +++++++++++++----------
drivers/net/hamradio/6pack.c | 4 +-
drivers/net/hamradio/mkiss.c | 4 +-
drivers/nvdimm/btt.c | 8 +-
drivers/pci/switch/switchtec.c | 2 +-
drivers/pinctrl/intel/pinctrl-baytrail.c | 81 +++++++++--------
drivers/ptp/ptp_clock.c | 31 +++----
drivers/ptp/ptp_private.h | 2 +-
drivers/s390/crypto/zcrypt_error.h | 2 +
drivers/scsi/NCR5380.c | 6 +-
drivers/scsi/atari_scsi.c | 6 +-
drivers/scsi/csiostor/csio_lnode.c | 15 +--
drivers/scsi/iscsi_tcp.c | 8 ++
drivers/scsi/lpfc/lpfc_els.c | 2 +-
drivers/scsi/lpfc/lpfc_hbadisc.c | 7 +-
drivers/scsi/lpfc/lpfc_nportdisc.c | 4 +-
drivers/scsi/lpfc/lpfc_sli.c | 15 ++-
drivers/scsi/mac_scsi.c | 2 +-
drivers/scsi/mpt3sas/mpt3sas_ctl.c | 3 +-
drivers/scsi/pm8001/pm80xx_hwi.c | 2 +
drivers/scsi/scsi_debug.c | 5 +
drivers/scsi/scsi_trace.c | 11 ++-
drivers/scsi/sun3_scsi.c | 4 +-
drivers/scsi/ufs/ufshcd.c | 21 +++--
drivers/spi/spi-fsl-spi.c | 5 +-
drivers/target/iscsi/iscsi_target.c | 10 +-
drivers/target/iscsi/iscsi_target_auth.c | 2 +-
drivers/tty/serial/atmel_serial.c | 43 ++++-----
drivers/vhost/vsock.c | 4 +-
fs/ext4/inode.c | 8 +-
fs/f2fs/namei.c | 15 ++-
fs/f2fs/super.c | 20 ++--
fs/jbd2/commit.c | 4 +-
fs/ocfs2/acl.c | 4 +-
fs/quota/dquot.c | 29 +++---
fs/readdir.c | 40 ++++++++
fs/userfaultfd.c | 18 ++--
include/linux/hrtimer.h | 14 ++-
include/linux/libfdt_env.h | 3 +
include/linux/posix-clock.h | 19 ++--
include/linux/quota.h | 2 +-
include/linux/rculist_nulls.h | 37 ++++++++
include/linux/skbuff.h | 6 +-
include/net/dst.h | 11 ++-
include/net/dst_ops.h | 3 +-
include/net/inet_hashtables.h | 12 ++-
include/net/sock.h | 5 +
include/scsi/iscsi_proto.h | 1 +
kernel/sysctl.c | 2 +-
kernel/time/hrtimer.c | 11 ++-
kernel/time/posix-clock.c | 31 +++----
lib/dma-debug.c | 1 +
net/bridge/br_netfilter_hooks.c | 3 +
net/bridge/br_nf_core.c | 3 +-
net/bridge/netfilter/ebtables.c | 33 ++++---
net/core/sysctl_net_core.c | 2 +
net/decnet/dn_route.c | 6 +-
net/ipv4/icmp.c | 11 ++-
net/ipv4/inet_connection_sock.c | 2 +-
net/ipv4/inet_diag.c | 3 +-
net/ipv4/inet_hashtables.c | 18 ++--
net/ipv4/inetpeer.c | 12 ++-
net/ipv4/ip_tunnel.c | 2 +-
net/ipv4/ip_vti.c | 2 +-
net/ipv4/route.c | 9 +-
net/ipv4/tcp_ipv4.c | 7 +-
net/ipv4/tcp_output.c | 8 ++
net/ipv4/udp.c | 2 +-
net/ipv4/xfrm4_policy.c | 5 +-
net/ipv6/inet6_connection_sock.c | 2 +-
net/ipv6/inet6_hashtables.c | 3 +-
net/ipv6/ip6_gre.c | 2 +-
net/ipv6/ip6_tunnel.c | 4 +-
net/ipv6/ip6_vti.c | 2 +-
net/ipv6/route.c | 22 +++--
net/ipv6/sit.c | 2 +-
net/ipv6/xfrm6_policy.c | 5 +-
net/netfilter/ipvs/ip_vs_xmit.c | 2 +-
net/netfilter/nf_queue.c | 2 +-
net/sctp/transport.c | 2 +-
scripts/kallsyms.c | 2 +
security/apparmor/label.c | 12 ++-
sound/pci/hda/hda_controller.c | 2 +-
tools/perf/builtin-script.c | 2 +-
tools/perf/util/perf_regs.h | 2 +-
tools/perf/util/strbuf.c | 1 -
114 files changed, 718 insertions(+), 361 deletions(-)
From: Kaike Wan <kaike.wan(a)intel.com>
When a TID RDMA ACK to RESYNC request is received, the flow PSNs for
pending TID RDMA WRITE segments will be adjusted with the next flow
generation number, based on the resync_psn value extracted from the
flow PSN of the TID RDMA ACK packet. The resync_psn value indicates
the last flow PSN for which a TID RDMA WRITE DATA packet has been
received by the responder and the requester should resend TID RDMA
WRITE DATA packets, starting from the next flow PSN. However, if
resync_psn points to the last flow PSN for a segment and the next
segment flow PSN starts with a new generation number, use of the
old resync_psn to adjust the flow PSN for the next segment will
lead to miscalculation, resulting in WARN_ON and sge rewinding
errors:
[2419460.492485] WARNING: CPU: 4 PID: 146961 at /nfs/site/home/phcvs2/gitrepo/ifs-all/components/Drivers/tmp/rpmbuild/BUILD/ifs-kernel-updates-3.10.0_957.el7.x86_64/hfi1/tid_rdma.c:4764 hfi1_rc_rcv_tid_rdma_ack+0x8f6/0xa90 [hfi1]
[2419460.514565] Modules linked in: ib_ipoib(OE) hfi1(OE) rdmavt(OE) rpcsec_gss_krb5 auth_rpcgss nfsv4 dns_resolver nfsv3 nfs_acl nfs lockd grace fscache iTCO_wdt iTCO_vendor_support skx_edac intel_powerclamp coretemp intel_rapl iosf_mbi kvm irqbypass crc32_pclmul ghash_clmulni_intel ib_isert iscsi_target_mod target_core_mod aesni_intel lrw gf128mul glue_helper ablk_helper cryptd rpcrdma sunrpc opa_vnic ast ttm ib_iser libiscsi drm_kms_helper scsi_transport_iscsi ipmi_ssif syscopyarea sysfillrect sysimgblt fb_sys_fops drm joydev ipmi_si pcspkr sg drm_panel_orientation_quirks ipmi_devintf lpc_ich i2c_i801 ipmi_msghandler wmi rdma_ucm ib_ucm ib_uverbs acpi_cpufreq acpi_power_meter ib_umad rdma_cm ib_cm iw_cm ip_tables ext4 mbcache jbd2 sd_mod crc_t10dif crct10dif_generic crct10dif_pclmul i2c_algo_bit crct10dif_common
[2419460.594432] crc32c_intel e1000e ib_core ahci libahci ptp libata pps_core nfit libnvdimm [last unloaded: rdmavt]
[2419460.605645] CPU: 4 PID: 146961 Comm: kworker/4:0H Kdump: loaded Tainted: G W OE ------------ 3.10.0-957.el7.x86_64 #1
[2419460.619424] Hardware name: Intel Corporation S2600WFT/S2600WFT, BIOS SE5C620.86B.0X.02.0117.040420182310 04/04/2018
[2419460.631062] Workqueue: hfi0_0 _hfi1_do_tid_send [hfi1]
[2419460.637423] Call Trace:
[2419460.641044] <IRQ> [<ffffffff9e361dc1>] dump_stack+0x19/0x1b
[2419460.647980] [<ffffffff9dc97648>] __warn+0xd8/0x100
[2419460.654023] [<ffffffff9dc9778d>] warn_slowpath_null+0x1d/0x20
[2419460.661025] [<ffffffffc05d28c6>] hfi1_rc_rcv_tid_rdma_ack+0x8f6/0xa90 [hfi1]
[2419460.669333] [<ffffffffc05c21cc>] hfi1_kdeth_eager_rcv+0x1dc/0x210 [hfi1]
[2419460.677295] [<ffffffffc05c23ef>] ? hfi1_kdeth_expected_rcv+0x1ef/0x210 [hfi1]
[2419460.685693] [<ffffffffc0574f15>] kdeth_process_eager+0x35/0x90 [hfi1]
[2419460.693394] [<ffffffffc0575b5a>] handle_receive_interrupt_nodma_rtail+0x17a/0x2b0 [hfi1]
[2419460.702745] [<ffffffffc056a623>] receive_context_interrupt+0x23/0x40 [hfi1]
[2419460.710963] [<ffffffff9dd4a294>] __handle_irq_event_percpu+0x44/0x1c0
[2419460.718659] [<ffffffff9dd4a442>] handle_irq_event_percpu+0x32/0x80
[2419460.726086] [<ffffffff9dd4a4cc>] handle_irq_event+0x3c/0x60
[2419460.732903] [<ffffffff9dd4d27f>] handle_edge_irq+0x7f/0x150
[2419460.739710] [<ffffffff9dc2e554>] handle_irq+0xe4/0x1a0
[2419460.746091] [<ffffffff9e3795dd>] do_IRQ+0x4d/0xf0
[2419460.752040] [<ffffffff9e36b362>] common_interrupt+0x162/0x162
[2419460.759029] <EOI> [<ffffffff9dfa0f79>] ? swiotlb_map_page+0x49/0x150
[2419460.766758] [<ffffffffc05c2ed1>] hfi1_verbs_send_dma+0x291/0xb70 [hfi1]
[2419460.774637] [<ffffffffc05c2c40>] ? hfi1_wait_kmem+0xf0/0xf0 [hfi1]
[2419460.782080] [<ffffffffc05c3f26>] hfi1_verbs_send+0x126/0x2b0 [hfi1]
[2419460.789606] [<ffffffffc05ce683>] _hfi1_do_tid_send+0x1d3/0x320 [hfi1]
[2419460.797298] [<ffffffff9dcb9d4f>] process_one_work+0x17f/0x440
[2419460.804292] [<ffffffff9dcbade6>] worker_thread+0x126/0x3c0
[2419460.811025] [<ffffffff9dcbacc0>] ? manage_workers.isra.25+0x2a0/0x2a0
[2419460.818710] [<ffffffff9dcc1c31>] kthread+0xd1/0xe0
[2419460.824751] [<ffffffff9dcc1b60>] ? insert_kthread_work+0x40/0x40
[2419460.832013] [<ffffffff9e374c1d>] ret_from_fork_nospec_begin+0x7/0x21
[2419460.839611] [<ffffffff9dcc1b60>] ? insert_kthread_work+0x40/0x40
This patch fixes the issue by adjusting the resync_psn first if the flow
generation has been advanced for a pending segment.
Fixes: 9e93e967f7b4 ("IB/hfi1: Add a function to receive TID RDMA ACK packet")
Cc: <stable(a)vger.kernel.org>
Reviewed-by: Mike Marciniszyn <mike.marciniszyn(a)intel.com>
Signed-off-by: Kaike Wan <kaike.wan(a)intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro(a)intel.com>
---
drivers/infiniband/hw/hfi1/tid_rdma.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/drivers/infiniband/hw/hfi1/tid_rdma.c b/drivers/infiniband/hw/hfi1/tid_rdma.c
index e53f542..8a2e0d9 100644
--- a/drivers/infiniband/hw/hfi1/tid_rdma.c
+++ b/drivers/infiniband/hw/hfi1/tid_rdma.c
@@ -4633,6 +4633,15 @@ void hfi1_rc_rcv_tid_rdma_ack(struct hfi1_packet *packet)
*/
fpsn = full_flow_psn(flow, flow->flow_state.spsn);
req->r_ack_psn = psn;
+ /*
+ * If resync_psn points to the last flow PSN for a
+ * segment and the new segment (likely from a new
+ * request) starts with a new generation number, we
+ * need to adjust resync_psn accordingly.
+ */
+ if (flow->flow_state.generation !=
+ (resync_psn >> HFI1_KDETH_BTH_SEQ_SHIFT))
+ resync_psn = mask_psn(fpsn - 1);
flow->resync_npkts +=
delta_psn(mask_psn(resync_psn + 1), fpsn);
/*
Make sure to use the current alternate setting, which need not be the
first one by index, when verifying the endpoint descriptors and
initialising the URBs.
Failing to do so could cause the driver to misbehave or trigger a WARN()
in usb_submit_urb() that kernels with panic_on_warn set would choke on.
Fixes: 26ff63137c45 ("[media] Add support for the IguanaWorks USB IR Transceiver")
Fixes: ab1cbdf159be ("media: iguanair: add sanity checks")
Cc: stable <stable(a)vger.kernel.org> # 3.6
Cc: Sean Young <sean(a)mess.org>
Cc: Oliver Neukum <oneukum(a)suse.com>
Signed-off-by: Johan Hovold <johan(a)kernel.org>
---
drivers/media/rc/iguanair.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/media/rc/iguanair.c b/drivers/media/rc/iguanair.c
index 872d6441e512..a7deca1fefb7 100644
--- a/drivers/media/rc/iguanair.c
+++ b/drivers/media/rc/iguanair.c
@@ -413,7 +413,7 @@ static int iguanair_probe(struct usb_interface *intf,
int ret, pipein, pipeout;
struct usb_host_interface *idesc;
- idesc = intf->altsetting;
+ idesc = intf->cur_altsetting;
if (idesc->desc.bNumEndpoints < 2)
return -ENODEV;
--
2.24.1