Commit Graph

1145701 Commits

Author SHA1 Message Date
Will Deacon
be7a09bbf2 Revert "ANDROID: KVM: arm64: Coalesce host stage2 entries on ownership reclaim"
This reverts commit db0cabd41a.

Reason for revert: Appears to be the root-cause behind b/267581040

Change-Id: If031f23f61795ae251fc8c99bb3d99b55b03ee67
Signed-off-by: Will Deacon <willdeacon@google.com>
2023-02-07 19:37:29 +00:00
Liam Howlett
d8ae61aba7 FROMLIST: maple_tree: fix mas_empty_area_rev() lower bound validation
mas_empty_area_rev() was not correctly validating the start of a gap
against the lower limit.  This could lead to the range starting lower than
the requested minimum.

Fix the issue by better validating a gap once one is found.

This commit also adds tests to the maple tree test suite for this issue
and tests the mas_empty_area() function for similar bound checking.

Link: https://lkml.kernel.org/r/20230111200136.1851322-1-Liam.Howlett@oracle.com
Link: https://bugzilla.kernel.org/show_bug.cgi?id=216911
Fixes: 54a611b605 ("Maple Tree: add new data structure")
Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com>
Reported-by: <amanieu@gmail.com>
  Link: https://lore.kernel.org/linux-mm/0b9f5425-08d4-8013-aa4c-e620c3b10bb2@leemhuis.info/
Tested-by: Holger Hoffsttte <holger@applied-asynchrony.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

Bug: 267250884
Link: https://lore.kernel.org/all/20230111200136.1851322-1-Liam.Howlett@oracle.com/T/#u
Change-Id: I1a0ffb8a40a58699d2000f70e0f5e59614a329f5
Signed-off-by: Liam Howlett <liam.howlett@oracle.com>
Signed-off-by: Capone Huang <capone.huang@mediatek.com>
2023-02-07 17:59:07 +00:00
Huang Yiwei
234faf40fa ANDROID: irq: Add vendor data field to struct irq_desc
Add vendor data field to struct irq_desc to track the irq count
growth, vendor module can store the current count value and
calculate the delta in next scan cycle, helpful to enhance irq
performance and debug irq related issues.

Bug: 267983545
Change-Id: I6b4c12aeaa09ee133918870772833a777190dccc
Signed-off-by: Huang Yiwei <quic_hyiwei@quicinc.com>
2023-02-07 11:04:38 +08:00
Greg Kroah-Hartman
be71152643 Merge 6.1.10 into android14-6.1
Changes in 6.1.10
	ARM: dts: imx: Fix pca9547 i2c-mux node name
	ARM: dts: vf610: Fix pca9548 i2c-mux node names
	arm64: dts: freescale: Fix pca954x i2c-mux node names
	arm64: dts: imx8mq-thor96: fix no-mmc property for SDHCI
	firmware: arm_scmi: Clear stale xfer->hdr.status
	bpf: Skip task with pid=1 in send_signal_common()
	erofs/zmap.c: Fix incorrect offset calculation
	mac80211: Fix MLO address translation for multiple bss case
	arm64: dts: msm8994-angler: fix the memory map
	ARM: omap1: fix building gpio15xx
	kselftest: Fix error message for unconfigured LLVM builds
	erofs: clean up parsing of fscache related options
	blk-cgroup: fix missing pd_online_fn() while activating policy
	LoongArch: Get frame info in unwind_start() when regs is not available
	ACPI: video: Add backlight=native DMI quirk for Acer Aspire 4810T
	block: fix hctx checks for batch allocation
	s390: workaround invalid gcc-11 out of bounds read warning
	HID: uclogic: Add support for XP-PEN Deco 01 V2
	HID: playstation: sanity check DualSense calibration data.
	dmaengine: imx-sdma: Fix a possible memory leak in sdma_transfer_init
	gpiolib: acpi: Allow ignoring wake capability on pins that aren't in _AEI
	cifs: fix return of uninitialized rc in dfs_cache_update_tgthint()
	nvme-apple: only reset the controller when RTKit is running
	gpiolib: acpi: Add a ignore wakeup quirk for Clevo NL5xRU
	gpiolib-acpi: Don't set GPIOs for wakeup in S3 mode
	net: fix NULL pointer in skb_segment_list
	rust: print: avoid evaluating arguments in `pr_*` macros in `unsafe` blocks
	net: mctp: purge receive queues on sk destruction
	Linux 6.1.10

Change-Id: I38cb1a3d3f619094d9a248c59bccbe4a56c6d70e
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-02-06 10:42:24 +00:00
Greg Kroah-Hartman
17d99ea98b Linux 6.1.10
Link: https://lore.kernel.org/r/20230203101009.946745030@linuxfoundation.org
Tested-by: Ronald Warsow <rwarsow@gmx.de>
Tested-by: Takeshi Ogasawara <takeshi.ogasawara@futuring-girl.com>
Tested-by: Justin M. Forbes <jforbes@fedoraproject.org>
Tested-by: Florian Fainelli <f.fainelli@gmail.com>
Tested-by: Ron Economos <re@w6rz.net>
Tested-by: Shuah Khan <skhan@linuxfoundation.org>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Tested-by: Bagas Sanjaya <bagasdotme@gmail.com>
Tested-by: Linux Kernel Functional Testing <lkft@linaro.org>
Tested-by: Fenil Jain <fkjainco@gmail.com>
Tested-by: Salvatore Bonaccorso <carnil@debian.org>
Tested-by: Rudi Heitbaum <rudi@heitbaum.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-06 08:06:34 +01:00
Jeremy Kerr
cfc15cbd85 net: mctp: purge receive queues on sk destruction
commit 60bd1d9008 upstream.

We may have pending skbs in the receive queue when the sk is being
destroyed; add a destructor to purge the queue.

MCTP doesn't use the error queue, so only the receive_queue is purged.

Fixes: 833ef3b91d ("mctp: Populate socket implementation")
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>
Reviewed-by: Pavan Chebbi <pavan.chebbi@broadcom.com>
Link: https://lore.kernel.org/r/20230126064551.464468-1-jk@codeconstruct.com.au
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-06 08:06:34 +01:00
Miguel Ojeda
60cd03ffe9 rust: print: avoid evaluating arguments in pr_* macros in unsafe blocks
commit 6618d69aa1 upstream.

At the moment it is possible to perform unsafe operations in
the arguments of `pr_*` macros since they are evaluated inside
an `unsafe` block:

    let x = &10u32 as *const u32;
    pr_info!("{}", *x);

In other words, this is a soundness issue.

Fix it so that it requires an explicit `unsafe` block.

Reported-by: Wedson Almeida Filho <wedsonaf@gmail.com>
Reported-by: Domen Puncer Kugler <domen.puncerkugler@nccgroup.com>
Link: https://github.com/Rust-for-Linux/linux/issues/479
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
Reviewed-by: Boqun Feng <boqun.feng@gmail.com>
Reviewed-by: Gary Guo <gary@garyguo.net>
Reviewed-by: Björn Roy Baron <bjorn3_gh@protonmail.com>
Reviewed-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-06 08:06:34 +01:00
Yan Zhai
888dad6f3e net: fix NULL pointer in skb_segment_list
commit 876e8ca836 upstream.

Commit 3a1296a38d ("net: Support GRO/GSO fraglist chaining.")
introduced UDP listifyed GRO. The segmentation relies on frag_list being
untouched when passing through the network stack. This assumption can be
broken sometimes, where frag_list itself gets pulled into linear area,
leaving frag_list being NULL. When this happens it can trigger
following NULL pointer dereference, and panic the kernel. Reverse the
test condition should fix it.

