This is the start of the stable review cycle for the 4.19.69 release.
There are 98 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 Thu 29 Aug 2019 07:25:02 AM UTC.
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.19.69-rc1.gz
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.19.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <[email protected]>
Linux 4.19.69-rc1
David Howells <[email protected]>
rxrpc: Fix read-after-free in rxrpc_queue_local()
David Howells <[email protected]>
rxrpc: Fix local endpoint refcounting
Alastair D'Silva <[email protected]>
powerpc: Allow flush_(inval_)dcache_range to work across ranges >4GB
Dan Carpenter <[email protected]>
dm zoned: fix potential NULL dereference in dmz_do_reclaim()
Darrick J. Wong <[email protected]>
xfs: always rejoin held resources during defer roll
Allison Henderson <[email protected]>
xfs: Add attibute remove and helper functions
Allison Henderson <[email protected]>
xfs: Add attibute set and helper functions
Allison Henderson <[email protected]>
xfs: Add helper function xfs_attr_try_sf_addname
Allison Henderson <[email protected]>
xfs: Move fs/xfs/xfs_attr.h to fs/xfs/libxfs/xfs_attr.h
Brian Foster <[email protected]>
xfs: don't trip over uninitialized buffer on extent read of corrupted inode
Darrick J. Wong <[email protected]>
xfs: fix missing ILOCK unlock when xfs_setattr_nonsize fails due to EDQUOT
Henry Burns <[email protected]>
mm/zsmalloc.c: fix race condition in zs_destroy_pool
Henry Burns <[email protected]>
mm/zsmalloc.c: migration can leave pages in ZS_EMPTY indefinitely
Vlastimil Babka <[email protected]>
mm, page_owner: handle THP splits correctly
Michael Kelley <[email protected]>
genirq: Properly pair kobject_del() with kobject_add()
Dmitry Fomichev <[email protected]>
dm zoned: properly handle backing device failure
Dmitry Fomichev <[email protected]>
dm zoned: improve error handling in i/o map code
Dmitry Fomichev <[email protected]>
dm zoned: improve error handling in reclaim
Mikulas Patocka <[email protected]>
dm table: fix invalid memory accesses with too high sector number
ZhangXiaoxu <[email protected]>
dm space map metadata: fix missing store of apply_bops() return value
Wenwen Wang <[email protected]>
dm raid: add missing cleanup in raid_ctr()
Mikulas Patocka <[email protected]>
dm integrity: fix a crash due to BUG_ON in __journal_read_write()
ZhangXiaoxu <[email protected]>
dm btree: fix order of block initialization in btree_split_beneath
Dmitry Fomichev <[email protected]>
dm kcopyd: always complete failed jobs
John Hubbard <[email protected]>
x86/boot: Fix boot regression caused by bootparam sanitizing
John Hubbard <[email protected]>
x86/boot: Save fields explicitly, zero out everything else
Tom Lendacky <[email protected]>
x86/CPU/AMD: Clear RDRAND CPUID bit on AMD family 15h/16h
Thomas Gleixner <[email protected]>
x86/apic: Handle missing global clockevent gracefully
Sean Christopherson <[email protected]>
x86/retpoline: Don't clobber RFLAGS during CALL_NOSPEC on i386
Oleg Nesterov <[email protected]>
userfaultfd_release: always remove uffd flags and clear vm_userfaultfd_ctx
Dexuan Cui <[email protected]>
Drivers: hv: vmbus: Fix virt_to_hvpfn() for X86_PAE
Bartosz Golaszewski <[email protected]>
gpiolib: never report open-drain/source lines as 'input' to user-space
Lyude Paul <[email protected]>
drm/nouveau: Don't retry infinitely when receiving no data on i2c over AUX
Ilya Dryomov <[email protected]>
libceph: fix PG split vs OSD (re)connect race
Jeff Layton <[email protected]>
ceph: don't try fill file_lock on unsuccessful GETFILELOCK reply
Erqi Chen <[email protected]>
ceph: clear page dirty before invalidate page
Dinh Nguyen <[email protected]>
clk: socfpga: stratix10: fix rate caclulationg for cnt_clks
Mikulas Patocka <[email protected]>
Revert "dm bufio: fix deadlock with loop device"
Jason Gerecke <[email protected]>
HID: wacom: Correct distance scale for 2nd-gen Intuos devices
Aaron Armstrong Skomra <[email protected]>
HID: wacom: correct misreported EKR ring values
Naresh Kamboju <naresh.kamboju () linaro ! org>
selftests: kvm: Adding config fragments
Marc Zyngier <[email protected]>
KVM: arm: Don't write junk to CP15 registers on reset
Marc Zyngier <[email protected]>
KVM: arm64: Don't write junk to sysregs on reset
Jin Yao <[email protected]>
perf pmu-events: Fix missing "cpu_clk_unhalted.core" event
He Zhe <[email protected]>
perf cpumap: Fix writing to illegal memory in handling cpumap mask
He Zhe <[email protected]>
perf ftrace: Fix failure to set cpumask when only one cpu is present
Paolo Valente <[email protected]>
block, bfq: handle NULL return value by bfq_init_rq()
Colin Ian King <[email protected]>
drm/vmwgfx: fix memory leak when too many retries have occurred
Valdis Kletnieks <[email protected]>
x86/lib/cpu: Address missing prototypes warning
Jens Axboe <[email protected]>
libata: add SG safety checks in SFF pio transfers
Jens Axboe <[email protected]>
libata: have ata_scsi_rw_xlat() fail invalid passthrough requests
Jiangfeng Xiao <[email protected]>
net: hisilicon: Fix dma_map_single failed on arm64
Jiangfeng Xiao <[email protected]>
net: hisilicon: fix hip04-xmit never return TX_BUSY
Jiangfeng Xiao <[email protected]>
net: hisilicon: make hip04_tx_reclaim non-reentrant
Jose Abreu <[email protected]>
net: stmmac: tc: Do not return a fragment entry
Jose Abreu <[email protected]>
net: stmmac: Fix issues when number of Queues >= 4
Christophe JAILLET <[email protected]>
net: cxgb3_main: Fix a resource leak in a error path in 'init_one()'
Vasily Gorbik <[email protected]>
s390: put _stext and _etext into .text section
Sebastien Tisserant <[email protected]>
SMB3: Kernel oops mounting a encryptData share with CONFIG_DEBUG_VIRTUAL
Pavel Shilovsky <[email protected]>
SMB3: Fix potential memory leak when processing compound chain
Douglas Anderson <[email protected]>
drm/rockchip: Suspend DP late
Nicolas Saenz Julienne <[email protected]>
HID: input: fix a4tech horizontal wheel custom usage
István Váradi <[email protected]>
HID: quirks: Set the INCREMENT_USAGE_ON_DUPLICATE quirk on Saitek X52
Trond Myklebust <[email protected]>
NFS: Fix regression whereby fscache errors are appearing on 'nofsc' mounts
Trond Myklebust <[email protected]>
NFSv4: Fix a potential sleep while atomic in nfs4_do_reclaim()
Wang Xiayang <[email protected]>
net/ethernet/qlogic/qed: force the string buffer NULL-terminated
Wang Xiayang <[email protected]>
can: peak_usb: force the string buffer NULL-terminated
Wang Xiayang <[email protected]>
can: sja1000: force the string buffer NULL-terminated
Jiri Olsa <[email protected]>
perf bench numa: Fix cpu0 binding
Jia-Ju Bai <[email protected]>
net: phy: phy_led_triggers: Fix a possible null-pointer dereference in phy_led_trigger_change_speed()
Juliana Rodrigueiro <[email protected]>
isdn: hfcsusb: Fix mISDN driver crash caused by transfer buffer on the stack
David Howells <[email protected]>
rxrpc: Fix the lack of notification when sendmsg() fails on a DATA packet
David Howells <[email protected]>
rxrpc: Fix potential deadlock
Jozsef Kadlecsik <[email protected]>
netfilter: ipset: Fix rename concurrency with listing
Stefano Brivio <[email protected]>
netfilter: ipset: Copy the right MAC address in bitmap:ip,mac and hash:ip,mac sets
Stefano Brivio <[email protected]>
netfilter: ipset: Actually allow destination MAC address for hash:ip,mac sets too
Jia-Ju Bai <[email protected]>
mac80211_hwsim: Fix possible null-pointer dereferences in hwsim_dump_radio_nl()
Jia-Ju Bai <[email protected]>
isdn: mISDN: hfcsusb: Fix possible null-pointer dereferences in start_isoc_chain()
Michal Kalderon <[email protected]>
qed: RDMA - Fix the hw_ver returned in device attributes
Bob Ham <[email protected]>
net: usb: qmi_wwan: Add the BroadMobi BM818 card
Peter Ujfalusi <[email protected]>
ASoC: ti: davinci-mcasp: Correct slot_width posed constraint
Cheng-Yi Chiang <[email protected]>
ASoC: rockchip: Fix mono capture
Navid Emamdoost <[email protected]>
st_nci_hci_connectivity_event_received: null check the allocation
Navid Emamdoost <[email protected]>
st21nfca_connectivity_event_received: null check the allocation
Ricard Wanderlof <[email protected]>
ASoC: Fail card instantiation if DAI format setup fails
YueHaibing <[email protected]>
can: gw: Fix error path of cgw_module_init
Weitao Hou <[email protected]>
can: mcp251x: add error check when wq alloc failed
Rasmus Villemoes <[email protected]>
can: dev: call netif_carrier_off() in register_candev()
Ido Schimmel <[email protected]>
selftests: forwarding: gre_multipath: Fix flower filters
Ido Schimmel <[email protected]>
selftests: forwarding: gre_multipath: Enable IPv4 forwarding
Maxime Chevallier <[email protected]>
net: mvpp2: Don't check for 3 consecutive Idle frames for 10G links
Thomas Falcon <[email protected]>
bonding: Force slave speed check after link state recovery for 802.3ad
Ilya Leoshkevich <[email protected]>
selftests/bpf: fix sendmsg6_prog on s390
Charles Keepax <[email protected]>
ASoC: dapm: Fix handling of custom_stop_condition on DAPM graph walks
Wenwen Wang <[email protected]>
netfilter: ebtables: fix a memory leak bug in compat
Vladimir Kondratiev <[email protected]>
mips: fix cacheinfo
Thomas Bogendoerfer <[email protected]>
MIPS: kernel: only use i8253 clocksource with periodic clockevent
Ilya Trukhanov <[email protected]>
HID: Add 044f:b320 ThrustMaster, Inc. 2 in 1 DT
-------------
Diffstat:
Documentation/admin-guide/kernel-parameters.txt | 7 +
Makefile | 4 +-
arch/arm/kvm/coproc.c | 23 +-
arch/arm64/kvm/sys_regs.c | 32 +--
arch/mips/kernel/cacheinfo.c | 2 +
arch/mips/kernel/i8253.c | 3 +-
arch/powerpc/kernel/misc_64.S | 4 +-
arch/s390/kernel/vmlinux.lds.S | 10 +-
arch/x86/include/asm/bootparam_utils.h | 61 ++++--
arch/x86/include/asm/msr-index.h | 1 +
arch/x86/include/asm/nospec-branch.h | 2 +-
arch/x86/kernel/apic/apic.c | 68 ++++--
arch/x86/kernel/cpu/amd.c | 66 ++++++
arch/x86/lib/cpu.c | 1 +
arch/x86/power/cpu.c | 86 ++++++--
block/bfq-iosched.c | 14 +-
drivers/ata/libata-scsi.c | 21 ++
drivers/ata/libata-sff.c | 6 +
drivers/clk/socfpga/clk-periph-s10.c | 2 +-
drivers/gpio/gpiolib.c | 6 +-
drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c | 24 ++-
drivers/gpu/drm/rockchip/analogix_dp-rockchip.c | 2 +-
drivers/gpu/drm/vmwgfx/vmwgfx_msg.c | 4 +-
drivers/hid/hid-a4tech.c | 30 ++-
drivers/hid/hid-ids.h | 1 +
drivers/hid/hid-quirks.c | 1 +
drivers/hid/hid-tmff.c | 12 ++
drivers/hid/wacom_wac.c | 4 +-
drivers/hv/channel.c | 2 +-
drivers/isdn/hardware/mISDN/hfcsusb.c | 13 +-
drivers/md/dm-bufio.c | 4 +-
drivers/md/dm-integrity.c | 15 ++
drivers/md/dm-kcopyd.c | 5 +-
drivers/md/dm-raid.c | 2 +-
drivers/md/dm-table.c | 5 +-
drivers/md/dm-zoned-metadata.c | 59 ++++--
drivers/md/dm-zoned-reclaim.c | 44 +++-
drivers/md/dm-zoned-target.c | 67 +++++-
drivers/md/dm-zoned.h | 10 +
drivers/md/persistent-data/dm-btree.c | 31 +--
drivers/md/persistent-data/dm-space-map-metadata.c | 2 +-
drivers/net/bonding/bond_main.c | 9 +
drivers/net/can/dev.c | 2 +
drivers/net/can/sja1000/peak_pcmcia.c | 2 +-
drivers/net/can/spi/mcp251x.c | 49 ++---
drivers/net/can/usb/peak_usb/pcan_usb_core.c | 2 +-
drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c | 5 +-
drivers/net/ethernet/hisilicon/hip04_eth.c | 28 +--
drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c | 6 +-
drivers/net/ethernet/qlogic/qed/qed_int.c | 2 +-
drivers/net/ethernet/qlogic/qed/qed_rdma.c | 2 +-
drivers/net/ethernet/stmicro/stmmac/dwmac4_core.c | 4 +
.../net/ethernet/stmicro/stmmac/dwxgmac2_core.c | 4 +
drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c | 2 +-
drivers/net/phy/phy_led_triggers.c | 3 +-
drivers/net/usb/qmi_wwan.c | 1 +
drivers/net/wireless/mac80211_hwsim.c | 8 +-
drivers/nfc/st-nci/se.c | 2 +
drivers/nfc/st21nfca/se.c | 2 +
fs/ceph/addr.c | 5 +-
fs/ceph/locks.c | 3 +-
fs/cifs/smb2ops.c | 39 ++--
fs/nfs/fscache.c | 7 +-
fs/nfs/fscache.h | 2 +-
fs/nfs/nfs4_fs.h | 3 +-
fs/nfs/nfs4client.c | 5 +-
fs/nfs/nfs4state.c | 27 ++-
fs/nfs/super.c | 1 +
fs/userfaultfd.c | 25 +--
fs/xfs/libxfs/xfs_attr.c | 231 ++++++++++++---------
fs/xfs/{ => libxfs}/xfs_attr.h | 2 +
fs/xfs/libxfs/xfs_bmap.c | 54 +++--
fs/xfs/libxfs/xfs_bmap.h | 1 +
fs/xfs/libxfs/xfs_defer.c | 14 +-
fs/xfs/xfs_dquot.c | 17 +-
fs/xfs/xfs_iops.c | 1 +
include/trace/events/rxrpc.h | 6 +-
kernel/irq/irqdesc.c | 15 +-
mm/huge_memory.c | 4 +
mm/zsmalloc.c | 78 ++++++-
net/bridge/netfilter/ebtables.c | 4 +-
net/can/gw.c | 48 +++--
net/ceph/osd_client.c | 9 +-
net/netfilter/ipset/ip_set_bitmap_ipmac.c | 2 +-
net/netfilter/ipset/ip_set_core.c | 2 +-
net/netfilter/ipset/ip_set_hash_ipmac.c | 6 +-
net/rxrpc/af_rxrpc.c | 4 +-
net/rxrpc/ar-internal.h | 6 +-
net/rxrpc/input.c | 16 +-
net/rxrpc/local_object.c | 101 +++++----
net/rxrpc/peer_event.c | 2 +-
net/rxrpc/peer_object.c | 18 ++
net/rxrpc/sendmsg.c | 1 +
sound/soc/davinci/davinci-mcasp.c | 43 +++-
sound/soc/rockchip/rockchip_i2s.c | 5 +-
sound/soc/soc-core.c | 7 +-
sound/soc/soc-dapm.c | 8 +-
tools/perf/bench/numa.c | 6 +-
tools/perf/builtin-ftrace.c | 2 +-
tools/perf/pmu-events/jevents.c | 1 +
tools/perf/util/cpumap.c | 5 +-
tools/testing/selftests/bpf/sendmsg6_prog.c | 3 +-
tools/testing/selftests/kvm/config | 3 +
.../selftests/net/forwarding/gre_multipath.sh | 28 +--
104 files changed, 1265 insertions(+), 494 deletions(-)
[ Upstream commit a07e3324538a989b7cdbf2c679be6a7f9df2544f ]
i8253 clocksource needs a free running timer. This could only
be used, if i8253 clockevent is set up as periodic.
Signed-off-by: Thomas Bogendoerfer <[email protected]>
Signed-off-by: Paul Burton <[email protected]>
Cc: Ralf Baechle <[email protected]>
Cc: James Hogan <[email protected]>
Cc: [email protected]
Cc: [email protected]
Signed-off-by: Sasha Levin <[email protected]>
---
arch/mips/kernel/i8253.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/mips/kernel/i8253.c b/arch/mips/kernel/i8253.c
index 5f209f111e59e..df7ddd246eaac 100644
--- a/arch/mips/kernel/i8253.c
+++ b/arch/mips/kernel/i8253.c
@@ -32,7 +32,8 @@ void __init setup_pit_timer(void)
static int __init init_pit_clocksource(void)
{
- if (num_possible_cpus() > 1) /* PIT does not scale! */
+ if (num_possible_cpus() > 1 || /* PIT does not scale! */
+ !clockevent_state_periodic(&i8253_clockevent))
return 0;
return clocksource_i8253_init();
--
2.20.1
[ Upstream commit 1b4a75108d5bc153daf965d334e77e8e94534f96 ]
In commit 8cc4ccf58379 ("ipset: Allow matching on destination MAC address
for mac and ipmac sets"), ipset.git commit 1543514c46a7, I added to the
KADT functions for sets matching on MAC addreses the copy of source or
destination MAC address depending on the configured match.
This was done correctly for hash:mac, but for hash:ip,mac and
bitmap:ip,mac, copying and pasting the same code block presents an
obvious problem: in these two set types, the MAC address is the second
dimension, not the first one, and we are actually selecting the MAC
address depending on whether the first dimension (IP address) specifies
source or destination.
Fix this by checking for the IPSET_DIM_TWO_SRC flag in option flags.
This way, mixing source and destination matches for the two dimensions
of ip,mac set types works as expected. With this setup:
ip netns add A
ip link add veth1 type veth peer name veth2 netns A
ip addr add 192.0.2.1/24 dev veth1
ip -net A addr add 192.0.2.2/24 dev veth2
ip link set veth1 up
ip -net A link set veth2 up
dst=$(ip netns exec A cat /sys/class/net/veth2/address)
ip netns exec A ipset create test_bitmap bitmap:ip,mac range 192.0.0.0/16
ip netns exec A ipset add test_bitmap 192.0.2.1,${dst}
ip netns exec A iptables -A INPUT -m set ! --match-set test_bitmap src,dst -j DROP
ip netns exec A ipset create test_hash hash:ip,mac
ip netns exec A ipset add test_hash 192.0.2.1,${dst}
ip netns exec A iptables -A INPUT -m set ! --match-set test_hash src,dst -j DROP
ipset correctly matches a test packet:
# ping -c1 192.0.2.2 >/dev/null
# echo $?
0
Reported-by: Chen Yi <[email protected]>
Fixes: 8cc4ccf58379 ("ipset: Allow matching on destination MAC address for mac and ipmac sets")
Signed-off-by: Stefano Brivio <[email protected]>
Signed-off-by: Jozsef Kadlecsik <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
net/netfilter/ipset/ip_set_bitmap_ipmac.c | 2 +-
net/netfilter/ipset/ip_set_hash_ipmac.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/net/netfilter/ipset/ip_set_bitmap_ipmac.c b/net/netfilter/ipset/ip_set_bitmap_ipmac.c
index 13ade5782847b..4f01321e793ce 100644
--- a/net/netfilter/ipset/ip_set_bitmap_ipmac.c
+++ b/net/netfilter/ipset/ip_set_bitmap_ipmac.c
@@ -230,7 +230,7 @@ bitmap_ipmac_kadt(struct ip_set *set, const struct sk_buff *skb,
e.id = ip_to_id(map, ip);
- if (opt->flags & IPSET_DIM_ONE_SRC)
+ if (opt->flags & IPSET_DIM_TWO_SRC)
ether_addr_copy(e.ether, eth_hdr(skb)->h_source);
else
ether_addr_copy(e.ether, eth_hdr(skb)->h_dest);
diff --git a/net/netfilter/ipset/ip_set_hash_ipmac.c b/net/netfilter/ipset/ip_set_hash_ipmac.c
index 75c21c8b76514..16ec822e40447 100644
--- a/net/netfilter/ipset/ip_set_hash_ipmac.c
+++ b/net/netfilter/ipset/ip_set_hash_ipmac.c
@@ -99,7 +99,7 @@ hash_ipmac4_kadt(struct ip_set *set, const struct sk_buff *skb,
(skb_mac_header(skb) + ETH_HLEN) > skb->data)
return -EINVAL;
- if (opt->flags & IPSET_DIM_ONE_SRC)
+ if (opt->flags & IPSET_DIM_TWO_SRC)
ether_addr_copy(e.ether, eth_hdr(skb)->h_source);
else
ether_addr_copy(e.ether, eth_hdr(skb)->h_dest);
--
2.20.1
[ Upstream commit 9a07406b00cdc6ec689dc142540739575c717f3c ]
The BroadMobi BM818 M.2 card uses the QMI protocol
Signed-off-by: Bob Ham <[email protected]>
Signed-off-by: Angus Ainslie (Purism) <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
drivers/net/usb/qmi_wwan.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/usb/qmi_wwan.c b/drivers/net/usb/qmi_wwan.c
index 128c8a327d8ee..51017c6bb3bcb 100644
--- a/drivers/net/usb/qmi_wwan.c
+++ b/drivers/net/usb/qmi_wwan.c
@@ -1231,6 +1231,7 @@ static const struct usb_device_id products[] = {
{QMI_FIXED_INTF(0x2001, 0x7e35, 4)}, /* D-Link DWM-222 */
{QMI_FIXED_INTF(0x2020, 0x2031, 4)}, /* Olicard 600 */
{QMI_FIXED_INTF(0x2020, 0x2033, 4)}, /* BroadMobi BM806U */
+ {QMI_FIXED_INTF(0x2020, 0x2060, 4)}, /* BroadMobi BM818 */
{QMI_FIXED_INTF(0x0f3d, 0x68a2, 8)}, /* Sierra Wireless MC7700 */
{QMI_FIXED_INTF(0x114f, 0x68a2, 8)}, /* Sierra Wireless MC7750 */
{QMI_FIXED_INTF(0x1199, 0x68a2, 8)}, /* Sierra Wireless MC7710 in QMI mode */
--
2.20.1
[ Upstream commit 65f11c72780fa9d598df88def045ccb6a885cf80 ]
Enable force feedback for the Thrustmaster Dual Trigger 2 in 1 Rumble Force
gamepad. Compared to other Thrustmaster devices, left and right rumble
motors here are swapped.
Signed-off-by: Ilya Trukhanov <[email protected]>
Signed-off-by: Jiri Kosina <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
drivers/hid/hid-tmff.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/drivers/hid/hid-tmff.c b/drivers/hid/hid-tmff.c
index bea8def64f437..30b8c3256c991 100644
--- a/drivers/hid/hid-tmff.c
+++ b/drivers/hid/hid-tmff.c
@@ -34,6 +34,8 @@
#include "hid-ids.h"
+#define THRUSTMASTER_DEVICE_ID_2_IN_1_DT 0xb320
+
static const signed short ff_rumble[] = {
FF_RUMBLE,
-1
@@ -88,6 +90,7 @@ static int tmff_play(struct input_dev *dev, void *data,
struct hid_field *ff_field = tmff->ff_field;
int x, y;
int left, right; /* Rumbling */
+ int motor_swap;
switch (effect->type) {
case FF_CONSTANT:
@@ -112,6 +115,13 @@ static int tmff_play(struct input_dev *dev, void *data,
ff_field->logical_minimum,
ff_field->logical_maximum);
+ /* 2-in-1 strong motor is left */
+ if (hid->product == THRUSTMASTER_DEVICE_ID_2_IN_1_DT) {
+ motor_swap = left;
+ left = right;
+ right = motor_swap;
+ }
+
dbg_hid("(left,right)=(%08x, %08x)\n", left, right);
ff_field->value[0] = left;
ff_field->value[1] = right;
@@ -238,6 +248,8 @@ static const struct hid_device_id tm_devices[] = {
.driver_data = (unsigned long)ff_rumble },
{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb304), /* FireStorm Dual Power 2 (and 3) */
.driver_data = (unsigned long)ff_rumble },
+ { HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, THRUSTMASTER_DEVICE_ID_2_IN_1_DT), /* Dual Trigger 2-in-1 */
+ .driver_data = (unsigned long)ff_rumble },
{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb323), /* Dual Trigger 3-in-1 (PC Mode) */
.driver_data = (unsigned long)ff_rumble },
{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb324), /* Dual Trigger 3-in-1 (PS3 Mode) */
--
2.20.1
[ Upstream commit 789e162a6255325325bd321ab0cd51dc7e285054 ]
This reverts commit db51707b9c9aeedd310ebce60f15d5bb006567e0.
Revert "ASoC: rockchip: i2s: Support mono capture"
Previous discussion in
https://patchwork.kernel.org/patch/10147153/
explains the issue of the patch.
While device is configured as 1-ch, hardware is still
generating a 2-ch stream.
When user space reads the data and assumes it is a 1-ch stream,
the rate will be slower by 2x.
Revert the change so 1-ch is not supported.
User space can selectively take one channel data out of two channel
if 1-ch is preferred.
Currently, both channels record identical data.
Signed-off-by: Cheng-Yi Chiang <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Mark Brown <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
sound/soc/rockchip/rockchip_i2s.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/sound/soc/rockchip/rockchip_i2s.c b/sound/soc/rockchip/rockchip_i2s.c
index 60d43d53a8f5e..11399f81c92f9 100644
--- a/sound/soc/rockchip/rockchip_i2s.c
+++ b/sound/soc/rockchip/rockchip_i2s.c
@@ -329,7 +329,6 @@ static int rockchip_i2s_hw_params(struct snd_pcm_substream *substream,
val |= I2S_CHN_4;
break;
case 2:
- case 1:
val |= I2S_CHN_2;
break;
default:
@@ -462,7 +461,7 @@ static struct snd_soc_dai_driver rockchip_i2s_dai = {
},
.capture = {
.stream_name = "Capture",
- .channels_min = 1,
+ .channels_min = 2,
.channels_max = 2,
.rates = SNDRV_PCM_RATE_8000_192000,
.formats = (SNDRV_PCM_FMTBIT_S8 |
@@ -662,7 +661,7 @@ static int rockchip_i2s_probe(struct platform_device *pdev)
}
if (!of_property_read_u32(node, "rockchip,capture-channels", &val)) {
- if (val >= 1 && val <= 8)
+ if (val >= 2 && val <= 8)
soc_dai->capture.channels_max = val;
}
--
2.20.1
On Tue, Aug 27, 2019 at 09:49:39AM +0200, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 4.19.69 release.
> There are 98 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 Thu 29 Aug 2019 07:25:02 AM UTC.
> Anything received after that time might be too late.
>
Build results:
total: 156 pass: 156 fail: 0
Qemu test results:
total: 390 pass: 390 fail: 0
Guenter
On 8/27/19 1:49 AM, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 4.19.69 release.
> There are 98 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 Thu 29 Aug 2019 07:25:02 AM UTC.
> 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.19.69-rc1.gz
> or in the git tree and branch at:
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.19.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h
>
Compiled and booted on my test system. No dmesg regressions.
thanks,
-- Shuah
stable-rc/linux-4.19.y boot: 133 boots: 2 failed, 122 passed with 9 offline (v4.19.68-99-ge944704d5a79)
Full Boot Summary: https://kernelci.org/boot/all/job/stable-rc/branch/linux-4.19.y/kernel/v4.19.68-99-ge944704d5a79/
Full Build Summary: https://kernelci.org/build/stable-rc/branch/linux-4.19.y/kernel/v4.19.68-99-ge944704d5a79/
Tree: stable-rc
Branch: linux-4.19.y
Git Describe: v4.19.68-99-ge944704d5a79
Git Commit: e944704d5a79f6d6506a872edebd16e2b93cb349
Git URL: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
Tested: 73 unique boards, 25 SoC families, 15 builds out of 206
Boot Failures Detected:
arm64:
defconfig:
gcc-8:
meson-gxl-s905x-nexbox-a95x: 1 failed lab
arm:
sama5_defconfig:
gcc-8:
at91-sama5d4_xplained: 1 failed lab
Offline Platforms:
arm64:
defconfig:
gcc-8
apq8016-sbc: 1 offline lab
meson-gxbb-odroidc2: 1 offline lab
arm:
multi_v7_defconfig:
gcc-8
qcom-apq8064-cm-qs600: 1 offline lab
qcom-apq8064-ifc6410: 1 offline lab
sun5i-r8-chip: 1 offline lab
sun7i-a20-bananapi: 1 offline lab
qcom_defconfig:
gcc-8
qcom-apq8064-cm-qs600: 1 offline lab
qcom-apq8064-ifc6410: 1 offline lab
sunxi_defconfig:
gcc-8
sun5i-r8-chip: 1 offline lab
---
For more info write to <[email protected]>
On Tue, 27 Aug 2019 at 13:25, Greg Kroah-Hartman
<[email protected]> wrote:
>
> This is the start of the stable review cycle for the 4.19.69 release.
> There are 98 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 Thu 29 Aug 2019 07:25:02 AM UTC.
> 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.19.69-rc1.gz
> or in the git tree and branch at:
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.19.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h
>
Results from Linaro’s test farm.
No regressions on arm64, arm, x86_64, and i386.
Summary
------------------------------------------------------------------------
kernel: 4.19.69-rc1
git repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git branch: linux-4.19.y
git commit: e944704d5a79f6d6506a872edebd16e2b93cb349
git describe: v4.19.68-99-ge944704d5a79
Test details: https://qa-reports.linaro.org/lkft/linux-stable-rc-4.19-oe/build/v4.19.68-99-ge944704d5a79
No regressions (compared to build v4.19.67-86-gdef4c11b3131)
No fixes (compared to build v4.19.67-86-gdef4c11b3131)
Ran 25199 total tests in the following environments and test suites.
Environments
--------------
- dragonboard-410c - arm64
- hi6220-hikey - arm64
- i386
- juno-r2 - arm64
- qemu_arm
- qemu_arm64
- qemu_i386
- qemu_x86_64
- x15 - arm
- x86_64
Test Suites
-----------
* build
* install-android-platform-tools-r2600
* kselftest
* libgpiod
* libhugetlbfs
* ltp-cap_bounds-tests
* ltp-commands-tests
* ltp-containers-tests
* ltp-cpuhotplug-tests
* ltp-cve-tests
* ltp-dio-tests
* ltp-fcntl-locktests-tests
* ltp-filecaps-tests
* ltp-fs_bind-tests
* ltp-fs_perms_simple-tests
* ltp-fsx-tests
* ltp-hugetlb-tests
* ltp-io-tests
* ltp-ipc-tests
* ltp-math-tests
* ltp-mm-tests
* ltp-nptl-tests
* ltp-pty-tests
* ltp-sched-tests
* ltp-securebits-tests
* ltp-syscalls-tests
* ltp-timers-tests
* perf
* spectre-meltdown-checker-test
* v4l2-compliance
* ltp-fs-tests
* network-basic-tests
* ltp-open-posix-tests
* kvm-unit-tests
* ssuite
* kselftest-vsyscall-mode-native
* kselftest-vsyscall-mode-none
--
Linaro LKFT
https://lkft.linaro.org