Date: Fri, 5 Jul 2024 16:45:39 -0600 From: Shuah Khan To: "Rafael J. Wysocki" Cc: Thomas Renninger , Shuah Khan , shuah , linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL] cpupower second update for Linux 6.11-rc1 This is a multi-part message in MIME format. --------------boPeTQlb4MMG8ACs0OicDOlH Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Rafael, Please pull the following cpupower second update for Linux 6.11-rc1. This cpupower second update for Linux 6.11-rc1 consists of -- fix to install cpupower library in standard librray intall location - /usr/lib -- disable direct build of cpupower bench as it can only be built from the cpupower main makefile. diff is attached. thanks, -- Shuah ---------------------------------------------------------------- The following changes since commit 3e1f12c26646eb0ad67d3eaefd32f765997da6a8: cpupower: Change the var type of the 'monitor' subcommand display mode (2024-06-20 10:08:08 -0600) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux tags/linux-cpupower-6.11-rc1-2 for you to fetch changes up to 3a5bb5066f4c7170e850b930e84b1075e25f8e90: cpupower: fix lib default installation path (2024-07-02 15:30:32 -0600) ---------------------------------------------------------------- linux-cpupower-6.11-rc1-2 This cpupower second update for Linux 6.11-rc1 consists of -- fix to install cpupower library in standard librray intall location - /usr/lib -- disable direct build of cpupower bench as it can only be built from the cpupower main makefile. ---------------------------------------------------------------- Roman Storozhenko (2): cpupower: Disable direct build of the 'bench' subproject cpupower: fix lib default installation path tools/power/cpupower/Makefile | 10 +--------- tools/power/cpupower/bench/Makefile | 5 +++++ 2 files changed, 6 insertions(+), 9 deletions(-) ---------------------------------------------------------------- --------------boPeTQlb4MMG8ACs0OicDOlH Content-Type: text/x-patch; charset=UTF-8; name="linux-cpupower-6.11-rc1-2.diff" Content-Disposition: attachment; filename="linux-cpupower-6.11-rc1-2.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL3Rvb2xzL3Bvd2VyL2NwdXBvd2VyL01ha2VmaWxlIGIvdG9vbHMvcG93 ZXIvY3B1cG93ZXIvTWFrZWZpbGUKaW5kZXggY2QwMjI1YTMxMmI0Li42YzAyZjQwMTA2OWUg MTAwNjQ0Ci0tLSBhL3Rvb2xzL3Bvd2VyL2NwdXBvd2VyL01ha2VmaWxlCisrKyBiL3Rvb2xz L3Bvd2VyL2NwdXBvd2VyL01ha2VmaWxlCkBAIC02Nyw2ICs2Nyw3IEBAIExBTkdVQUdFUyA9 IAkJCWRlIGZyIGl0IGNzIHB0IGthCiBiaW5kaXIgPz0JL3Vzci9iaW4KIHNiaW5kaXIgPz0J L3Vzci9zYmluCiBtYW5kaXIgPz0JL3Vzci9tYW4KK2xpYmRpciA/PQkvdXNyL2xpYgogaW5j bHVkZWRpciA/PQkvdXNyL2luY2x1ZGUKIGxvY2FsZWRpciA/PQkvdXNyL3NoYXJlL2xvY2Fs ZQogZG9jZGlyID89ICAgICAgIC91c3Ivc2hhcmUvZG9jL3BhY2thZ2VzL2NwdXBvd2VyCkBA IC05NCwxNSArOTUsNiBAQCBSQU5MSUIgPSAkKENST1NTKXJhbmxpYgogSE9TVENDID0gZ2Nj CiBNS0RJUiA9IG1rZGlyCiAKLSMgNjRiaXQgbGlicmFyeSBkZXRlY3Rpb24KLWluY2x1ZGUg Li4vLi4vc2NyaXB0cy9NYWtlZmlsZS5hcmNoCi0KLWlmZXEgKCQoSVNfNjRfQklUKSwgMSkK LWxpYmRpciA/PQkvdXNyL2xpYjY0Ci1lbHNlCi1saWJkaXIgPz0JL3Vzci9saWIKLWVuZGlm Ci0KICMgTm93IHdlIHNldCB1cCB0aGUgYnVpbGQgc3lzdGVtCiAjCiAKZGlmZiAtLWdpdCBh L3Rvb2xzL3Bvd2VyL2NwdXBvd2VyL2JlbmNoL01ha2VmaWxlIGIvdG9vbHMvcG93ZXIvY3B1 cG93ZXIvYmVuY2gvTWFrZWZpbGUKaW5kZXggYTRiOTAyZjllMWM0Li4zNGU1ODk0NDc2ZWIg MTAwNjQ0Ci0tLSBhL3Rvb2xzL3Bvd2VyL2NwdXBvd2VyL2JlbmNoL01ha2VmaWxlCisrKyBi L3Rvb2xzL3Bvd2VyL2NwdXBvd2VyL2JlbmNoL01ha2VmaWxlCkBAIC0xLDQgKzEsOSBAQAog IyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMAoraWZlcSAoJChNQUtFTEVWRUwp LDApCiskKGVycm9yIFRoaXMgTWFrZWZpbGUgaXMgbm90IGludGVuZGVkIHRvIGJlIHJ1biBz dGFuZGFsb25lLCBidXQgb25seSBhcyBhIHBhcnQgXAorb2YgdGhlICBtYWluIG9uZSBpbiB0 aGUgcGFyZW50IGRpcikKK2VuZGlmCisKIE9VVFBVVCA6PSAuLwogaWZlcSAoIiQob3JpZ2lu IE8pIiwgImNvbW1hbmQgbGluZSIpCiBpZm5lcSAoJChPKSwpCg== --------------boPeTQlb4MMG8ACs0OicDOlH-- . Date: Sat, 6 Jul 2024 15:20:02 +0200 From: Wolfram Sang To: Linus Torvalds Cc: linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org, Peter Rosin , Bartosz Golaszewski , Andi Shyti Subject: [PULL REQUEST] i2c-for-6.10-rc7 --w4BAlaxAov1f3nQ1 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline The following changes since commit 22a40d14b572deb80c0648557f4bd502d7e83826: Linux 6.10-rc6 (2024-06-30 14:40:44 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git tags/i2c-for-6.10-rc7 for you to fetch changes up to b46803320c6ee2251de72d68f576a41aadbba17d: Merge tag 'i2c-host-fixes-6.10-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/andi.shyti/linux into i2c/for-current (2024-07-05 16:08:55 +0200) ---------------------------------------------------------------- Passing through an I2C driver fix ---------------------------------------------------------------- Piotr Wojtaszczyk (1): i2c: pnx: Fix potential deadlock warning from del_timer_sync() call in isr Wolfram Sang (1): Merge tag 'i2c-host-fixes-6.10-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/andi.shyti/linux into i2c/for-current drivers/i2c/busses/i2c-pnx.c | 48 +++++++++----------------------------------- 1 file changed, 10 insertions(+), 38 deletions(-) --w4BAlaxAov1f3nQ1 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEOZGx6rniZ1Gk92RdFA3kzBSgKbYFAmaJRIEACgkQFA3kzBSg KbYdgQ//dTOrvDZKsPtk3r/imD65FyPOZKX+rIPiuHBJLLVjnwTaJaqM+kUd6061 PZqwNhPQVD6/9AuiGRw6NtSIhfnUKHimI2wUFX1twOY2issqYckT3jjqZ6iQHENP fsP1C3HQN/qLBtdwwOYX72AIQJWkgfipUWr1guk45B+vbOGd4LDgJBlGnoyDzeHI tlH0sLf7TTW5CttzPssPLOJZlJtJ2F6zUSbiGSWJqGdJ5WMZdEe4xQmUH28f5Tx9 T5A2TbSidx7+dCuKMxSBGYtS+2vOUsVApgQN04NzhJ20JXWTuF/BWIFSHSyatzex skamGlazj93ECz+3KshH3sZyMO57h+FVf3aorSPwV7HYNA4gwtbG4nyYEXBFFc+F SXfux7u9pYsXqKMEPsa7NqRhKhXhAityFvAPNKQXWwXiTeuVijRXpjDzF2BWxoLx 3vXev9BdnCHtJr5TE5ULwdG5owMbs4/aKYcz3v+j7ApIgS/i9kTPYqga6of5E4eG LPaC/hipDYK+uLRM8BQcThOLcg73wFSq8OTf8EMx3EEevZPsycL9GJ3qjsKw9lJy zyKy+xniwq7n0exkfwLS2ocCy9LUIFHwyFZyf/OgXG+bJquamxEQxJykLaDyY24V 3hCD6jnz4/N7ND2ZdV5wIFPxdMpiaZkBaIAuaXN3KByyhCniwWY= =USBK -----END PGP SIGNATURE----- --w4BAlaxAov1f3nQ1-- . Date: Sat, 6 Jul 2024 16:56:16 -0500 From: Steve French To: Linus Torvalds Cc: LKML , CIFS , David Howells Subject: [GIT PULL] smb3 client fix Please pull the following changes since commit 22a40d14b572deb80c0648557f4bd502d7e83826: Linux 6.10-rc6 (2024-06-30 14:40:44 -0700) are available in the Git repository at: git://git.samba.org/sfrench/cifs-2.6.git tags/6.10-rc6-smb3-client-fix for you to fetch changes up to 08f70c0a930c00d25015fed7e3b7c5370d60be24: cifs: Fix read-performance regression by dropping readahead expansion (2024-07-02 21:23:41 -0500) ---------------------------------------------------------------- fix for smb3 readahead performance regression ---------------------------------------------------------------- David Howells (1): cifs: Fix read-performance regression by dropping readahead expansion fs/smb/client/file.c | 30 ------------------------------ 1 file changed, 30 deletions(-) -- Thanks, Steve . Date: Sun, 07 Jul 2024 09:28:50 +1000 From: Michael Ellerman To: Linus Torvalds Cc: anjalik@linux.ibm.com, ganeshgr@linux.ibm.com, jinglin.wen@shingroup.cn, linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, npiggin@gmail.com Subject: [GIT PULL] Please pull powerpc/linux.git powerpc-6.10-4 tag -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Hi Linus, Please pull some more powerpc fixes for 6.10: The following changes since commit a986fa57fd81a1430e00b3c6cf8a325d6f894a63: KVM: PPC: Book3S HV: Prevent UAF in kvm_spapr_tce_attach_iommu_group() (2024-06-16 10:20:11 +1000) are available in the git repository at: https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git tags/powerpc-6.10-4 for you to fetch changes up to 8b7f59de92ac65aa21c7d779274dbfa577ae2d2c: selftests/powerpc: Fix build with USERCFLAGS set (2024-07-06 22:10:14 +1000) - ------------------------------------------------------------------ powerpc fixes for 6.10 #4 - Fix unnecessary copy to 0 when kernel is booted at address 0. - Fix usercopy crash when dumping dtl via debugfs. - Avoid possible crash when PCI hotplug races with error handling. - Fix kexec crash caused by scv being disabled before other CPUs call-in. - Fix powerpc selftests build with USERCFLAGS set. Thanks to: Anjali K, Ganesh Goudar, Gautam Menghani, Jinglin Wen, Nicholas Piggin, Sourabh Jain, Srikar Dronamraju, Vishal Chourasia. - ------------------------------------------------------------------ Anjali K (1): powerpc/pseries: Whitelist dtl slub object for copying to userspace Ganesh Goudar (1): powerpc/eeh: avoid possible crash when edev->pdev changes Jinglin Wen (1): powerpc/64s: Fix unnecessary copy to 0 when kernel is booted at address 0 Michael Ellerman (1): selftests/powerpc: Fix build with USERCFLAGS set Nicholas Piggin (1): powerpc/pseries: Fix scv instruction crash with kexec arch/powerpc/kernel/eeh_pe.c | 7 +++++-- arch/powerpc/kernel/head_64.S | 5 +++-- arch/powerpc/kexec/core_64.c | 11 +++++++++++ arch/powerpc/platforms/pseries/kexec.c | 8 -------- arch/powerpc/platforms/pseries/pseries.h | 1 - arch/powerpc/platforms/pseries/setup.c | 5 ++--- tools/testing/selftests/powerpc/flags.mk | 5 +---- 7 files changed, 22 insertions(+), 20 deletions(-) -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEJFGtCPCthwEv2Y/bUevqPMjhpYAFAmaJ0hYACgkQUevqPMjh pYB1uBAAhxsR3VV+XLbJTkhEARgUdzZt+8AMk4oc7dzPx1xUIavXJqaMGdoCGDcu 0atvYlyel2CAFHbjRkaIzOxg2ZUtXdOvio4udeFvb48DCnaaH0WsOdG70OIThtX0 Zl+lkRgRy5SM1KPJUa+o9ygvi90ZNbOV358h/ar9l4O7EULmOqZwlZYAhlEYr25B MtvX6ZONGOgl5SxVr9+55vLm0/g97OzuGmi343XHEdHjBhH5HkcKi8Z5XkwYFGOt cExZFVtWnayM+PsUkympt3o5Zchb+oc1EUAJWUILQJQMHx89atc9Q0pxZyi7XXA/ tT8mq0O78+iZbK1UuQ3qgE1/YPrHCdX8Glo0AmGoSem8P41HlWyamK28U4aK6VWd iqJCb25EZmKs5uo4Z0F10jswjc9QOgFftzgM74GCLkZ74vx3ubw9vKacRb/SkdLi vQz0M0Gh73tqwfjN0W3gRwWblCim3kCoHVBb8CmiB0YeDoq7nu2+ow94WFrhlvs+ /HFOQ5NgnMhjzytmeAzWOk0s/xOXPCwbrEUjfRxRg5cZCWXUuO6XmeO547pZy2Ke JwBWO+Hi9b5jwC/5LEQZ3wJ2rjSCJwDKT8MwqvcSSsEXvpGvsjMCi4mTqVVlbRkQ qz/lv0PozyavP/AUPamX0wZ0k5df/XDkX1qxoxyG/x1HXlwDhJ4= =7pyj -----END PGP SIGNATURE----- . Date: Sun, 7 Jul 2024 10:55:58 -0700 From: Stephen Boyd To: Linus Torvalds Cc: Michael Turquette , linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL] clk fixes for v6.10-rc6 The following changes since commit 2607133196c35f31892ee199ce7ffa717bea4ad1: clk: sifive: Do not register clkdevs for PRCI clocks (2024-05-29 12:31:02 -0700) are available in the Git repository at: https://git.kernel.org/pub/scm/linux/kernel/git/clk/linux.git tags/clk-fixes-for-linus for you to fetch changes up to 10f84de27bd05bd2648512975d085dbe0a1e71c3: Merge tag 'qcom-clk-fixes-for-6.10' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into clk-fixes (2024-07-02 12:03:15 -0700) ---------------------------------------------------------------- A set of clk fixes for the Qualcomm, Mediatek, and Allwinner drivers: - Fix the Qualcomm Stromer Plus PLL set_rate() clk_op to explicitly set the alpha enable bit and not set bits that don't exist - Mark Qualcomm IPQ9574 crypto clks as voted to avoid stuck clk warnings - Fix the parent of some PLLs on Qualcomm sm6530 so their rate is correct - Fix the min/max rate clamping logic in the Allwinner driver that got broken in v6.9 - Limit runtime PM enabling in the Mediatek driver to only mt8183-mfgcfg so that system wide resume doesn't break on other Mediatek SoCs ---------------------------------------------------------------- Frank Oltmanns (1): clk: sunxi-ng: common: Don't call hw_to_ccu_common on hw without common Gabor Juhos (2): clk: qcom: clk-alpha-pll: set ALPHA_EN bit for Stromer Plus PLLs clk: qcom: apss-ipq-pll: remove 'config_ctl_hi_val' from Stromer pll configs Luca Weiss (1): clk: qcom: gcc-sm6350: Fix gpll6* & gpll7 parents Md Sadre Alam (1): clk: qcom: gcc-ipq9574: Add BRANCH_HALT_VOTED flag Pin-yen Lin (1): clk: mediatek: mt8183: Only enable runtime PM on mt8183-mfgcfg Stephen Boyd (2): Merge tag 'sunxi-clk-fixes-for-6.10' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into clk-fixes Merge tag 'qcom-clk-fixes-for-6.10' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into clk-fixes drivers/clk/mediatek/clk-mt8183-mfgcfg.c | 1 + drivers/clk/mediatek/clk-mtk.c | 24 ++++++++++++++---------- drivers/clk/mediatek/clk-mtk.h | 2 ++ drivers/clk/qcom/apss-ipq-pll.c | 2 -- drivers/clk/qcom/clk-alpha-pll.c | 3 +++ drivers/clk/qcom/gcc-ipq9574.c | 10 ++++++---- drivers/clk/qcom/gcc-sm6350.c | 10 +++++----- drivers/clk/sunxi-ng/ccu_common.c | 18 ++++++++++++------ 8 files changed, 43 insertions(+), 27 deletions(-) -- https://git.kernel.org/pub/scm/linux/kernel/git/clk/linux.git/ https://git.kernel.org/pub/scm/linux/kernel/git/sboyd/spmi.git . Date: Mon, 8 Jul 2024 12:25:19 +0200 From: Krzysztof Kozlowski To: Linus Walleij Cc: Peng Fan , linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, Krzysztof Kozlowski Subject: [PATCH PULL] pinctrl: samsung: Use scope based of_node_put() cleanups From: Peng Fan Use scope based of_node_put() cleanup to simplify code. Signed-off-by: Peng Fan Link: https://lore.kernel.org/r/20240504-pinctrl-cleanup-v2-20-26c5f2dc1181@nxp.com Signed-off-by: Krzysztof Kozlowski --- Hi Linus, I got only this one in the queue, so sending directly. Best regards, Krzysztof drivers/pinctrl/samsung/pinctrl-exynos.c | 16 ++++------------ drivers/pinctrl/samsung/pinctrl-samsung.c | 19 +++++-------------- 2 files changed, 9 insertions(+), 26 deletions(-) diff --git a/drivers/pinctrl/samsung/pinctrl-exynos.c b/drivers/pinctrl/samsung/pinctrl-exynos.c index ce5e6783b5b9..b79c211c0374 100644 --- a/drivers/pinctrl/samsung/pinctrl-exynos.c +++ b/drivers/pinctrl/samsung/pinctrl-exynos.c @@ -662,7 +662,7 @@ static void exynos_irq_demux_eint16_31(struct irq_desc *desc) __init int exynos_eint_wkup_init(struct samsung_pinctrl_drv_data *d) { struct device *dev = d->dev; - struct device_node *wkup_np = NULL; + struct device_node *wkup_np __free(device_node) = NULL; struct device_node *np; struct samsung_pin_bank *bank; struct exynos_weint_data *weint_data; @@ -692,17 +692,14 @@ __init int exynos_eint_wkup_init(struct samsung_pinctrl_drv_data *d) bank->irq_chip = devm_kmemdup(dev, irq_chip, sizeof(*irq_chip), GFP_KERNEL); - if (!bank->irq_chip) { - of_node_put(wkup_np); + if (!bank->irq_chip) return -ENOMEM; - } bank->irq_chip->chip.name = bank->name; bank->irq_domain = irq_domain_create_linear(bank->fwnode, bank->nr_pins, &exynos_eint_irqd_ops, bank); if (!bank->irq_domain) { dev_err(dev, "wkup irq domain add failed\n"); - of_node_put(wkup_np); return -ENXIO; } @@ -715,10 +712,8 @@ __init int exynos_eint_wkup_init(struct samsung_pinctrl_drv_data *d) weint_data = devm_kcalloc(dev, bank->nr_pins, sizeof(*weint_data), GFP_KERNEL); - if (!weint_data) { - of_node_put(wkup_np); + if (!weint_data) return -ENOMEM; - } for (idx = 0; idx < bank->nr_pins; ++idx) { irq = irq_of_parse_and_map(to_of_node(bank->fwnode), idx); @@ -735,13 +730,10 @@ __init int exynos_eint_wkup_init(struct samsung_pinctrl_drv_data *d) } } - if (!muxed_banks) { - of_node_put(wkup_np); + if (!muxed_banks) return 0; - } irq = irq_of_parse_and_map(wkup_np, 0); - of_node_put(wkup_np); if (!irq) { dev_err(dev, "irq number for muxed EINTs not found\n"); return 0; diff --git a/drivers/pinctrl/samsung/pinctrl-samsung.c b/drivers/pinctrl/samsung/pinctrl-samsung.c index 623df65a5d6f..a7deae4afdcc 100644 --- a/drivers/pinctrl/samsung/pinctrl-samsung.c +++ b/drivers/pinctrl/samsung/pinctrl-samsung.c @@ -251,7 +251,6 @@ static int samsung_dt_node_to_map(struct pinctrl_dev *pctldev, { struct samsung_pinctrl_drv_data *drvdata; unsigned reserved_maps; - struct device_node *np; int ret; drvdata = pinctrl_dev_get_drvdata(pctldev); @@ -266,12 +265,11 @@ static int samsung_dt_node_to_map(struct pinctrl_dev *pctldev, &reserved_maps, num_maps); - for_each_child_of_node(np_config, np) { + for_each_child_of_node_scoped(np_config, np) { ret = samsung_dt_subnode_to_map(drvdata, pctldev->dev, np, map, &reserved_maps, num_maps); if (ret < 0) { samsung_dt_free_map(pctldev, *map, *num_maps); - of_node_put(np); return ret; } } @@ -849,16 +847,12 @@ static struct samsung_pmx_func *samsung_pinctrl_create_functions( * and create pin groups and pin function lists. */ func_cnt = 0; - for_each_child_of_node(dev_np, cfg_np) { - struct device_node *func_np; - + for_each_child_of_node_scoped(dev_np, cfg_np) { if (!of_get_child_count(cfg_np)) { ret = samsung_pinctrl_create_function(dev, drvdata, cfg_np, func); - if (ret < 0) { - of_node_put(cfg_np); + if (ret < 0) return ERR_PTR(ret); - } if (ret > 0) { ++func; ++func_cnt; @@ -866,14 +860,11 @@ static struct samsung_pmx_func *samsung_pinctrl_create_functions( continue; } - for_each_child_of_node(cfg_np, func_np) { + for_each_child_of_node_scoped(cfg_np, func_np) { ret = samsung_pinctrl_create_function(dev, drvdata, func_np, func); - if (ret < 0) { - of_node_put(func_np); - of_node_put(cfg_np); + if (ret < 0) return ERR_PTR(ret); - } if (ret > 0) { ++func; ++func_cnt; -- 2.43.0 . Date: Mon, 8 Jul 2024 08:08:20 -0700 From: Namhyung Kim To: Linus Torvalds Cc: Arnaldo Carvalho de Melo , Namhyung Kim , Ian Rogers , Kan Liang , Adrian Hunter , Peter Zijlstra , Ingo Molnar , LKML , linux-perf-users@vger.kernel.org Subject: [GIT PULL] perf-tools-fixes for v6.10 Hi Linus, Please consider pulling the following changes in perf tools for v6.10. Thanks, Namhyung The following changes since commit 83a7eefedc9b56fe7bfeff13b6c7356688ffa670: Linux 6.10-rc3 (2024-06-09 14:19:43 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools.git tags/perf-tools-fixes-for-v6.10-2024-07-08 for you to fetch changes up to 7b2450bb40275802b73593331b0db2fc147ae2b7: perf dsos: When adding a dso into sorted dsos maintain the sort order (2024-07-07 22:26:29 -0700) ---------------------------------------------------------------- perf tools: Fix the performance issue for v6.10 These addresses the performance issues reported by Matt, Namhyung and Linus. Recently it changed processing comm string and DSO with sorted arrays but it required to sort the array whenever it adds a new entry. This caused a performance issue and fix is to enhance the sorting by finding the insertion point in the sorted array and to shift righthand side using memmove(). Signed-off-by: Namhyung Kim ---------------------------------------------------------------- Ian Rogers (2): perf comm str: Avoid sort during insert perf dsos: When adding a dso into sorted dsos maintain the sort order tools/perf/util/comm.c | 29 ++++++++++++++++++----------- tools/perf/util/dsos.c | 26 +++++++++++++++++++++----- 2 files changed, 39 insertions(+), 16 deletions(-) . Date: Mon, 8 Jul 2024 16:42:13 -0600 From: Shuah Khan To: Linus Torvalds Cc: Shuah Khan , shuah , linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, John Hubbard , "Jason A. Donenfeld" Subject: [GIT PULL] Kselftest fixes for Linux 6.10 This is a multi-part message in MIME format. --------------zvEHuaPS38NLDGr1NkzGpYeN Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Linus, Please pull this kselftest fixes update for Linux 6.10. This kselftest fixes update for Linux 6.10 consists of fixes to clang build failures to timerns, vDSO tests and fixes to vDSO makefile. Note: makefile fixes are included to avoid conflicts during 6.11 merge window. diff is attached. thanks, -- Shuah ---------------------------------------------------------------- The following changes since commit 48236960c06d32370bfa6f2cc408e786873262c8: selftests/resctrl: Fix non-contiguous CBM for AMD (2024-06-26 13:22:34 -0600) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest tags/linux_kselftest-fixes-6.10 for you to fetch changes up to 66cde337fa1b7c6cf31f856fa015bd91a4d383e7: selftests/vDSO: remove duplicate compiler invocations from Makefile (2024-07-05 14:12:34 -0600) ---------------------------------------------------------------- linux_kselftest-fixes-6.10 This kselftest fixes update for Linux 6.10 consists of fixes to clang build failures to timerns, vDSO tests and fixes to vDSO makefile. ---------------------------------------------------------------- John Hubbard (4): selftest/timerns: fix clang build failures for abs() calls selftests/vDSO: fix clang build errors and warnings selftests/vDSO: remove partially duplicated "all:" target in Makefile selftests/vDSO: remove duplicate compiler invocations from Makefile tools/testing/selftests/timens/exec.c | 6 ++--- tools/testing/selftests/timens/timer.c | 2 +- tools/testing/selftests/timens/timerfd.c | 2 +- tools/testing/selftests/timens/vfork_exec.c | 4 +-- tools/testing/selftests/vDSO/Makefile | 29 +++++++++------------- tools/testing/selftests/vDSO/parse_vdso.c | 16 ++++++++---- .../selftests/vDSO/vdso_standalone_test_x86.c | 18 ++++++++++++-- 7 files changed, 46 insertions(+), 31 deletions(-) ---------------------------------------------------------------- --------------zvEHuaPS38NLDGr1NkzGpYeN Content-Type: text/x-patch; charset=UTF-8; name="linux_kselftest-fixes-6.10.diff" Content-Disposition: attachment; filename="linux_kselftest-fixes-6.10.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL3RpbWVucy9leGVjLmMgYi90 b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy90aW1lbnMvZXhlYy5jCmluZGV4IGU0MGRjNWJlMmY2 Ni4uZDEyZmY5NTVkZTBkIDEwMDY0NAotLS0gYS90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy90 aW1lbnMvZXhlYy5jCisrKyBiL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL3RpbWVucy9leGVj LmMKQEAgLTMwLDcgKzMwLDcgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkK IAogCQlmb3IgKGkgPSAwOyBpIDwgMjsgaSsrKSB7CiAJCQlfZ2V0dGltZShDTE9DS19NT05P VE9OSUMsICZ0c3QsIGkpOwotCQkJaWYgKGFicyh0c3QudHZfc2VjIC0gbm93LnR2X3NlYykg PiA1KQorCQkJaWYgKGxhYnModHN0LnR2X3NlYyAtIG5vdy50dl9zZWMpID4gNSkKIAkJCQly ZXR1cm4gcHJfZmFpbCgiJWxkICVsZFxuIiwgbm93LnR2X3NlYywgdHN0LnR2X3NlYyk7CiAJ CX0KIAkJcmV0dXJuIDA7CkBAIC01MCw3ICs1MCw3IEBAIGludCBtYWluKGludCBhcmdjLCBj aGFyICphcmd2W10pCiAKIAlmb3IgKGkgPSAwOyBpIDwgMjsgaSsrKSB7CiAJCV9nZXR0aW1l KENMT0NLX01PTk9UT05JQywgJnRzdCwgaSk7Ci0JCWlmIChhYnModHN0LnR2X3NlYyAtIG5v dy50dl9zZWMpID4gNSkKKwkJaWYgKGxhYnModHN0LnR2X3NlYyAtIG5vdy50dl9zZWMpID4g NSkKIAkJCXJldHVybiBwcl9mYWlsKCIlbGQgJWxkXG4iLAogCQkJCQlub3cudHZfc2VjLCB0 c3QudHZfc2VjKTsKIAl9CkBAIC03MCw3ICs3MCw3IEBAIGludCBtYWluKGludCBhcmdjLCBj aGFyICphcmd2W10pCiAJCS8qIENoZWNrIHRoYXQgYSBjaGlsZCBwcm9jZXNzIGlzIGluIHRo ZSBuZXcgdGltZW5zLiAqLwogCQlmb3IgKGkgPSAwOyBpIDwgMjsgaSsrKSB7CiAJCQlfZ2V0 dGltZShDTE9DS19NT05PVE9OSUMsICZ0c3QsIGkpOwotCQkJaWYgKGFicyh0c3QudHZfc2Vj IC0gbm93LnR2X3NlYyAtIE9GRlNFVCkgPiA1KQorCQkJaWYgKGxhYnModHN0LnR2X3NlYyAt IG5vdy50dl9zZWMgLSBPRkZTRVQpID4gNSkKIAkJCQlyZXR1cm4gcHJfZmFpbCgiJWxkICVs ZFxuIiwKIAkJCQkJCW5vdy50dl9zZWMgKyBPRkZTRVQsIHRzdC50dl9zZWMpOwogCQl9CmRp ZmYgLS1naXQgYS90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy90aW1lbnMvdGltZXIuYyBiL3Rv b2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL3RpbWVucy90aW1lci5jCmluZGV4IDVlN2YwMDUxYmQ3 Yi4uNWI5MzlmNTlkZmE0IDEwMDY0NAotLS0gYS90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy90 aW1lbnMvdGltZXIuYworKysgYi90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy90aW1lbnMvdGlt ZXIuYwpAQCAtNTYsNyArNTYsNyBAQCBpbnQgcnVuX3Rlc3QoaW50IGNsb2NraWQsIHN0cnVj dCB0aW1lc3BlYyBub3cpCiAJCQlyZXR1cm4gcHJfcGVycm9yKCJ0aW1lcmZkX2dldHRpbWUi KTsKIAogCQllbGFwc2VkID0gbmV3X3ZhbHVlLml0X3ZhbHVlLnR2X3NlYzsKLQkJaWYgKGFi cyhlbGFwc2VkIC0gMzYwMCkgPiA2MCkgeworCQlpZiAobGxhYnMoZWxhcHNlZCAtIDM2MDAp ID4gNjApIHsKIAkJCWtzZnRfdGVzdF9yZXN1bHRfZmFpbCgiY2xvY2tpZDogJWQgZWxhcHNl ZDogJWxsZFxuIiwKIAkJCQkJICAgICAgY2xvY2tpZCwgZWxhcHNlZCk7CiAJCQlyZXR1cm4g MTsKZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL3RpbWVucy90aW1lcmZk LmMgYi90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy90aW1lbnMvdGltZXJmZC5jCmluZGV4IDll ZGQ0M2Q2YjJjMS4uYTQxOTZiYmQ2ZTMzIDEwMDY0NAotLS0gYS90b29scy90ZXN0aW5nL3Nl bGZ0ZXN0cy90aW1lbnMvdGltZXJmZC5jCisrKyBiL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3Rz L3RpbWVucy90aW1lcmZkLmMKQEAgLTYxLDcgKzYxLDcgQEAgaW50IHJ1bl90ZXN0KGludCBj bG9ja2lkLCBzdHJ1Y3QgdGltZXNwZWMgbm93KQogCQkJcmV0dXJuIHByX3BlcnJvcigidGlt ZXJmZF9nZXR0aW1lKCVkKSIsIGNsb2NraWQpOwogCiAJCWVsYXBzZWQgPSBuZXdfdmFsdWUu aXRfdmFsdWUudHZfc2VjOwotCQlpZiAoYWJzKGVsYXBzZWQgLSAzNjAwKSA+IDYwKSB7CisJ CWlmIChsbGFicyhlbGFwc2VkIC0gMzYwMCkgPiA2MCkgewogCQkJa3NmdF90ZXN0X3Jlc3Vs dF9mYWlsKCJjbG9ja2lkOiAlZCBlbGFwc2VkOiAlbGxkXG4iLAogCQkJCQkgICAgICBjbG9j a2lkLCBlbGFwc2VkKTsKIAkJCXJldHVybiAxOwpkaWZmIC0tZ2l0IGEvdG9vbHMvdGVzdGlu Zy9zZWxmdGVzdHMvdGltZW5zL3Zmb3JrX2V4ZWMuYyBiL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRl c3RzL3RpbWVucy92Zm9ya19leGVjLmMKaW5kZXggYmViNzYxNDk0MWZiLi41Yjg5MDdiZjQ1 MWQgMTAwNjQ0Ci0tLSBhL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL3RpbWVucy92Zm9ya19l eGVjLmMKKysrIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvdGltZW5zL3Zmb3JrX2V4ZWMu YwpAQCAtMzIsNyArMzIsNyBAQCBzdGF0aWMgdm9pZCAqdGNoZWNrKHZvaWQgKl9hcmdzKQog CiAJZm9yIChpID0gMDsgaSA8IDI7IGkrKykgewogCQlfZ2V0dGltZShDTE9DS19NT05PVE9O SUMsICZ0c3QsIGkpOwotCQlpZiAoYWJzKHRzdC50dl9zZWMgLSBub3ctPnR2X3NlYykgPiA1 KSB7CisJCWlmIChsYWJzKHRzdC50dl9zZWMgLSBub3ctPnR2X3NlYykgPiA1KSB7CiAJCQlw cl9mYWlsKCIlczogaW4tdGhyZWFkOiB1bmV4cGVjdGVkIHZhbHVlOiAlbGQgKCVsZClcbiIs CiAJCQkJYXJncy0+dHN0X25hbWUsIHRzdC50dl9zZWMsIG5vdy0+dHZfc2VjKTsKIAkJCXJl dHVybiAodm9pZCAqKTFVTDsKQEAgLTY0LDcgKzY0LDcgQEAgc3RhdGljIGludCBjaGVjayhj aGFyICp0c3RfbmFtZSwgc3RydWN0IHRpbWVzcGVjICpub3cpCiAKIAlmb3IgKGkgPSAwOyBp IDwgMjsgaSsrKSB7CiAJCV9nZXR0aW1lKENMT0NLX01PTk9UT05JQywgJnRzdCwgaSk7Ci0J CWlmIChhYnModHN0LnR2X3NlYyAtIG5vdy0+dHZfc2VjKSA+IDUpCisJCWlmIChsYWJzKHRz dC50dl9zZWMgLSBub3ctPnR2X3NlYykgPiA1KQogCQkJcmV0dXJuIHByX2ZhaWwoIiVzOiB1 bmV4cGVjdGVkIHZhbHVlOiAlbGQgKCVsZClcbiIsCiAJCQkJCXRzdF9uYW1lLCB0c3QudHZf c2VjLCBub3ctPnR2X3NlYyk7CiAJfQpkaWZmIC0tZ2l0IGEvdG9vbHMvdGVzdGluZy9zZWxm dGVzdHMvdkRTTy9NYWtlZmlsZSBiL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL3ZEU08vTWFr ZWZpbGUKaW5kZXggZDUzYTRkODAwOGY5Li45OGQ4YmEyYWZhMDAgMTAwNjQ0Ci0tLSBhL3Rv b2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL3ZEU08vTWFrZWZpbGUKKysrIGIvdG9vbHMvdGVzdGlu Zy9zZWxmdGVzdHMvdkRTTy9NYWtlZmlsZQpAQCAtMSwzNSArMSwzMCBAQAogIyBTUERYLUxp Y2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMAotaW5jbHVkZSAuLi9saWIubWsKLQogdW5hbWVf TSA6PSAkKHNoZWxsIHVuYW1lIC1tIDI+L2Rldi9udWxsIHx8IGVjaG8gbm90KQogQVJDSCA/ PSAkKHNoZWxsIGVjaG8gJCh1bmFtZV9NKSB8IHNlZCAtZSBzL2kuODYveDg2LyAtZSBzL3g4 Nl82NC94ODYvKQogCi1URVNUX0dFTl9QUk9HUyA6PSAkKE9VVFBVVCkvdmRzb190ZXN0X2dl dHRpbWVvZmRheSAkKE9VVFBVVCkvdmRzb190ZXN0X2dldGNwdQotVEVTVF9HRU5fUFJPR1Mg Kz0gJChPVVRQVVQpL3Zkc29fdGVzdF9hYmkKLVRFU1RfR0VOX1BST0dTICs9ICQoT1VUUFVU KS92ZHNvX3Rlc3RfY2xvY2tfZ2V0cmVzCitURVNUX0dFTl9QUk9HUyA6PSB2ZHNvX3Rlc3Rf Z2V0dGltZW9mZGF5CitURVNUX0dFTl9QUk9HUyArPSB2ZHNvX3Rlc3RfZ2V0Y3B1CitURVNU X0dFTl9QUk9HUyArPSB2ZHNvX3Rlc3RfYWJpCitURVNUX0dFTl9QUk9HUyArPSB2ZHNvX3Rl c3RfY2xvY2tfZ2V0cmVzCiBpZmVxICgkKEFSQ0gpLCQoZmlsdGVyICQoQVJDSCkseDg2IHg4 Nl82NCkpCi1URVNUX0dFTl9QUk9HUyArPSAkKE9VVFBVVCkvdmRzb19zdGFuZGFsb25lX3Rl c3RfeDg2CitURVNUX0dFTl9QUk9HUyArPSB2ZHNvX3N0YW5kYWxvbmVfdGVzdF94ODYKIGVu ZGlmCi1URVNUX0dFTl9QUk9HUyArPSAkKE9VVFBVVCkvdmRzb190ZXN0X2NvcnJlY3RuZXNz CitURVNUX0dFTl9QUk9HUyArPSB2ZHNvX3Rlc3RfY29ycmVjdG5lc3MKIAogQ0ZMQUdTIDo9 IC1zdGQ9Z251OTkKLUNGTEFHU192ZHNvX3N0YW5kYWxvbmVfdGVzdF94ODYgOj0gLW5vc3Rk bGliIC1mbm8tYXN5bmNocm9ub3VzLXVud2luZC10YWJsZXMgLWZuby1zdGFjay1wcm90ZWN0 b3IKLUxERkxBR1NfdmRzb190ZXN0X2NvcnJlY3RuZXNzIDo9IC1sZGwKKwogaWZlcSAoJChD T05GSUdfWDg2XzMyKSx5KQogTERMSUJTICs9IC1sZ2NjX3MKIGVuZGlmCiAKLWFsbDogJChU RVNUX0dFTl9QUk9HUykKK2luY2x1ZGUgLi4vbGliLm1rCiAkKE9VVFBVVCkvdmRzb190ZXN0 X2dldHRpbWVvZmRheTogcGFyc2VfdmRzby5jIHZkc29fdGVzdF9nZXR0aW1lb2ZkYXkuYwog JChPVVRQVVQpL3Zkc29fdGVzdF9nZXRjcHU6IHBhcnNlX3Zkc28uYyB2ZHNvX3Rlc3RfZ2V0 Y3B1LmMKICQoT1VUUFVUKS92ZHNvX3Rlc3RfYWJpOiBwYXJzZV92ZHNvLmMgdmRzb190ZXN0 X2FiaS5jCiAkKE9VVFBVVCkvdmRzb190ZXN0X2Nsb2NrX2dldHJlczogdmRzb190ZXN0X2Ns b2NrX2dldHJlcy5jCisKICQoT1VUUFVUKS92ZHNvX3N0YW5kYWxvbmVfdGVzdF94ODY6IHZk c29fc3RhbmRhbG9uZV90ZXN0X3g4Ni5jIHBhcnNlX3Zkc28uYwotCSQoQ0MpICQoQ0ZMQUdT KSAkKENGTEFHU192ZHNvX3N0YW5kYWxvbmVfdGVzdF94ODYpIFwKLQkJdmRzb19zdGFuZGFs b25lX3Rlc3RfeDg2LmMgcGFyc2VfdmRzby5jIFwKLQkJLW8gJEAKKyQoT1VUUFVUKS92ZHNv X3N0YW5kYWxvbmVfdGVzdF94ODY6IENGTEFHUyArPS1ub3N0ZGxpYiAtZm5vLWFzeW5jaHJv bm91cy11bndpbmQtdGFibGVzIC1mbm8tc3RhY2stcHJvdGVjdG9yCisKICQoT1VUUFVUKS92 ZHNvX3Rlc3RfY29ycmVjdG5lc3M6IHZkc29fdGVzdF9jb3JyZWN0bmVzcy5jCi0JJChDQykg JChDRkxBR1MpIFwKLQkJdmRzb190ZXN0X2NvcnJlY3RuZXNzLmMgXAotCQktbyAkQCBcCi0J CSQoTERGTEFHU192ZHNvX3Rlc3RfY29ycmVjdG5lc3MpCiskKE9VVFBVVCkvdmRzb190ZXN0 X2NvcnJlY3RuZXNzOiBMREZMQUdTICs9IC1sZGwKZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3Rp bmcvc2VsZnRlc3RzL3ZEU08vcGFyc2VfdmRzby5jIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVz dHMvdkRTTy9wYXJzZV92ZHNvLmMKaW5kZXggNDEzZjc1NjIwYTM1Li40YWU0MTczNzJlOWUg MTAwNjQ0Ci0tLSBhL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL3ZEU08vcGFyc2VfdmRzby5j CisrKyBiL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL3ZEU08vcGFyc2VfdmRzby5jCkBAIC01 NSwxNCArNTUsMjAgQEAgc3RhdGljIHN0cnVjdCB2ZHNvX2luZm8KIAlFTEYoVmVyZGVmKSAq dmVyZGVmOwogfSB2ZHNvX2luZm87CiAKLS8qIFN0cmFpZ2h0IGZyb20gdGhlIEVMRiBzcGVj aWZpY2F0aW9uLiAqLwotc3RhdGljIHVuc2lnbmVkIGxvbmcgZWxmX2hhc2goY29uc3QgdW5z aWduZWQgY2hhciAqbmFtZSkKKy8qCisgKiBTdHJhaWdodCBmcm9tIHRoZSBFTEYgc3BlY2lm aWNhdGlvbi4uLmFuZCB0aGVuIHR3ZWFrZWQgc2xpZ2h0bHksIGluIG9yZGVyIHRvCisgKiBh dm9pZCBhIGZldyBjbGFuZyB3YXJuaW5ncy4KKyAqLworc3RhdGljIHVuc2lnbmVkIGxvbmcg ZWxmX2hhc2goY29uc3QgY2hhciAqbmFtZSkKIHsKIAl1bnNpZ25lZCBsb25nIGggPSAwLCBn OwotCXdoaWxlICgqbmFtZSkKKwljb25zdCB1bnNpZ25lZCBjaGFyICp1Y2hfbmFtZSA9IChj b25zdCB1bnNpZ25lZCBjaGFyICopbmFtZTsKKworCXdoaWxlICgqdWNoX25hbWUpCiAJewot CQloID0gKGggPDwgNCkgKyAqbmFtZSsrOwotCQlpZiAoZyA9IGggJiAweGYwMDAwMDAwKQor CQloID0gKGggPDwgNCkgKyAqdWNoX25hbWUrKzsKKwkJZyA9IGggJiAweGYwMDAwMDAwOwor CQlpZiAoZykKIAkJCWggXj0gZyA+PiAyNDsKIAkJaCAmPSB+ZzsKIAl9CmRpZmYgLS1naXQg YS90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy92RFNPL3Zkc29fc3RhbmRhbG9uZV90ZXN0X3g4 Ni5jIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvdkRTTy92ZHNvX3N0YW5kYWxvbmVfdGVz dF94ODYuYwppbmRleCA4YTQ0ZmY5NzNlZTEuLjI3ZjZmZGYxMTk2OSAxMDA2NDQKLS0tIGEv dG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvdkRTTy92ZHNvX3N0YW5kYWxvbmVfdGVzdF94ODYu YworKysgYi90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy92RFNPL3Zkc29fc3RhbmRhbG9uZV90 ZXN0X3g4Ni5jCkBAIC0xOCw3ICsxOCw3IEBACiAKICNpbmNsdWRlICJwYXJzZV92ZHNvLmgi CiAKLS8qIFdlIG5lZWQgYSBsaWJjIGZ1bmN0aW9ucy4uLiAqLworLyogV2UgbmVlZCBzb21l IGxpYmMgZnVuY3Rpb25zLi4uICovCiBpbnQgc3RyY21wKGNvbnN0IGNoYXIgKmEsIGNvbnN0 IGNoYXIgKmIpCiB7CiAJLyogVGhpcyBpbXBsZW1lbnRhdGlvbiBpcyBidWdneTogaXQgbmV2 ZXIgcmV0dXJucyAtMS4gKi8KQEAgLTM0LDYgKzM0LDIwIEBAIGludCBzdHJjbXAoY29uc3Qg Y2hhciAqYSwgY29uc3QgY2hhciAqYikKIAlyZXR1cm4gMDsKIH0KIAorLyoKKyAqIFRoZSBj bGFuZyBidWlsZCBuZWVkcyB0aGlzLCBhbHRob3VnaCBnY2MgZG9lcyBub3QuCisgKiBTdG9s ZW4gZnJvbSBsaWIvc3RyaW5nLmMuCisgKi8KK3ZvaWQgKm1lbWNweSh2b2lkICpkZXN0LCBj b25zdCB2b2lkICpzcmMsIHNpemVfdCBjb3VudCkKK3sKKwljaGFyICp0bXAgPSBkZXN0Owor CWNvbnN0IGNoYXIgKnMgPSBzcmM7CisKKwl3aGlsZSAoY291bnQtLSkKKwkJKnRtcCsrID0g KnMrKzsKKwlyZXR1cm4gZGVzdDsKK30KKwogLyogLi4uYW5kIHR3byBzeXNjYWxscy4gIFRo aXMgaXMgeDg2LXNwZWNpZmljLiAqLwogc3RhdGljIGlubGluZSBsb25nIHg4Nl9zeXNjYWxs Myhsb25nIG5yLCBsb25nIGEwLCBsb25nIGExLCBsb25nIGEyKQogewpAQCAtNzAsNyArODQs NyBAQCB2b2lkIHRvX2Jhc2UxMChjaGFyICpsYXN0ZGlnLCB0aW1lX3QgbikKIAl9CiB9CiAK LV9fYXR0cmlidXRlX18oKGV4dGVybmFsbHlfdmlzaWJsZSkpIHZvaWQgY19tYWluKHZvaWQg KipzdGFjaykKK3ZvaWQgY19tYWluKHZvaWQgKipzdGFjaykKIHsKIAkvKiBQYXJzZSB0aGUg c3RhY2sgKi8KIAlsb25nIGFyZ2MgPSAobG9uZykqc3RhY2s7Cg== --------------zvEHuaPS38NLDGr1NkzGpYeN-- . Date: Tue, 9 Jul 2024 14:21:34 +0300 From: Georgi Djakov To: gregkh@linuxfoundation.org Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, djakov@kernel.org Subject: [GIT PULL] interconnect changes for 6.11 Hello Greg, This is the pull request with interconnect changes for the v6.11-rc1 merge window. It contains some new drivers and bugfixes. As always, the summary is in the signed tag. The patches have been in linux-next for a while. There are no reported issues currently. Please pull into char-misc-next when possible. Thanks, Georgi The following changes since commit 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0: Linux 6.10-rc1 (2024-05-26 15:20:12 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/djakov/icc.git tags/icc-6.11-rc1 for you to fetch changes up to 226e58b20975000960cb40b7488f55f173007489: Merge branch 'icc-rpmh-qos' into icc-next (2024-07-04 22:45:20 +0300) ---------------------------------------------------------------- interconnect changes for 6.11 This pull request contains the interconnect changes for the 6.11-rc1 merge window. It contains just driver changes with the following highlights: Driver changes: - New driver for MediaTek MT8183/8195 platforms - New driver for MSM8953 platforms - New QoS support for RPMh-based platforms with SC7280 being the first one to benefit from it. - Fix incorrect master-id value in qcm2290 driver - Add missing MODULE_DESCRIPTION in a few drivers Signed-off-by: Georgi Djakov ---------------------------------------------------------------- AngeloGioacchino Del Regno (2): dt-bindings: interconnect: Add MediaTek EMI Interconnect bindings interconnect: mediatek: Add MediaTek MT8183/8195 EMI Interconnect driver Georgi Djakov (4): Merge branch 'icc-mtk' into icc-next Merge branch 'icc-fixes' into icc-next Merge branch 'icc-msm8953' into icc-next Merge branch 'icc-rpmh-qos' into icc-next Jeff Johnson (2): interconnect: imx: add missing MODULE_DESCRIPTION() macros interconnect: qcom: add missing MODULE_DESCRIPTION() macros Jiapeng Chong (1): interconnect: mediatek: remove unneeded semicolon Konrad Dybcio (1): interconnect: qcom: qcm2290: Fix mas_snoc_bimc RPM master ID Odelu Kukatla (4): dt-bindings: interconnect: add clock property to enable QOS on SC7280 interconnect: qcom: icc-rpmh: Add QoS configuration support interconnect: qcom: sc7280: enable QoS configuration interconnect: qcom: Fix DT backwards compatibility for QoS Vladimir Lypak (2): dt-bindings: interconnect: qcom: Add Qualcomm MSM8953 NoC interconnect: qcom: Add MSM8953 driver .../devicetree/bindings/interconnect/mediatek,mt8183-emi.yaml | 51 + .../devicetree/bindings/interconnect/qcom,msm8953.yaml | 101 + .../devicetree/bindings/interconnect/qcom,sc7280-rpmh.yaml | 53 + drivers/interconnect/Kconfig | 1 + drivers/interconnect/Makefile | 1 + drivers/interconnect/imx/imx.c | 1 + drivers/interconnect/imx/imx8mm.c | 1 + drivers/interconnect/imx/imx8mn.c | 1 + drivers/interconnect/imx/imx8mp.c | 1 + drivers/interconnect/imx/imx8mq.c | 1 + drivers/interconnect/mediatek/Kconfig | 29 + drivers/interconnect/mediatek/Makefile | 5 + drivers/interconnect/mediatek/icc-emi.c | 153 + drivers/interconnect/mediatek/icc-emi.h | 40 + drivers/interconnect/mediatek/mt8183.c | 143 + drivers/interconnect/mediatek/mt8195.c | 339 ++ drivers/interconnect/qcom/Kconfig | 9 + drivers/interconnect/qcom/Makefile | 2 + drivers/interconnect/qcom/icc-common.c | 1 + drivers/interconnect/qcom/icc-rpmh.c | 94 + drivers/interconnect/qcom/icc-rpmh.h | 36 + drivers/interconnect/qcom/msm8953.c | 1321 ++++++++ drivers/interconnect/qcom/qcm2290.c | 2 +- drivers/interconnect/qcom/sc7280.c | 276 ++ include/dt-bindings/interconnect/mediatek,mt8183.h | 23 + include/dt-bindings/interconnect/mediatek,mt8195.h | 44 + include/dt-bindings/interconnect/qcom,msm8953.h | 93 + 27 files changed, 2821 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/interconnect/mediatek,mt8183-emi.yaml create mode 100644 Documentation/devicetree/bindings/interconnect/qcom,msm8953.yaml create mode 100644 drivers/interconnect/mediatek/Kconfig create mode 100644 drivers/interconnect/mediatek/Makefile create mode 100644 drivers/interconnect/mediatek/icc-emi.c create mode 100644 drivers/interconnect/mediatek/icc-emi.h create mode 100644 drivers/interconnect/mediatek/mt8183.c create mode 100644 drivers/interconnect/mediatek/mt8195.c create mode 100644 drivers/interconnect/qcom/msm8953.c create mode 100644 include/dt-bindings/interconnect/mediatek,mt8183.h create mode 100644 include/dt-bindings/interconnect/mediatek,mt8195.h create mode 100644 include/dt-bindings/interconnect/qcom,msm8953.h . Date: Tue, 9 Jul 2024 09:57:59 -0500 From: Steve French To: Linus Torvalds Cc: CIFS , LKML , Namjae Jeon Subject: [GIT PULL] ksmbd server fixes Please pull the following changes since commit 22a40d14b572deb80c0648557f4bd502d7e83826: Linux 6.10-rc6 (2024-06-30 14:40:44 -0700) are available in the Git repository at: git://git.samba.org/ksmbd.git tags/6.10-rc6-smb3-server-fixes for you to fetch changes up to e2e33caa5dc2eae7bddf88b22ce11ec3d760e5cd: ksmbd: discard write access to the directory open (2024-07-05 09:56:13 -0500) ---------------------------------------------------------------- Two ksmbd server fixes - fix access flags to address fuse incompatibility - fix device type returned by get filesystem info ---------------------------------------------------------------- Hobin Woo (1): ksmbd: discard write access to the directory open Namjae Jeon (1): ksmbd: return FILE_DEVICE_DISK instead of super magic fs/smb/common/smb2pdu.h | 34 ++++++++++++++++++++++++++++++++++ fs/smb/server/smb2pdu.c | 22 ++++++++++++++++++---- 2 files changed, 52 insertions(+), 4 deletions(-) -- Thanks, Steve . Date: Tue, 9 Jul 2024 16:36:53 -0600 From: Rob Herring To: Linus Torvalds Cc: Saravana Kannan , Krzysztof Kozlowski , Conor Dooley , linux-kernel@vger.kernel.org, devicetree@vger.kernel.org Subject: [GIT PULL] Devicetree fixes for v6.10, part 2 Hi Linus, Please pull this 1 fix. Rob The following changes since commit e7985f43609c782132f8f5794ee6cc4cdb66ca75: of: property: Fix fw_devlink handling of interrupt-map (2024-05-30 19:43:47 -0500) are available in the Git repository at: ssh://git@gitolite.kernel.org/pub/scm/linux/kernel/git/robh/linux.git tags/devicetree-fixes-for-6.10-2 for you to fetch changes up to 2cf6b7d15a28640117bf9f75dc050892cf78a6e8: of/irq: Disable "interrupt-map" parsing for PASEMI Nemo (2024-07-08 15:42:20 -0600) ---------------------------------------------------------------- Devicetree fix for 6.10, part 2: - One fix for PASemi Nemo board interrupts ---------------------------------------------------------------- Marc Zyngier (1): of/irq: Disable "interrupt-map" parsing for PASEMI Nemo drivers/of/irq.c | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) . Date: Wed, 10 Jul 2024 16:46:30 +0800 From: Huacai Chen To: Paolo Bonzini , Huacai Chen , Tianrui Zhao , Bibo Mao Cc: kvm@vger.kernel.org, loongarch@lists.linux.dev, linux-kernel@vger.kernel.org, Xuerui Wang , Jiaxun Yang , Huacai Chen Subject: [GIT PULL] LoongArch KVM changes for v6.11 The following changes since commit 256abd8e550ce977b728be79a74e1729438b4948: Linux 6.10-rc7 (2024-07-07 14:23:46 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson.git tags/loongarch-kvm-6.11 for you to fetch changes up to b3403f8d3c3fd8398bb5f23fe4f69faa738f1399: perf kvm: Add kvm-stat for loongarch64 (2024-07-09 16:25:51 +0800) ---------------------------------------------------------------- LoongArch KVM changes for v6.11 1. Add ParaVirt steal time support. 2. Add some VM migration enhancement. 3. Add perf kvm-stat support for loongarch. ---------------------------------------------------------------- Bibo Mao (10): LoongArch: KVM: Sync pending interrupt when getting ESTAT from user mode LoongArch: KVM: Delay secondary mmu tlb flush until guest entry LoongArch: KVM: Select huge page only if secondary mmu supports it LoongArch: KVM: Discard dirty page tracking on readonly memslot LoongArch: KVM: Add memory barrier before update pmd entry LoongArch: KVM: Add dirty bitmap initially all set support LoongArch: KVM: Mark page accessed and dirty with page ref added LoongArch: KVM: Add PV steal time support in host side LoongArch: KVM: Add PV steal time support in guest side perf kvm: Add kvm-stat for loongarch64 Jia Qingtong (1): LoongArch: KVM: always make pte young in page map's fast path Documentation/admin-guide/kernel-parameters.txt | 6 +- arch/loongarch/Kconfig | 11 ++ arch/loongarch/include/asm/kvm_host.h | 13 ++ arch/loongarch/include/asm/kvm_para.h | 11 ++ arch/loongarch/include/asm/kvm_vcpu.h | 5 + arch/loongarch/include/asm/loongarch.h | 1 + arch/loongarch/include/asm/paravirt.h | 5 + arch/loongarch/include/uapi/asm/kvm.h | 4 + arch/loongarch/kernel/paravirt.c | 145 ++++++++++++++++++++++ arch/loongarch/kernel/time.c | 2 + arch/loongarch/kvm/Kconfig | 1 + arch/loongarch/kvm/exit.c | 38 +++++- arch/loongarch/kvm/main.c | 1 + arch/loongarch/kvm/mmu.c | 72 +++++++---- arch/loongarch/kvm/tlb.c | 5 +- arch/loongarch/kvm/vcpu.c | 154 +++++++++++++++++++++++- tools/perf/arch/loongarch/Makefile | 1 + tools/perf/arch/loongarch/util/Build | 2 + tools/perf/arch/loongarch/util/header.c | 96 +++++++++++++++ tools/perf/arch/loongarch/util/kvm-stat.c | 139 +++++++++++++++++++++ 20 files changed, 680 insertions(+), 32 deletions(-) create mode 100644 tools/perf/arch/loongarch/util/header.c create mode 100644 tools/perf/arch/loongarch/util/kvm-stat.c . Date: Wed, 10 Jul 2024 18:49:23 +0800 From: Huacai Chen To: Paolo Bonzini , Huacai Chen , Tianrui Zhao , Bibo Mao Cc: kvm@vger.kernel.org, loongarch@lists.linux.dev, linux-kernel@vger.kernel.org, Xuerui Wang , Jiaxun Yang , Huacai Chen Subject: [GIT PULL] LoongArch KVM changes for v6.11 The following changes since commit 256abd8e550ce977b728be79a74e1729438b4948: Linux 6.10-rc7 (2024-07-07 14:23:46 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson.git tags/loongarch-kvm-6.11 for you to fetch changes up to 492ac37fa38faf520b5beae44c930063265ee183: perf kvm: Add kvm-stat for loongarch64 (2024-07-10 16:50:27 +0800) ---------------------------------------------------------------- LoongArch KVM changes for v6.11 1. Add ParaVirt steal time support. 2. Add some VM migration enhancement. 3. Add perf kvm-stat support for loongarch. ---------------------------------------------------------------- Bibo Mao (10): LoongArch: KVM: Sync pending interrupt when getting ESTAT from user mode LoongArch: KVM: Delay secondary mmu tlb flush until guest entry LoongArch: KVM: Select huge page only if secondary mmu supports it LoongArch: KVM: Discard dirty page tracking on readonly memslot LoongArch: KVM: Add memory barrier before update pmd entry LoongArch: KVM: Add dirty bitmap initially all set support LoongArch: KVM: Mark page accessed and dirty with page ref added LoongArch: KVM: Add PV steal time support in host side LoongArch: KVM: Add PV steal time support in guest side perf kvm: Add kvm-stat for loongarch64 Jia Qingtong (1): LoongArch: KVM: always make pte young in page map's fast path Documentation/admin-guide/kernel-parameters.txt | 6 +- arch/loongarch/Kconfig | 11 ++ arch/loongarch/include/asm/kvm_host.h | 13 ++ arch/loongarch/include/asm/kvm_para.h | 11 ++ arch/loongarch/include/asm/kvm_vcpu.h | 5 + arch/loongarch/include/asm/loongarch.h | 1 + arch/loongarch/include/asm/paravirt.h | 5 + arch/loongarch/include/uapi/asm/kvm.h | 4 + arch/loongarch/kernel/paravirt.c | 145 ++++++++++++++++++++++ arch/loongarch/kernel/time.c | 2 + arch/loongarch/kvm/Kconfig | 1 + arch/loongarch/kvm/exit.c | 38 +++++- arch/loongarch/kvm/main.c | 1 + arch/loongarch/kvm/mmu.c | 72 +++++++---- arch/loongarch/kvm/tlb.c | 5 +- arch/loongarch/kvm/vcpu.c | 154 +++++++++++++++++++++++- tools/perf/arch/loongarch/Makefile | 1 + tools/perf/arch/loongarch/util/Build | 2 + tools/perf/arch/loongarch/util/header.c | 96 +++++++++++++++ tools/perf/arch/loongarch/util/kvm-stat.c | 139 +++++++++++++++++++++ 20 files changed, 680 insertions(+), 32 deletions(-) create mode 100644 tools/perf/arch/loongarch/util/header.c create mode 100644 tools/perf/arch/loongarch/util/kvm-stat.c . Date: Wed, 10 Jul 2024 12:57:16 +0200 From: "Rafael J. Wysocki" To: Linus Torvalds Cc: Linux PM , Linux Kernel Mailing List , Daniel Lezcano Subject: [GIT PULL] Thermal control fixes for v6.10-rc8 Hi Linus, Please pull from the tag git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git \ thermal-6.10-rc8 with top-most commit 94eacc1c583dd2ba51a2158fb13285f5dc42714b thermal: core: Fix list sorting in __thermal_zone_device_update() on top of commit 22a40d14b572deb80c0648557f4bd502d7e83826 Linux 6.10-rc6 to receive thermal control fixes for final 6.10. These fix a possible NULL pointer dereference in a thermal governor, fix up the handling of thermal zones enabled before their temperature can be determined and fix list sorting during thermal zone temperature updates. Specifics: - Prevent the Power Allocator thermal governor from dereferencing a NULL pointer if it is bound to a tripless thermal zone (N=C3=ADcolas Prado). - Prevent thermal zones enabled too early from staying effectively dormant forever because their temperature cannot be determined initially (Rafael Wysocki). - Fix list sorting during thermal zone temperature updates to ensure the proper ordering of trip crossing notifications (Rafael Wysocki). Thanks! --------------- N=C3=ADcolas F. R. A. Prado (1): thermal: gov_power_allocator: Return early in manage if trip_max is N= ULL Rafael J. Wysocki (2): thermal: core: Call monitor_thermal_zone() if zone temperature is inv= alid thermal: core: Fix list sorting in __thermal_zone_device_update() --------------- drivers/thermal/gov_power_allocator.c | 3 +++ drivers/thermal/thermal_core.c | 15 ++++++++------- drivers/thermal/thermal_core.h | 6 ++++++ 3 files changed, 17 insertions(+), 7 deletions(-) . Date: Wed, 10 Jul 2024 12:58:50 +0200 From: "Rafael J. Wysocki" To: Linus Torvalds Cc: Linux PM , Linux Kernel Mailing List , ACPI Devel Maling List Subject: [GIT PULL] Power management fixes for v6.10-rc8 Hi Linus, Please pull from the tag git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git \ pm-6.10-rc8 with top-most commit d92467ad9d9ee63a700934b9228a989ef671d511 cpufreq: ACPI: Mark boost policy as enabled when setting boost on top of commit 22a40d14b572deb80c0648557f4bd502d7e83826 Linux 6.10-rc6 to receive power management fixes for final 6.10. These fix two issues related to boost frequencies handling, one in the cpufreq core and one in the ACPI cpufreq driver (Mario Limonciello). Thanks! --------------- Mario Limonciello (2): cpufreq: Allow drivers to advertise boost enabled cpufreq: ACPI: Mark boost policy as enabled when setting boost --------------- drivers/cpufreq/acpi-cpufreq.c | 4 +++- drivers/cpufreq/cpufreq.c | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) . Date: Wed, 10 Jul 2024 13:00:05 +0200 From: "Rafael J. Wysocki" To: Linus Torvalds Cc: ACPI Devel Maling List , Linux PM , Linux Kernel Mailing List Subject: [GIT PULL] ACPI fix for v6.10-rc8 Hi Linus, Please pull from the tag git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git \ acpi-6.10-rc8 with top-most commit 233323f9b9f828cd7cd5145ad811c1990b692542 ACPI: processor_idle: Fix invalid comparison with insertion sort for latency on top of commit 22a40d14b572deb80c0648557f4bd502d7e83826 Linux 6.10-rc6 to receive an ACPI fix for final 6.10. This fixes the sorting of _CST output data in the ACPI processor idle driver (Kuan-Wei Chiu). Thanks! --------------- Kuan-Wei Chiu (1): ACPI: processor_idle: Fix invalid comparison with insertion sort for latency --------------- drivers/acpi/processor_idle.c | 37 ++++++++++++++++--------------------- 1 file changed, 16 insertions(+), 21 deletions(-) . Date: Wed, 10 Jul 2024 16:22:55 +0200 From: Hans de Goede To: Linus Torvalds Cc: Linux Kernel Mailing List , platform-driver-x86@vger.kernel.org, =?UTF-8?Q?Ilpo_J=C3=A4rvinen?= , Armin Wolf Subject: [GIT PULL] platform-drivers-x86 for 6.10-6 Hi Linus, Obviously I should not have jinxed things by saying that my previous pull- request would be the last one for 6.10. So here is one more 6.10 fixes pull-request with a 1 liner fix for a dmi_system_id array in the toshiba_acpi driver not being terminated properly. Something which somehow has escaped detection since being introduced in 2022 until now. Regards, Hans The following changes since commit e527a6127223b644e0a27b44f4b16e16eb6c7f0a: platform/x86: toshiba_acpi: Fix quickstart quirk handling (2024-07-02 16:01:45 +0200) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git tags/platform-drivers-x86-v6.10-6 for you to fetch changes up to b6e02c6b0377d4339986e07aeb696c632cd392aa: platform/x86: toshiba_acpi: Fix array out-of-bounds access (2024-07-10 16:12:12 +0200) ---------------------------------------------------------------- platform-drivers-x86 for v6.10-6 Highlights: - Fix missing dmi_system_id array termination in toshiba_acpi introduced in 2022 The following is an automated git shortlog grouped by driver: toshiba_acpi: - Fix array out-of-bounds access ---------------------------------------------------------------- Armin Wolf (1): platform/x86: toshiba_acpi: Fix array out-of-bounds access drivers/platform/x86/toshiba_acpi.c | 1 + 1 file changed, 1 insertion(+) . Date: Wed, 10 Jul 2024 18:12:05 +0200 From: Johan Hovold To: Greg Kroah-Hartman Cc: linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL] USB-serial fixes for 6.10-rc8 Hi Greg, I noticed that you still have some fixes queued for 6.10-rc8/final so figured I'd send this now even if this addresses a really old bug. I've verified that the issue is real and have tested the fix here myself. Feel free to queue it up for 6.11-rc1 if you prefer. Johan The following changes since commit 4298e400dbdbf259549d69c349e060652ad53611: USB: serial: option: add Telit generic core-dump composition (2024-06-27 12:04:33 +0200) are available in the Git repository at: https://git.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial.git tags/usb-serial-6.10-rc8 for you to fetch changes up to c15a688e49987385baa8804bf65d570e362f8576: USB: serial: mos7840: fix crash on resume (2024-07-09 18:10:04 +0200) ---------------------------------------------------------------- USB-serial fixes for 6.10-rc8 Here's a fix for a long-standing issue in the mos7840 driver that can trigger a crash when resuming from system suspend. Included are also some new modem device ids. All have been in linux-next with no reported issues. ---------------------------------------------------------------- Dmitry Smirnov (1): USB: serial: mos7840: fix crash on resume Mank Wang (1): USB: serial: option: add Netprisma LCUK54 series modules Slark Xiao (1): USB: serial: option: add support for Foxconn T99W651 Vanillan Wang (1): USB: serial: option: add Rolling RW350-GL variants drivers/usb/serial/mos7840.c | 45 ++++++++++++++++++++++++++++++++++++++++++++ drivers/usb/serial/option.c | 28 +++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) . Date: Wed, 10 Jul 2024 12:44:31 -0400 From: Kent Overstreet To: Linus Torvalds Cc: linux-bcachefs@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL] bcachefs fixes for 6.10-rc8 Hi Linus, fresh batch of bcachefs fixes for you. Cheers, Kent The following changes since commit 64cd7de998f393e73981e2aa4ee13e4e887f01ea: bcachefs: Fix kmalloc bug in __snapshot_t_mut (2024-06-25 20:51:14 -0400) are available in the Git repository at: https://evilpiepirate.org/git/bcachefs.git tags/bcachefs-2024-07-10 for you to fetch changes up to 7d7f71cd8763a296d02dff9514447aa3de199c47: bcachefs: Add missing bch2_trans_begin() (2024-07-10 09:53:39 -0400) ---------------------------------------------------------------- bcachefs fixes for 6.10-rc8 - Switch some asserts to WARN() - Fix a few "transaction not locked" asserts in the data read retry paths and backpointers gc - Fix a race that would cause the journal to get stuck on a flush commit - Add missing fsck checks for the fragmentation LRU - The usual assorted ssorted syzbot fixes ---------------------------------------------------------------- Kent Overstreet (21): bcachefs: Switch online_reserved shutdown assert to WARN() bcachefs: Delete old faulty bch2_trans_unlock() call bcachefs: Change bch2_fs_journal_stop() BUG_ON() to warning bcachefs: Fix shift greater than integer size bcachefs: Don't use the new_fs() bucket alloc path on an initialized fs bcachefs: Fix bch2_read_retry_nodecode() bcachefs: Fix loop restart in bch2_btree_transactions_read() bcachefs: Add missing printbuf_tabstops_reset() calls bcachefs: bch2_btree_write_buffer_maybe_flush() bcachefs: add check for missing fragmentation in check_alloc_to_lru_ref() bcachefs: Repair fragmentation_lru in alloc_write_key() bcachefs: io clock: run timer fns under clock lock bcachefs: Fix journal getting stuck on a flush commit closures: fix closure_sync + closure debugging bcachefs: Fix bch2_inode_insert() race path for tmpfiles bcachefs: Fix undefined behaviour in eytzinger1_first() bcachefs: Log mount failure error code bcachefs: bch2_data_update_to_text() bcachefs: Warn on attempting a move with no replicas bcachefs: Fix missing error check in journal_entry_btree_keys_validate() bcachefs: Add missing bch2_trans_begin() Youling Tang (1): bcachefs: Mark bch_inode_info as SLAB_ACCOUNT fs/bcachefs/alloc_background.c | 48 +++++++++++++-------------- fs/bcachefs/alloc_foreground.c | 2 ++ fs/bcachefs/backpointers.c | 70 +++++++++++++++------------------------- fs/bcachefs/bkey.c | 5 +-- fs/bcachefs/bkey.h | 7 ++++ fs/bcachefs/btree_gc.c | 24 +++++++------- fs/bcachefs/btree_write_buffer.c | 37 +++++++++++++++++++++ fs/bcachefs/btree_write_buffer.h | 3 ++ fs/bcachefs/clock.c | 7 ++-- fs/bcachefs/data_update.c | 44 +++++++++++++++++++++++++ fs/bcachefs/data_update.h | 5 +++ fs/bcachefs/debug.c | 12 +++---- fs/bcachefs/eytzinger.h | 6 ++-- fs/bcachefs/fs.c | 11 ++++++- fs/bcachefs/io_read.c | 4 ++- fs/bcachefs/journal.c | 18 ++++++----- fs/bcachefs/journal.h | 2 +- fs/bcachefs/journal_io.c | 12 ++++--- fs/bcachefs/lru.c | 39 ++++++++++++++++++++++ fs/bcachefs/lru.h | 3 ++ fs/bcachefs/move.c | 25 -------------- fs/bcachefs/sb-errors_format.h | 3 +- fs/bcachefs/super.c | 11 ++++--- include/linux/closure.h | 7 ++++ lib/closure.c | 3 ++ 25 files changed, 266 insertions(+), 142 deletions(-) . Date: Wed, 10 Jul 2024 11:27:51 -0600 From: Alex Williamson To: Linus Torvalds Cc: "Liu, Yi L" , "kvm@vger.kernel.org" , Subject: [GIT PULL] VFIO fix for v6.10 Hi Linus, This fixes a late breaking regression introduced in the v6.10 cycle and appearing in recent stable backports. Thanks, Alex The following changes since commit 256abd8e550ce977b728be79a74e1729438b4948: Linux 6.10-rc7 (2024-07-07 14:23:46 -0700) are available in the Git repository at: https://github.com/awilliam/linux-vfio.git tags/vfio-v6.10 for you to fetch changes up to 5a88a3f67e37e39f933b38ebb4985ba5822e9eca: vfio/pci: Init the count variable in collecting hot-reset devices (2024-07-10 08:47:46 -0600) ---------------------------------------------------------------- VFIO fix for v6.10 - Recent stable backports are exposing a bug introduced in the v6.10 development cycle where a counter value is uninitialized. This leads to regressions in userspace drivers like QEMU where where the kernel might ask for an arbitrary buffer size or return out of memory itself based on a bogus value. Zero initialize the counter. (Yi Liu) ---------------------------------------------------------------- Yi Liu (1): vfio/pci: Init the count variable in collecting hot-reset devices drivers/vfio/pci/vfio_pci_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) . Date: Wed, 10 Jul 2024 10:48:56 -0700 From: James Bottomley To: Andrew Morton , Linus Torvalds Cc: linux-scsi , linux-kernel Subject: [GIT PULL] SCSI fixes for 6.10-rc7 One core change that moves a disk start message to a location where it will only be printed once instead of twice plus a couple of error handling race fixes in the ufs driver. The patch is available here: git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git scsi-fixes The short changelog is: Damien Le Moal (1): scsi: sd: Do not repeat the starting disk message Peter Wang (2): scsi: ufs: core: Fix ufshcd_abort_one racing issue scsi: ufs: core: Fix ufshcd_clear_cmd racing issue And the diffstat: drivers/scsi/sd.c | 5 ++--- drivers/ufs/core/ufs-mcq.c | 11 ++++++----- drivers/ufs/core/ufshcd.c | 2 ++ 3 files changed, 10 insertions(+), 8 deletions(-) With full diff below James --- diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index fe82baa924f8..6203915945a4 100644 --- a/drivers/scsi/sd.c +++ b/drivers/scsi/sd.c @@ -4117,8 +4117,6 @@ static int sd_resume(struct device *dev) { struct scsi_disk *sdkp = dev_get_drvdata(dev); - sd_printk(KERN_NOTICE, sdkp, "Starting disk\n"); - if (opal_unlock_from_suspend(sdkp->opal_dev)) { sd_printk(KERN_NOTICE, sdkp, "OPAL unlock failed\n"); return -EIO; @@ -4135,12 +4133,13 @@ static int sd_resume_common(struct device *dev, bool runtime) if (!sdkp) /* E.g.: runtime resume at the start of sd_probe() */ return 0; + sd_printk(KERN_NOTICE, sdkp, "Starting disk\n"); + if (!sd_do_start_stop(sdkp->device, runtime)) { sdkp->suspended = false; return 0; } - sd_printk(KERN_NOTICE, sdkp, "Starting disk\n"); ret = sd_start_stop_device(sdkp, 1); if (!ret) { sd_resume(dev); diff --git a/drivers/ufs/core/ufs-mcq.c b/drivers/ufs/core/ufs-mcq.c index 8944548c30fa..c532416aec22 100644 --- a/drivers/ufs/core/ufs-mcq.c +++ b/drivers/ufs/core/ufs-mcq.c @@ -105,16 +105,15 @@ EXPORT_SYMBOL_GPL(ufshcd_mcq_config_mac); * @hba: per adapter instance * @req: pointer to the request to be issued * - * Return: the hardware queue instance on which the request would - * be queued. + * Return: the hardware queue instance on which the request will be or has + * been queued. %NULL if the request has already been freed. */ struct ufs_hw_queue *ufshcd_mcq_req_to_hwq(struct ufs_hba *hba, struct request *req) { - u32 utag = blk_mq_unique_tag(req); - u32 hwq = blk_mq_unique_tag_to_hwq(utag); + struct blk_mq_hw_ctx *hctx = READ_ONCE(req->mq_hctx); - return &hba->uhq[hwq]; + return hctx ? &hba->uhq[hctx->queue_num] : NULL; } /** @@ -515,6 +514,8 @@ int ufshcd_mcq_sq_cleanup(struct ufs_hba *hba, int task_tag) if (!cmd) return -EINVAL; hwq = ufshcd_mcq_req_to_hwq(hba, scsi_cmd_to_rq(cmd)); + if (!hwq) + return 0; } else { hwq = hba->dev_cmd_queue; } diff --git a/drivers/ufs/core/ufshcd.c b/drivers/ufs/core/ufshcd.c index 1b65e6ae4137..46433ecf0c4d 100644 --- a/drivers/ufs/core/ufshcd.c +++ b/drivers/ufs/core/ufshcd.c @@ -6456,6 +6456,8 @@ static bool ufshcd_abort_one(struct request *rq, void *priv) /* Release cmd in MCQ mode if abort succeeds */ if (is_mcq_enabled(hba) && (*ret == 0)) { hwq = ufshcd_mcq_req_to_hwq(hba, scsi_cmd_to_rq(lrbp->cmd)); + if (!hwq) + return 0; spin_lock_irqsave(&hwq->cq_lock, flags); if (ufshcd_cmd_inflight(lrbp->cmd)) ufshcd_release_scsi_cmd(hba, lrbp); . Date: Wed, 10 Jul 2024 13:23:33 -0700 From: Andrew Morton To: Linus Torvalds Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, mm-commits@vger.kernel.org Subject: [GIT PULL] hotfixes against 6.10-rc7 Linus, please merge this batch of hotfixes, thanks. The following changes since commit 93aef9eda1cea9e84ab2453fcceb8addad0e46f1: nilfs2: fix incorrect inode allocation from reserved inodes (2024-07-03 12:29:25 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm tags/mm-hotfixes-stable-2024-07-10-13-19 for you to fetch changes up to f708f6970cc9d6bac71da45c129482092e710537: mm/hugetlb: fix kernel NULL pointer dereference when migrating hugetlb folio (2024-07-09 15:41:11 -0700) ---------------------------------------------------------------- 21 hotfixes, 15 of which are cc:stable. No identifiable theme here - all are singleton patches, 19 are for MM. ---------------------------------------------------------------- Audra Mitchell (1): Fix userfaultfd_api to return EINVAL as expected Gavin Shan (4): mm/filemap: make MAX_PAGECACHE_ORDER acceptable to xarray mm/readahead: limit page cache size in page_cache_ra_order() mm/filemap: skip to create PMD-sized page cache if needed mm/shmem: disable PMD-sized page cache if needed Hugh Dickins (1): mm: fix crashes from deferred split racing folio migration Lorenzo Stoakes (1): MAINTAINERS: mailmap: update Lorenzo Stoakes's email address Miaohe Lin (2): mm/hugetlb: fix potential race in __update_and_free_hugetlb_folio() mm/hugetlb: fix kernel NULL pointer dereference when migrating hugetlb folio Nhat Pham (1): cachestat: do not flush stats in recency check Paul Menzel (1): lib/build_OID_registry: avoid non-destructive substitution for Perl < 5.13.2 compat Ryusuke Konishi (1): nilfs2: fix kernel bug on rename operation of broken directory SeongJae Park (1): mm/damon/core: merge regions aggressively when max_nr_regions is unmet Suren Baghdasaryan (2): sched.h: always_inline alloc_tag_{save|restore} to fix modpost warnings arch/xtensa: always_inline get_current() and current_thread_info() Uladzislau Rezki (Sony) (1): mm: vmalloc: check if a hash-index is in cpu_possible_mask Waiman Long (1): mm: prevent derefencing NULL ptr in pfn_section_valid() Yang Shi (2): mm: page_ref: remove folio_try_get_rcu() mm: gup: stop abusing try_grab_folio Yu Zhao (1): mm/hugetlb_vmemmap: fix race with speculative PFN walkers ZhangPeng (1): filemap: replace pte_offset_map() with pte_offset_map_nolock() .mailmap | 1 + MAINTAINERS | 2 +- arch/xtensa/include/asm/current.h | 2 +- arch/xtensa/include/asm/thread_info.h | 2 +- fs/nilfs2/dir.c | 32 +++- fs/userfaultfd.c | 7 +- include/linux/mmzone.h | 3 +- include/linux/page_ref.h | 57 ++----- include/linux/pagemap.h | 11 +- include/linux/sched.h | 4 +- include/linux/swap.h | 3 +- lib/build_OID_registry | 4 +- mm/damon/core.c | 23 ++- mm/filemap.c | 20 ++- mm/gup.c | 291 ++++++++++++++++++---------------- mm/huge_memory.c | 2 +- mm/hugetlb.c | 70 ++------ mm/hugetlb_vmemmap.c | 16 ++ mm/internal.h | 4 +- mm/memcontrol.c | 11 -- mm/migrate.c | 13 ++ mm/readahead.c | 8 +- mm/shmem.c | 15 +- mm/vmalloc.c | 10 +- mm/workingset.c | 14 +- 25 files changed, 339 insertions(+), 286 deletions(-) . Date: Thu, 11 Jul 2024 07:09:27 +0200 From: Christian Brauner To: Linus Torvalds Cc: Christian Brauner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL] vfs fixes /* Summary */ This contains fixes for this merge window: cachefiles: - Export an existing and add a new cachefile helper to be used in filesystems to fix reference count bugs. - Use the newly added fscache_ty_get_volume() helper to get a reference count on an fscache_volume to handle volumes that are about to be removed cleanly. - After withdrawing a fscache_cache via FSCACHE_CACHE_IS_WITHDRAWN wait for all ongoing cookie lookups to complete and for the object count to reach zero. - Propagate errors from vfs_getxattr() to avoid an infinite loop in cachefiles_check_volume_xattr() because it keeps seeing ESTALE. - Don't send new requests when an object is dropped by raising CACHEFILES_ONDEMAND_OJBSTATE_DROPPING. - Cancel all requests for an object that is about to be dropped. - Wait for the ondemand_boject_worker to finish before dropping a cachefiles object to prevent use-after-free. - Use cyclic allocation for message ids to better handle id recycling. - Add missing lock protection when iterating through the xarray when polling. netfs: - Use standard logging helpers for debug logging. VFS: - Fix potential use-after-free in file locks during trace_posix_lock_inode(). The tracepoint could fire while another task raced it and freed the lock that was requested to be traced. - Only increment the nr_dentry_negative counter for dentries that are present on the superblock LRU. Currently, DCACHE_LRU_LIST list is used to detect this case. However, the flag is also raised in combination with DCACHE_SHRINK_LIST to indicate that dentry->d_lru is used. So checking only DCACHE_LRU_LIST will lead to wrong nr_dentry_negative count. Fix the check to not count dentries that are on a shrink related list. Misc: - hfsplus: fix an uninitialized value issue in copy_name. - minix: fix minixfs_rename with HIGHMEM. It still uses kunmap() even though we switched it to kmap_local_page() a while ago. /* Testing */ clang: Debian clang version 16.0.6 (27) gcc: (Debian 13.2.0-25) 13.2.0 All patches are based on v6.10-rc6. No build failures or warnings were observed. /* Conflicts */ No known conflicts. The following changes since commit 22a40d14b572deb80c0648557f4bd502d7e83826: Linux 6.10-rc6 (2024-06-30 14:40:44 -0700) are available in the Git repository at: git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.10-rc8.fixes for you to fetch changes up to 3d1bec293378700dddc087d4d862306702276c23: minixfs: Fix minixfs_rename with HIGHMEM (2024-07-10 07:15:36 +0200) Please consider pulling these changes from the signed vfs-6.10-rc8.fixes tag. Thanks! Christian ---------------------------------------------------------------- vfs-6.10-rc8.fixes ---------------------------------------------------------------- Baokun Li (7): netfs, fscache: export fscache_put_volume() and add fscache_try_get_volume() cachefiles: fix slab-use-after-free in fscache_withdraw_volume() cachefiles: fix slab-use-after-free in cachefiles_withdraw_cookie() cachefiles: propagate errors from vfs_getxattr() to avoid infinite loop cachefiles: stop sending new request when dropping object cachefiles: cancel all requests for the object that is being dropped cachefiles: cyclic allocation of msg_id to avoid reuse Brian Foster (1): vfs: don't mod negative dentry count when on shrinker list Christian Brauner (1): Merge patch series "cachefiles: random bugfixes" Edward Adam Davis (1): hfsplus: fix uninit-value in copy_name Hou Tao (1): cachefiles: wait for ondemand_object_worker to finish when dropping object Jeff Layton (1): filelock: fix potential use-after-free in posix_lock_inode Jingbo Xu (1): cachefiles: add missing lock protection when polling Matthew Wilcox (Oracle) (1): minixfs: Fix minixfs_rename with HIGHMEM Uwe Kleine-König (1): netfs: Switch debug logging to pr_debug() fs/cachefiles/cache.c | 45 +++++++++++++++++++++++++++++++++++- fs/cachefiles/daemon.c | 4 ++-- fs/cachefiles/internal.h | 3 +++ fs/cachefiles/ondemand.c | 52 +++++++++++++++++++++++++++++++++++++----- fs/cachefiles/volume.c | 1 - fs/cachefiles/xattr.c | 5 +++- fs/dcache.c | 12 +++++++--- fs/hfsplus/xattr.c | 2 +- fs/locks.c | 2 +- fs/minix/namei.c | 3 +-- fs/netfs/buffered_read.c | 14 ++++++------ fs/netfs/buffered_write.c | 12 +++++----- fs/netfs/direct_read.c | 2 +- fs/netfs/direct_write.c | 8 +++---- fs/netfs/fscache_cache.c | 4 ++-- fs/netfs/fscache_cookie.c | 28 +++++++++++------------ fs/netfs/fscache_io.c | 12 +++++----- fs/netfs/fscache_main.c | 2 +- fs/netfs/fscache_volume.c | 18 +++++++++++++-- fs/netfs/internal.h | 35 +--------------------------- fs/netfs/io.c | 12 +++++----- fs/netfs/main.c | 4 ---- fs/netfs/misc.c | 4 ++-- fs/netfs/write_collect.c | 16 ++++++------- fs/netfs/write_issue.c | 36 ++++++++++++++--------------- include/linux/fscache-cache.h | 6 +++++ include/trace/events/fscache.h | 4 ++++ 27 files changed, 213 insertions(+), 133 deletions(-) . Date: Thu, 11 Jul 2024 15:47:10 +0100 From: Mark Brown To: Linus Torvalds Cc: linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, Mark Brown Subject: [GIT PULL] SPI fixes for v6.10-rc7 The following changes since commit f2661062f16b2de5d7b6a5c42a9a5c96326b8454: Linux 6.10-rc5 (2024-06-23 17:08:54 -0400) are available in the Git repository at: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git tags/spi-fix-v6.10-rc7 for you to fetch changes up to c8bd922d924bb4ab6c6c488310157d1a27996f31: spi: mux: set ctlr->bits_per_word_mask (2024-07-09 17:42:33 +0100) ---------------------------------------------------------------- spi: Fixes for v6.10 This pull request fixes two regressions that have been bubbling along for a large part of this release. One is a revert of the multi mode support for the OMAP SPI controller, this introduced regressions on a number of systems and while there has been progress on fixing those we've not got something that works for everyone yet so let's just drop the change for now. The other is a series of fixes from David Lechner for his recent message optimisation work, this interacted badly with spi-mux which is altogether too clever with recursive use of the bus and creates situations that hadn't been considered. There are also a couple of small driver specific fixes, including one more patch from David for sleep duration calculations in the AXI driver. ---------------------------------------------------------------- Bastien Curutchet (1): spi: davinci: Unset POWERDOWN bit when releasing resources David Lechner (4): spi: axi-spi-engine: fix sleep calculation spi: don't unoptimize message in spi_async() spi: add defer_optimize_message controller flag spi: mux: set ctlr->bits_per_word_mask Mark Brown (1): spi: omap2-mcspi: Revert multi mode support Uwe Kleine-König (1): spi: imx: Don't expect DMA for i.MX{25,35,50,51,53} cspi devices drivers/spi/spi-axi-spi-engine.c | 26 ++++++++++++++++++-------- drivers/spi/spi-davinci.c | 6 ++++++ drivers/spi/spi-imx.c | 2 +- drivers/spi/spi-mux.c | 2 ++ drivers/spi/spi-omap2-mcspi.c | 15 +-------------- drivers/spi/spi.c | 20 +++++++++++++++++--- include/linux/spi/spi.h | 4 ++++ 7 files changed, 49 insertions(+), 26 deletions(-) . Date: Thu, 11 Jul 2024 20:11:55 +0200 From: Daniel Lezcano To: Thomas Gleixner Cc: Linux Kernel Mailing List , Chris Packham , Geert Uytterhoeven , Jiaxun Yang , Li kunyu , =?UTF-8?Q?Niklas_S=C3=B6derlund?= , Thomas Bonnefille Subject: [GIT PULL] timer drivers for v6.11-rc1 Hi Thomas, please consider pulling the following changes since commit 746770499be55cf375a108a321a818b238182446: timers/migration: Fix grammar in comment (2024-07-04 20:24:57 +0200) which are available in the Git repository at: https://git.linaro.org/people/daniel.lezcano/linux.git tags/timers-v6.11-rc1 for you to fetch changes up to 8b77f4b8dc81aeb73107b169cb9c6e06c15d297e: clocksource/drivers/realtek: Add timer driver for rtl-otto platforms (2024-07-10 09:41:20 +0200) Thanks -- Daniel ---------------------------------------------------------------- - Remove unnecessary local variables initialization as they will be initialized in the code path anyway right after on the ARM arch timer and the ARM global timer (Li kunyu) - Fix a race condition in the interrupt leading to a deadlock on the SH CMT driver. Note that this fix was not tested on the platform using this timer but the fix seems reasonable enough to be picked confidently (Niklas Söderlund) - Increase the rating of the gic-timer and use the configured width clocksource register on the MIPS architecture (Jiaxun Yang) - Add the DT bindings for the TMU on the Renesas platforms (Geert Uytterhoeven) - Add the DT bindings for the SOPHGO SG2002 clint on RiscV (Thomas Bonnefille) - Add the rtl-otto timer driver along with the DT bindings for the Realtek platform (Chris Packham) ---------------------------------------------------------------- Chris Packham (2): dt-bindings: timer: Add schema for realtek,otto-timer clocksource/drivers/realtek: Add timer driver for rtl-otto platforms Geert Uytterhoeven (3): dt-bindings: timer: renesas,tmu: Add R-Mobile APE6 support dt-bindings: timer: renesas,tmu: Add RZ/G1 support dt-bindings: timer: renesas,tmu: Add R-Car Gen2 support Jiaxun Yang (2): clocksource/drivers/mips-gic-timer: Refine rating computation clocksource/drivers/mips-gic-timer: Correct sched_clock width Li kunyu (2): clocksource/drivers/arm_arch_timer: Remove unnecessary ‘0’ values from irq clocksource/driver/arm_global_timer: Remove unnecessary ‘0’ values from err Niklas Söderlund (1): clocksource/drivers/sh_cmt: Address race condition for clock events Thomas Bonnefille (1): dt-bindings: timer: Add SOPHGO SG2002 clint .../bindings/timer/realtek,otto-timer.yaml | 63 +++++ .../devicetree/bindings/timer/renesas,tmu.yaml | 12 + .../devicetree/bindings/timer/sifive,clint.yaml | 1 + drivers/clocksource/Kconfig | 10 + drivers/clocksource/Makefile | 1 + drivers/clocksource/arm_arch_timer.c | 2 +- drivers/clocksource/arm_global_timer.c | 2 +- drivers/clocksource/mips-gic-timer.c | 20 +- drivers/clocksource/sh_cmt.c | 13 +- drivers/clocksource/timer-rtl-otto.c | 291 +++++++++++++++++++++ include/linux/cpuhotplug.h | 1 + 11 files changed, 405 insertions(+), 11 deletions(-) create mode 100644 Documentation/devicetree/bindings/timer/realtek,otto-timer.yaml create mode 100644 drivers/clocksource/timer-rtl-otto.c -- Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog . Date: Thu, 11 Jul 2024 20:03:53 +0100 From: Catalin Marinas To: Linus Torvalds Cc: Will Deacon , Marc Zyngier , Oliver Upton , Thomas Gleixner , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [GIT PULL] arm64 updates for 6.11 Hi Linus, I'm about to go on holiday for two weeks, so here's an early pull request for 6.11. The biggest part is the virtual CPU hotplug that touches ACPI, irqchip. We also have some GICv3 optimisation for pseudo-NMIs that has been queued via the arm64 tree. Otherwise the usual perf updates, kselftest, various small cleanups. There's a minor conflict currently in -next with the kvmarm tree but it's trivial (in arch/arm64/include/asm/esr.h). I'll check emails occasionally during the merging window but if there's anything urgent, Will can take over. Thanks. The following changes since commit 83a7eefedc9b56fe7bfeff13b6c7356688ffa670: Linux 6.10-rc3 (2024-06-09 14:19:43 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux tags/arm64-upstream for you to fetch changes up to 4f3a6c4de7d932be94cde2c52ae58feeec9c9dbf: Merge branch 'for-next/vcpu-hotplug' into for-next/core (2024-07-11 19:10:02 +0100) ---------------------------------------------------------------- arm64 updates for 6.11: * Virtual CPU hotplug support for arm64 ACPI systems * cpufeature infrastructure cleanups and making the FEAT_ECBHB ID bits visible to guests * CPU errata: expand the speculative SSBS workaround to more CPUs * arm64 ACPI: - acpi=nospcr option to disable SPCR as default console for arm64 - Move some ACPI code (cpuidle, FFH) to drivers/acpi/arm64/ * GICv3, use compile-time PMR values: optimise the way regular IRQs are masked/unmasked when GICv3 pseudo-NMIs are used, removing the need for a static key in fast paths by using a priority value chosen dynamically at boot time * arm64 perf updates: - Rework of the IMX PMU driver to enable support for I.MX95 - Enable support for tertiary match groups in the CMN PMU driver - Initial refactoring of the CPU PMU code to prepare for the fixed instruction counter introduced by Arm v9.4 - Add missing PMU driver MODULE_DESCRIPTION() strings - Hook up DT compatibles for recent CPU PMUs * arm64 kselftest updates: - Kernel mode NEON fp-stress - Cleanups, spelling mistakes * arm64 Documentation update with a minor clarification on TBI * Miscellaneous: - Fix missing IPI statistics - Implement raw_smp_processor_id() using thread_info rather than a per-CPU variable (better code generation) - Make MTE checking of in-kernel asynchronous tag faults conditional on KASAN being enabled - Minor cleanups, typos ---------------------------------------------------------------- Andre Przywara (2): dt-bindings: arm: pmu: Add new Cortex and Neoverse cores perf: pmuv3: Add new Cortex and Neoverse PMUs Anshuman Khandual (3): arm64/mm: Stop using ESR_ELx_FSC_TYPE during fault KVM: arm64: Replace custom macros with fields from ID_AA64PFR0_EL1 arm64/cpufeature: Replace custom macros with fields from ID_AA64PFR0_EL1 Catalin Marinas (3): irqchip/gic-v3: Fix 'broken_rdists' unused warning when !SMP and !ACPI Merge branches 'for-next/cpufeature', 'for-next/misc', 'for-next/kselftest', 'for-next/mte', 'for-next/errata', 'for-next/acpi', 'for-next/gic-v3-pmr' and 'for-next/doc', remote-tracking branch 'arm64/for-next/perf' into for-next/core Merge branch 'for-next/vcpu-hotplug' into for-next/core Colin Ian King (1): kselftest/arm64: Fix a couple of spelling mistakes Dev Jain (1): kselftest/arm64: Fix redundancy of a testcase Gavin Shan (1): arm64: Kconfig: Fix dependencies to enable ACPI_HOTPLUG_CPU Ilkka Koskinen (2): perf/arm-cmn: Decouple wp_config registers from filter group number perf/arm-cmn: Enable support for tertiary match group James Morse (7): ACPI: processor: Register deferred CPUs from acpi_processor_get_info() ACPI: Add post_eject to struct acpi_scan_handler for cpu hotplug arm64: acpi: Move get_cpu_for_acpi_id() to a header irqchip/gic-v3: Don't return errors from gic_acpi_match_gicc() irqchip/gic-v3: Add support for ACPI's disabled but 'online capable' CPUs arm64: document virtual CPU hotplug's expectations cpumask: Add enabled cpumask for present CPUs that can be brought online Jean-Philippe Brucker (1): arm64: psci: Ignore DENIED CPUs Jeff Johnson (2): ARM64: reloc_test: add missing MODULE_DESCRIPTION() macro perf: add missing MODULE_DESCRIPTION() macros Jinjie Ruan (1): arm64: smp: Fix missing IPI statistics Jonathan Cameron (11): ACPI: processor: Simplify initial onlining to use same path for cold and hotplug cpu: Do not warn on arch_register_cpu() returning -EPROBE_DEFER ACPI: processor: Drop duplicated check on _STA (enabled + present) ACPI: processor: Return an error if acpi_processor_get_info() fails in processor_add() ACPI: processor: Fix memory leaks in error paths of processor_add() ACPI: processor: Move checks and availability of acpi_processor earlier ACPI: processor: Add acpi_get_processor_handle() helper ACPI: scan: switch to flags for acpi_scan_check_and_detach() arm64: acpi: Harden get_cpu_for_acpi_id() against missing CPU entry arm64: arch_register_cpu() variant to check if an ACPI handle is now available. arm64: Kconfig: Enable hotplug CPU on arm64 if ACPI_PROCESSOR is enabled. Kevin Brodsky (1): Documentation: arm64: Update memory.rst for TBI Liu Wei (1): ACPI: Add acpi=nospcr to disable ACPI SPCR as default console on ARM64 Mark Brown (1): kselftest/arm64: Include kernel mode NEON in fp-stress Mark Rutland (10): arm64: cputype: Add Cortex-X3 definitions arm64: cputype: Add Cortex-A720 definitions arm64: cputype: Add Cortex-X925 definitions arm64: errata: Unify speculative SSBS errata logic arm64: errata: Expand speculative SSBS workaround wordpart.h: Add REPEAT_BYTE_U32() irqchip/gic-common: Remove sync_access callback irqchip/gic-v3: Make distributor priorities variables irqchip/gic-v3: Detect GICD_CTRL.DS and SCR_EL3.FIQ earlier arm64: irqchip/gic-v3: Select priorities at boot time Mike Rapoport (IBM) (1): arm64: Kconfig: fix typo in __builtin_return_adddress Muhammad Usama Anjum (2): selftests: arm64: tags_test: conform test to TAP output selftests: arm64: tags: remove the result script Nianyao Tang (1): arm64/cpufeatures/kvm: Add ARMv8.9 FEAT_ECBHB bits in ID_AA64MMFR1 register Peter Collingbourne (1): arm64: mte: Make mte_check_tfsr_*() conditional on KASAN instead of MTE Puranjay Mohan (2): arm64/arch_timer: include arm64: implement raw_smp_processor_id() using thread_info Rob Herring (Arm) (5): perf: arm_pmuv3: Avoid assigning fixed cycle counter with threshold perf: arm_pmuv3: Drop unnecessary IS_ENABLED(CONFIG_ARM64) check perf/arm: Move 32-bit PMU drivers to drivers/perf/ perf: arm_v6/7_pmu: Drop non-DT probe support perf: arm_pmuv3: Include asm/arm_pmuv3.h from linux/perf/arm_pmuv3.h Seongsu Park (1): arm64: Cleanup __cpu_set_tcr_t0sz() Sudeep Holla (3): ACPI: arm64: Sort entries alphabetically arm64: cpuidle: Move ACPI specific code into drivers/acpi/arm64/ arm64: FFH: Move ACPI specific code into drivers/acpi/arm64/ Xu Yang (6): dt-bindings: perf: fsl-imx-ddr: Add i.MX95 compatible perf: imx_perf: add macro definitions for parsing config attr perf: imx_perf: let the driver manage the counter usage rather the user perf: imx_perf: refactor driver for imx93 perf: imx_perf: fix counter start and config sequence perf: imx_perf: add support for i.MX95 platform Youwan Wang (1): ACPI / amba: Drop unnecessary check for registered amba_dummy_clk Documentation/ABI/testing/sysfs-devices-system-cpu | 6 + Documentation/admin-guide/kernel-parameters.txt | 10 +- Documentation/arch/arm64/cpu-hotplug.rst | 79 +++++ Documentation/arch/arm64/index.rst | 1 + Documentation/arch/arm64/memory.rst | 42 ++- Documentation/arch/arm64/silicon-errata.rst | 16 +- Documentation/devicetree/bindings/arm/pmu.yaml | 6 + .../devicetree/bindings/perf/fsl-imx-ddr.yaml | 3 + arch/arm/kernel/Makefile | 2 - arch/arm64/Kconfig | 41 +-- arch/arm64/include/asm/acpi.h | 12 + arch/arm64/include/asm/arch_gicv3.h | 15 - arch/arm64/include/asm/arch_timer.h | 2 +- arch/arm64/include/asm/arm_pmuv3.h | 2 +- arch/arm64/include/asm/cpucaps.h | 2 +- arch/arm64/include/asm/cpufeature.h | 4 +- arch/arm64/include/asm/cputype.h | 6 + arch/arm64/include/asm/esr.h | 33 +- arch/arm64/include/asm/mmu_context.h | 4 +- arch/arm64/include/asm/mte.h | 4 +- arch/arm64/include/asm/ptrace.h | 33 +- arch/arm64/include/asm/smp.h | 13 +- arch/arm64/include/asm/sysreg.h | 4 - arch/arm64/kernel/Makefile | 1 - arch/arm64/kernel/acpi.c | 129 ++------ arch/arm64/kernel/acpi_numa.c | 11 - arch/arm64/kernel/cpu_errata.c | 17 +- arch/arm64/kernel/cpufeature.c | 5 +- arch/arm64/kernel/image-vars.h | 5 - arch/arm64/kernel/proton-pack.c | 2 +- arch/arm64/kernel/psci.c | 2 +- arch/arm64/kernel/reloc_test_core.c | 1 + arch/arm64/kernel/smp.c | 74 ++++- arch/arm64/kvm/hyp/include/nvhe/fixed_config.h | 10 +- arch/arm64/kvm/hyp/nvhe/pkvm.c | 4 +- arch/arm64/kvm/hyp/nvhe/sys_regs.c | 2 +- arch/arm64/kvm/pmu-emul.c | 1 - drivers/acpi/acpi_processor.c | 145 +++++---- drivers/acpi/arm64/Makefile | 6 +- drivers/acpi/arm64/amba.c | 6 +- .../arm64/kernel => drivers/acpi/arm64}/cpuidle.c | 4 - drivers/acpi/arm64/ffh.c | 107 +++++++ drivers/acpi/processor_core.c | 3 +- drivers/acpi/processor_driver.c | 43 +-- drivers/acpi/scan.c | 47 ++- drivers/base/cpu.c | 12 +- drivers/irqchip/irq-gic-common.c | 22 +- drivers/irqchip/irq-gic-common.h | 7 +- drivers/irqchip/irq-gic-v3-its.c | 11 +- drivers/irqchip/irq-gic-v3.c | 282 ++++++++-------- drivers/irqchip/irq-gic.c | 10 +- drivers/irqchip/irq-hip04.c | 6 +- drivers/perf/Kconfig | 12 + drivers/perf/Makefile | 3 + drivers/perf/arm-ccn.c | 1 + drivers/perf/arm-cmn.c | 116 +++++-- drivers/perf/arm_cspmu/ampere_cspmu.c | 1 + drivers/perf/arm_cspmu/arm_cspmu.c | 1 + drivers/perf/arm_cspmu/nvidia_cspmu.c | 1 + drivers/perf/arm_pmuv3.c | 26 +- .../perf_event_v6.c => drivers/perf/arm_v6_pmu.c | 20 +- .../perf_event_v7.c => drivers/perf/arm_v7_pmu.c | 13 +- .../perf/arm_xscale_pmu.c | 3 - drivers/perf/cxl_pmu.c | 1 + drivers/perf/fsl_imx8_ddr_perf.c | 1 + drivers/perf/fsl_imx9_ddr_perf.c | 354 +++++++++++++++------ drivers/perf/hisilicon/hisi_uncore_pmu.c | 1 + drivers/perf/marvell_cn10k_ddr_pmu.c | 1 + include/acpi/acpi_bus.h | 1 + include/acpi/processor.h | 2 +- include/linux/acpi.h | 12 +- include/linux/cpumask.h | 25 ++ include/linux/irqchip/arm-gic-common.h | 4 - include/linux/irqchip/arm-gic-v3-prio.h | 52 +++ include/linux/irqchip/arm-gic-v3.h | 2 +- include/linux/perf/arm_pmuv3.h | 2 + include/linux/wordpart.h | 8 + kernel/cpu.c | 3 + tools/testing/selftests/arm64/abi/ptrace.c | 2 +- tools/testing/selftests/arm64/fp/.gitignore | 1 + tools/testing/selftests/arm64/fp/Makefile | 1 + tools/testing/selftests/arm64/fp/fp-stress.c | 26 +- tools/testing/selftests/arm64/fp/kernel-test.c | 324 +++++++++++++++++++ tools/testing/selftests/arm64/tags/Makefile | 1 - .../testing/selftests/arm64/tags/run_tags_test.sh | 12 - tools/testing/selftests/arm64/tags/tags_test.c | 10 +- 86 files changed, 1606 insertions(+), 752 deletions(-) create mode 100644 Documentation/arch/arm64/cpu-hotplug.rst rename {arch/arm64/kernel => drivers/acpi/arm64}/cpuidle.c (97%) create mode 100644 drivers/acpi/arm64/ffh.c rename arch/arm/kernel/perf_event_v6.c => drivers/perf/arm_v6_pmu.c (95%) rename arch/arm/kernel/perf_event_v7.c => drivers/perf/arm_v7_pmu.c (99%) rename arch/arm/kernel/perf_event_xscale.c => drivers/perf/arm_xscale_pmu.c (99%) create mode 100644 include/linux/irqchip/arm-gic-v3-prio.h create mode 100644 tools/testing/selftests/arm64/fp/kernel-test.c delete mode 100755 tools/testing/selftests/arm64/tags/run_tags_test.sh . Date: Fri, 12 Jul 2024 14:46:56 +1000 From: Dave Airlie To: LKML , Daniel Vetter Cc: dri-devel Subject: [git pull] drm fixes for 6.10-rc8 Hi Linus, Back to work, thanks to Sima for last week, not too many fixes as expected getting close to release, amdgpu and xe have a couple each, and then some other misc ones. Dave. drm-fixes-2024-07-12: drm fixes for 6.10-rc8 amdgpu: - PSR-SU fix - Reseved VMID fix xe: - Use write-back caching mode for system memory on DGFX - Do not leak object when finalizing hdcp gsc bridge: - adv7511 EDID irq fix gma500: - NULL mode fixes. meson: - fix resource leak The following changes since commit 256abd8e550ce977b728be79a74e1729438b4948= : Linux 6.10-rc7 (2024-07-07 14:23:46 -0700) are available in the Git repository at: https://gitlab.freedesktop.org/drm/kernel.git tags/drm-fixes-2024-07-12 for you to fetch changes up to 8b68788bebd3f697ae62aa9af3dac35ed112ebd7: Merge tag 'amd-drm-fixes-6.10-2024-07-11' of https://gitlab.freedesktop.org/agd5f/linux into drm-fixes (2024-07-12 13:32:36 +1000) ---------------------------------------------------------------- drm fixes for 6.10-rc8 amdgpu: - PSR-SU fix - Reseved VMID fix xe: - Use write-back caching mode for system memory on DGFX - Do not leak object when finalizing hdcp gsc bridge: - adv7511 EDID irq fix gma500: - NULL mode fixes. meson: - fix resource leak ---------------------------------------------------------------- Adam Ford (1): drm/bridge: adv7511: Fix Intermittent EDID failures Christian K=C3=B6nig (1): drm/amdgpu: reject gang submit on reserved VMIDs Dave Airlie (3): Merge tag 'drm-misc-fixes-2024-07-11' of https://gitlab.freedesktop.org/drm/misc/kernel into drm-fixes Merge tag 'drm-xe-fixes-2024-07-11' of https://gitlab.freedesktop.org/drm/xe/kernel into drm-fixes Merge tag 'amd-drm-fixes-6.10-2024-07-11' of https://gitlab.freedesktop.org/agd5f/linux into drm-fixes Leo Li (1): Revert "drm/amd/display: Reset freesync config before update new stat= e" Ma Ke (2): drm/gma500: fix null pointer dereference in psb_intel_lvds_get_modes drm/gma500: fix null pointer dereference in cdv_intel_lvds_get_modes Nirmoy Das (1): drm/xe/display/xe_hdcp_gsc: Free arbiter on driver removal Thomas Hellstr=C3=B6m (1): drm/xe: Use write-back caching mode for system memory on DGFX Yao Zi (1): drm/meson: fix canvas release in bind function drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 15 ++++++++ drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c | 15 +++++++- drivers/gpu/drm/amd/amdgpu/amdgpu_ids.h | 1 + drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 1 - drivers/gpu/drm/bridge/adv7511/adv7511.h | 2 +- drivers/gpu/drm/bridge/adv7511/adv7511_cec.c | 13 +++++-- drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 22 ++++++----- drivers/gpu/drm/gma500/cdv_intel_lvds.c | 3 ++ drivers/gpu/drm/gma500/psb_intel_lvds.c | 3 ++ drivers/gpu/drm/meson/meson_drv.c | 37 +++++++++--------- drivers/gpu/drm/xe/display/xe_hdcp_gsc.c | 12 ++++-- drivers/gpu/drm/xe/xe_bo.c | 47 ++++++++++++++-----= ---- drivers/gpu/drm/xe/xe_bo_types.h | 3 +- include/uapi/drm/xe_drm.h | 8 +++- 14 files changed, 122 insertions(+), 60 deletions(-) . Date: Fri, 12 Jul 2024 09:46:44 +0200 From: Takashi Iwai To: Linus Torvalds Cc: Mark Brown , Liam Girdwood , Linux Sound Mailing List , Linux Kernel Mailing List Subject: [GIT PULL] sound fixes for 6.10 Linus, please pull sound fixes for v6.10 from: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git tags/sound-6.10 The topmost commit is f19e1027f6c0f5fae18b2f2ed88b55a6a637f76e ---------------------------------------------------------------- sound fixes for 6.10-final Majority of changes here are small device-specific fixes for ASoC SOF / Intel and usual HD-audio quirks. The only significant high LOC is found in the Cirrus firmware driver, but all those are for hardening against malicious firmware blobs, and they look fine for taking as a last minute fix, too. ---------------------------------------------------------------- Bard Liao (1): ASoC: rt711-sdw: add missing readable registers Dmitry Savin (1): ALSA: hda: cs35l41: Fix swapped l/r audio channels for Lenovo ThinBook 13x Gen4 Edson Juliano Drosdeck (1): ALSA: hda/realtek: Limit mic boost on VAIO PRO PX Kai Vehmanen (1): ASoC: SOF: Intel: hda: fix null deref on system suspend entry Micha³ Kopeæ (1): ALSA: hda/realtek: add quirk for Clevo V5[46]0TU Nazar Bilinskyi (1): ALSA: hda/realtek: Enable Mute LED on HP 250 G7 Peter Ujfalusi (1): ASoC: SOF: Intel: hda-pcm: Limit the maximum number of periods by MAX_BDL_ENTRIES Richard Fitzgerald (5): firmware: cs_dsp: Fix overflow checking of wmfw header firmware: cs_dsp: Return error if block header overflows file firmware: cs_dsp: Validate payload length before processing block firmware: cs_dsp: Prevent buffer overrun when processing V2 alg headers firmware: cs_dsp: Use strnlen() on name fields in V1 wmfw files --- drivers/firmware/cirrus/cs_dsp.c | 231 +++++++++++++++++++++++++---------- sound/pci/hda/cs35l41_hda_property.c | 4 +- sound/pci/hda/patch_realtek.c | 4 + sound/soc/codecs/rt711-sdw.c | 2 + sound/soc/sof/intel/hda-dai.c | 12 +- sound/soc/sof/intel/hda-pcm.c | 6 + 6 files changed, 184 insertions(+), 75 deletions(-) . Date: Fri, 12 Jul 2024 11:10:08 +0200 From: Bartosz Golaszewski To: Linus Torvalds Cc: Greg Kroah-Hartman , Krzysztof Kozlowski , Bjorn Andersson , Bjorn Helgaas , Arnd Bergmann , Mark Brown , Rob Herring , Luiz Augusto von Dentz , Srini Kandagatla , linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, Bartosz Golaszewski Subject: [GIT PULL] power sequencing updates for v6.11-rc1 From: Bartosz Golaszewski Linus, I'm sending this early as this is the initial pull-request for a new driver subsystem living under drivers/power/sequencing/. I'll try to be brief here and allow myself to link the cover letter from the last time the series was sent in its entirety[1] (as opposed to smaller chunks targetting specific maintainers) for a very detailed description of the problem and the solution. I'll just stick to the key points below. This has been in development since last year's Linux Plumbers Conference and was inspired by the need to enable support upstream for Bluetooth/WLAN chips on Qualcomm platforms. The main problem we're fixing is powering up devices which are represented as separate objects in the kernel (binding to different drivers) but which share parts of the power-up sequence and thus need some kind of a mediator who knows the possible interactions and can assure they don't interfere with neither device's bring up. An example of such an inter-driver interaction is the WCN family of BT/WLAN chips from Qualcomm of which some models require the user to observe a certain delay between driving the bt-enable and wlan-enable GPIOs. This is not a new problem but up to this point all attempts at addressing it ended up hitting one wall or another and being dropped. The main obstacle was the fact that most these attempts tried to introduce the concept of a "power sequence" into the device-tree bindings which breaks the main DT rule: describe the hardware, not its behavior. The solution I proposed focuses on making the power sequencer drivers interpret the actual HW description flexibly. More details on that are in the linked cover letter. The second problem fixed here is powering up PCI devices before they are detected on the bus. This is achieved by creating special platform devices for device-tree nodes describing hard-wired PCI devices which bind to the so-called PCI power control drivers which enable required resources and trigger a bus rescan once the controlled device is up then setup the correct devlink hierarchy for power-management. By combining the two new frameworks we implemented the power sequencing PCI power control driver which is capable of powering up the WLAN modules of the QCom WCN family of chipsets. All this has spent a significant amount of time in linux-next and enabled WLAN/BT support on several Qualcomm platforms. To further prove that this is useful and needed: right after this was picked up into next, I was sent a series using the subsystem for a similar use-case on Amlogic platforms[2]. This PR contains the core power sequencing framework, the first driver, PCI changes using the pwrseq library (blessed by Bjorn Helgaas) and some fixes that came later. You'll also see the pwrseq core pulled into the Bluetooth tree to satisfy the build-time dependency on power sequencing in the hci_qca driver which uses the same power sequence provider as the PCI pwrctl driver added in this PR. More changes that don't have build-time dependencies on pwrseq are scattered across three other maintainer trees: there will be DT bindings in the regulator and wireless trees and DTS changes in the arm64 tree. Please consider pulling for v6.11. Best Regards, Bartosz Golaszewski [1] https://lore.kernel.org/all/20240528-pwrseq-v8-0-d354d52b763c@linaro.org/ [2] https://lore.kernel.org/lkml/20240705-pwrseq-v1-0-31829b47fc72@amlogic.com/ The following changes since commit 83a7eefedc9b56fe7bfeff13b6c7356688ffa670: Linux 6.10-rc3 (2024-06-09 14:19:43 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux.git tags/pwrseq-updates-for-v6.11-rc1 for you to fetch changes up to 50b040ef373293b4ae2ecdc5873daa4656724868: PCI/pwrctl: only call of_platform_populate() if CONFIG_OF is enabled (2024-07-08 21:15:26 +0200) ---------------------------------------------------------------- pwrseq updates for v6.11-rc1 - add the pwrseq core framework - add the first power sequencing driver: pwrseq-qcom-wcn - add power control (pwrctl) changes to PCI core - add the first PCI pwrctl power sequencing driver ---------------------------------------------------------------- Bartosz Golaszewski (7): power: sequencing: implement the pwrseq core power: pwrseq: add a driver for the PMU module on the QCom WCN chipsets PCI: Hold the rescan mutex when scanning for the first time PCI/pwrctl: Reuse the OF node for power controlled devices PCI/pwrctl: Create platform devices for child OF nodes of the port node PCI/pwrctl: Add PCI power control core code PCI/pwrctl: Add a PCI power control driver for power sequenced devices Bert Karwatzki (1): PCI/pwrctl: only call of_platform_populate() if CONFIG_OF is enabled Krzysztof Kozlowski (1): power: sequencing: simplify returning pointer without cleanup MAINTAINERS | 16 + drivers/pci/Kconfig | 1 + drivers/pci/Makefile | 1 + drivers/pci/bus.c | 9 + drivers/pci/of.c | 14 +- drivers/pci/probe.c | 2 + drivers/pci/pwrctl/Kconfig | 17 + drivers/pci/pwrctl/Makefile | 6 + drivers/pci/pwrctl/core.c | 137 ++++ drivers/pci/pwrctl/pci-pwrctl-pwrseq.c | 89 +++ drivers/pci/remove.c | 3 +- drivers/power/Kconfig | 1 + drivers/power/Makefile | 1 + drivers/power/sequencing/Kconfig | 29 + drivers/power/sequencing/Makefile | 6 + drivers/power/sequencing/core.c | 1105 ++++++++++++++++++++++++++++ drivers/power/sequencing/pwrseq-qcom-wcn.c | 336 +++++++++ include/linux/pci-pwrctl.h | 51 ++ include/linux/pwrseq/consumer.h | 56 ++ include/linux/pwrseq/provider.h | 75 ++ 20 files changed, 1950 insertions(+), 5 deletions(-) create mode 100644 drivers/pci/pwrctl/Kconfig create mode 100644 drivers/pci/pwrctl/Makefile create mode 100644 drivers/pci/pwrctl/core.c create mode 100644 drivers/pci/pwrctl/pci-pwrctl-pwrseq.c create mode 100644 drivers/power/sequencing/Kconfig create mode 100644 drivers/power/sequencing/Makefile create mode 100644 drivers/power/sequencing/core.c create mode 100644 drivers/power/sequencing/pwrseq-qcom-wcn.c create mode 100644 include/linux/pci-pwrctl.h create mode 100644 include/linux/pwrseq/consumer.h create mode 100644 include/linux/pwrseq/provider.h . Date: Fri, 12 Jul 2024 12:40:43 +0200 From: Greg KH To: Linus Torvalds Cc: Andrew Morton , linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org Subject: [GIT PULL] USB driver fixes for 6.10-final The following changes since commit 22a40d14b572deb80c0648557f4bd502d7e83826: Linux 6.10-rc6 (2024-06-30 14:40:44 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git tags/usb-6.10-final for you to fetch changes up to 70c8e3944063a83b7fae1996db7971e9b858c635: Merge tag 'usb-serial-6.10-rc8' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial into usb-linus (2024-07-10 19:55:07 +0200) ---------------------------------------------------------------- USB fixes for 6.10-final Here are some small USB driver fixes and new device ids for 6.10-final. Included in here are: - new usb-serial device ids for reported devices - syzbot-triggered duplicate endpoint bugfix - gadget bugfix for configfs memory overwrite - xhci resume bugfix - new device quirk added - usb core error path bugfix All of these have been in linux-next (most for a while) with no reported issues. Signed-off-by: Greg Kroah-Hartman ---------------------------------------------------------------- Alan Stern (1): USB: core: Fix duplicate endpoint bug by clearing reserved bits in the descriptor Bjørn Mork (1): USB: serial: option: add Fibocom FM350-GL Daniele Palmas (2): USB: serial: option: add Telit FN912 rmnet compositions USB: serial: option: add Telit generic core-dump composition Dmitry Smirnov (1): USB: serial: mos7840: fix crash on resume Greg Kroah-Hartman (2): Merge tag 'usb-serial-6.10-rc6' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial into usb-linus Merge tag 'usb-serial-6.10-rc8' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial into usb-linus Heikki Krogerus (1): usb: dwc3: pci: add support for the Intel Panther Lake Javier Carrasco (1): usb: core: add missing of_node_put() in usb_of_has_devices_or_graph Lee Jones (1): usb: gadget: configfs: Prevent OOB read/write in usb_string_copy() Mank Wang (1): USB: serial: option: add Netprisma LCUK54 series modules Mathias Nyman (1): xhci: always resume roothubs if xHC was reset during resume Slark Xiao (1): USB: serial: option: add support for Foxconn T99W651 Vanillan Wang (1): USB: serial: option: add Rolling RW350-GL variants WangYuli (1): USB: Add USB_QUIRK_NO_SET_INTF quirk for START BP-850k drivers/usb/core/config.c | 18 ++++++++++++++--- drivers/usb/core/of.c | 7 +++++-- drivers/usb/core/quirks.c | 3 +++ drivers/usb/dwc3/dwc3-pci.c | 8 ++++++++ drivers/usb/gadget/configfs.c | 3 +++ drivers/usb/host/xhci.c | 16 ++++++++++++--- drivers/usb/serial/mos7840.c | 45 +++++++++++++++++++++++++++++++++++++++++++ drivers/usb/serial/option.c | 38 ++++++++++++++++++++++++++++++++++++ 8 files changed, 130 insertions(+), 8 deletions(-) . Date: Fri, 12 Jul 2024 12:41:01 +0200 From: Greg KH To: Linus Torvalds Cc: Jiri Slaby , Stephen Rothwell , Andrew Morton , linux-kernel@vger.kernel.org, linux-serial@vger.kernel.org Subject: [GIT PULL] TTY / Serial driver fixes for 6.10-final The following changes since commit 22a40d14b572deb80c0648557f4bd502d7e83826: Linux 6.10-rc6 (2024-06-30 14:40:44 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tags/tty-6.10-final for you to fetch changes up to 2ac33975abda6921896e52372aec2be2cf51ab37: serial: qcom-geni: do not kill the machine on fifo underrun (2024-07-04 12:30:30 +0200) ---------------------------------------------------------------- TTY/Serial fixes for 6.10-final Here are some small serial driver fixes for 6.10-final. Included in here are: - qcom-geni fixes for a much much much discussed issue and everyone now seems to be agreed that this is the proper way forward to resolve the reported lockups - imx serial driver bugfixes - 8250_omap errata fix - ma35d1 serial driver bugfix All of these have been in linux-next for over a week with no reported issues. Signed-off-by: Greg Kroah-Hartman ---------------------------------------------------------------- Jacky Huang (1): tty: serial: ma35d1: Add a NULL check for of_node Johan Hovold (3): serial: qcom-geni: fix soft lockup on sw flow control and suspend serial: qcom-geni: fix hard lockup on buffer flush serial: qcom-geni: do not kill the machine on fifo underrun Rasmus Villemoes (1): serial: imx: ensure RTS signal is not left active after shutdown Stefan Eichenberger (1): serial: imx: only set receiver level if it is zero Udit Kumar (1): serial: 8250_omap: Fix Errata i2310 with RX FIFO level check drivers/tty/serial/8250/8250_omap.c | 3 +- drivers/tty/serial/imx.c | 59 +++++++++++++++++++++++++++++++++-- drivers/tty/serial/ma35d1_serial.c | 13 ++++---- drivers/tty/serial/qcom_geni_serial.c | 51 ++++++++++++++++++++++-------- 4 files changed, 104 insertions(+), 22 deletions(-) . Date: Fri, 12 Jul 2024 12:41:17 +0200 From: Greg KH To: Linus Torvalds Cc: Andrew Morton , Arnd Bergmann , linux-kernel@vger.kernel.org Subject: [GIT PULL] Char/Misc driver fixes for 6.10-final The following changes since commit 22a40d14b572deb80c0648557f4bd502d7e83826: Linux 6.10-rc6 (2024-06-30 14:40:44 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git tags/char-misc-6.10-final for you to fetch changes up to 389637d4fb5fee40e8a0f2bfd31583f6768ef792: mei: vsc: Fix spelling error (2024-07-04 12:21:39 +0200) ---------------------------------------------------------------- Char/Misc driver fixes for 6.10-final Here are some small remaining driver fixes for 6.10-final that have all been in linux-next for a while and resolve reported issues. Included in here are: - mei driver fixes (and a spelling fix at the end just to be clean) - iio driver fixes for reported problems - fastrpc bugfixes - nvmem small fixes Again, all have been in linux-next for a while with no reported issues. Signed-off-by: Greg Kroah-Hartman ---------------------------------------------------------------- Ekansh Gupta (6): misc: fastrpc: Fix DSP capabilities request misc: fastrpc: Copy the complete capability structure to user misc: fastrpc: Avoid updating PD type for capability request misc: fastrpc: Fix memory leak in audio daemon attach operation misc: fastrpc: Fix ownership reassignment of remote heap misc: fastrpc: Restrict untrusted app to attach to privileged PD Greg Kroah-Hartman (1): Merge tag 'iio-fixes-for-6.10c' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jic23/iio into char-misc-linus He Zhe (1): hpet: Support 32-bit userspace Joy Chakraborty (3): misc: microchip: pci1xxxx: Fix return value of nvmem callbacks nvmem: rmem: Fix return value of rmem_read() nvmem: meson-efuse: Fix return value of nvmem callbacks João Paulo Gonçalves (1): iio: trigger: Fix condition for own trigger Mudit Sharma (1): iio: light: apds9306: Fix error handing Thomas Weißschuh (2): nvmem: core: only change name to fram for current attribute nvmem: core: limit cell sysfs permissions to main attribute ones Wentong Wu (5): mei: vsc: Enhance IVSC chipset stability during warm reboot mei: vsc: Prevent timeout error with added delay post-firmware download mei: vsc: Utilize the appropriate byte order swap function mei: vsc: Enhance SPI transfer of IVSC ROM mei: vsc: Fix spelling error drivers/char/hpet.c | 34 ++++++++++++++++--- drivers/iio/industrialio-trigger.c | 2 +- drivers/iio/light/apds9306.c | 4 +-- drivers/misc/fastrpc.c | 41 ++++++++++++++++++----- drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_otpe2p.c | 4 --- drivers/misc/mei/platform-vsc.c | 4 +-- drivers/misc/mei/vsc-fw-loader.c | 2 +- drivers/misc/mei/vsc-tp.c | 18 ++++++++-- drivers/nvmem/core.c | 7 ++-- drivers/nvmem/meson-efuse.c | 14 +++++--- drivers/nvmem/rmem.c | 5 ++- include/uapi/misc/fastrpc.h | 3 ++ 12 files changed, 103 insertions(+), 35 deletions(-) . Date: Fri, 12 Jul 2024 14:39:56 +0200 From: "Arnd Bergmann" To: "Linus Torvalds" Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, soc@kernel.org, linux-arm-msm@vger.kernel.org, "Chunyan Zhang" , "Christophe Leroy" Subject: [GIT PULL] ARM: SoC fixes for 6.10, part 3 The following changes since commit 256abd8e550ce977b728be79a74e1729438b4948: Linux 6.10-rc7 (2024-07-07 14:23:46 -0700) are available in the Git repository at: https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git tags/arm-fixes-6.10-3 for you to fetch changes up to 6fba5cbd323e013079b304489629a6b814110512: MAINTAINERS: Update FREESCALE SOC DRIVERS and QUICC ENGINE LIBRARY (2024-07-12 13:16:09 +0200) ---------------------------------------------------------------- ARM: SoC fixes for 6.10, part 3 Most of these changes are Qualcomm SoC specific and came in after I sent out the last set of fixes. This includes two regression fixes for SoC drivers, a defconfig change to ensure the Lenovo X13s is usable and 11 changes to DT files to fix regressions and minor platform specific issues. Tony and Chunyan step back from their respective maintainership roles on the omap and unisoc platforms, and Christophe in turn takes over maintaining some of the Freescale SoC drivers that he has been taking care of in practice already. Lastly, there are two trivial fixes for the davinci and sunxi platforms. ---------------------------------------------------------------- Abel Vesa (1): arm64: dts: qcom: x1e80100: Fix PCIe 6a reg offsets and add MHI Andre Przywara (1): arm64: dts: allwinner: Fix PMIC interrupt number Arnd Bergmann (4): Merge tag 'qcom-arm64-fixes-for-6.10' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/fixes Merge tag 'qcom-arm64-defconfig-fixes-for-6.10' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/fixes Merge tag 'qcom-drivers-fixes-for-6.10' of https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/fixes Merge tag 'sunxi-fixes-for-6.10' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into arm/fixes Bjorn Andersson (1): arm64: dts: qcom: sc8180x: Fix LLCC reg property again Caleb Connolly (1): arm64: dts: qcom: sm6115: add iommu for sdhc_1 Chen Ni (1): ARM: davinci: Convert comma to semicolon Christophe Leroy (1): MAINTAINERS: Update FREESCALE SOC DRIVERS and QUICC ENGINE LIBRARY Chunyan Zhang (1): MAINTAINERS: Move myself from SPRD Maintainer to Reviewer Cong Zhang (1): arm64: dts: qcom: sa8775p: Correct IRQ number of EL2 non-secure physical timer Johan Hovold (4): arm64: dts: qcom: sc8280xp-x13s: fix touchscreen power on arm64: dts: qcom: sc8280xp-crd: use external pull up for touch reset arm64: defconfig: enable Elan i2c-hid driver soc: qcom: pmic_glink: disable UCSI on sc8280xp Komal Bajaj (2): arm64: dts: qcom: qdu1000: Fix LLCC reg property Revert "dt-bindings: cache: qcom,llcc: correct QDU1000 reg entries" Konrad Dybcio (2): arm64: dts: qcom: x1e80100-*: Allocate some CMA buffers arm64: dts: qcom: sc8280xp: Set status = "reserved" on PSHOLD Krzysztof Kozlowski (2): arm64: dts: qcom: x1e80100-crd: fix WCD audio codec TX port mapping arm64: dts: qcom: x1e80100-crd: fix DAI used for headset recording Tony Lindgren (1): MAINTAINERS: Add more maintainers for omaps Documentation/devicetree/bindings/cache/qcom,llcc.yaml | 2 +- MAINTAINERS | 13 +++++++++---- arch/arm/mach-davinci/pm.c | 2 +- .../boot/dts/allwinner/sun50i-h64-remix-mini-pc.dts | 2 +- arch/arm64/boot/dts/qcom/qdu1000.dtsi | 16 +++++++++++++++- arch/arm64/boot/dts/qcom/sa8775p.dtsi | 2 +- arch/arm64/boot/dts/qcom/sc8180x.dtsi | 11 +++++++---- arch/arm64/boot/dts/qcom/sc8280xp-crd.dts | 3 +-- .../boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts | 15 ++++++++------- arch/arm64/boot/dts/qcom/sc8280xp.dtsi | 2 ++ arch/arm64/boot/dts/qcom/sm6115.dtsi | 1 + arch/arm64/boot/dts/qcom/x1e80100-crd.dts | 13 +++++++++++-- arch/arm64/boot/dts/qcom/x1e80100-qcp.dts | 9 +++++++++ arch/arm64/boot/dts/qcom/x1e80100.dtsi | 10 ++++++---- arch/arm64/configs/defconfig | 1 + drivers/soc/qcom/pmic_glink.c | 4 ++++ 16 files changed, 78 insertions(+), 28 deletions(-) . Date: Fri, 12 Jul 2024 15:50:34 +0200 From: Christian Brauner To: Linus Torvalds Cc: Christian Brauner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL for v6.11] vfs misc Hey Linus, /* Summary */ Features: - Support passing NULL along AT_EMPTY_PATH for statx(). NULL paths with any flag value other than AT_EMPTY_PATH go the usual route and end up with -EFAULT to retain compatibility (Rust is abusing calls of the sort to detect availability of statx). This avoids path lookup code, lockref management, memory allocation and in case of NULL path userspace memory access (which can be quite expensive with SMAP on x86_64). - Don't block i_writecount during exec. Remove the deny_write_access() mechanism for executables. - Relax open_by_handle_at() permissions in specific cases where we can prove that the caller had sufficient privileges to open a file. - Switch timespec64 fields in struct inode to discrete integers freeing up 4 bytes. Fixes: - Fix false positive circular locking warning in hfsplus. - Initialize hfs_inode_info after hfs_alloc_inode() in hfs. - Avoid accidental overflows in vfs_fallocate(). - Don't interrupt fallocate with EINTR in tmpfs to avoid constantly restarting shmem_fallocate(). - Add missing quote in comment in fs/readdir. Cleanups: - Don't assign and test in an if statement in mqueue. Move the assignment out of the if statement. - Reflow the logic in may_create_in_sticky(). - Remove the usage of the deprecated ida_simple_xx() API from procfs. - Reject FSCONFIG_CMD_CREATE_EXCL requets that depend on the new mount api early. - Rename variables in copy_tree() to make it easier to understand. - Replace WARN(down_read_trylock, ...) abuse with proper asserts in various places in the VFS. - Get rid of user_path_at_empty() and drop the empty argument from getname_flags(). - Check for error while copying and no path in one branch in getname_flags(). - Avoid redundant smp_mb() for THP handling in do_dentry_open(). - Rename parent_ino to d_parent_ino and make it use RCU. - Remove unused header include in fs/readdir. - Export in_group_capable() helper and switch f2fs and fuse over to it instead of open-coding the logic in both places. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ Merge conflicts with other trees ================================ [1]: linux-next: manual merge of the block tree with the vfs-brauner tree https://lore.kernel.org/linux-next/Zn76C70F9QB_Z0bw@sirena.org.uk [2]: linux-next: manual merge of the block tree with the vfs-brauner tree https://lore.kernel.org/linux-next/Zn76HPyBbHbnmGmw@sirena.org.uk The following changes since commit 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0: Linux 6.10-rc1 (2024-05-26 15:20:12 -0700) are available in the Git repository at: git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.11.misc for you to fetch changes up to b80cc4df1124702c600fd43b784e423a30919204: ipc: mqueue: remove assignment from IS_ERR argument (2024-07-09 06:47:40 +0200) Please consider pulling these changes from the signed vfs-6.11.misc tag. Thanks! Christian ---------------------------------------------------------------- vfs-6.11.misc ---------------------------------------------------------------- Chao Yu (2): hfsplus: fix to avoid false alarm of circular locking hfs: fix to initialize fields of hfs_inode_info after hfs_alloc_inode() Chen Ni (1): ipc: mqueue: remove assignment from IS_ERR argument Christian Brauner (5): fhandle: relax open_by_handle_at() permission checks fs: don't block i_writecount during exec fs: reflow may_create_in_sticky() fs: new helper vfs_empty_path() stat: use vfs_empty_path() helper Christophe JAILLET (1): proc: Remove usage of the deprecated ida_simple_xx() API Hongbo Li (1): fs: fsconfig: intercept non-new mount API in advance for FSCONFIG_CMD_CREATE_EXCL command Jeff Layton (1): fs: switch timespec64 fields in inode to discrete integers Jemmy (1): Improve readability of copy_tree Justin Stitt (1): fs: remove accidental overflow during wraparound check Mateusz Guzik (8): vfs: replace WARN(down_read_trylock, ...) abuse with proper asserts vfs: stop using user_path_at_empty in do_readlinkat vfs: retire user_path_at_empty and drop empty arg from getname_flags vfs: shave a branch in getname_flags vfs: reorder checks in may_create_in_sticky vfs: remove redundant smp_mb for thp handling in do_dentry_open vfs: support statx(..., NULL, AT_EMPTY_PATH, ...) vfs: rename parent_ino to d_parent_ino and make it use RCU Mikulas Patocka (1): tmpfs: don't interrupt fallocate with EINTR Thorsten Blum (2): readdir: Remove unused header include readdir: Add missing quote in macro comment Youling Tang (3): fs: Export in_group_or_capable() f2fs: Use in_group_or_capable() helper fuse: Use in_group_or_capable() helper fs/attr.c | 2 - fs/binfmt_elf.c | 2 - fs/binfmt_elf_fdpic.c | 5 +- fs/binfmt_misc.c | 7 +- fs/dcache.c | 30 +++++++- fs/exec.c | 14 +--- fs/exportfs/expfs.c | 9 ++- fs/f2fs/acl.c | 3 +- fs/f2fs/file.c | 6 +- fs/fhandle.c | 178 +++++++++++++++++++++++++++++++++++++---------- fs/fsopen.c | 7 +- fs/fuse/acl.c | 4 +- fs/hfs/inode.c | 3 + fs/hfsplus/bfind.c | 15 +--- fs/hfsplus/extents.c | 9 ++- fs/hfsplus/hfsplus_fs.h | 21 ++++++ fs/hfsplus/ioctl.c | 4 +- fs/inode.c | 1 + fs/internal.h | 14 ++++ fs/mount.h | 1 + fs/namei.c | 98 ++++++++++++++++---------- fs/namespace.c | 74 +++++++++----------- fs/nfsd/nfsfh.c | 2 +- fs/open.c | 17 +++-- fs/proc/generic.c | 6 +- fs/quota/dquot.c | 8 +-- fs/readdir.c | 4 +- fs/stat.c | 172 +++++++++++++++++++++++++++++---------------- include/linux/dcache.h | 2 + include/linux/exportfs.h | 2 + include/linux/fs.h | 85 +++++++++++++--------- include/linux/namei.h | 8 +-- io_uring/statx.c | 3 +- io_uring/xattr.c | 4 +- ipc/mqueue.c | 3 +- kernel/fork.c | 26 +------ mm/khugepaged.c | 10 +-- mm/shmem.c | 9 ++- 38 files changed, 539 insertions(+), 329 deletions(-) . Date: Fri, 12 Jul 2024 15:54:15 +0200 From: Christian Brauner To: Linus Torvalds Cc: Christian Brauner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL for v6.11] vfs module descriptions Hey Linus, /* Summary */ This contains patches to add module descriptions to all modules under fs/ currently lacking them. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ No known conflicts. The following changes since commit 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0: Linux 6.10-rc1 (2024-05-26 15:20:12 -0700) are available in the Git repository at: git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.11.module.description for you to fetch changes up to 807221c54db6bc696b65106b4ee76286e435944d: openpromfs: add missing MODULE_DESCRIPTION() macro (2024-06-20 09:46:01 +0200) Please consider pulling these changes from the signed vfs-6.11.module.description tag. Thanks! Christian ---------------------------------------------------------------- vfs-6.11.module.description ---------------------------------------------------------------- Jeff Johnson (13): fs: minix: add MODULE_DESCRIPTION() fs: efs: add MODULE_DESCRIPTION() fs: sysv: add MODULE_DESCRIPTION() qnx6: add MODULE_DESCRIPTION() qnx4: add MODULE_DESCRIPTION() fs: hpfs: add MODULE_DESCRIPTION() fs: hfs: add MODULE_DESCRIPTION() fs: cramfs: add MODULE_DESCRIPTION() fs: binfmt: add missing MODULE_DESCRIPTION() macros fs: fat: add missing MODULE_DESCRIPTION() macros fs: autofs: add MODULE_DESCRIPTION() fs: nls: add missing MODULE_DESCRIPTION() macros openpromfs: add missing MODULE_DESCRIPTION() macro fs/autofs/init.c | 1 + fs/binfmt_misc.c | 1 + fs/binfmt_script.c | 1 + fs/cramfs/inode.c | 1 + fs/efs/inode.c | 1 + fs/fat/fat_test.c | 1 + fs/fat/inode.c | 1 + fs/hfs/super.c | 1 + fs/hpfs/super.c | 1 + fs/minix/inode.c | 1 + fs/nls/mac-celtic.c | 1 + fs/nls/mac-centeuro.c | 1 + fs/nls/mac-croatian.c | 1 + fs/nls/mac-cyrillic.c | 1 + fs/nls/mac-gaelic.c | 1 + fs/nls/mac-greek.c | 1 + fs/nls/mac-iceland.c | 1 + fs/nls/mac-inuit.c | 1 + fs/nls/mac-roman.c | 1 + fs/nls/mac-romanian.c | 1 + fs/nls/mac-turkish.c | 1 + fs/nls/nls_ascii.c | 1 + fs/nls/nls_base.c | 1 + fs/nls/nls_cp1250.c | 1 + fs/nls/nls_cp1251.c | 1 + fs/nls/nls_cp1255.c | 1 + fs/nls/nls_cp437.c | 1 + fs/nls/nls_cp737.c | 1 + fs/nls/nls_cp775.c | 1 + fs/nls/nls_cp850.c | 1 + fs/nls/nls_cp852.c | 1 + fs/nls/nls_cp855.c | 1 + fs/nls/nls_cp857.c | 1 + fs/nls/nls_cp860.c | 1 + fs/nls/nls_cp861.c | 1 + fs/nls/nls_cp862.c | 1 + fs/nls/nls_cp863.c | 1 + fs/nls/nls_cp864.c | 1 + fs/nls/nls_cp865.c | 1 + fs/nls/nls_cp866.c | 1 + fs/nls/nls_cp869.c | 1 + fs/nls/nls_cp874.c | 1 + fs/nls/nls_cp932.c | 1 + fs/nls/nls_cp936.c | 1 + fs/nls/nls_cp949.c | 1 + fs/nls/nls_cp950.c | 1 + fs/nls/nls_euc-jp.c | 1 + fs/nls/nls_iso8859-1.c | 1 + fs/nls/nls_iso8859-13.c | 1 + fs/nls/nls_iso8859-14.c | 1 + fs/nls/nls_iso8859-15.c | 1 + fs/nls/nls_iso8859-2.c | 1 + fs/nls/nls_iso8859-3.c | 1 + fs/nls/nls_iso8859-4.c | 1 + fs/nls/nls_iso8859-5.c | 1 + fs/nls/nls_iso8859-6.c | 1 + fs/nls/nls_iso8859-7.c | 1 + fs/nls/nls_iso8859-9.c | 1 + fs/nls/nls_koi8-r.c | 1 + fs/nls/nls_koi8-ru.c | 1 + fs/nls/nls_koi8-u.c | 1 + fs/nls/nls_ucs2_utils.c | 1 + fs/nls/nls_utf8.c | 1 + fs/openpromfs/inode.c | 1 + fs/qnx4/inode.c | 1 + fs/qnx6/inode.c | 1 + fs/sysv/super.c | 1 + 67 files changed, 67 insertions(+) . Date: Fri, 12 Jul 2024 15:54:57 +0200 From: Christian Brauner To: Linus Torvalds Cc: Christian Brauner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL for v6.11] vfs pg_error Hey Linus, /* Summary */ This contains work to remove almost all remaining users of PG_error from filesystems and filesystem helper libraries. An additional patch will be coming in via the jfs tree which tests the PG_error bit. Afterwards nothing will be testing it anymore and it's safe to remove all places which set or clear the PG_error bit. The goal is to fully remove PG_error by the next merge window. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ Merge conflicts with mainline ============================= There's one merge conflict in fs/nsfs/symlink.c After conflict resolution the function should look like this: static int nfs_symlink_filler(struct file *file, struct folio *folio) { struct inode *inode = folio->mapping->host; int error; error = NFS_PROTO(inode)->readlink(inode, &folio->page, 0, PAGE_SIZE); folio_end_read(folio, error == 0); return error; } The following changes since commit 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0: Linux 6.10-rc1 (2024-05-26 15:20:12 -0700) are available in the Git repository at: git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.11.pg_error for you to fetch changes up to 7ad635ea82704a64c40aba67a7d04293d4780f0f: buffer: Remove calls to set and clear the folio error flag (2024-05-31 12:31:43 +0200) Please consider pulling these changes from the signed vfs-6.11.pg_error tag. Thanks! Christian ---------------------------------------------------------------- vfs-6.11.pg_error ---------------------------------------------------------------- Matthew Wilcox (Oracle) (16): befs: Convert befs_symlink_read_folio() to use folio_end_read() coda: Convert coda_symlink_filler() to use folio_end_read() cramfs: Convert cramfs_read_folio to use a folio efs: Convert efs_symlink_read_folio to use a folio hpfs: Convert hpfs_symlink_read_folio to use a folio isofs: Convert rock_ridge_symlink_read_folio to use a folio hostfs: Convert hostfs_read_folio() to use a folio jffs2: Remove calls to set/clear the folio error flag nfs: Remove calls to folio_set_error orangefs: Remove calls to set/clear the error flag reiserfs: Remove call to folio_set_error() romfs: Convert romfs_read_folio() to use a folio ufs: Remove call to set the folio error flag vboxsf: Convert vboxsf_read_folio() to use a folio iomap: Remove calls to set and clear folio error flag buffer: Remove calls to set and clear the folio error flag fs/befs/linuxvfs.c | 10 ++++------ fs/buffer.c | 7 +------ fs/coda/symlink.c | 10 +--------- fs/cramfs/inode.c | 25 ++++++++++--------------- fs/efs/symlink.c | 14 +++++--------- fs/hostfs/hostfs_kern.c | 23 ++++++----------------- fs/hpfs/namei.c | 15 +++------------ fs/iomap/buffered-io.c | 8 -------- fs/isofs/rock.c | 17 ++++++++--------- fs/jffs2/file.c | 14 +++----------- fs/mpage.c | 13 +++---------- fs/nfs/read.c | 2 -- fs/nfs/symlink.c | 12 ++---------- fs/nfs/write.c | 1 - fs/orangefs/inode.c | 13 +++---------- fs/orangefs/orangefs-bufmap.c | 4 +--- fs/reiserfs/inode.c | 1 - fs/romfs/super.c | 22 ++++++---------------- fs/ufs/dir.c | 1 - fs/vboxsf/file.c | 18 +++++------------- 20 files changed, 61 insertions(+), 169 deletions(-) . Date: Fri, 12 Jul 2024 15:55:41 +0200 From: Christian Brauner To: Linus Torvalds Cc: Christian Brauner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL for v6.11] vfs mount api Hey Linus, /* Summary */ This contains work for the mount api: - Add a generic helper to parse uid and gid mount options. Currently we open-code the same logic in various filesystems which is error prone. Especially since the verification of uid and gid mount options is a sensitive operation in the face of idmappings. Add a generic helper and convert all filesystems over to it. Make sure that filesystems that are mountable in unprivileged containers verify that the specified uid and gid can be represented in the owning namespace of the filesystem. - Convert hostfs to the new mount api. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ No known conflicts. The following changes since commit 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0: Linux 6.10-rc1 (2024-05-26 15:20:12 -0700) are available in the Git repository at: git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.11.mount.api for you to fetch changes up to eea6a8322efd3982e59c41a5b61948a0b043ca58: fuse: Convert to new uid/gid option parsing helpers (2024-07-03 16:55:11 +0200) Please consider pulling these changes from the signed vfs-6.11.mount.api tag. Thanks! Christian ---------------------------------------------------------------- vfs-6.11.mount.api ---------------------------------------------------------------- Eric Sandeen (18): fs_parse: add uid & gid option option parsing helpers autofs: Convert to new uid/gid option parsing helpers debugfs: Convert to new uid/gid option parsing helpers efivarfs: Convert to new uid/gid option parsing helpers exfat: Convert to new uid/gid option parsing helpers ext4: Convert to new uid/gid option parsing helpers hugetlbfs: Convert to new uid/gid option parsing helpers isofs: Convert to new uid/gid option parsing helpers ntfs3: Convert to new uid/gid option parsing helpers tmpfs: Convert to new uid/gid option parsing helpers smb: client: Convert to new uid/gid option parsing helpers tracefs: Convert to new uid/gid option parsing helpers vboxsf: Convert to new uid/gid option parsing helpers fat: move debug into fat_mount_options fat: Convert to new mount api fat: Convert to new uid/gid option parsing helpers fuse: verify {g,u}id mount options correctly fuse: Convert to new uid/gid option parsing helpers Hongbo Li (1): hostfs: convert hostfs to use the new mount API Nathan Chancellor (1): hostfs: Add const qualifier to host_root in hostfs_fill_super() Documentation/filesystems/mount_api.rst | 9 +- fs/autofs/inode.c | 16 +- fs/debugfs/inode.c | 16 +- fs/efivarfs/super.c | 12 +- fs/exfat/super.c | 8 +- fs/ext4/super.c | 22 +- fs/fat/fat.h | 18 +- fs/fat/inode.c | 674 ++++++++++++++++---------------- fs/fat/namei_msdos.c | 38 +- fs/fat/namei_vfat.c | 38 +- fs/fs_parser.c | 34 ++ fs/fuse/inode.c | 24 +- fs/hostfs/hostfs_kern.c | 83 +++- fs/hugetlbfs/inode.c | 12 +- fs/isofs/inode.c | 16 +- fs/ntfs3/super.c | 12 +- fs/smb/client/fs_context.c | 39 +- fs/tracefs/inode.c | 16 +- fs/vboxsf/super.c | 16 +- include/linux/fs_parser.h | 6 +- mm/shmem.c | 12 +- 21 files changed, 594 insertions(+), 527 deletions(-) . Date: Fri, 12 Jul 2024 15:57:15 +0200 From: Christian Brauner To: Linus Torvalds Cc: Christian Brauner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL for v6.11] vfs casefold Hey Linus, /* Summary */ This contains some work to simplify the handling of casefolded names: - Simplify the handling of casefolded names in f2fs and ext4 by keeping the names as a qstr to avoiding unnecessary conversions. - Introduce a new generic_ci_match() libfs case-insensitive lookup helper and use it in both f2fs and ext4 allowing to remove the filesystem specific implementations. - Remove a bunch of ifdefs by making the unicode built checks part of the code flow. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ No known conflicts. The following changes since commit 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0: Linux 6.10-rc1 (2024-05-26 15:20:12 -0700) are available in the Git repository at: git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.11.casefold for you to fetch changes up to 28add38d545f445f01eec844b85eed4593c31733: f2fs: Move CONFIG_UNICODE defguards into the code flow (2024-06-07 17:00:45 +0200) Please consider pulling these changes from the signed vfs-6.11.casefold tag. Thanks! Christian ---------------------------------------------------------------- vfs-6.11.casefold ---------------------------------------------------------------- Gabriel Krisman Bertazi (7): ext4: Simplify the handling of cached casefolded names f2fs: Simplify the handling of cached casefolded names libfs: Introduce case-insensitive string comparison helper ext4: Reuse generic_ci_match for ci comparisons f2fs: Reuse generic_ci_match for ci comparisons ext4: Move CONFIG_UNICODE defguards into the code flow f2fs: Move CONFIG_UNICODE defguards into the code flow fs/ext4/crypto.c | 10 +---- fs/ext4/ext4.h | 35 +++++++++------ fs/ext4/namei.c | 122 ++++++++++++++++------------------------------------- fs/ext4/super.c | 4 +- fs/f2fs/dir.c | 105 ++++++++++++++------------------------------- fs/f2fs/f2fs.h | 16 ++++++- fs/f2fs/namei.c | 10 ++--- fs/f2fs/recovery.c | 9 +--- fs/f2fs/super.c | 8 ++-- fs/libfs.c | 74 ++++++++++++++++++++++++++++++++ include/linux/fs.h | 4 ++ 11 files changed, 195 insertions(+), 202 deletions(-) . Date: Fri, 12 Jul 2024 15:58:04 +0200 From: Christian Brauner To: Linus Torvalds Cc: Christian Brauner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL for v6.11] vfs inode Hey Linus, /* Summary */ This contains smaller performance improvements to inodes and dentries: # inode: - Add rcu based inode lookup variants. They avoid one inode hash lock acquire in the common case thereby significantly reducing contention. We already support RCU-based operations but didn't take advantage of them during inode insertion. Callers of iget_locked() get the improvement without any code changes. Callers that need a custom callback can switch to iget5_locked_rcu() as e.g., did btrfs. With 20 threads each walking a dedicated 1000 dirs * 1000 files directory tree to stat(2) on a 32 core + 24GB ram vm: before: 3.54s user 892.30s system 1966% cpu 45.549 total after: 3.28s user 738.66s system 1955% cpu 37.932 total (-16.7%) Long-term we should pick up the effort to introduce more fine-grained locking and possibly improve on the currently used hash implementation. - Start zeroing i_state in inode_init_always() instead of doing it in individual filesystems. This allows us to remove an unneeded lock acquire in new_inode() and not burden individual filesystems with this. dcache: - Move d_lockref out of the area used by RCU lookup to avoid cacheline ping poing because the embedded name is sharing a cacheline with d_lockref. - Fix dentry size on 32bit with CONFIG_SMP=y so it does actually end up with 128 bytes in total. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ Merge conflicts with other trees ================================ [1]: linux-next: manual merge of the vfs-brauner tree with the btrfs tree https://lore.kernel.org/linux-next/ZnFyeNLLrEcX5_g0@sirena.org.uk Merge conflicts with mainline ============================= This causes a merge conflict with fs/bcachefs/fs.c. The gist is that inode->i_state initialization in __bch2_new_inode() isn't needed anymore after this is merged and that line needs to be deleted from that function. The following changes since commit 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0: Linux 6.10-rc1 (2024-05-26 15:20:12 -0700) are available in the Git repository at: git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.11.inode for you to fetch changes up to dc99c0ff53f588bb210b1e8b3314c7581cde68a2: fs: fix dentry size (2024-07-03 10:34:11 +0200) Please consider pulling these changes from the signed vfs-6.11.inode tag. Thanks! Christian ---------------------------------------------------------------- vfs-6.11.inode ---------------------------------------------------------------- Christian Brauner (1): fs: fix dentry size Mateusz Guzik (7): vfs: add rcu-based find_inode variants for iget ops btrfs: use iget5_locked_rcu xfs: preserve i_state around inode_init_always in xfs_reinit_inode vfs: partially sanitize i_state zeroing on inode creation xfs: remove now spurious i_state initialization in xfs_inode_alloc bcachefs: remove now spurious i_state initialization vfs: move d_lockref out of the area used by RCU lookup fs/bcachefs/fs.c | 1 - fs/btrfs/inode.c | 2 +- fs/inode.c | 108 +++++++++++++++++++++++++++++++++++++------------ fs/xfs/xfs_icache.c | 5 ++- include/linux/dcache.h | 9 ++++- include/linux/fs.h | 7 +++- 6 files changed, 99 insertions(+), 33 deletions(-) . Date: Fri, 12 Jul 2024 15:58:52 +0200 From: Christian Brauner To: Linus Torvalds Cc: Christian Brauner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL for v6.11] vfs procfs Hey Linus, /* Summary */ This contains work to allow restricting access to /proc//mem. Over the years various exploits started abusing /proc//mem (cf. [1] and [2]). Specifically [2] is interesting as it installed an arbitrary payload from noexec storage into a running process and then executed it. That payload itself included an ELF loader to run arbitrary code off of noexec storage. The biggest problem is that /proc//mem ignores page permissions by using FOLL_FORCE which was discussed several times on- and off-list. Unfortunately there are various use-cases using /proc//mem making it impossible to just turn it off. They at least include PTRACE_POKEDATA and the seccomp notifier which is used to emulate system calls. So give userspace a way to restrict access to /proc//mem via kernel command line options. Setting them to "all" restricts access for all processes while "ptracer" will allow access to ptracers: (1) Restrict the use of FOLL_FORCE via proc_mem.restrict_foll_force (2) Restrict opening /proc//mem for reading. (3) Restrict opening /proc//mem for writing. (4) Restrict writing to /proc//mem. --- The level of fine-grained management isn't my favorite as it requires distributions to have some level of knowledge around the implications of FOLL_FORCE and /proc//mem access in general. But the use-cases where /proc//mem access is needed do already imply a sophisticated knowledge around its implications. Especially when it comes to the seccomp notifier and gdb to inspect or emulate process state. So that ultimately swayed me to accept this. If we need something simpler I'm all ears. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ No known conflicts. The following changes since commit 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0: Linux 6.10-rc1 (2024-05-26 15:20:12 -0700) are available in the Git repository at: git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.11.procfs for you to fetch changes up to 39efa92f9e5fceb44edef5536c58e3750b9d638d: proc: restrict /proc/pid/mem (2024-06-18 12:26:54 +0200) Please consider pulling these changes from the signed vfs-6.11.procfs tag. Thanks! Christian ---------------------------------------------------------------- vfs-6.11.procfs ---------------------------------------------------------------- Adrian Ratiu (2): proc: pass file instead of inode to proc_mem_open proc: restrict /proc/pid/mem Documentation/admin-guide/kernel-parameters.txt | 38 +++++ fs/proc/base.c | 203 +++++++++++++++++++++++- fs/proc/internal.h | 2 +- fs/proc/task_mmu.c | 6 +- fs/proc/task_nommu.c | 2 +- security/Kconfig | 121 ++++++++++++++ 6 files changed, 363 insertions(+), 9 deletions(-) . Date: Fri, 12 Jul 2024 15:59:50 +0200 From: Christian Brauner To: Linus Torvalds Cc: Christian Brauner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL for v6.11] vfs mount Hey Linus, /* Summary */ This contains work to extend the abilities of listmount() and statmount() and various fixes and cleanups. Features: - Allow iterating through mounts via listmount() from newest to oldest. This makes it possible for mount(8) to keep iterating the mount table in reverse order so it gets newest mounts first. - Relax permissions on listmount() and statmount(). It's not necessary to have capabilities in the initial namespace. It's sufficient to have capabilities in the owning namespace of the mount namespace we're located in to list unreachable mounts in that namespace. - Extend both listmount() and statmount() to list and stat mounts in foreign mount namespaces. Currently the only way to iterate over mount entries in mount namespaces that aren't in the caller's mount namespace is by crawling through /proc in order to find /proc//mountinfo for the relevant mount namespace. This is both very clumsy and hugely inefficient. So extend struct mnt_id_req with a new member that allows to specify the mount namespace id of the mount namespace we want to look at. Luckily internally we already have most of the infrastructure for this so we just need to expose it to userspace. Give userspace a way to retrieve the id of a mount namespace via statmount() and through a new nsfs ioctl() on mount namespace file descriptor. This comes with appropriate selftests. - Expose mount options through statmount(). Currently if userspace wants to get mount options for a mount and with statmount(), they still have to open /proc//mountinfo to parse mount options. Simply the information through statmount() directly. Afterwards it's possible to only rely on statmount() and listmount() to retrieve all and more information than /proc//mountinfo provides. This comes with appropriate selftests. Fixes: - Avoid copying to userspace under the namespace semaphore in listmount. Cleanups: - Simplify the error handling in listmount by relying on our newly added cleanup infrastructure. - Refuse invalid mount ids early for both listmount and statmount. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ No known conflicts. The following changes since commit 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0: Linux 6.10-rc1 (2024-05-26 15:20:12 -0700) are available in the Git repository at: git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.11.mount for you to fetch changes up to 4bed843b10004d9101b49ac7270131051c39a92b: fs: reject invalid last mount id early (2024-07-08 06:32:18 +0200) Please consider pulling these changes from the signed vfs-6.11.mount tag. Thanks! Christian ---------------------------------------------------------------- vfs-6.11.mount ---------------------------------------------------------------- Christian Brauner (15): path: add cleanup helper fs: don't copy to userspace under namespace semaphore fs: simplify error handling fs: relax permissions for listmount() listmount: allow listing in reverse order fs: relax permissions for statmount() fs: Allow listmount() in foreign mount namespace fs: Allow statmount() in foreign mount namespace Merge patch series "Support foreign mount namespace with statmount/listmount" fs: use guard for namespace_sem in statmount() Merge patch series "Add the ability to query mount options in statmount" fs: only copy to userspace on success in listmount() fs: find rootfs mount of the mount namespace fs: refuse mnt id requests with invalid ids early fs: reject invalid last mount id early Josef Bacik (7): fs: keep an index of current mount namespaces fs: export the mount ns id via statmount fs: add an ioctl to get the mnt ns id from nsfs selftests: add a test for the foreign mnt ns extensions fs: rename show_mnt_opts -> show_vfsmnt_opts fs: export mount options via statmount() sefltests: extend the statmount test for mount options fs/mount.h | 2 + fs/namespace.c | 450 +++++++++++++++++---- fs/nsfs.c | 14 + fs/proc_namespace.c | 6 +- include/linux/path.h | 9 + include/uapi/linux/mount.h | 10 +- include/uapi/linux/nsfs.h | 2 + .../selftests/filesystems/statmount/Makefile | 2 +- .../selftests/filesystems/statmount/statmount.h | 46 +++ .../filesystems/statmount/statmount_test.c | 144 +++++-- .../filesystems/statmount/statmount_test_ns.c | 364 +++++++++++++++++ 11 files changed, 926 insertions(+), 123 deletions(-) create mode 100644 tools/testing/selftests/filesystems/statmount/statmount.h create mode 100644 tools/testing/selftests/filesystems/statmount/statmount_test_ns.c . Date: Fri, 12 Jul 2024 16:00:48 +0200 From: Christian Brauner To: Linus Torvalds Cc: Christian Brauner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL for v6.11] vfs nsfs Hey Linus, /* Summary */ This adds ioctls allowing to translate PIDs between PID namespaces. The motivating use-case comes from LXCFS which is a tiny fuse filesystem used to virtualize various aspects of procfs. LXCFS is run on the host. The files and directories it creates can be bind-mounted by e.g. a container at startup and mounted over the various procfs files the container wishes to have virtualized. When e.g. a read request for uptime is received, LXCFS will receive the pid of the reader. In order to virtualize the corresponding read, LXCFS needs to know the pid of the init process of the reader's pid namespace. In order to do this, LXCFS first needs to fork() two helper processes. The first helper process setns() to the readers pid namespace. The second helper process is needed to create a process that is a proper member of the pid namespace. The second helper process then creates a ucred message with ucred.pid set to 1 and sends it back to LXCFS. The kernel will translate the ucred.pid field to the corresponding pid number in LXCFS's pid namespace. This way LXCFS can learn the init pid number of the reader's pid namespace and can go on to virtualize. Since these two forks() are costly LXCFS maintains an init pid cache that caches a given pid for a fixed amount of time. The cache is pruned during new read requests. However, even with the cache the hit of the two forks() is singificant when a very large number of containers are running. So this adds a simple set of ioctls that let's a caller translate PIDs from and into a given PID namespace. This significantly improves performance with a very simple change. To protect against races pidfds can be used to check whether the process is still valid. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ [1]: This contains a merge conflict with the vfs-6.11.mount pull request https://lore.kernel.org/r/20240712-vfs-mount-8fd93381a87f@brauner After conflict resolution the merge diff looks like this: diff --cc fs/nsfs.c index af352dadffe1,a23c827a0299..ad6bb91a3e23 --- a/fs/nsfs.c +++ b/fs/nsfs.c @@@ -144,22 -147,56 +148,69 @@@ static long ns_ioctl(struct file *filp argp = (uid_t __user *) arg; uid = from_kuid_munged(current_user_ns(), user_ns->owner); return put_user(uid, argp); + case NS_GET_MNTNS_ID: { + struct mnt_namespace *mnt_ns; + __u64 __user *idp; + __u64 id; + + if (ns->ops->type != CLONE_NEWNS) + return -EINVAL; + + mnt_ns = container_of(ns, struct mnt_namespace, ns); + idp = (__u64 __user *)arg; + id = mnt_ns->seq; + return put_user(id, idp); + } + case NS_GET_PID_FROM_PIDNS: + fallthrough; + case NS_GET_TGID_FROM_PIDNS: + fallthrough; + case NS_GET_PID_IN_PIDNS: + fallthrough; + case NS_GET_TGID_IN_PIDNS: + if (ns->ops->type != CLONE_NEWPID) + return -EINVAL; + + ret = -ESRCH; + pid_ns = container_of(ns, struct pid_namespace, ns); + + rcu_read_lock(); + + if (ioctl == NS_GET_PID_IN_PIDNS || + ioctl == NS_GET_TGID_IN_PIDNS) + tsk = find_task_by_vpid(arg); + else + tsk = find_task_by_pid_ns(arg, pid_ns); + if (!tsk) + break; + + switch (ioctl) { + case NS_GET_PID_FROM_PIDNS: + ret = task_pid_vnr(tsk); + break; + case NS_GET_TGID_FROM_PIDNS: + ret = task_tgid_vnr(tsk); + break; + case NS_GET_PID_IN_PIDNS: + ret = task_pid_nr_ns(tsk, pid_ns); + break; + case NS_GET_TGID_IN_PIDNS: + ret = task_tgid_nr_ns(tsk, pid_ns); + break; + default: + ret = 0; + break; + } + rcu_read_unlock(); + + if (!ret) + ret = -ESRCH; + break; default: - return -ENOTTY; + ret = -ENOTTY; } + + return ret; } int ns_get_name(char *buf, size_t size, struct task_struct *task, diff --cc include/uapi/linux/nsfs.h index 56e8b1639b98,faeb9195da08..b133211331f6 --- a/include/uapi/linux/nsfs.h +++ b/include/uapi/linux/nsfs.h @@@ -15,7 -15,13 +15,15 @@@ #define NS_GET_NSTYPE _IO(NSIO, 0x3) /* Get owner UID (in the caller's user namespace) for a user namespace */ #define NS_GET_OWNER_UID _IO(NSIO, 0x4) +/* Get the id for a mount namespace */ +#define NS_GET_MNTNS_ID _IO(NSIO, 0x5) + /* Translate pid from target pid namespace into the caller's pid namespace. */ -#define NS_GET_PID_FROM_PIDNS _IOR(NSIO, 0x5, int) ++#define NS_GET_PID_FROM_PIDNS _IOR(NSIO, 0x6, int) + /* Return thread-group leader id of pid in the callers pid namespace. */ + #define NS_GET_TGID_FROM_PIDNS _IOR(NSIO, 0x7, int) + /* Translate pid from caller's pid namespace into a target pid namespace. */ -#define NS_GET_PID_IN_PIDNS _IOR(NSIO, 0x6, int) ++#define NS_GET_PID_IN_PIDNS _IOR(NSIO, 0x8, int) + /* Return thread-group leader id of pid in the target pid namespace. */ -#define NS_GET_TGID_IN_PIDNS _IOR(NSIO, 0x8, int) ++#define NS_GET_TGID_IN_PIDNS _IOR(NSIO, 0x9, int) #endif /* __LINUX_NSFS_H */ The following changes since commit 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0: Linux 6.10-rc1 (2024-05-26 15:20:12 -0700) are available in the Git repository at: git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.11.nsfs for you to fetch changes up to ca567df74a28a9fb368c6b2d93e864113f73f5c2: nsfs: add pid translation ioctls (2024-06-25 23:00:41 +0200) Please consider pulling these changes from the signed vfs-6.11.nsfs tag. Thanks! Christian ---------------------------------------------------------------- vfs-6.11.nsfs ---------------------------------------------------------------- Christian Brauner (1): nsfs: add pid translation ioctls fs/nsfs.c | 53 ++++++++++++++++++++++++++++++++++++++++++++++- include/uapi/linux/nsfs.h | 8 +++++++ 2 files changed, 60 insertions(+), 1 deletion(-) . Date: Fri, 12 Jul 2024 16:01:45 +0200 From: Christian Brauner To: Linus Torvalds Cc: Christian Brauner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL for v6.11] vfs pidfs Hey Linus, /* Summary */ This contains work to make it possible to derive namespace file descriptors from pidfd file descriptors. Right now it is already possible to use a pidfd with setns() to atomically change multiple namespaces at the same time. In other words, it is possible to switch to the namespace context of a process using a pidfd. There is no need to first open namespace file descriptors via procfs. The work included here is an extension of these abilities by allowing to open namespace file descriptors using a pidfd. This means it is now possible to interact with namespaces without ever touching procfs. To this end a new set of ioctls() on pidfds is introduced covering all supported namespace types. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc1 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ [1]: This contains a merge conflict with the vfs-6.11.misc pull request https://lore.kernel.org/r/20240712-vfs-misc-c1dbbc5eaf82@brauner After conflict resolution the merge diff looks like this: diff --cc fs/internal.h index f26454c60a98,24346cf765dd..a5e9a2f5b30d --- a/fs/internal.h +++ b/fs/internal.h @@@ -323,15 -322,4 +324,16 @@@ struct stashed_operations int path_from_stashed(struct dentry **stashed, struct vfsmount *mnt, void *data, struct path *path); void stashed_dentry_prune(struct dentry *dentry); +/** + * path_mounted - check whether path is mounted + * @path: path to check + * + * Determine whether @path refers to the root of a mount. + * + * Return: true if @path is the root of a mount, false if not. + */ +static inline bool path_mounted(const struct path *path) +{ + return path->mnt->mnt_root == path->dentry; +} + int open_namespace(struct ns_common *ns); The following changes since commit 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0: Linux 6.10-rc1 (2024-05-26 15:20:12 -0700) are available in the Git repository at: git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.11.pidfs for you to fetch changes up to 5b08bd408534bfb3a7cf5778da5b27d4e4fffe12: pidfs: allow retrieval of namespace file descriptors (2024-06-28 10:37:29 +0200) Please consider pulling these changes from the signed vfs-6.11.pidfs tag. Thanks! Christian ---------------------------------------------------------------- vfs-6.11.pidfs ---------------------------------------------------------------- Christian Brauner (6): path: add cleanup helper file: add take_fd() cleanup helper nsproxy: add a cleanup helper for nsproxy nsproxy: add helper to go from arbitrary namespace to ns_common nsfs: add open_namespace() pidfs: allow retrieval of namespace file descriptors fs/internal.h | 2 ++ fs/nsfs.c | 55 +++++++++++++++------------- fs/pidfs.c | 90 ++++++++++++++++++++++++++++++++++++++++++++++ include/linux/cleanup.h | 13 ++++--- include/linux/file.h | 20 +++++++++++ include/linux/nsproxy.h | 13 +++++++ include/linux/path.h | 9 +++++ include/uapi/linux/pidfd.h | 14 ++++++++ 8 files changed, 187 insertions(+), 29 deletions(-) . Date: Fri, 12 Jul 2024 16:03:24 +0200 From: Christian Brauner To: Linus Torvalds Cc: Christian Brauner , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL for v6.11] vfs iomap Hey Linus, /* Summary */ This contains some minor work for the iomap subsystem: - Add documentaiton on the design of iomap and how to port to it. - Optimize iomap_read_folio(). - Bring back the change to iomap_write_end() to no increase i_size. This is accompanied by a change to xfs to reserve blocks for truncating large realtime inodes to avoid exposing stale data when iomap_write_end() stops increasing i_size. /* Testing */ clang: Debian clang version 16.0.6 (26) gcc: (Debian 13.2.0-24) All patches are based on v6.10-rc4 and have been sitting in linux-next. No build failures or warnings were observed. /* Conflicts */ No known conflicts. The following changes since commit 6ba59ff4227927d3a8530fc2973b80e94b54d58f: Linux 6.10-rc4 (2024-06-16 13:40:16 -0700) are available in the Git repository at: git@gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/vfs-6.11.iomap for you to fetch changes up to 602f09f4029c7b5e1a2f44a7651ac8922a904a1b: iomap: don't increase i_size in iomap_write_end() (2024-06-19 15:58:28 +0200) Please consider pulling these changes from the signed vfs-6.11.iomap tag. Thanks! Christian ---------------------------------------------------------------- vfs-6.11.iomap ---------------------------------------------------------------- Darrick J. Wong (1): Documentation: the design of iomap and how to port Ritesh Harjani (IBM) (1): iomap: Optimize iomap_read_folio Zhang Yi (2): xfs: reserve blocks for truncating large realtime inode iomap: don't increase i_size in iomap_write_end() Documentation/filesystems/index.rst | 1 + Documentation/filesystems/iomap/design.rst | 441 +++++++++++++++ Documentation/filesystems/iomap/index.rst | 13 + Documentation/filesystems/iomap/operations.rst | 713 +++++++++++++++++++++++++ Documentation/filesystems/iomap/porting.rst | 120 +++++ MAINTAINERS | 1 + fs/iomap/buffered-io.c | 73 ++- fs/xfs/xfs_iops.c | 15 +- 8 files changed, 1351 insertions(+), 26 deletions(-) create mode 100644 Documentation/filesystems/iomap/design.rst create mode 100644 Documentation/filesystems/iomap/index.rst create mode 100644 Documentation/filesystems/iomap/operations.rst create mode 100644 Documentation/filesystems/iomap/porting.rst . Date: Fri, 12 Jul 2024 16:44:57 +0200 From: Ulf Hansson To: Linus , linux-mmc@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Ulf Hansson Subject: [GIT PULL] MMC fixes for v6.10-rc8 Hi Linus, Here's a PR with a couple of MMC fixes intended for v6.10-rc8. Details about the highlights are as usual found in the signed tag. Please pull this in! Kind regards Ulf Hansson The following changes since commit ab069ce125965a5e282f7b53b86aee76ab32975c: mmc: sdhci: Do not lock spinlock around mmc_gpio_get_ro() (2024-06-20 16:42:30 +0200) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc.git tags/mmc-v6.10-rc4-2 for you to fetch changes up to 16198eef11c1929374381d7f6271b4bf6aa44615: mmc: davinci_mmc: Prevent transmitted data size from exceeding sgm's length (2024-07-11 17:48:54 +0200) ---------------------------------------------------------------- MMC host: - davinci_mmc: Prevent transmitted data size from exceeding sgm's length - sdhci: Fix max_seg_size for 64KiB PAGE_SIZE ---------------------------------------------------------------- Adrian Hunter (1): mmc: sdhci: Fix max_seg_size for 64KiB PAGE_SIZE Bastien Curutchet (1): mmc: davinci_mmc: Prevent transmitted data size from exceeding sgm's length drivers/mmc/host/davinci_mmc.c | 3 +++ drivers/mmc/host/sdhci.c | 15 +++++++++++++++ 2 files changed, 18 insertions(+) . Date: Fri, 12 Jul 2024 16:51:06 +0200 From: Daniel Lezcano To: Thomas Gleixner Cc: Linux Kernel Mailing List , Chris Packham , Geert Uytterhoeven , Jiaxun Yang , Li kunyu , =?UTF-8?Q?Niklas_S=C3=B6derlund?= , Thomas Bonnefille Subject: [GIT PULL][resend] timer drivers for v6.11-rc1 Hi Thomas, please consider pulling the following changes since commit 256abd8e550ce977b728be79a74e1729438b4948: Linux 6.10-rc7 (2024-07-07 14:23:46 -0700) which are available in the Git repository at: https://git.linaro.org/people/daniel.lezcano/linux.git tags/timers-v6.11-rc1 for you to fetch changes up to 4bdc3eaa102b6bedb0800f76f53eca516d5cf20c: clocksource/drivers/realtek: Add timer driver for rtl-otto platforms (2024-07-12 16:07:06 +0200) Thanks -- Daniel ---------------------------------------------------------------- - Remove unnecessary local variables initialization as they will be initialized in the code path anyway right after on the ARM arch timer and the ARM global timer (Li kunyu) - Fix a race condition in the interrupt leading to a deadlock on the SH CMT driver. Note that this fix was not tested on the platform using this timer but the fix seems reasonable enough to be picked confidently (Niklas Söderlund) - Increase the rating of the gic-timer and use the configured width clocksource register on the MIPS architecture (Jiaxun Yang) - Add the DT bindings for the TMU on the Renesas platforms (Geert Uytterhoeven) - Add the DT bindings for the SOPHGO SG2002 clint on RiscV (Thomas Bonnefille) - Add the rtl-otto timer driver along with the DT bindings for the Realtek platform (Chris Packham) ---------------------------------------------------------------- Chris Packham (2): dt-bindings: timer: Add schema for realtek,otto-timer clocksource/drivers/realtek: Add timer driver for rtl-otto platforms Geert Uytterhoeven (3): dt-bindings: timer: renesas,tmu: Add R-Mobile APE6 support dt-bindings: timer: renesas,tmu: Add RZ/G1 support dt-bindings: timer: renesas,tmu: Add R-Car Gen2 support Jiaxun Yang (2): clocksource/drivers/mips-gic-timer: Refine rating computation clocksource/drivers/mips-gic-timer: Correct sched_clock width Li kunyu (2): clocksource/drivers/arm_arch_timer: Remove unnecessary ‘0’ values from irq clocksource/driver/arm_global_timer: Remove unnecessary ‘0’ values from err Niklas Söderlund (1): clocksource/drivers/sh_cmt: Address race condition for clock events Thomas Bonnefille (1): dt-bindings: timer: Add SOPHGO SG2002 clint .../bindings/timer/realtek,otto-timer.yaml | 63 +++++ .../devicetree/bindings/timer/renesas,tmu.yaml | 12 + .../devicetree/bindings/timer/sifive,clint.yaml | 1 + drivers/clocksource/Kconfig | 10 + drivers/clocksource/Makefile | 1 + drivers/clocksource/arm_arch_timer.c | 2 +- drivers/clocksource/arm_global_timer.c | 2 +- drivers/clocksource/mips-gic-timer.c | 20 +- drivers/clocksource/sh_cmt.c | 13 +- drivers/clocksource/timer-rtl-otto.c | 291 +++++++++++++++++++++ include/linux/cpuhotplug.h | 1 + 11 files changed, 405 insertions(+), 11 deletions(-) create mode 100644 Documentation/devicetree/bindings/timer/realtek,otto-timer.yaml create mode 100644 drivers/clocksource/timer-rtl-otto.c -- Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog . Date: Fri, 12 Jul 2024 16:51:31 +0200 From: Ulf Hansson To: Linus , linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Ulf Hansson , linux-arm-kernel@lists.infradead.org Subject: [GIT PULL] pmdomain fixes for v6.10-rc8 Hi Linus, Here's a PR with a pmdomain fixe intended for v6.10-rc8. Details about the highlights are as usual found in the signed tag. Please pull this in! Kind regards Ulf Hansson The following changes since commit c3f38fa61af77b49866b006939479069cd451173: Linux 6.10-rc2 (2024-06-02 15:44:56 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/linux-pm.git tags/pmdomain-v6.10-rc2 for you to fetch changes up to ddab91f4b2de5c5b46e312a90107d9353087d8ea: pmdomain: qcom: rpmhpd: Skip retention level for Power Domains (2024-07-09 12:47:46 +0200) ---------------------------------------------------------------- pmdomain providers: - qcom: Skip retention level for rpmhpd's ---------------------------------------------------------------- Taniya Das (1): pmdomain: qcom: rpmhpd: Skip retention level for Power Domains drivers/pmdomain/qcom/rpmhpd.c | 7 +++++++ 1 file changed, 7 insertions(+) . Date: Fri, 12 Jul 2024 11:11:54 -0400 From: Kent Overstreet To: Linus Torvalds Cc: linux-bcachefs@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL] bcachefs fixes for 6.10-rc8, more Hi Linus, just a few stragglers left. The revert should've had a Reported-By: Gabriel de Perthuis noting it here since I just tagged the pull, but he did the work of bisecting it for us :) Cheers, Kent The following changes since commit 7d7f71cd8763a296d02dff9514447aa3de199c47: bcachefs: Add missing bch2_trans_begin() (2024-07-10 09:53:39 -0400) are available in the Git repository at: https://evilpiepirate.org/git/bcachefs.git tags/bcachefs-2024-07-12 for you to fetch changes up to 1841027c7de47527ed819a935b7aa340b9171eb5: bcachefs: bch2_gc_btree() should not use btree_root_lock (2024-07-11 20:10:55 -0400) ---------------------------------------------------------------- bcachefs fixes for 6.10-rc8, more - revert the SLAB_ACCOUNT patch, something crazy is going on in memcg and someone forgot to test - minor fixes: missing rcu_read_lock(), scheduling while atomic (in an emergency shutdown path) - two lockdep fixes; these could have gone earlier, but were left to bake awhile ---------------------------------------------------------------- Kent Overstreet (6): bcachefs: Fix RCU splat bcachefs: fix scheduling while atomic in break_cycle() Revert "bcachefs: Mark bch_inode_info as SLAB_ACCOUNT" bcachefs; Use trans_unlock_long() when waiting on allocator bcachefs: Set PF_MEMALLOC_NOFS when trans->locked bcachefs: bch2_gc_btree() should not use btree_root_lock fs/bcachefs/btree_gc.c | 30 ++++++++++++++++++++++-------- fs/bcachefs/btree_iter.c | 7 ++++--- fs/bcachefs/btree_locking.c | 10 ++++------ fs/bcachefs/btree_locking.h | 22 ++++++++++++++++++++++ fs/bcachefs/btree_types.h | 1 + fs/bcachefs/buckets.c | 2 +- fs/bcachefs/buckets.h | 8 ++++++++ fs/bcachefs/fs.c | 3 +-- fs/bcachefs/io_misc.c | 2 +- fs/bcachefs/util.c | 25 ++++++++++++++++++++++--- fs/bcachefs/util.h | 1 + 11 files changed, 87 insertions(+), 24 deletions(-) . Date: Fri, 12 Jul 2024 18:47:43 +0200 From: Ilya Dryomov To: Linus Torvalds Cc: ceph-devel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL] Ceph fixes for 6.10-rc8 Hi Linus, The following changes since commit 256abd8e550ce977b728be79a74e1729438b4948: Linux 6.10-rc7 (2024-07-07 14:23:46 -0700) are available in the Git repository at: https://github.com/ceph/ceph-client.git tags/ceph-for-6.10-rc8 for you to fetch changes up to 359bc01d2ecc9093216d21cfa03a545c44413cb6: libceph: fix crush_choose_firstn() kernel-doc warnings (2024-07-11 16:33:07 +0200) ---------------------------------------------------------------- A fix for a possible use-after-free following "rbd unmap" or "umount" marked for stable and two kernel-doc fixups. ---------------------------------------------------------------- Ilya Dryomov (1): libceph: fix race between delayed_work() and ceph_monc_stop() Jeff Johnson (2): libceph: suppress crush_choose_indep() kernel-doc warnings libceph: fix crush_choose_firstn() kernel-doc warnings net/ceph/crush/mapper.c | 7 +++++-- net/ceph/mon_client.c | 14 ++++++++++++-- 2 files changed, 17 insertions(+), 4 deletions(-) . Date: Fri, 12 Jul 2024 20:48:27 +0200 From: David Sterba To: torvalds@linux-foundation.org Cc: David Sterba , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [GIT PULL] Btrfs fixes for 6.10-rc8 Hi, please pull the following branch that fixes a regression in extent map shrinker behaviour. In the past weeks we got reports from users that there are huge latency spikes or freezes. This was bisected to newly added shrinker of extent maps (it was added to fix a build up of the structures in memory). I'm assuming that the freezes would happen to many users after release so I'd like to get it merged now so it's in 6.10. Although the diff size is not small the changes are relatively straightforward, the reporters verified the fixes and we did testing on our side. Please pull, thanks. The fixes: - adjust behaviour under memory pressure and check lock or scheduling conditions, bail out if needed - synchronize tracking of the scanning progress so inode ranges are not skipped or work duplicated - do a delayed iput when scanning a root so evicting an inode does not slow things down in case of lots of dirty data, also fix lockdep warning, a deadlock could happen when writing the dirty data would need to start a transaction ---------------------------------------------------------------- The following changes since commit a56c85fa2d59ab0780514741550edf87989a66e9: btrfs: fix folio refcount in __alloc_dummy_extent_buffer() (2024-07-04 02:19:10 +0200) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux.git tags/for-6.10-rc7-tag for you to fetch changes up to 4484940514295b75389f94787f8e179ba6255353: btrfs: avoid races when tracking progress for extent map shrinking (2024-07-11 16:50:54 +0200) ---------------------------------------------------------------- Filipe Manana (3): btrfs: use delayed iput during extent map shrinking btrfs: stop extent map shrinker if reschedule is needed btrfs: avoid races when tracking progress for extent map shrinking fs/btrfs/disk-io.c | 2 + fs/btrfs/extent_map.c | 123 +++++++++++++++++++++++++++++++++---------- fs/btrfs/fs.h | 1 + include/trace/events/btrfs.h | 18 ++++--- 4 files changed, 107 insertions(+), 37 deletions(-) . Date: Fri, 12 Jul 2024 16:56:50 -0700 From: Sean Christopherson To: Paolo Bonzini Cc: kvm@vger.kernel.org, linux-kernel@vger.kernel.org, Sean Christopherson Subject: [GIT PULL] KVM: x86 pull requests for 6.11 There's a trivial conflict between "misc" and "vmx" in kvm-x86-ops.h, they both delete ops that happen to be _right_ next to each other. Otherwise, should apply cleanly. .