[19185.577801][    C1] BUG: kernel NULL pointer dereference, address:
...
[19185.663775][    C1] RIP: 0010:skb_segment_list+0x1cc/0x390
...
[19185.834644][    C1] Call Trace:
[19185.841730][    C1]  <TASK>
[19185.848563][    C1]  __udp_gso_segment+0x33e/0x510
[19185.857370][    C1]  inet_gso_segment+0x15b/0x3e0
[19185.866059][    C1]  skb_mac_gso_segment+0x97/0x110
[19185.874939][    C1]  __skb_gso_segment+0xb2/0x160
[19185.883646][    C1]  udp_queue_rcv_skb+0xc3/0x1d0
[19185.892319][    C1]  udp_unicast_rcv_skb+0x75/0x90
[19185.900979][    C1]  ip_protocol_deliver_rcu+0xd2/0x200
[19185.910003][    C1]  ip_local_deliver_finish+0x44/0x60
[19185.918757][    C1]  __netif_receive_skb_one_core+0x8b/0xa0
[19185.927834][    C1]  process_backlog+0x88/0x130
[19185.935840][    C1]  __napi_poll+0x27/0x150
[19185.943447][    C1]  net_rx_action+0x27e/0x5f0
[19185.951331][    C1]  ? mlx5_cq_tasklet_cb+0x70/0x160 [mlx5_core]
[19185.960848][    C1]  __do_softirq+0xbc/0x25d
[19185.968607][    C1]  irq_exit_rcu+0x83/0xb0
[19185.976247][    C1]  common_interrupt+0x43/0xa0
[19185.984235][    C1]  asm_common_interrupt+0x22/0x40
...
[19186.094106][    C1]  </TASK>

Fixes: 3a1296a38d ("net: Support GRO/GSO fraglist chaining.")
Suggested-by: Daniel Borkmann <daniel@iogearbox.net>
Reviewed-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: Yan Zhai <yan@cloudflare.com>
Acked-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/r/Y9gt5EUizK1UImEP@debian
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-06 08:06:34 +01:00
Mario Limonciello
9d369cd505 gpiolib-acpi: Don't set GPIOs for wakeup in S3 mode
[ Upstream commit d63f11c02b ]

commit 1796f808e4 ("HID: i2c-hid: acpi: Stop setting wakeup_capable")
adjusted the policy to enable wakeup by default if the ACPI tables
indicated that a device was wake capable.

It was reported however that this broke suspend on at least two System76
systems in S3 mode and two Lenovo Gen2a systems, but only with S3.
When the machines are set to s2idle, wakeup behaves properly.

Configuring the GPIOs for wakeup with S3 doesn't work properly, so only
set it when the system supports low power idle.

Fixes: 1796f808e4 ("HID: i2c-hid: acpi: Stop setting wakeup_capable")
Fixes: b38f2d5d96 ("i2c: acpi: Use ACPI wake capability bit to set wake_irq")
Link: https://gitlab.freedesktop.org/drm/amd/-/issues/2357
Link: https://bugzilla.redhat.com/show_bug.cgi?id=2162013
Reported-by: Nathan Smythe <ncsmythe@scruboak.org>
Tested-by: Nathan Smythe <ncsmythe@scruboak.org>
Suggested-by: Raul Rangel <rrangel@chromium.org>
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:34 +01:00
Mario Limonciello
69622f270c gpiolib: acpi: Add a ignore wakeup quirk for Clevo NL5xRU
[ Upstream commit 4cb786180d ]

commit 1796f808e4 ("HID: i2c-hid: acpi: Stop setting wakeup_capable")
changed the policy such that I2C touchpads may be able to wake up the
system by default if the system is configured as such.

However on Clevo NL5xRU there is a mistake in the ACPI tables that the
TP_ATTN# signal connected to GPIO 9 is configured as ActiveLow and level
triggered but connected to a pull up. As soon as the system suspends the
touchpad loses power and then the system wakes up.

To avoid this problem, introduce a quirk for this model that will prevent
the wakeup capability for being set for GPIO 9.

Fixes: 1796f808e4 ("HID: i2c-hid: acpi: Stop setting wakeup_capable")
Reported-by: Werner Sembach <wse@tuxedocomputers.com>
Link: https://gitlab.freedesktop.org/drm/amd/-/issues/1722#note_1720627
Co-developed-by: Werner Sembach <wse@tuxedocomputers.com>
Signed-off-by: Werner Sembach <wse@tuxedocomputers.com>
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:34 +01:00
Janne Grunau
30dc1de44e nvme-apple: only reset the controller when RTKit is running
[ Upstream commit c0a4a1eafb ]

NVMe controller register access hangs indefinitely when the co-processor
is not running. A missed reset is preferable over a hanging thread since
it could be recoverable.

Signed-off-by: Janne Grunau <j@jannau.net>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:34 +01:00
Paulo Alcantara
38044859de cifs: fix return of uninitialized rc in dfs_cache_update_tgthint()
[ Upstream commit d6a49e8c4c ]

Fix this by initializing rc to 0 as cache_refresh_path() would not set
it in case of success.

Reported-by: kernel test robot <lkp@intel.com>
Link: https://lore.kernel.org/all/202301190004.bEHvbKG6-lkp@intel.com/
Signed-off-by: Paulo Alcantara (SUSE) <pc@cjr.nz>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:33 +01:00
Mario Limonciello
1dba6881e3 gpiolib: acpi: Allow ignoring wake capability on pins that aren't in _AEI
[ Upstream commit 0e3b175f07 ]

Using the `ignore_wake` quirk or module parameter doesn't work for any pin
that has been specified in the _CRS instead of _AEI.

Extend the `acpi_gpio_irq_is_wake` check to cover both places.

Suggested-by: Raul Rangel <rrangel@chromium.org>
Link: https://gitlab.freedesktop.org/drm/amd/-/issues/1722#note_1722335
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:33 +01:00
Hui Wang
ce4745a6b8 dmaengine: imx-sdma: Fix a possible memory leak in sdma_transfer_init
[ Upstream commit 1417f59ac0 ]

If the function sdma_load_context() fails, the sdma_desc will be
freed, but the allocated desc->bd is forgot to be freed.

We already met the sdma_load_context() failure case and the log as
below:
[ 450.699064] imx-sdma 30bd0000.dma-controller: Timeout waiting for CH0 ready
...

In this case, the desc->bd will not be freed without this change.

Signed-off-by: Hui Wang <hui.wang@canonical.com>
Reviewed-by: Sascha Hauer <s.hauer@pengutronix.de>
Link: https://lore.kernel.org/r/20221130090800.102035-1-hui.wang@canonical.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:33 +01:00
Roderick Colenbrander
6b1cebcd9e HID: playstation: sanity check DualSense calibration data.
[ Upstream commit ccf1e1626d ]

Make sure calibration values are defined to prevent potential kernel
crashes. This fixes a hypothetical issue for virtual or clone devices
inspired by a similar fix for DS4.

Signed-off-by: Roderick Colenbrander <roderick.colenbrander@sony.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:33 +01:00
José Expósito
7f85560667 HID: uclogic: Add support for XP-PEN Deco 01 V2
[ Upstream commit febb2c0d7c ]

The XP-PEN Deco 01 V2 is a UGEE v2 device with a frame with 8 buttons.
Its pen has 2 buttons, supports tilt and pressure.

Add its ID in order to support the device.

Link: https://gitlab.freedesktop.org/libinput/libinput/-/issues/839
Tested-by: Mark Waddoups <mwaddoups@gmail.com>
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:33 +01:00
Heiko Carstens
1fc24f9da2 s390: workaround invalid gcc-11 out of bounds read warning
[ Upstream commit 41e1992665 ]

GCC 11.1.0 and 11.2.0 generate a wrong warning when compiling the
kernel e.g. with allmodconfig:

arch/s390/kernel/setup.c: In function ‘setup_lowcore_dat_on’:
./include/linux/fortify-string.h:57:33: error: ‘__builtin_memcpy’ reading 128 bytes from a region of size 0 [-Werror=stringop-overread]
...
arch/s390/kernel/setup.c:526:9: note: in expansion of macro ‘memcpy’
  526 |         memcpy(abs_lc->cregs_save_area, S390_lowcore.cregs_save_area,
      |         ^~~~~~

This could be addressed by using absolute_pointer() with the
S390_lowcore macro, but this is not a good idea since this generates
worse code for performance critical paths.

Therefore simply use a for loop to copy the array in question and get
rid of the warning.

Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:33 +01:00
Pavel Begunkov
6f13860bba block: fix hctx checks for batch allocation
[ Upstream commit 7746564793 ]

When there are no read queues read requests will be assigned a
default queue on allocation. However, blk_mq_get_cached_request() is not
prepared for that and will fail all attempts to grab read requests from
the cache. Worst case it doubles the number of requests allocated,
roughly half of which will be returned by blk_mq_free_plug_rqs().

It only affects batched allocations and so is io_uring specific.
For reference, QD8 t/io_uring benchmark improves by 20-35%.

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/80d4511011d7d4751b4cf6375c4e38f237d935e3.1673955390.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:33 +01:00
Hans de Goede
99db989945 ACPI: video: Add backlight=native DMI quirk for Acer Aspire 4810T
[ Upstream commit 8ba5fc4c15 ]

The Acer Aspire 4810T predates Windows 8, so it defaults to using
acpi_video# for backlight control, but this is non functional on
this model.

Add a DMI quirk to use the native backlight interface which does
work properly.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:32 +01:00
Jinyang He
efc1058831 LoongArch: Get frame info in unwind_start() when regs is not available
[ Upstream commit 429a9671f2 ]

At unwind_start(), it is better to get its frame info here rather than
get them outside, even we don't have 'regs'. In this way we can simply
use unwind_{start, next_frame, done} outside.

Signed-off-by: Jinyang He <hejinyang@loongson.cn>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:32 +01:00
Yu Kuai
a4a1af9fa0 blk-cgroup: fix missing pd_online_fn() while activating policy
[ Upstream commit e3ff8887e7 ]

If the policy defines pd_online_fn(), it should be called after
pd_init_fn(), like blkg_create().

Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Acked-by: Tejun Heo <tj@kernel.org>
Link: https://lore.kernel.org/r/20230103112833.2013432-1-yukuai1@huaweicloud.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:32 +01:00
Jingbo Xu
6db03adf07 erofs: clean up parsing of fscache related options
[ Upstream commit e02ac3e732 ]

... to avoid the mess of conditional preprocessing as we are continually
adding fscache related mount options.

Reviewd-by: Gao Xiang <hsiangkao@linux.alibaba.com>
Reviewed-by: Yue Hu <huyue2@coolpad.com>
Reviewed-by: Chao Yu <chao@kernel.org>
Signed-off-by: Jingbo Xu <jefflexu@linux.alibaba.com>
Link: https://lore.kernel.org/r/20230112065431.124926-3-jefflexu@linux.alibaba.com
Signed-off-by: Gao Xiang <hsiangkao@linux.alibaba.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:32 +01:00
Mark Brown
27c54591ba kselftest: Fix error message for unconfigured LLVM builds
[ Upstream commit 9fdaca2c1e ]

We are missing a ) when we attempt to complain about not having enough
configuration for clang, resulting in the rather inscrutable error:

../lib.mk:23: *** unterminated call to function 'error': missing ')'.  Stop.

Add the required ) so we print the message we were trying to print.

Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:32 +01:00
Arnd Bergmann
495cec3763 ARM: omap1: fix building gpio15xx
[ Upstream commit 9d46ce57f4 ]

In some randconfig builds, the asm/irq.h header is not included
in gpio15xx.c, so add an explicit include to avoid a build fialure:

In file included from arch/arm/mach-omap1/gpio15xx.c:15:
arch/arm/mach-omap1/irqs.h:99:34: error: 'NR_IRQS_LEGACY' undeclared here (not in a function)
   99 | #define IH2_BASE                (NR_IRQS_LEGACY + 32)
      |                                  ^~~~~~~~~~~~~~
arch/arm/mach-omap1/irqs.h:105:38: note: in expansion of macro 'IH2_BASE'
  105 | #define INT_MPUIO               (5 + IH2_BASE)
      |                                      ^~~~~~~~
arch/arm/mach-omap1/gpio15xx.c:28:27: note: in expansion of macro 'INT_MPUIO'
   28 |                 .start  = INT_MPUIO,
      |                           ^~~~~~~~~

Acked-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:32 +01:00
Dominik Kobinski
1d34087944 arm64: dts: msm8994-angler: fix the memory map
[ Upstream commit 380cd3a34b ]

Add reserved regions for memory hole and tz app mem to prevent
rebooting. Also enable cont_splash_mem, it is the same as the
generic 8994 one.

Reported-by: Petr Vorel <petr.vorel@gmail.com>
Signed-off-by: Dominik Kobinski <dominikkobinski314@gmail.com>
Reviewed-by: Petr Vorel <petr.vorel@gmail.com>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20221230194845.57780-1-dominikkobinski314@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:32 +01:00
Sriram R
ea2be0ca69 mac80211: Fix MLO address translation for multiple bss case
[ Upstream commit fa22b51ace ]

When multiple interfaces are present in the local interface
list, new skb copy is taken before rx processing except for
the first interface. The address translation happens each
time only on the original skb since the hdr pointer is not
updated properly to the newly created skb.

As a result frames start to drop in userspace when address
based checks or search fails.

Signed-off-by: Sriram R <quic_srirrama@quicinc.com>
Link: https://lore.kernel.org/r/20221208040050.25922-1-quic_srirrama@quicinc.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:31 +01:00
Siddh Raman Pant
9f31d8c889 erofs/zmap.c: Fix incorrect offset calculation
[ Upstream commit 6acd87d509 ]

Effective offset to add to length was being incorrectly calculated,
which resulted in iomap->length being set to 0, triggering a WARN_ON
in iomap_iter_done().

Fix that, and describe it in comments.

This was reported as a crash by syzbot under an issue about a warning
encountered in iomap_iter_done(), but unrelated to erofs.

C reproducer: https://syzkaller.appspot.com/text?tag=ReproC&x=1037a6b2880000
Kernel config: https://syzkaller.appspot.com/text?tag=KernelConfig&x=e2021a61197ebe02
Dashboard link: https://syzkaller.appspot.com/bug?extid=a8e049cd3abd342936b6

Reported-by: syzbot+a8e049cd3abd342936b6@syzkaller.appspotmail.com
Suggested-by: Gao Xiang <hsiangkao@linux.alibaba.com>
Signed-off-by: Siddh Raman Pant <code@siddh.me>
Reviewed-by: Gao Xiang <hsiangkao@linux.alibaba.com>
Reviewed-by: Chao Yu <chao@kernel.org>
Link: https://lore.kernel.org/r/20221209102151.311049-1-code@siddh.me
Signed-off-by: Gao Xiang <hsiangkao@linux.alibaba.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:31 +01:00
Hao Sun
1283a01b6e bpf: Skip task with pid=1 in send_signal_common()
[ Upstream commit a3d81bc1ea ]

The following kernel panic can be triggered when a task with pid=1 attaches
a prog that attempts to send killing signal to itself, also see [1] for more
details:

  Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
  CPU: 3 PID: 1 Comm: systemd Not tainted 6.1.0-09652-g59fe41b5255f #148
  Call Trace:
  <TASK>
  __dump_stack lib/dump_stack.c:88 [inline]
  dump_stack_lvl+0x100/0x178 lib/dump_stack.c:106
  panic+0x2c4/0x60f kernel/panic.c:275
  do_exit.cold+0x63/0xe4 kernel/exit.c:789
  do_group_exit+0xd4/0x2a0 kernel/exit.c:950
  get_signal+0x2460/0x2600 kernel/signal.c:2858
  arch_do_signal_or_restart+0x78/0x5d0 arch/x86/kernel/signal.c:306
  exit_to_user_mode_loop kernel/entry/common.c:168 [inline]
  exit_to_user_mode_prepare+0x15f/0x250 kernel/entry/common.c:203
  __syscall_exit_to_user_mode_work kernel/entry/common.c:285 [inline]
  syscall_exit_to_user_mode+0x1d/0x50 kernel/entry/common.c:296
  do_syscall_64+0x44/0xb0 arch/x86/entry/common.c:86
  entry_SYSCALL_64_after_hwframe+0x63/0xcd

So skip task with pid=1 in bpf_send_signal_common() to avoid the panic.

  [1] https://lore.kernel.org/bpf/20221222043507.33037-1-sunhao.th@gmail.com

Signed-off-by: Hao Sun <sunhao.th@gmail.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Stanislav Fomichev <sdf@google.com>
Link: https://lore.kernel.org/bpf/20230106084838.12690-1-sunhao.th@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:31 +01:00
Cristian Marussi
e0b9560bf1 firmware: arm_scmi: Clear stale xfer->hdr.status
[ Upstream commit f6ca5059dc ]

Stale error status reported from a previous message transaction must be
cleared before starting a new transaction to avoid being confusingly
reported in the following SCMI message dump traces.

Signed-off-by: Cristian Marussi <cristian.marussi@arm.com>
Link: https://lore.kernel.org/r/20221222183823.518856-2-cristian.marussi@arm.com
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:31 +01:00
Krzysztof Kozlowski
ba355e99ef arm64: dts: imx8mq-thor96: fix no-mmc property for SDHCI
[ Upstream commit ef10d57936 ]

There is no "no-emmc" property, so intention for SD/SDIO only nodes was
to use "no-mmc".

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:31 +01:00
Geert Uytterhoeven
a5a629d7da arm64: dts: freescale: Fix pca954x i2c-mux node names
[ Upstream commit b025b4f5c2 ]

"make dtbs_check":

    arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dtb: pca9547@77: $nodename:0: 'pca9547@77' does not match '^(i2c-?)?mux'
	    From schema: Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
    arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dtb: pca9547@77: Unevaluated properties are not allowed ('#address-cells', '#size-cells', 'i2c@4' were unexpected)
	    From schema: Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
    ...

Fix this by renaming PCA954x nodes to "i2c-mux", to match the I2C bus
multiplexer/switch DT bindings and the Generic Names Recommendation in
the Devicetree Specification.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:31 +01:00
Geert Uytterhoeven
ab603e92db ARM: dts: vf610: Fix pca9548 i2c-mux node names
[ Upstream commit 42825d1f26 ]

"make dtbs_check":

    arch/arm/boot/dts/vf610-zii-dev-rev-b.dtb: tca9548@70: $nodename:0: 'tca9548@70' does not match '^(i2c-?)?mux'
	    From schema: Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
    arch/arm/boot/dts/vf610-zii-dev-rev-b.dtb: tca9548@70: Unevaluated properties are not allowed ('#address-cells', '#size-cells', 'i2c@0', 'i2c@1', 'i2c@2', 'i2c@3', 'i2c@4' were unexpected)
	    From schema: /scratch/geert/linux/linux-renesas/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
    ...

Fix this by renaming PCA9548 nodes to "i2c-mux", to match the I2C bus
multiplexer/switch DT bindings and the Generic Names Recommendation in
the Devicetree Specification.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:31 +01:00
Geert Uytterhoeven
7f68b6ecf5 ARM: dts: imx: Fix pca9547 i2c-mux node name
[ Upstream commit f78985f9f5 ]

"make dtbs_check":

    arch/arm/boot/dts/imx53-ppd.dtb: i2c-switch@70: $nodename:0: 'i2c-switch@70' does not match '^(i2c-?)?mux'
	    From schema: Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
    arch/arm/boot/dts/imx53-ppd.dtb: i2c-switch@70: Unevaluated properties are not allowed ('#address-cells', '#size-cells', 'i2c@0', 'i2c@1', 'i2c@2', 'i2c@3', 'i2c@4', 'i2c@5', 'i2c@6', 'i2c@7' were unexpected)
	    From schema: Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml

Fix this by renaming the PCA9547 node to "i2c-mux", to match the I2C bus
multiplexer/switch DT bindings and the Generic Names Recommendation in
the Devicetree Specification.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-02-06 08:06:30 +01:00
Ramji Jiyani
f4011fc8ae ANDROID: GKI: Remove duplicates from symbol lists
scripts/gen_gki_modules_headers.sh:

Add an option to only keep unique symbols during the
symbol list prep phase as for header generation symbol
list needs to be unique union of all vendor symbol
lists in an ascending order.

This reduces the array size and improves the lookup
time for the binary search.

Bug: 232430739
Test: TH
Fixes: 13e6a16651 ("ANDROID: GKI: Header generation fix and improvements")
Change-Id: Ib6868f5a8eb0b3713e192bec111804e993e3d085
Signed-off-by: Ramji Jiyani <ramjiyani@google.com>
(cherry picked from commit 2069048a73)
2023-02-02 20:38:43 +00:00
Chris Goldsworthy
87b17926cd ANDROID: ABI: Add deferred_free to the QCOM symbol list
Add deferred_free to abi_gki_aarch64_qcom to allow the built-in
deferred free helper to be used by Qualcomm DMA-BUF heaps.

Bug: 194472281
Change-Id: I670fc5abc1fa34a730d6a7e7111eb53bc310af60
Signed-off-by: Chris Goldsworthy <quic_cgoldswo@quicinc.com>
2023-02-02 20:36:34 +00:00
Isaac J. Manjarres
fe58c12116 ANDROID: Allow the deferred-free library heap to be compiled into the GKI
The deferred-free library heap can be useful for modular implementations
of the system heap, so compile it as a part of the GKI for arm64 and
x86.

Bug: 194472281
Change-Id: Iedd85682a90980b26a2f9aac0a53fcf4e1da219e
Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
2023-02-02 20:36:34 +00:00
John Stultz
bb97bfd3d8 ANDROID: dma-buf: heaps: Add deferred-free-helper library code
This patch provides infrastructure for deferring buffer frees.

This is a feature ION provided which when used with some form
of a page pool, provides a nice performance boost in an
allocation microbenchmark. The reason it helps is it allows the
page-zeroing to be done out of the normal allocation/free path,
and pushed off to a kthread.

As not all heaps will find this useful, its implemented as
a optional helper library that heaps can utilize.

Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Sumit Semwal <sumit.semwal@linaro.org>
Cc: Liam Mark <lmark@codeaurora.org>
Cc: Chris Goldsworthy <cgoldswo@codeaurora.org>
Cc: Laura Abbott <labbott@kernel.org>
Cc: Brian Starkey <Brian.Starkey@arm.com>
Cc: Hridya Valsaraju <hridya@google.com>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Sandeep Patil <sspatil@google.com>
Cc: Daniel Mentz <danielmentz@google.com>
Cc: Ørjan Eide <orjan.eide@arm.com>
Cc: Robin Murphy <robin.murphy@arm.com>
Cc: Ezequiel Garcia <ezequiel@collabora.com>
Cc: Simon Ser <contact@emersion.fr>
Cc: James Jones <jajones@nvidia.com>
Cc: linux-media@vger.kernel.org
Cc: dri-devel@lists.freedesktop.org
Change-Id: Ibdc6a6f44a6d7583817bdc808f8d4fb836b0210f
Signed-off-by: John Stultz <john.stultz@linaro.org>
[quic_cgoldswo@quicinc.com: Add shrinker thread name]
Signed-off-by: Chris Goldsworthy <quic_cgoldswo@quicinc.com>
Bug: 168742043
2023-02-02 20:36:34 +00:00
Guru Das Srinagesh
b2487c5b2b ANDROID: gic: Add affinity-setting vendor hooks to gic-v3
Add vendor hooks to allow vendor enhancements to GIC v3, specifically
implementation-defined multi-CPU IRQ target affinity setting.

The gic_v3_set_affinity() vendor hook is introduced as a restricted
vendor hook in order to allow trace hook to be called from irq migration
paths.

This patch includes content from these patches from previous releases:

commit 00c6f53e03 ("ANDROID: gic-v3: Add vendor hook to GIC v3")
commit fdb0133879 ("ANDROID: gic-v3: Update vendor hook to set affinity in GIC v3")
commit d8b068262090 ("ANDROID: gic-v3: Change GIC v3 vendor hook to restricted")
commit fbee76aa8d ("ANDROID: gic-v3: Update vendor hook to set affinity in GIC v3")

Bug: 266450121
Change-Id: I457070ba7ae53e012aa7bac846d2bdb11ef6f95d
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
2023-02-01 20:23:30 +00:00
Guru Das Srinagesh
4cd99f6a6f ANDROID: gic: Add affinity-setting vendor hooks to gic
Add vendor hooks to allow vendor enhancements to GIC, specifically
implementation-defined multi-CPU IRQ target affinity setting.

This patch is a refactored version of the android13-5.15 commit
9c25e5d6f5 ("ANDROID: gic: Add vendor hook to GIC").

Bug: 266450121
Change-Id: I4a17ed20f8e868a6479fd53c0230b22652595b01
Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com>
2023-02-01 20:23:30 +00:00
Vincent Donnefort
818d44dd84 ANDROID: KVM: arm64: Move hyp event enable into ro data section
It is expected for hyp events to be used in hot paths. We then need to
reduce the overhead of having the events placed even when they are
disabled. Moving the variable enabling event tracing into a read-only
section increase the chance of sharing a cache line with immutable
objects and as a consequence making it less likely to get a cache miss.

A RW mapping alias must then be made with the fixmap to turn on and off
events.

Bug: 229972309
Change-Id: Ib15bb3fd16b3adb9a889a730b701fd26171c9d37
Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
2023-02-01 10:54:34 +00:00
Greg Kroah-Hartman
936f394ef7 Merge 6.1.9 into android14-6.1
Changes in 6.1.9
	memory: tegra: Remove clients SID override programming
	memory: atmel-sdramc: Fix missing clk_disable_unprepare in atmel_ramc_probe()
	memory: mvebu-devbus: Fix missing clk_disable_unprepare in mvebu_devbus_probe()
	arm64: dts: qcom: sc8280xp: fix primary USB-DP PHY reset
	dmaengine: qcom: gpi: Set link_rx bit on GO TRE for rx operation
	dmaengine: ti: k3-udma: Do conditional decrement of UDMA_CHAN_RT_PEER_BCNT_REG
	soc: imx: imx8mp-blk-ctrl: enable global pixclk with HDMI_TX_PHY PD
	arm64: dts: imx8mp-phycore-som: Remove invalid PMIC property
	ARM: dts: imx6ul-pico-dwarf: Use 'clock-frequency'
	ARM: dts: imx7d-pico: Use 'clock-frequency'
	ARM: dts: imx6qdl-gw560x: Remove incorrect 'uart-has-rtscts'
	arm64: dts: verdin-imx8mm: fix dahlia audio playback
	arm64: dts: imx8mm-beacon: Fix ecspi2 pinmux
	arm64: dts: verdin-imx8mm: fix dev board audio playback
	arm64: dts: imx93-11x11-evk: correct clock and strobe pad setting
	ARM: imx: add missing of_node_put()
	soc: imx: imx8mp-blk-ctrl: don't set power device name
	arm64: dts: imx8mp: Fix missing GPC Interrupt
	arm64: dts: imx8mp: Fix power-domain typo
	arm64: dts: imx8mp-evk: pcie0-refclk cosmetic cleanup
	HID: intel_ish-hid: Add check for ishtp_dma_tx_map
	arm64: dts: imx8mm-venice-gw7901: fix USB2 controller OC polarity
	soc: imx8m: Fix incorrect check for of_clk_get_by_name()
	reset: ti-sci: honor TI_SCI_PROTOCOL setting when not COMPILE_TEST
	reset: uniphier-glue: Fix possible null-ptr-deref
	EDAC/highbank: Fix memory leak in highbank_mc_probe()
	firmware: arm_scmi: Harden shared memory access in fetch_response
	firmware: arm_scmi: Harden shared memory access in fetch_notification
	firmware: arm_scmi: Fix virtio channels cleanup on shutdown
	interconnect: qcom: msm8996: Provide UFS clocks to A2NoC
	interconnect: qcom: msm8996: Fix regmap max_register values
	HID: amd_sfh: Fix warning unwind goto
	tomoyo: fix broken dependency on *.conf.default
	RDMA/rxe: Fix inaccurate constants in rxe_type_info
	RDMA/rxe: Prevent faulty rkey generation
	erofs: fix kvcalloc() misuse with __GFP_NOFAIL
	arm64: dts: marvell: AC5/AC5X: Fix address for UART1
	RDMA/core: Fix ib block iterator counter overflow
	IB/hfi1: Reject a zero-length user expected buffer
	IB/hfi1: Reserve user expected TIDs
	IB/hfi1: Fix expected receive setup error exit issues
	IB/hfi1: Immediately remove invalid memory from hardware
	IB/hfi1: Remove user expected buffer invalidate race
	affs: initialize fsdata in affs_truncate()
	PM: AVS: qcom-cpr: Fix an error handling path in cpr_probe()
	arm64: dts: qcom: msm8992: Don't use sfpb mutex
	arm64: dts: qcom: msm8992-libra: Fix the memory map
	kbuild: export top-level LDFLAGS_vmlinux only to scripts/Makefile.vmlinux
	kbuild: fix 'make modules' error when CONFIG_DEBUG_INFO_BTF_MODULES=y
	phy: ti: fix Kconfig warning and operator precedence
	drm/msm/gpu: Fix potential double-free
	NFSD: fix use-after-free in nfsd4_ssc_setup_dul()
	ARM: dts: at91: sam9x60: fix the ddr clock for sam9x60
	drm/vc4: bo: Fix drmm_mutex_init memory hog
	phy: usb: sunplus: Fix potential null-ptr-deref in sp_usb_phy_probe()
	bpf: hash map, avoid deadlock with suitable hash mask
	amd-xgbe: TX Flow Ctrl Registers are h/w ver dependent
	amd-xgbe: Delay AN timeout during KR training
	bpf: Fix pointer-leak due to insufficient speculative store bypass mitigation
	drm/vc4: bo: Fix unused variable warning
	phy: rockchip-inno-usb2: Fix missing clk_disable_unprepare() in rockchip_usb2phy_power_on()
	net: nfc: Fix use-after-free in local_cleanup()
	net: wan: Add checks for NULL for utdm in undo_uhdlc_init and unmap_si_regs
	net: enetc: avoid deadlock in enetc_tx_onestep_tstamp()
	net: lan966x: add missing fwnode_handle_put() for ports node
	sch_htb: Avoid grafting on htb_destroy_class_offload when destroying htb
	gpio: mxc: Protect GPIO irqchip RMW with bgpio spinlock
	gpio: mxc: Always set GPIOs used as interrupt source to INPUT mode
	wifi: rndis_wlan: Prevent buffer overflow in rndis_query_oid
	pinctrl: rockchip: fix reading pull type on rk3568
	net: stmmac: Fix queue statistics reading
	net/sched: sch_taprio: fix possible use-after-free
	l2tp: convert l2tp_tunnel_list to idr
	l2tp: close all race conditions in l2tp_tunnel_register()
	net: usb: sr9700: Handle negative len
	net: mdio: validate parameter addr in mdiobus_get_phy()
	HID: check empty report_list in hid_validate_values()
	HID: check empty report_list in bigben_probe()
	net: stmmac: fix invalid call to mdiobus_get_phy()
	pinctrl: rockchip: fix mux route data for rk3568
	ARM: dts: stm32: Fix qspi pinctrl phandle for stm32mp15xx-dhcor-som
	ARM: dts: stm32: Fix qspi pinctrl phandle for stm32mp15xx-dhcom-som
	ARM: dts: stm32: Fix qspi pinctrl phandle for stm32mp157c-emstamp-argon
	ARM: dts: stm32: Fix qspi pinctrl phandle for stm32mp151a-prtt1l
	HID: revert CHERRY_MOUSE_000C quirk
	block/rnbd-clt: fix wrong max ID in ida_alloc_max
	usb: ucsi: Ensure connector delayed work items are flushed
	usb: gadget: f_fs: Prevent race during ffs_ep0_queue_wait
	usb: gadget: f_fs: Ensure ep0req is dequeued before free_request
	netfilter: conntrack: handle tcp challenge acks during connection reuse
	Bluetooth: Fix a buffer overflow in mgmt_mesh_add()
	Bluetooth: hci_conn: Fix memory leaks
	Bluetooth: hci_sync: fix memory leak in hci_update_adv_data()
	Bluetooth: ISO: Avoid circular locking dependency
	Bluetooth: ISO: Fix possible circular locking dependency
	Bluetooth: hci_event: Fix Invalid wait context
	Bluetooth: Fix possible deadlock in rfcomm_sk_state_change
	net: ipa: disable ipa interrupt during suspend
	net/mlx5e: Avoid false lock dependency warning on tc_ht even more
	net/mlx5: E-switch, Fix setting of reserved fields on MODIFY_SCHEDULING_ELEMENT
	net/mlx5e: QoS, Fix wrongfully setting parent_element_id on MODIFY_SCHEDULING_ELEMENT
	net/mlx5e: Set decap action based on attr for sample
	net/mlx5: E-switch, Fix switchdev mode after devlink reload
	net: mlx5: eliminate anonymous module_init & module_exit
	drm/panfrost: fix GENERIC_ATOMIC64 dependency
	dmaengine: Fix double increment of client_count in dma_chan_get()
	net: macb: fix PTP TX timestamp failure due to packet padding
	virtio-net: correctly enable callback during start_xmit
	l2tp: prevent lockdep issue in l2tp_tunnel_register()
	HID: betop: check shape of output reports
	drm/i915/selftests: Unwind hugepages to drop wakeref on error
	cifs: fix potential deadlock in cache_refresh_path()
	dmaengine: xilinx_dma: call of_node_put() when breaking out of for_each_child_of_node()
	dmaengine: tegra: Fix memory leak in terminate_all()
	phy: phy-can-transceiver: Skip warning if no "max-bitrate"
	drm/amd/display: fix issues with driver unload
	net: sched: gred: prevent races when adding offloads to stats
	nvme-pci: fix timeout request state check
	tcp: avoid the lookup process failing to get sk in ehash table
	usb: dwc3: fix extcon dependency
	ptdma: pt_core_execute_cmd() should use spinlock
	device property: fix of node refcount leak in fwnode_graph_get_next_endpoint()
	w1: fix deadloop in __w1_remove_master_device()
	w1: fix WARNING after calling w1_process()
	driver core: Fix test_async_probe_init saves device in wrong array
	selftests/net: toeplitz: fix race on tpacket_v3 block close
	net: dsa: microchip: ksz9477: port map correction in ALU table entry register
	thermal: Validate new state in cur_state_store()
	thermal/core: fix error code in __thermal_cooling_device_register()
	thermal: core: call put_device() only after device_register() fails
	net: stmmac: enable all safety features by default
	bnxt: Do not read past the end of test names
	tcp: fix rate_app_limited to default to 1
	scsi: iscsi: Fix multiple iSCSI session unbind events sent to userspace
	ASoC: SOF: pm: Set target state earlier
	ASoC: SOF: pm: Always tear down pipelines before DSP suspend
	ASoC: SOF: Add FW state to debugfs
	ASoC: amd: yc: Add Razer Blade 14 2022 into DMI table
	spi: cadence: Fix busy cycles calculation
	cpufreq: CPPC: Add u64 casts to avoid overflowing
	cpufreq: Add Tegra234 to cpufreq-dt-platdev blocklist
	ASoC: mediatek: mt8186: support rt5682s_max98360
	ASoC: mediatek: mt8186: Add machine support for max98357a
	ASoC: amd: yc: Add ASUS M5402RA into DMI table
	ASoC: support machine driver with max98360
	kcsan: test: don't put the expect array on the stack
	cpufreq: Add SM6375 to cpufreq-dt-platdev blocklist
	ASoC: fsl_micfil: Correct the number of steps on SX controls
	drm/msm/a6xx: Avoid gx gbit halt during rpm suspend
	net: usb: cdc_ether: add support for Thales Cinterion PLS62-W modem
	drm: Add orientation quirk for Lenovo ideapad D330-10IGL
	s390/debug: add _ASM_S390_ prefix to header guard
	s390: expicitly align _edata and _end symbols on page boundary
	xen/pvcalls: free active map buffer on pvcalls_front_free_map
	perf/x86/cstate: Add Meteor Lake support
	perf/x86/msr: Add Meteor Lake support
	perf/x86/msr: Add Emerald Rapids
	perf/x86/intel/uncore: Add Emerald Rapids
	nolibc: fix fd_set type
	tools/nolibc: Fix S_ISxxx macros
	tools/nolibc: fix missing includes causing build issues at -O0
	tools/nolibc: prevent gcc from making memset() loop over itself
	cpufreq: armada-37xx: stop using 0 as NULL pointer
	ASoC: fsl_ssi: Rename AC'97 streams to avoid collisions with AC'97 CODEC
	ASoC: fsl-asoc-card: Fix naming of AC'97 CODEC widgets
	ACPI: resource: Skip IRQ override on Asus Expertbook B2402CBA
	drm/amdkfd: Add sync after creating vram bo
	drm/amdkfd: Fix NULL pointer error for GC 11.0.1 on mGPU
	cifs: fix potential memory leaks in session setup
	spi: spidev: remove debug messages that access spidev->spi without locking
	KVM: s390: interrupt: use READ_ONCE() before cmpxchg()
	scsi: hisi_sas: Use abort task set to reset SAS disks when discovered
	scsi: hisi_sas: Set a port invalid only if there are no devices attached when refreshing port id
	r8152: add vendor/device ID pair for Microsoft Devkit
	platform/x86: touchscreen_dmi: Add info for the CSL Panther Tab HD
	platform/x86: asus-nb-wmi: Add alternate mapping for KEY_CAMERA
	platform/x86: asus-nb-wmi: Add alternate mapping for KEY_SCREENLOCK
	platform/x86: asus-wmi: Add quirk wmi_ignore_fan
	platform/x86: asus-wmi: Ignore fan on E410MA
	platform/x86: simatic-ipc: correct name of a model
	platform/x86: simatic-ipc: add another model
	lockref: stop doing cpu_relax in the cmpxchg loop
	ata: pata_cs5535: Don't build on UML
	firmware: coreboot: Check size of table entry and use flex-array
	btrfs: zoned: enable metadata over-commit for non-ZNS setup
	Revert "selftests/bpf: check null propagation only neither reg is PTR_TO_BTF_ID"
	arm64: efi: Recover from synchronous exceptions occurring in firmware
	arm64: efi: Avoid workqueue to check whether EFI runtime is live
	arm64: efi: Account for the EFI runtime stack in stack unwinder
	Bluetooth: hci_sync: cancel cmd_timer if hci_open failed
	drm/i915: Allow panel fixed modes to have differing sync polarities
	drm/i915: Allow alternate fixed modes always for eDP
	drm/amdgpu: complete gfxoff allow signal during suspend without delay
	io_uring/msg_ring: fix remote queue to disabled ring
	wifi: mac80211: Proper mark iTXQs for resumption
	wifi: mac80211: Fix iTXQ AMPDU fragmentation handling
	sched/fair: Check if prev_cpu has highest spare cap in feec()
	sched/uclamp: Fix a uninitialized variable warnings
	vfio/type1: Respect IOMMU reserved regions in vfio_test_domain_fgsp()
	scsi: hpsa: Fix allocation size for scsi_host_alloc()
	kvm/vfio: Fix potential deadlock on vfio group_lock
	nfsd: don't free files unconditionally in __nfsd_file_cache_purge
	module: Don't wait for GOING modules
	ftrace: Export ftrace_free_filter() to modules
	tracing: Make sure trace_printk() can output as soon as it can be used
	trace_events_hist: add check for return value of 'create_hist_field'
	ftrace/scripts: Update the instructions for ftrace-bisect.sh
	cifs: Fix oops due to uncleared server->smbd_conn in reconnect
	ksmbd: add max connections parameter
	ksmbd: do not sign response to session request for guest login
	ksmbd: downgrade ndr version error message to debug
	ksmbd: limit pdu length size according to connection status
	ovl: fix tmpfile leak
	ovl: fail on invalid uid/gid mapping at copy up
	io_uring/net: cache provided buffer group value for multishot receives
	KVM: x86/vmx: Do not skip segment attributes if unusable bit is set
	KVM: arm64: GICv4.1: Fix race with doorbell on VPE activation/deactivation
	scsi: ufs: core: Fix devfreq deadlocks
	riscv: fix -Wundef warning for CONFIG_RISCV_BOOT_SPINWAIT
	thermal: intel: int340x: Protect trip temperature from concurrent updates
	regulator: dt-bindings: samsung,s2mps14: add lost samsung,ext-control-gpios
	ipv6: fix reachability confirmation with proxy_ndp
	ARM: 9280/1: mm: fix warning on phys_addr_t to void pointer assignment
	EDAC/device: Respect any driver-supplied workqueue polling value
	EDAC/qcom: Do not pass llcc_driv_data as edac_device_ctl_info's pvt_info
	platform/x86: thinkpad_acpi: Fix profile modes on Intel platforms
	drm/display/dp_mst: Correct the kref of port.
	drm/amd/pm: add missing AllowIHInterrupt message mapping for SMU13.0.0
	drm/amdgpu: remove unconditional trap enable on add gfx11 queues
	drm/amdgpu/display/mst: Fix mst_state->pbn_div and slot count assignments
	drm/amdgpu/display/mst: limit payload to be updated one by one
	drm/amdgpu/display/mst: update mst_mgr relevant variable when long HPD
	io_uring: inline io_req_task_work_add()
	io_uring: inline __io_req_complete_post()
	io_uring: hold locks for io_req_complete_failed
	io_uring: use io_req_task_complete() in timeout
	io_uring: remove io_req_tw_post_queue
	io_uring: inline __io_req_complete_put()
	net: mana: Fix IRQ name - add PCI and queue number
	io_uring: always prep_async for drain requests
	i2c: designware: use casting of u64 in clock multiplication to avoid overflow
	i2c: designware: Fix unbalanced suspended flag
	drm/drm_vma_manager: Add drm_vma_node_allow_once()
	drm/i915: Fix a memory leak with reused mmap_offset
	iavf: fix temporary deadlock and failure to set MAC address
	iavf: schedule watchdog immediately when changing primary MAC
	netlink: prevent potential spectre v1 gadgets
	net: fix UaF in netns ops registration error path
	net: fec: Use page_pool_put_full_page when freeing rx buffers
	nvme: simplify transport specific device attribute handling
	nvme: consolidate setting the tagset flags
	nvme-fc: fix initialization order
	drm/i915/selftest: fix intel_selftest_modify_policy argument types
	ACPI: video: Add backlight=native DMI quirk for HP Pavilion g6-1d80nr
	ACPI: video: Add backlight=native DMI quirk for HP EliteBook 8460p
	ACPI: video: Add backlight=native DMI quirk for Asus U46E
	netfilter: nft_set_rbtree: Switch to node list walk for overlap detection
	netfilter: nft_set_rbtree: skip elements in transaction from garbage collection
	netlink: annotate data races around nlk->portid
	netlink: annotate data races around dst_portid and dst_group
	netlink: annotate data races around sk_state
	ipv4: prevent potential spectre v1 gadget in ip_metrics_convert()
	ipv4: prevent potential spectre v1 gadget in fib_metrics_match()
	net: dsa: microchip: fix probe of I2C-connected KSZ8563
	net: ethernet: adi: adin1110: Fix multicast offloading
	netfilter: conntrack: fix vtag checks for ABORT/SHUTDOWN_COMPLETE
	netrom: Fix use-after-free of a listening socket.
	platform/x86: asus-wmi: Fix kbd_dock_devid tablet-switch reporting
	platform/x86: apple-gmux: Move port defines to apple-gmux.h
	platform/x86: apple-gmux: Add apple_gmux_detect() helper
	ACPI: video: Fix apple gmux detection
	tracing/osnoise: Use built-in RCU list checking
	net/sched: sch_taprio: do not schedule in taprio_reset()
	sctp: fail if no bound addresses can be used for a given scope
	riscv/kprobe: Fix instruction simulation of JALR
	nvme: fix passthrough csi check
	gpio: mxc: Unlock on error path in mxc_flip_edge()
	gpio: ep93xx: Fix port F hwirq numbers in handler
	net: ravb: Fix lack of register setting after system resumed for Gen3
	net: ravb: Fix possible hang if RIS2_QFF1 happen
	net: mctp: add an explicit reference from a mctp_sk_key to sock
	net: mctp: move expiry timer delete to unhash
	net: mctp: hold key reference when looking up a general key
	net: mctp: mark socks as dead on unhash, prevent re-add
	thermal: intel: int340x: Add locking to int340x_thermal_get_trip_type()
	riscv: Move call to init_cpu_topology() to later initialization stage
	net/tg3: resolve deadlock in tg3_reset_task() during EEH
	tsnep: Fix TX queue stop/wake for multiple queues
	net: mdio-mux-meson-g12a: force internal PHY off on mux switch
	Partially revert "perf/arm-cmn: Optimise DTC counter accesses"
	block: ublk: move ublk_chr_class destroying after devices are removed
	treewide: fix up files incorrectly marked executable
	tools: gpio: fix -c option of gpio-event-mon
	Fix up more non-executable files marked executable
	Revert "mm/compaction: fix set skip in fast_find_migrateblock"
	Revert "Input: synaptics - switch touchpad on HP Laptop 15-da3001TU to RMI mode"
	Input: i8042 - add Clevo PCX0DX to i8042 quirk table
	x86/sev: Add SEV-SNP guest feature negotiation support
	acpi: Fix suspend with Xen PV
	dt-bindings: riscv: fix underscore requirement for multi-letter extensions
	dt-bindings: riscv: fix single letter canonical order
	x86/i8259: Mark legacy PIC interrupts with IRQ_LEVEL
	dt-bindings: i2c: renesas,rzv2m: Fix SoC specific string
	netfilter: conntrack: unify established states for SCTP paths
	perf/x86/amd: fix potential integer overflow on shift of a int
	amdgpu: fix build on non-DCN platforms.
	Linux 6.1.9

Change-Id: I750dee519337922880b87841f6732565961c6b0a
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
2023-02-01 09:12:59 +00:00
Greg Kroah-Hartman
68a95455c1 Linux 6.1.9
Link: https://lore.kernel.org/r/20230130134336.532886729@linuxfoundation.org
Tested-by: Florian Fainelli <f.fainelli@gmail.com>
Tested-by: Shuah Khan <skhan@linuxfoundation.org>
Link: https://lore.kernel.org/r/20230130181611.883327545@linuxfoundation.org
Tested-by: Conor Dooley <conor.dooley@microchip.com>
Tested-by: Justin M. Forbes <jforbes@fedoraproject.org>
Tested-by: Takeshi Ogasawara <takeshi.ogasawara@futuring-girl.com>
Tested-by: Ronald Warsow <rwarsow@gmx.de>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Tested-by: Bagas Sanjaya <bagasdotme@gmail.com>
Tested-by: Sudip Mukherjee <sudip.mukherjee@codethink.co.uk>
Tested-by: Salvatore Bonaccorso <carnil@debian.org>
Link: https://lore.kernel.org/r/20230131072621.746783417@linuxfoundation.org
Tested-by: Ronald Warsow <rwarsow@gmx.de>
Tested-by: Bagas Sanjaya <bagasdotme@gmail.com>
Tested-by: Takeshi Ogasawara <takeshi.ogasawara@futuring-girl.com>
Tested-by: Jon Hunter <jonathanh@nvidia.com>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Tested-by: Linux Kernel Functional Testing <lkft@linaro.org>
Tested-by: Allen Pais <apais@linux.microsoft.com>
Tested-by: Fenil Jain <fkjainco@gmail.com>
Tested-by: Florian Fainelli <f.fainelli@gmail.com>
Tested-by: Ron Economos <re@w6rz.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-01 08:38:58 +01:00
Dave Airlie
432ddb5765 amdgpu: fix build on non-DCN platforms.
commit f439a959dc upstream.

This fixes the build here locally on my 32-bit arm build.

Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-01 08:34:51 +01:00
Colin Ian King
a4d01fb87e perf/x86/amd: fix potential integer overflow on shift of a int
commit 08245672cd upstream.

The left shift of int 32 bit integer constant 1 is evaluated using 32 bit
arithmetic and then passed as a 64 bit function argument. In the case where
i is 32 or more this can lead to an overflow.  Avoid this by shifting
using the BIT_ULL macro instead.

Fixes: 471af006a7 ("perf/x86/amd: Constrain Large Increment per Cycle events")
Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Ian Rogers <irogers@google.com>
Acked-by: Kim Phillips <kim.phillips@amd.com>
Link: https://lore.kernel.org/r/20221202135149.1797974-1-colin.i.king@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-01 08:34:51 +01:00
Sriram Yagnaraman
dc1ccb4c0f netfilter: conntrack: unify established states for SCTP paths
commit a44b765148 upstream.

An SCTP endpoint can start an association through a path and tear it
down over another one. That means the initial path will not see the
shutdown sequence, and the conntrack entry will remain in ESTABLISHED
state for 5 days.

By merging the HEARTBEAT_ACKED and ESTABLISHED states into one
ESTABLISHED state, there remains no difference between a primary or
secondary path. The timeout for the merged ESTABLISHED state is set to
210 seconds (hb_interval * max_path_retrans + rto_max). So, even if a
path doesn't see the shutdown sequence, it will expire in a reasonable
amount of time.

With this change in place, there is now more than one state from which
we can transition to ESTABLISHED, COOKIE_ECHOED and HEARTBEAT_SENT, so
handle the setting of ASSURED bit whenever a state change has happened
and the new state is ESTABLISHED. Removed the check for dir==REPLY since
the transition to ESTABLISHED can happen only in the reply direction.

Fixes: 9fb9cbb108 ("[NETFILTER]: Add nf_conntrack subsystem.")
Signed-off-by: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-01 08:34:51 +01:00
Fabrizio Castro
70654f9950 dt-bindings: i2c: renesas,rzv2m: Fix SoC specific string
commit 0a4eecf96c upstream.

The preferred form for Renesas' compatible strings is:
"<vendor>,<family>-<module>"

Somehow the compatible string for the r9a09g011 I2C IP was upstreamed
as renesas,i2c-r9a09g011 instead of renesas,r9a09g011-i2c, which
is really confusing, especially considering the generic fallback
is renesas,rzv2m-i2c.

The first user of renesas,i2c-r9a09g011 in the kernel is not yet in
a kernel release, it will be in v6.1, therefore it can still be
fixed in v6.1.
Even if we don't fix it before v6.2, I don't think there is any
harm in making such a change.

s/renesas,i2c-r9a09g011/renesas,r9a09g011-i2c/g for consistency.

Fixes: ba7a4d15e2 ("dt-bindings: i2c: Document RZ/V2M I2C controller")
Signed-off-by: Fabrizio Castro <fabrizio.castro.jz@renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-01 08:34:51 +01:00
Thomas Gleixner
137f1b47da x86/i8259: Mark legacy PIC interrupts with IRQ_LEVEL
commit 5fa5595072 upstream.

Baoquan reported that after triggering a crash the subsequent crash-kernel
fails to boot about half of the time. It triggers a NULL pointer
dereference in the periodic tick code.

This happens because the legacy timer interrupt (IRQ0) is resent in
software which happens in soft interrupt (tasklet) context. In this context
get_irq_regs() returns NULL which leads to the NULL pointer dereference.

The reason for the resend is a spurious APIC interrupt on the IRQ0 vector
which is captured and leads to a resend when the legacy timer interrupt is
enabled. This is wrong because the legacy PIC interrupts are level
triggered and therefore should never be resent in software, but nothing
ever sets the IRQ_LEVEL flag on those interrupts, so the core code does not
know about their trigger type.

Ensure that IRQ_LEVEL is set when the legacy PCI interrupts are set up.

Fixes: a4633adcdb ("[PATCH] genirq: add genirq sw IRQ-retrigger")
Reported-by: Baoquan He <bhe@redhat.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Baoquan He <bhe@redhat.com>
Link: https://lore.kernel.org/r/87mt6rjrra.ffs@tglx
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-01 08:34:50 +01:00
Conor Dooley
9291e7f6f9 dt-bindings: riscv: fix single letter canonical order
commit a943385aa8 upstream.

I used the wikipedia table for ordering extensions when updating the
pattern here in commit 299824e68b ("dt-bindings: riscv: add new
riscv,isa strings for emulators").

Unfortunately that table did not match canonical order, as defined by
the RISC-V ISA Manual, which defines extension ordering in (what is
currently) Table 41, "Standard ISA extension names". Fix things up by
re-sorting v (vector) and adding p (packed-simd) & j (dynamic
languages). The e (reduced integer) and g (general) extensions are still
intentionally left out.

Link: https://github.com/riscv/riscv-isa-manual/releases/tag/riscv-unpriv-pdf-from-asciidoc-15112022 # Chapter 29.5
Fixes: 299824e68b ("dt-bindings: riscv: add new riscv,isa strings for emulators")
Acked-by: Guo Ren <guoren@kernel.org>
Reviewed-by: Heiko Stuebner <heiko@sntech.de>
Reviewed-by: Palmer Dabbelt <palmer@rivosinc.com>
Acked-by: Palmer Dabbelt <palmer@rivosinc.com>
Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221205174459.60195-3-conor@kernel.org
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-01 08:34:50 +01:00
Conor Dooley
709f785b62 dt-bindings: riscv: fix underscore requirement for multi-letter extensions
commit ec64efc496 upstream.

The RISC-V ISA Manual allows the first multi-letter extension to avoid
a leading underscore. Underscores are only required between multi-letter
extensions.

The dt-binding does not validate that a multi-letter extension is
canonically ordered, as that'd need an even worse regex than is here,
but it should not fail validation for valid ISA strings.

Allow the first multi-letter extension to appear immediately after
the single-letter extensions.

Link: https://github.com/riscv/riscv-isa-manual/releases/tag/riscv-unpriv-pdf-from-asciidoc-15112022 # Chapter 29.5
Fixes: 299824e68b ("dt-bindings: riscv: add new riscv,isa strings for emulators")
Acked-by: Guo Ren <guoren@kernel.org>
Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
Acked-by: Rob Herring <robh@kernel.org>
Reviewed-by: Palmer Dabbelt <palmer@rivosinc.com>
Acked-by: Palmer Dabbelt <palmer@rivosinc.com>
Link: https://lore.kernel.org/r/20221205174459.60195-2-conor@kernel.org
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-01 08:34:50 +01:00
Juergen Gross
b96903b7fc acpi: Fix suspend with Xen PV
commit fe0ba8c23f upstream.

Commit f1e5250094 ("x86/boot: Skip realmode init code when running as
Xen PV guest") missed one code path accessing real_mode_header, leading
to dereferencing NULL when suspending the system under Xen:

    [  348.284004] PM: suspend entry (deep)
    [  348.289532] Filesystems sync: 0.005 seconds
    [  348.291545] Freezing user space processes ... (elapsed 0.000 seconds) done.
    [  348.292457] OOM killer disabled.
    [  348.292462] Freezing remaining freezable tasks ... (elapsed 0.104 seconds) done.
    [  348.396612] printk: Suspending console(s) (use no_console_suspend to debug)
    [  348.749228] PM: suspend devices took 0.352 seconds
    [  348.769713] ACPI: EC: interrupt blocked
    [  348.816077] BUG: kernel NULL pointer dereference, address: 000000000000001c
    [  348.816080] #PF: supervisor read access in kernel mode
    [  348.816081] #PF: error_code(0x0000) - not-present page
    [  348.816083] PGD 0 P4D 0
    [  348.816086] Oops: 0000 [#1] PREEMPT SMP NOPTI
    [  348.816089] CPU: 0 PID: 6764 Comm: systemd-sleep Not tainted 6.1.3-1.fc32.qubes.x86_64 #1
    [  348.816092] Hardware name: Star Labs StarBook/StarBook, BIOS 8.01 07/03/2022
    [  348.816093] RIP: e030:acpi_get_wakeup_address+0xc/0x20

Fix that by adding an optional acpi callback allowing to skip setting
the wakeup address, as in the Xen PV case this will be handled by the
hypervisor anyway.

Fixes: f1e5250094 ("x86/boot: Skip realmode init code when running as Xen PV guest")
Reported-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://lore.kernel.org/all/20230117155724.22940-1-jgross%40suse.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-02-01 08:34:50 +01:00