Commit graph

1,169,205 commits

Author SHA1 Message Date
Yishai Hadas
dc402ccc0d net/mlx5: Use software VHCA id when it's supported
Use software VHCA id when it's supported by the firmware.

A unique id is allocated upon mlx5_mdev_init() and freed upon
mlx5_mdev_uninit(), as such it stays the same during the full life cycle
of the device including upon health recovery if occurred.

The conjunction of sw_vhca_id with sw_owner_id will be a global unique
id per function which uses mlx5_core.

The sw_vhca_id is set upon init_hca command and is used to specify the
VHCA that the NIC vport is affiliated with.

This functionality is needed upon migration of VM which is MPV based.
(i.e. multi port device).

Signed-off-by: Yishai Hadas <yishaih@nvidia.com>
Reviewed-by: Mark Bloch <mbloch@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
2022-07-13 15:56:45 -07:00
Yishai Hadas
0372c546ec net/mlx5: Introduce ifc bits for using software vhca id
Introduce ifc related stuff to enable using software vhca id
functionality.

Signed-off-by: Yishai Hadas <yishaih@nvidia.com>
Reviewed-by: Mark Bloch <mbloch@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
2022-07-13 15:56:45 -07:00
Christophe JAILLET
32ea2776a8 net/mlx5: Use the bitmap API to allocate bitmaps
Use bitmap_zalloc()/bitmap_free() instead of hand-writing them.

It is less verbose and it improves the semantic.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
2022-07-13 15:56:44 -07:00
James Yonan
9d2f00fb0a netfilter: nf_nat: in nf_nat_initialized(), use const struct nf_conn *
nf_nat_initialized() doesn't modify passed struct nf_conn,
so declare as const.

This is helpful for code readability and makes it possible
to call nf_nat_initialized() with a const struct nf_conn *.

Signed-off-by: James Yonan <james@openvpn.net>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
2022-07-14 00:24:06 +02:00
Trond Myklebust
51fd2eb52c NFSv4: Fix races in the legacy idmapper upcall
nfs_idmap_instantiate() will cause the process that is waiting in
request_key_with_auxdata() to wake up and exit. If there is a second
process waiting for the idmap->idmap_mutex, then it may wake up and
start a new call to request_key_with_auxdata(). If the call to
idmap_pipe_downcall() from the first process has not yet finished
calling nfs_idmap_complete_pipe_upcall_locked(), then we may end up
triggering the WARN_ON_ONCE() in nfs_idmap_prepare_pipe_upcall().

The fix is to ensure that we clear idmap->idmap_upcall_data before
calling nfs_idmap_instantiate().

Fixes: e9ab41b620 ("NFSv4: Clean up the legacy idmapper upcall")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2022-07-13 17:46:52 -04:00
Joanne Koong
8ab4cdcf03 bpf: Tidy up verifier check_func_arg()
This patch does two things:

1. For matching against the arg type, the match should be against the
base type of the arg type, since the arg type can have different
bpf_type_flags set on it.

2. Uses switch casing to improve readability + efficiency.

Signed-off-by: Joanne Koong <joannelkoong@gmail.com>
Acked-by: Hao Luo <haoluo@google.com>
Link: https://lore.kernel.org/r/20220712210603.123791-1-joannelkoong@gmail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2022-07-13 14:45:58 -07:00
Dmitry Baryshkov
5142c3926f ARM: dts: qcom: apq8064: create tsens device node
Create separate device node for thermal sensors on apq8064 platform.
Move related properties to the newly created device tree node.
This harmonizes apq8064 and ipq8064 device trees and allows gcc device
to be probed earlier by removing dependency on QFPROM nodes.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220521151437.1489111-5-dmitry.baryshkov@linaro.org
2022-07-13 16:23:34 -05:00
Bjorn Andersson
4cf02f2e0d arm64: defconfig: Enable Qualcomm SC8280XP providers
The Qualcomm SC8280XP need the global clock controller, interconnect
provider and TLMM pinctrl in order to boot. Enable these as builtin, as
they are needed in order to provide e.g. UART.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Link: https://lore.kernel.org/r/20220707161014.3178798-1-bjorn.andersson@linaro.org
2022-07-13 15:41:45 -05:00
Bjorn Andersson
769fe42092 arm64: dts: qcom: sc8280xp: Add lost ranges for timer
The timer node needs ranges specified to map the 1-cell children to the
2-cell address range used in /soc. This addition never made it into the
patch that was posted and merged, so add it now.

Fixes: 152d1faf1e ("arm64: dts: qcom: add SC8280XP platform")
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Link: https://lore.kernel.org/r/20220707160858.3178771-1-bjorn.andersson@linaro.org
2022-07-13 15:41:13 -05:00
Arnd Bergmann
8c1e9736c5 Qualcomm DTS updates for v5.20
This adds USB, NAND, QPIC BAM, CPUfreq, remoteprocs, SMEM, SCM,
 watchdog, interconnect providers to the SDX65 5G modem platform and
 enables relevant devices for the MTP.
 
 The BAM DMUX interface used to exchange Ethernet/IP data with the modem
 is described on the MSM8974 platform.
 
 It fixes up the PXO supply clock to L2CC on IPQ6084, as the platform is
 transitioned away from global clock lookup.
 
 SDX55 has it's debug UART interrupt level corrected.
 
 Lastly it contains a wide variety of fixes for DeviceTree validation
 issues across most of the platforms.
 -----BEGIN PGP SIGNATURE-----
 
 iQJPBAABCAA5FiEEBd4DzF816k8JZtUlCx85Pw2ZrcUFAmLOOckbHGJqb3JuLmFu
 ZGVyc3NvbkBsaW5hcm8ub3JnAAoJEAsfOT8Nma3FOqgP/RVm+S3ivwLGm4XeQekp
 Ur00x2qzJUpORdE5n+rN77zwOcXYu8z2J6HaeyMDk+yR5CdUM6MRLVkrkcxWJuE3
 OHuDOcBve0vVy66E0GN6ODNf3tzCD8OoLkk9ZDpTuPRVFQAh1w/XkycBDzH43MRR
 tg/Abs9Jbn+gInQXBVeWqCWqTRV8o9iZnDrWX5usuIwllMZuA+UErOsYwFt4UaVt
 z2zybKF1FeXy5qSEvV1ztxVV2prbQDo/3TTdF1zlNCpWQUkuF/2qSq593YK8HP6i
 SW7DMM70PDd7HM2+lo7PLfwZFH5i03uvuN4zf7bopidFl1Si8zQdkesELjVgIQJW
 jHF8cHnVGR+yFtMIJdkX3VGMPYjTkcWWnQZko57QMHgSAbcFTnHHEiEl43F1HteR
 pONnUFBfxdFPZcOZwCVOlu82KTaxbHhg10mztxY4M62+lx7TeZQs2Nb97SjfkeB+
 CHBgNx3cgGq0EISVN4eq6Ensm5OfVwYlbuKSKENbfUTArVH5OuTSRnCvP8H/Q4xF
 GW1jVvj0Z0RwrgYwdzp4+urWo6I/nQOy6xyn1ADiZLcNMl93puMOxiptqSAvF2+q
 AdMEOPqW75huhKn0QUhQ/LpgyErpJQSa4evY39XSq+/ooXyEeZQqAPd9rpkGwkUx
 /9ebhOjKaAC5nacz1gQ6Iewc
 =nI02
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmLPKQ0ACgkQmmx57+YA
 GNnpzhAAwVu/z/Vk1IHvi0xQ7casMKawTQfALkZIvtbvPkO/hfjwznjuu9hhVnih
 NF2EJ/VdGPXmstv9hlgeLmf8oKHVTf49bWup3/Dx7HrohTpJLBP+yIDSpJHnWF4z
 ggfQYQ+rsgYpyIV6euiIptz4fPBviyI2FAsDut58IqYQjMNw1GY8V1ghXtuE6Sys
 dS1V37JGOYLWexFUMMgsHnYGN6v4xgDby0HzE6UXN0QlBdqt6b1HZdgoxmLiP15Q
 0lzbPTIngQhO4UnO1Ijv/mIawSpLmW29EGcRp5VVmYeHhCNE1/nLWmwJ6V9IaRWL
 iVWsvzVqUCDBmSIlOEb8dWEbjO/3Yilsn1bUmmjFPQodz3WnSF1afrPin2Qjx8I5
 tJYANKfQcrcgpDKcqIeHswQoaSw3IGfxrl+/hyshO/jLl9gQN8PXfgwWcNcanX18
 60UMzVK66L48wE+5BmtohXl+47jLl6/4WJ/bkBEU2AA+aovJItuSqZbNqkNOJhp1
 mgORzfZ3yol9rIJhUIIn8JNcz5exQNGgVCLL/3F03Q/9MpXirqmJFg0pmRVWmgNk
 E2HitHbiHoxlygolCX1T/cM1aDi2DstdAzTBGlPBbT2UFSISfpK/uK6iRqx9QrKi
 npCWiBzKg231yDTEwNn1j/SrCuph/+PeRUE+K0MK7npc8Lmj7W8=
 =gckS
 -----END PGP SIGNATURE-----

Merge tag 'qcom-dts-for-5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux into arm/dt

Qualcomm DTS updates for v5.20

This adds USB, NAND, QPIC BAM, CPUfreq, remoteprocs, SMEM, SCM,
watchdog, interconnect providers to the SDX65 5G modem platform and
enables relevant devices for the MTP.

The BAM DMUX interface used to exchange Ethernet/IP data with the modem
is described on the MSM8974 platform.

It fixes up the PXO supply clock to L2CC on IPQ6084, as the platform is
transitioned away from global clock lookup.

SDX55 has it's debug UART interrupt level corrected.

Lastly it contains a wide variety of fixes for DeviceTree validation
issues across most of the platforms.

* tag 'qcom-dts-for-5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux: (48 commits)
  ARM: dts: qcom: msm8974: rename GPU's OPP table node
  ARM: dts: qcom: apq8064: disable DSI and DSI PHY by default
  ARM: dts: qcom: apq8064: rename DSI PHY iface clock
  ARM: dts: qcom: extend scm compatible to match dt-schema
  ARM: dts: qcom: Fix sdhci node names - use 'mmc@'
  ARM: dts: qcom: apq8064: drop phy-names from HDMI device node
  ARM: dts: qcom: apq8064-ifc6410: drop hdmi-mux-supply
  ARM: dts: qcom: pm8841: add required thermal-sensor-cells
  ARM: dts: qcom: msm8974: add required ranges to OCMEM
  ARM: dts: qcom: sdx55: add dedicated IMEM and syscon compatibles
  ARM: dts: qcom: msm8974: add dedicated IMEM compatible
  ARM: dts: qcom: apq8064-asus-nexus7: add dedicated IMEM compatible
  ARM: dts: qcom: use generic sram as name for imem and ocmem nodes
  ARM: dts: qcom: ipq8064: add function to LED nodes
  ARM: dts: qcom: ipq8064-rb3011: add color to LED node
  ARM: dts: qcom: ipq4018-ap120c-ac: add function and color to LED nodes
  ARM: dts: qcom: apq8060-ifc6410: add color to LED node
  ARM: dts: qcom: apq8060-dragonboard: add function and color to LED nodes
  ARM: dts: qcom: sdx55: Fix the IRQ trigger type for UART
  ARM: dts: qcom-msm8974: fix irq type on blsp2_uart1
  ...

Link: https://lore.kernel.org/r/20220713032024.1372427-1-bjorn.andersson@linaro.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-07-13 22:20:29 +02:00
Arnd Bergmann
6cd345e583 AT91 DT for v5.20 #2
It contains only the enablement of USB device port.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQTsZ8eserC1pmhwqDmejrg/N2X7/QUCYs5sTwAKCRCejrg/N2X7
 /dysAQCzEUcQ8LLXrWUEmezC6iaLIVRR/nxZFgjUFtlSXHdRTQEA6o8S5OrWApz3
 zAUDnz0KYphbY0+XPyMONh63qX5H7Qo=
 =2l52
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmLPKKQACgkQmmx57+YA
 GNnWiA/8CEq7gqQHWCblEn2NFz8iDnEvXAXsE8k/lprIknDDy8y3EDj3AIFAJLtC
 OwsfXQK2oUwArZh6oa/yZDA+IR0pYzTVasK4vceXsY+aSbhfFkPntphn6+hVO7At
 lp15jTdsaHQSvzqW17aPSquHYuiVvweSJVY3RFLnHj7yc/kpnbjvdk7B0syhdtQV
 w2y30acW5FWMNL54eAcTwJwAsGpve6VypxS0mUEN+UQDTkQ7FZmGZwZ6XvbBvr0C
 P/DJHIQy89LVQSeLM8fb1doSh3tlUvXDYSn3pkkMZwcB+Ghws+O0fs9bdv+XcLdW
 vZ5e5e0ZBssn8qQubcDsEEjX6sJwhOIO+f0ZnZAoGmQ6YJiFUJixP7cfQoQaR3LF
 LmNm04QJJf20Uap4jErzCcPD6fSSAsg8JDHBk8764AC+TCoiaJjb2fSj2qkFjODa
 Jw2UTShdSjshi9u8AkQra/Xt3KFh85M1QSCkRRktxF9IHnMw1on1HNnKtCshcpoW
 C6VzO3NRn6GamRRnV38ffIPL4sp8u+PIJ9pjKvIqy52h3qtZ/MrH5U/no1QN4tXX
 92UXrq/eVakxjTqfOEnHcbA9xD5SnOZimhic8+tBIa/VbsFKrBedI02jgo+wl4z5
 7wQqSvoAaHrddpnxJb0qwcyM7jgZWpr1m2yMjHWHYq/zteyx6bA=
 =Z8D1
 -----END PGP SIGNATURE-----

Merge tag 'at91-dt-5.20-2' of git://git.kernel.org/pub/scm/linux/kernel/git/at91/linux into arm/dt

AT91 DT for v5.20 #2

It contains only the enablement of USB device port.

* tag 'at91-dt-5.20-2' of git://git.kernel.org/pub/scm/linux/kernel/git/at91/linux:
  ARM: dts: kswitch-d10: enable the USB device port

Link: https://lore.kernel.org/r/20220713070602.1652118-1-claudiu.beznea@microchip.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-07-13 22:18:44 +02:00
Arnd Bergmann
4ea0878417 i.MX SoC update for 5.20:
- Update the mx25_read_cpu_rev() function to support silicon revision 1.2
   for i.MX25 SoC.
 - A minor indentation fix in Kconfig file.
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmLJJoMUHHNoYXduZ3Vv
 QGtlcm5lbC5vcmcACgkQUFdYWoewfM6iCAgAgVxW0FQEpi1PJf9yc+mMD5nXdWcY
 2xgnaptWeZE0cPF5cFvAATALQl2BGQ36D74m4TcF3MJyOv5BFhKP1WQt2dQRCbiF
 ey+ZkD4Rquy9fFztzPjZglAWkAlPpzW1nTYZWwIiirYel+2iZ/LILb8crd0ntq3/
 6n8hf7sdAzgtarpluJ6fykTUR2U3OmC6XLFjBLXcksKggmLA96PKtgMI6iqlgW9F
 bpVWx8Do7C9vGN5tH/16upM53BrWlmbK/ZXehFz6TeiU6DkSUvgkgzub+GcMtWGs
 lJJCwSmFez6YMQUYVdpeXe3hTg4nNQAZNSORIBzWGEJQ2pbqv4wzTYQewg==
 =qBof
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmLPJr4ACgkQmmx57+YA
 GNk/6A//ckksWYID7jWm8JPUTtZWp1F23RWo0hdH1ppGnshzaj8Qsg8dkaUHsVLk
 YH04wvnsdcZCNlEAQ8ZEaqos8L5gUt1kH3iIfik430AphEi6/cM480nLftLfU7v+
 jtYLR3qrLdO4qUbXvBI7dGPtzg48n5Aq5H2J5jDr9pPNcRKr860ZqbCW1FcFrr8W
 Bh7/gYe+VDZud6pzO+b6xzouWURYyAT1r+tE6vT78nTXi93xx/kF3ASGrfv0sfxr
 YTE0zwAkOtjBYA0FU6w8/WgS9EMxtPwkLrPHsoDcx/6wMhWda0hBHKMIp9p5VpBW
 CBATEySiqspz3M5Iy09gW2Ncas+nkIw3WAmD0Yujx3SdxiCsyUq9zSIw1UDQkNVN
 4JavB0ZYh+0Nl6f5o8hoposHLTSYO2sQMWiEw0193ghv/csvXewVgdlXrSkaCm3M
 H8mVj3WxA4lKw7/0xWQfJLft0VoGmjQNGccxGR82j25TcrlZMftFoBVHZh0bwvpA
 fpd6SdAPhZtSTinAL4hqJTm+8rOgNTlIEjMZb/D6YquXscxIuNRKvKs1t8eJR07I
 7VoZIEUQzxW1PZQvg3RqSNKJXJcLTyKiS2Ykjrhrb0pqUp4by/9UGViluMytHZFM
 cDYlSQ/LWC0lb0D9LOn7eMi7YX36zBAbJh1JvF/P6Y5g4tCghNQ=
 =5az/
 -----END PGP SIGNATURE-----

Merge tag 'imx-soc-5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/soc

i.MX SoC update for 5.20:

- Update the mx25_read_cpu_rev() function to support silicon revision 1.2
  for i.MX25 SoC.
- A minor indentation fix in Kconfig file.

* tag 'imx-soc-5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  ARM: imx25: support silicon revision 1.2
  ARM: imx: Kconfig: Fix indentation

Link: https://lore.kernel.org/r/20220709082951.15123-2-shawnguo@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-07-13 22:10:38 +02:00
Arnd Bergmann
c67af87178 This pull request contains Broadcom ARM-SoC MAINTAINERS file updates for
5.20, please pull the following:
 
 - William and Anand updates the MAINTAINERS files with new BCA SoCs
   entries for a variety of PON/DSL SoCs: 63178, 63158, 4912, 6858, 6878,
   6846, 6855, 6756, 63146, 6856, 63148, 6813. 63138 is now listed as a
   supported BCA platform and joins the families just added.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmLMTh8ACgkQh9CWnEQH
 BwRBkBAAjul+enbdy+MPPAHSVHqQUA0aPe40mFns0/hW2f40Oh6bKQnS7z3JLJOR
 memAarXEt6AGryaWdddHBuwO9KOZcFltWLUBDwSojLYmuwNNL71nq/11Ow+f5VwI
 mz+T29htv9k2aaKHFFTak47XjAdx3efLl11EJheQcPmMpJD03B9tlQqNKRvBswOg
 HJrAV2HxqUTjyiT2FqCu0MPvKovqgpmofV16I0pSWt+c4VCkHK7cXAXnmsSZU0Cn
 ARwveufHYb8BlWPwDhd8dZh808YRA+vzILiWT0DGnohCoCgNCoi88dQmidDBendf
 Q+EVtHh9vgRISEprSIkRXtIjQeHg5b1QI3dpAmprKSmcu7COqcS94DNVWrn3INEU
 2VHIWZRQIMBWNBuuBeI6tITyJLzmn5Dm6/mJs9cUsd8BpCYxCOKU3qju+T6eKSRR
 x3AiH9ggnyWdNpmfj3a3ExZbylgp8GrROd2L7hfu7pw+g+I13n6nhd0Z3M0oYCYe
 4JAVpUI15d6CvoT7MJyVmR4AJv5B++4w2TmsVhgU+vqj/k+pDX7Srjahppmqky5t
 mlru1r5Qp673b90kyr5FCjgWZek2lJFONwSgiR3Uct5wjG24IfQReuE/9Utucn2N
 VbY/trJbW9l7YxKonA2TNwNPeFG9e7ehnHQLcipJgQExrBUhaeQ=
 =aGRG
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmLPJm8ACgkQmmx57+YA
 GNkFJw//RHqxO55Rod1NvkU5njFEf77HsUxALz9KLQZyvgOgFzzyc7/baIHkAeDM
 Dtl1vn1DqkXynAsvaodJkXFtz6CHESAWXY+ybdgfP+EtLRoi6Rs4skRA91Q/cR4m
 pLs9a+R4y48Wwa+tb6RmrFCY5NrEbQTV4cbzVa689e6fQgaJ4iNfjfJpw+SpM5Zf
 fuNJKKgwBiT59U8qSGxeyl9jv94loh4FXx78d+wFZeeQ+C+HYGZBLlFuO3z0L9cM
 B8vjqGL9F78GBGUhiCWi4B7BNhgtNFhArm5ybEl1I9kPcL5+4B6vo+aWuO7CCgQ2
 xOxDHEpMqHPN5rSxJNZRvqb8JJpukdQ+vGjQZhHb5qU7eIIg8zNWAOmXV9CVXQcq
 4LIsNslBThPXtVv6QtduRmeiX5yza9Uy6aNyVUT7DkkV9fUk05QcwEqX0bPjAD8i
 ycow6DY4Dhv37nepF3ClYZV6A/lPDMI8QX3naB6H59SoDhsivvGtWcN3KYWUm9Kj
 sCEqgiCV5QjRWKH6uahD4yBWWthx3IREHRCGhI7hTYz7jjQ5Dd/qRvdjb2c/W/Vt
 /S4+AV4IgbkxT4xQRVEwuLHjUdqzgMBoU0376Yt49udJ7eu2it0b0igRgUr6yTwh
 hJmnUM1HiicKKP44YjJY3DCodLLe3KcdC3xo4AxTMRe64WOEXho=
 =pTIN
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc/for-5.20/maintainers' of https://github.com/Broadcom/stblinux into arm/soc

This pull request contains Broadcom ARM-SoC MAINTAINERS file updates for
5.20, please pull the following:

- William and Anand updates the MAINTAINERS files with new BCA SoCs
  entries for a variety of PON/DSL SoCs: 63178, 63158, 4912, 6858, 6878,
  6846, 6855, 6756, 63146, 6856, 63148, 6813. 63138 is now listed as a
  supported BCA platform and joins the families just added.

* tag 'arm-soc/for-5.20/maintainers' of https://github.com/Broadcom/stblinux:
  MAINTAINERS: Move BCM63138 to bcmbca arch entry
  MAINTAINERS: Add BCM6813 to bcmbca arch entry
  MAINTAINERS: Add BCM63148 to bcmbca arch entry
  MAINTAINERS: Add BCM6856 to bcmbca arch entry
  MAINTAINERS: Add BCM63146 to bcmbca arch entry
  MAINTAINERS: Add BCM6756 to bcmbca arch entry
  MAINTAINERS: Add BCM6855 to bcmbca arch entry
  MAINTAINERS: Add BCM6846 to bcmbca arch entry
  MAINTAINERS: Add BCM6878 to bcmbca arch entry
  MAINTAINERS: Add BCM6858 to bcmbca arch entry
  MAINTAINERS: Add BCM4912 to bcmbca arch entry
  MAINTAINERS: Add BCM63158 to bcmbca arch entry
  MAINTAINERS: Add BCM63178 to bcmbca arch entry

Link: https://lore.kernel.org/r/20220711164451.3542127-7-f.fainelli@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-07-13 22:09:19 +02:00
Wu XiangCheng
f8a291b7e3 docs/zh_CN: Add a new translation of reporting-regressions.rst
Last English version used:

commit d2b40ba2cc ("docs: *-regressions.rst: explain how quickly
issues should be handled")

Signed-off-by: Wu XiangCheng <bobwxc@email.cn>
Reviewed-by: Yanteng Si<siyanteng@loongson.cn>
Link: https://lore.kernel.org/r/YsbuDGIpUjOzfAAh@bobwxc.mipc
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2022-07-13 14:07:46 -06:00
Arnd Bergmann
aa68ce3bcb This pull request contains Broadcom SoC drivers changes for 5.20, please
pull the following:
 
 - Miaoqian fixes a device_node reference count leak in the Kona SMC
   initialization code
 
 - William moves the 63138 support code to use CONFIG_ARCH_BCMBCA which
   is how all of those similar SoCs from the BCA division are supported
   moving forward. This includes machine code and UART low-level debug
   code.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmLMTXEACgkQh9CWnEQH
 BwS5OQ/+OwDhRzkKb1Okj3sdC6FsDDBa2sDqRVu+8BL3+Y03lrTiENsK/21yOItZ
 YBZfX9WmKoSpn1wE40YMN33R6GeZ0OVCttpuMRdVV0Zyi2KfflfP5iyP97TtH9Bz
 m4/N1l5f4pNHO4/n4yVHTGOnXJ59wU1ppeLtBkdcpicfIefVOnresLgKL4sD1bID
 TCH1BlX6Zxxgr2SKrMft00E3bi38DIULZgRp1mU/5hu5jUTk32hrH3E79tMJjqfG
 OcLYXYbUEbXw/YU53gbDYWlGUsE9ng+1Jf6kJDBW1a6HJjjx2mDW75xj3UUF4+9C
 qHhatblvh5s8GCvoEJkK6k5DISDW+3a/Lixz4JTDFkQpzx0F3fOASOnu9YQCTBIr
 erjq/3LENh8o+HjeHtM90Z+d1wCjUWJNMTQmm5wtoez37FVoDZU+S+onM/FBSKLv
 e7i1TSz+K9AcwpqVVPFKqvMhqYfmSGKu9E0xgDOy4vagn65PQMeq9M2K/OuASl53
 LSI6sc9dN2nhcqG/JV0vP6411x2fTegOH4b4nIMcduNDutNppn1TilvpktGBBMn4
 Xp1ZqJzdXMblUb5bMqepkBBvz39CCdyiT+bOzaapBW4Gt9mD5Iu90fYBk2gqbDfU
 TipwXHBmJU2cpGtUieFrbVDPB2feUyUyM9oRc9BnyHl5br93Q/A=
 =VsJl
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmLPJfEACgkQmmx57+YA
 GNntPg//bmjLQVLyAy4lNWR31yikqXULe5iIOBG5I5MzaHq13i5AKU+8pD6GVjG7
 NL1ay70DaXmYdt2xGey8KQPN/UfX5TpPvBNz9GDTGG8X7+YvqRc4r8HDx+3xsMSP
 /e19xWw2trdkpDL1c9S1k7aBHMvxxKrdKHrIOS5pQfy/sSrTPCOKvnsbPDWihuRc
 A0H9dxjLGr99qv3ANbdXZ4+QKdN6KLOXWwR+xv99W7rbpExtMzW13Rkcj9cwHEn9
 9sjMvqpQ65EhaX4oLe/XSzu5IXNUrH4KBy9GfaiJENnWyhOEY1hi7HHr6jUYg7pc
 euLtLFS9r/UPIGa/y6p+D5fxyTIuh448MFaXJ0k1MdksnNNkkHN3QD99yTtQ+Yt2
 7fGW3gZG037h5wa6V4Z7LdyIgkWfpkkkXf7CWGRdW7h9OHJz1akmx9lMdBvwFA7g
 BxGQjljqzK1QVG+x6xeLg1KdT4hp8CFLQZ7lYegK9xmk9puYWm2JCvMqPCP2nT73
 9f4Tk2YNPbjSKO4sdYdgoMwwcKNZynAOueNsjyufWUev+8A1VJdsO4m+Ib/fxPwN
 A+IZmKenIAr/SKVGL/wmix2rHqQGF3KlZ9QEt5pXOo2y2Ds/9JGdmQbhq/6mOv1x
 5yT0rvTDm25YtncW2xTcb8qHVWwIGx4nyepueuLTOI8ci7ktCrY=
 =6GeZ
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc/for-5.20/soc' of https://github.com/Broadcom/stblinux into arm/soc

This pull request contains Broadcom SoC drivers changes for 5.20, please
pull the following:

- Miaoqian fixes a device_node reference count leak in the Kona SMC
  initialization code

- William moves the 63138 support code to use CONFIG_ARCH_BCMBCA which
  is how all of those similar SoCs from the BCA division are supported
  moving forward. This includes machine code and UART low-level debug
  code.

* tag 'arm-soc/for-5.20/soc' of https://github.com/Broadcom/stblinux:
  ARM: debug: bcmbca: Replace ARCH_BCM_63XX with ARCH_BCMBCA
  arm: bcmbca: Add BCMBCA sub platforms
  arm: bcmbca: Move BCM63138 ARCH_BCM_63XX to ARCH_BCMBCA
  ARM: bcm: Fix refcount leak in bcm_kona_smc_init

Link: https://lore.kernel.org/r/20220711164451.3542127-8-f.fainelli@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2022-07-13 22:07:13 +02:00
Michael Kelley
ab3e69fc4d Documentation: hyperv: Add overview of clocks and timers
Add documentation topic for clocks and timers when running as a
guest on Hyper-V.

Signed-off-by: Michael Kelley <mikelley@microsoft.com>
Link: https://lore.kernel.org/r/1657561704-12631-4-git-send-email-mikelley@microsoft.com
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2022-07-13 14:04:48 -06:00
Michael Kelley
ac1129e79e Documentation: hyperv: Add overview of VMbus
Add documentation topic for using VMbus when running as a guest
on Hyper-V.

Signed-off-by: Michael Kelley <mikelley@microsoft.com>
Link: https://lore.kernel.org/r/1657561704-12631-3-git-send-email-mikelley@microsoft.com
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2022-07-13 14:04:48 -06:00
Michael Kelley
ec7c56812f Documentation: hyperv: Add overview of Hyper-V enlightenments
Add an initial documentation topic for Linux enlightenments to
run as a guest on Microsoft's Hyper-V hypervisor, linked under
the "virt" documentation area. Update the virt doc index.rst
and the MAINTAINERS file.

Signed-off-by: Michael Kelley <mikelley@microsoft.com>
Link: https://lore.kernel.org/r/1657561704-12631-2-git-send-email-mikelley@microsoft.com
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2022-07-13 14:04:48 -06:00
Yixuan Cao
e6bd91a7a4 Documentation/translations/zh_CN/mm/page_owner.rst: adjust some words
I noticed that there are some Chinese words that can be more accurate.
So I fix them as follows.

首先,英文原文中的"release" 在这个语境下
是物理页面“释放”的意思,而不是“发布”。
其次,标准表的第一列和第二列,
表达的是“长短键”的意思,第一列是“短键”,
而第二列是“长键”。这样翻译或会更清晰一些。

Signed-off-by: Yixuan Cao <caoyixuan2019@email.szu.edu.cn>
Acked-by: Yanteng Si<siyanteng@loongson.cn>
Link: https://lore.kernel.org/r/20220708172351.20928-1-caoyixuan2019@email.szu.edu.cn
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2022-07-13 14:03:31 -06:00
Binbin Zhou
c528be5ed2 docs/zh_CN: core-api: Add watch_queue Chinese translation
Translate core-api/watch_queue.rst into Chinese.

Last English version used:
commit f5461124d5 ("Documentation: move watch_queue to core-api").

Signed-off-by: Binbin Zhou <zhoubinbin@loongson.cn>
Reviewed-by: Wu XiangCheng <bobwxc@email.cn>
Link: https://lore.kernel.org/r/20220710133604.31382-1-zhoubinbin@loongson.cn
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2022-07-13 14:02:15 -06:00
Dov Murik
12fe434314 Documentation: siphash: Fix typo in the name of offsetofend macro
The siphash documentation misspelled "offsetendof" instead of
"offsetofend".

Fixes: 2c956a6077 ("siphash: add cryptographically secure PRF")
Signed-off-by: Dov Murik <dovmurik@linux.ibm.com>
Acked-by: Jason A. Donenfeld <Jason@zx2c4.com>
Link: https://lore.kernel.org/r/20220712104455.1408150-1-dovmurik@linux.ibm.com
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2022-07-13 14:01:22 -06:00
Lukas Bulwahn
d5a0cdb852 MAINTAINERS: mark linux-doc-tw-discuss mailing list moderated
After sending a patch to linux-doc-tw-discuss@lists.sourceforge.net, I got
the typical response for a moderated list:

  Your mail to 'linux-doc-tw-discuss' with the subject
  ....
  Is being held until the list moderator can review it for approval.

  The reason it is being held:

      Post by non-member to a members-only list

Mark this mailing list moderated in MAINTAINERS.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
Link: https://lore.kernel.org/r/20220713043516.19290-1-lukas.bulwahn@gmail.com
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2022-07-13 13:59:22 -06:00
Robert Marko
36d9018d55 PCI: qcom: Power on PHY before DBI register accesses
IPQ8074 requires the PHY to be powered on before accessing DBI registers.
It's not clear whether other variants have the same dependency, but there
seems to be no reason for them to be different, so move all the DBI
accesses from .init() to .post_init() so they are all after phy_power_on().

[bhelgaas: commit log]
Link: https://lore.kernel.org/r/20220623155004.688090-2-robimarko@gmail.com
Signed-off-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2022-07-13 14:54:40 -05:00
Robert Marko
a0e43bb997 PCI: qcom: Power on PHY before IPQ8074 DBI register accesses
Currently the Gen2 port in IPQ8074 will cause the system to hang as it
accesses DBI registers in qcom_pcie_init_2_3_3(), and those are only
accesible after phy_power_on().

Move the DBI read/writes to a new qcom_pcie_post_init_2_3_3(), which is
executed after phy_power_on().

Link: https://lore.kernel.org/r/20220623155004.688090-1-robimarko@gmail.com
Fixes: a0fd361db8 ("PCI: dwc: Move "dbi", "dbi2", and "addr_space" resource setup into common code")
Signed-off-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Cc: stable@vger.kernel.org	# v5.11+
2022-07-13 14:54:08 -05:00
Christian Marangi
38f897ae3d PCI: qcom: Set up rev 2.1.0 PARF_PHY before enabling clocks
We currently enable clocks BEFORE we write to PARF_PHY_CTRL reg to enable
clocks and resets. This causes the driver to never set to a ready state
with the error 'Phy link never came up'.

This is caused by the PHY clock getting enabled before setting the required
bits in the PARF regs.

A workaround for this was set but with this new discovery we can drop
the workaround and use a proper solution to the problem by just enabling
the clock only AFTER the PARF_PHY_CTRL bit is set.

This correctly sets up the PCIe link and makes it usable even when a
bootloader leaves the PCIe link in an undefined state.

Fixes: 82a823833f ("PCI: qcom: Add Qualcomm PCIe controller driver")
Link: https://lore.kernel.org/r/20220708222743.27019-1-ansuelsmth@gmail.com
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2022-07-13 14:53:02 -05:00
Mohamed Khalfella
5e6ae05095 PCI/AER: Iterate over error counters instead of error strings
Previously we iterated over AER stat *names*, e.g.,
aer_correctable_error_string[32], but the actual stat *counters* may not be
that large, e.g., pdev->aer_stats->dev_cor_errs[16], which means that we
printed junk in the sysfs stats files.

Iterate over the stat counter arrays instead of the names to avoid this
junk.

Also, added a build time check to make sure all
counters have entries in strings array.

Fixes: 0678e3109a ("PCI/AER: Simplify __aer_print_error()")
Link: https://lore.kernel.org/r/20220509181441.31884-1-mkhalfella@purestorage.com
Reported-by: Meeta Saggi <msaggi@purestorage.com>
Signed-off-by: Mohamed Khalfella <mkhalfella@purestorage.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Meeta Saggi <msaggi@purestorage.com>
Reviewed-by: Eric Badger <ebadger@purestorage.com>
Cc: stable@vger.kernel.org
2022-07-13 14:45:20 -05:00
Stefan Roese
f26e58bf6f PCI/AER: Enable error reporting when AER is native
If we have native control of AER, set the following error reporting enable
bits:

  - Correctable Error Reporting Enable
  - Non-Fatal Error Reporting Enable
  - Fatal Error Reporting Enable
  - Unsupported Request Reporting Enable

Note that these bits are all in the Device Control register and are not
AER-specific.

This affects all devices with an AER capability, including hot-added
devices.

Please note that this change is quite invasive, as error reporting now will
be enabled for all available PCIe Endpoints, which was previously not the
case.

When "pci=noaer" is selected, error reporting stays disabled of course.

[bhelgaas: commit log, note error reporting is not AER-specific]
Link: https://lore.kernel.org/r/20220125071820.2247260-4-sr@denx.de
Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Pali Rohár <pali@kernel.org>
Cc: Bharat Kumar Gogada <bharat.kumar.gogada@xilinx.com>
Cc: Michal Simek <michal.simek@xilinx.com>
Cc: Yao Hongbo <yaohongbo@linux.alibaba.com>
Cc: Naveen Naidu <naveennaidu479@gmail.com>
2022-07-13 14:44:12 -05:00
Stefan Roese
8795e182b0 PCI/portdrv: Don't disable AER reporting in get_port_device_capability()
AER reporting is currently disabled in the DevCtl registers of all non Root
Port PCIe devices on systems using pcie_ports_native || host->native_aer,
disabling AER completely in such systems. This is because 2bd50dd800
("PCI: PCIe: Disable PCIe port services during port initialization"), added
a call to pci_disable_pcie_error_reporting() *after* the AER setup was
completed for the PCIe device tree.

Here a longer analysis about the current status of AER enabling /
disabling upon bootup provided by Bjorn:

  pcie_portdrv_probe
    pcie_port_device_register
      get_port_device_capability
        pci_disable_pcie_error_reporting
          clear CERE NFERE FERE URRE               # <-- disable for RP USP DSP
      pcie_device_init
        device_register                            # new AER service device
          aer_probe
            aer_enable_rootport                    # RP only
              set_downstream_devices_error_reporting
                set_device_error_reporting         # self (RP)
                  if (RP || USP || DSP)
                    pci_enable_pcie_error_reporting
                      set CERE NFERE FERE URRE     # <-- enable for RP
                pci_walk_bus
                  set_device_error_reporting
                    if (RP || USP || DSP)
                      pci_enable_pcie_error_reporting
                        set CERE NFERE FERE URRE   # <-- enable for USP DSP

In a typical Root Port -> Endpoint hierarchy, the above:
  - Disables Error Reporting for the Root Port,
  - Enables Error Reporting for the Root Port,
  - Does NOT enable Error Reporting for the Endpoint because it is not a
    Root Port or Switch Port.

In a deeper Root Port -> Upstream Switch Port -> Downstream Switch
Port -> Endpoint hierarchy:
  - Disables Error Reporting for the Root Port,
  - Enables Error Reporting for the Root Port,
  - Enables Error Reporting for both Switch Ports,
  - Does NOT enable Error Reporting for the Endpoint because it is not a
    Root Port or Switch Port,
  - Disables Error Reporting for the Switch Ports when pcie_portdrv_probe()
    claims them.  AER does not re-enable it because these are not Root
    Ports.

Remove this call to pci_disable_pcie_error_reporting() from
get_port_device_capability(), leaving the already enabled AER configuration
intact. With this change, AER is enabled in the Root Port and the PCIe
switch upstream and downstream ports. Only the PCIe Endpoints don't have
AER enabled yet. A follow-up patch will take care of this Endpoint
enabling.

Fixes: 2bd50dd800 ("PCI: PCIe: Disable PCIe port services during port initialization")
Link: https://lore.kernel.org/r/20220125071820.2247260-3-sr@denx.de
Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Pali Rohár <pali@kernel.org>
Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
Cc: Bharat Kumar Gogada <bharat.kumar.gogada@xilinx.com>
Cc: Michal Simek <michal.simek@xilinx.com>
Cc: Yao Hongbo <yaohongbo@linux.alibaba.com>
Cc: Naveen Naidu <naveennaidu479@gmail.com>
2022-07-13 14:43:40 -05:00
Mario Limonciello
fbd74d1689 ACPI: CPPC: Fix enabling CPPC on AMD systems with shared memory
When commit 72f2ecb7ec ("ACPI: bus: Set CPPC _OSC bits for all
and when CPPC_LIB is supported") was introduced, we found collateral
damage that a number of AMD systems that supported CPPC but
didn't advertise support in _OSC stopped having a functional
amd-pstate driver. The _OSC was only enforced on Intel systems at that
time.

This was fixed for the MSR based designs by commit 8b356e536e
("ACPI: CPPC: Don't require _OSC if X86_FEATURE_CPPC is supported")
but some shared memory based designs also support CPPC but haven't
advertised support in the _OSC.  Add support for those designs as well by
hardcoding the list of systems.

Fixes: 72f2ecb7ec ("ACPI: bus: Set CPPC _OSC bits for all and when CPPC_LIB is supported")
Fixes: 8b356e536e ("ACPI: CPPC: Don't require _OSC if X86_FEATURE_CPPC is supported")
Link: https://lore.kernel.org/all/3559249.JlDtxWtqDm@natalenko.name/
Cc: 5.18+ <stable@vger.kernel.org> # 5.18+
Reported-and-tested-by: Oleksandr Natalenko <oleksandr@natalenko.name>
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2022-07-13 21:13:14 +02:00
Ansgar Lößer
4a57a84000 vf/remap: return the amount of bytes actually deduplicated
When using the FIDEDUPRANGE ioctl, in case of success the requested size
is returned. In some cases this might not be the actual amount of bytes
deduplicated.

This change modifies vfs_dedupe_file_range() to report the actual amount
of bytes deduplicated, instead of the requested amount.

Link: https://lore.kernel.org/linux-fsdevel/5548ef63-62f9-4f46-5793-03165ceccacc@tu-darmstadt.de/
Reported-by: Ansgar Lößer <ansgar.loesser@kom.tu-darmstadt.de>
Reported-by: Max Schlecht <max.schlecht@informatik.hu-berlin.de>
Reported-by: Björn Scheuermann <scheuermann@kom.tu-darmstadt.de>
Cc: Dave Chinner <david@fromorbit.com>
Cc: Darrick J Wong <djwong@kernel.org>
Signed-off-by: Ansgar Lößer <ansgar.loesser@kom.tu-darmstadt.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2022-07-13 12:08:14 -07:00
Hengqi Chen
8ed2f5a6f3 libbpf: Error out when binary_path is NULL for uprobe and USDT
binary_path is a required non-null parameter for bpf_program__attach_usdt
and bpf_program__attach_uprobe_opts. Check it against NULL to prevent
coredump on strchr.

Signed-off-by: Hengqi Chen <hengqi.chen@gmail.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20220712025745.2703995-1-hengqi.chen@gmail.com
2022-07-13 12:02:59 -07:00
Linus Torvalds
d0b97f3891 cgroup fixes for v5.19-rc6
This pull request contains the fix for an old and subtle bug in the
 migration path. css_sets are used to track tasks and migrations are tasks
 moving from a group of css_sets to another group of css_sets. The migration
 path pins all source and destination css_sets in the prep stage.
 Unfortunately, it was overloading the same list_head entry to track sources
 and destinations, which got confused for migrations which are partially
 identity leading to use-after-frees. Fixed by using dedicated list_heads for
 tracking sources and destinations.
 -----BEGIN PGP SIGNATURE-----
 
 iIQEABYIACwWIQTfIjM1kS57o3GsC/uxYfJx3gVYGQUCYs48bg4cdGpAa2VybmVs
 Lm9yZwAKCRCxYfJx3gVYGb+HAQDNfUNLYajLjwJNklQdu/S4fxsg0qiY6J8SVkpo
 NYP2zQEAjZmBdNnW8MqutETBCwKq8v80gCphIT/Z72NNPStqPgQ=
 =r72j
 -----END PGP SIGNATURE-----

Merge tag 'cgroup-for-5.19-rc6-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup

Pull cgroup fix from Tejun Heo:
 "Fix an old and subtle bug in the migration path.

  css_sets are used to track tasks and migrations are tasks moving from
  a group of css_sets to another group of css_sets. The migration path
  pins all source and destination css_sets in the prep stage.

  Unfortunately, it was overloading the same list_head entry to track
  sources and destinations, which got confused for migrations which are
  partially identity leading to use-after-frees.

  Fixed by using dedicated list_heads for tracking sources and
  destinations"

* tag 'cgroup-for-5.19-rc6-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
  cgroup: Use separate src/dst nodes when preloading css_sets for migration
2022-07-13 11:47:01 -07:00
Palmer Dabbelt
7fccd72391 Microchip RISC-V devicetree fixes for 5.19-rc6
A single fix for mpfs.dtsi:
 - The l2 cache controller was never hooked up in the dt, so userspace
   is presented with the wrong topology information, so it has been
   hooked up.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYIAB0WIQRh246EGq/8RLhDjO14tDGHoIJi0gUCYshz9AAKCRB4tDGHoIJi
 0v1VAQDT+6S7lwdKr05bg/m/l6d+RqQdIngh9vFr4lHf8rMqiQD/WTIIOXpyTGPt
 DRUhMqmu//pQVTBTKYe6oqF/zDtTTgs=
 =mGP9
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCAAxFiEEAM520YNJYN/OiG3470yhUCzLq0EFAmLPBIETHHBhbG1lckBk
 YWJiZWx0LmNvbQAKCRDvTKFQLMurQUeuD/0cu2DmFFc7OUhICuyKRqKKVPEFFHGC
 P3vnZrwOmznFAt+zDZ/y3Fb6ergxA8MN+OP5cTBN+zvJo3Zi3wrCLpGGy/50fnJl
 p+BlLsrqLUTrtMPK3PKDJxMI0v/kWMq3eowPNiVxuNFaCZOp93YDzcN6ky8M6isL
 kE25i9DN0ERZoo/QHD3xXpPWjEFAoGU0dXatyQMH7mWImeOjwXPXtTgEP9Cp5fYc
 0b2lWMt5VlBdFuV04hegfpIhLZp0wPZ56B3khVO0Pd36oMsNr0/ott3Gp4c3Pcmt
 ncrmH//KfDnA73MIb9VRe7/x/n7JzwoE220mtbw77etePhm0D3urJ5lR0k44NfCf
 Nj96mLmhtI4nWKqmQguHRjGju+bQo8aKVplLB+VlnKRb7lMcwxDkLPDWmXk1ebjP
 eKwU9kkqS8BgnDaPLCJPp3f92lVGdOv3IZncK+5yuiKUXSNK3lxBj2a+bCbmzTn2
 jFllO67Btwg/SZAD0DzmsBtOtGkcuFGuIx0rSXFM0+aDiKJQXDW87yPa57Gp0RHC
 utP3NOZPql8zNXZKcuD92ja2WP3K8+YbVQbqVS/SxRUYnBtHZl+dQgOG7TyusKCi
 104Oy1u5gjqbDqGf1w+jkXb/bEinBkB/+QnB7SQeEI/HEFy5opHO3LJxA46DRCmO
 AeyRedlgovOpxA==
 =ZF4z
 -----END PGP SIGNATURE-----

Merge tag 'dt-fixes-for-palmer-5.19-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git into fixes

Microchip RISC-V devicetree fixes for 5.19-rc6

A single fix for mpfs.dtsi:
- The l2 cache controller was never hooked up in the dt, so userspace
  is presented with the wrong topology information, so it has been
  hooked up.

* tag 'dt-fixes-for-palmer-5.19-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/conor/linux.git:
  riscv: dts: microchip: hook up the mpfs' l2cache
2022-07-13 10:44:22 -07:00
Nícolas F. R. A. Prado
ce838f7dc7 platform/chrome: cros_ec_typec: Use dev_err_probe on port register fail
The typec_register_port() can fail with EPROBE_DEFER if the endpoint
node hasn't probed yet. In order to avoid spamming the log with errors
in that case, log using dev_err_probe().

Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Reviewed-by: Guenter Roeck <groeck@chromium.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20220712214554.545035-1-nfraprado@collabora.com
Signed-off-by: Prashant Malani <pmalani@chromium.org>
2022-07-13 17:28:17 +00:00
Dave Chinner
5750676b64 fs/remap: constrain dedupe of EOF blocks
If dedupe of an EOF block is not constrainted to match against only
other EOF blocks with the same EOF offset into the block, it can
match against any other block that has the same matching initial
bytes in it, even if the bytes beyond EOF in the source file do
not match.

Fix this by constraining the EOF block matching to only match
against other EOF blocks that have identical EOF offsets and data.
This allows "whole file dedupe" to continue to work without allowing
eof blocks to randomly match against partial full blocks with the
same data.

Reported-by: Ansgar Lößer <ansgar.loesser@tu-darmstadt.de>
Fixes: 1383a7ed67 ("vfs: check file ranges before cloning files")
Link: https://lore.kernel.org/linux-fsdevel/a7c93559-4ba1-df2f-7a85-55a143696405@tu-darmstadt.de/
Signed-off-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2022-07-13 10:28:16 -07:00
Priyanka Dandamudi
17cd10a44a drm/i915: Add lmem_bar_size modparam
For testing purposes, support forcing the lmem_bar_size through a new
modparam. In CI we only have a limited number of configurations for DG2,
but we still need to be reasonably sure we get a usable device (also
verifying we report the correct values for things like
probed_cpu_visible_size etc) with all the potential lmem_bar sizes that
we might expect see in the wild.

v2: Update commit message and a minor modification.(Matt)

v3: Optimised lmem bar size code and modified code to resize
bar maximum upto lmem_size instead of maximum supported size.(Nirmoy)

v4: Optimised lmem bar size code.(Nirmoy)

Signed-off-by: Priyanka Dandamudi <priyanka.dandamudi@intel.com>
Cc: Matthew Auld <matthew.auld@intel.com>
Cc: Nirmoy Das <nirmoy.das@intel.com>
Reviewed-by: Nirmoy Das <nirmoy.das@intel.com>
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220713130209.2573233-3-priyanka.dandamudi@intel.com
2022-07-13 17:47:51 +01:00
Akeem G Abodunrin
a91d1a17cd drm/i915: Add support for LMEM PCIe resizable bar
Add support for the local memory PICe resizable bar, so that
local memory can be resized to the maximum size supported by the device,
and mapped correctly to the PCIe memory bar. It is usual that GPU
devices expose only 256MB BARs primarily to be compatible with 32-bit
systems. So, those devices cannot claim larger memory BAR windows size due
to the system BIOS limitation. With this change, it would be possible to
reprogram the windows of the bridge directly above the requesting device
on the same BAR type.

v2:Moved code to gt/intel_region_lmem.c and used only
single underscore for function names.(Jani)

v3: Optimised code.

Signed-off-by: Akeem G Abodunrin <akeem.g.abodunrin@intel.com>
Signed-off-by: Michał Winiarski <michal.winiarski@intel.com>
Cc: Stuart Summers <stuart.summers@intel.com>
Cc: Michael J Ruhl <michael.j.ruhl@intel.com>
Cc: Prathap Kumar Valsan <prathap.kumar.valsan@intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Priyanka Dandamudi <priyanka.dandamudi@intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Reviewed-by: Nirmoy Das <nirmoy.das@intel.com>
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220713130209.2573233-2-priyanka.dandamudi@intel.com
2022-07-13 17:47:51 +01:00
Matt Roper
a5e4a53818 drm/i915: Correct ss -> steering calculation for pre-Xe_HP platforms
Accidental use of a "SLICE" macro where a "SUBSLICE" macro was intended
causes the group ID for steering to be calculated incorrectly on
pre-Xe_HP platforms.

Fixes: 9a92732f04 ("drm/i915/gt: Add general DSS steering iterator to intel_gt_mcr")
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220712220513.3451794-1-matthew.d.roper@intel.com
2022-07-13 09:22:17 -07:00
Michel Dänzer
3283c83eb6 drm/amd/display: Ensure valid event timestamp for cursor-only commits
Requires enabling the vblank machinery for them.

Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/2030
Signed-off-by: Michel Dänzer <mdaenzer@redhat.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
2022-07-13 12:20:37 -04:00
Melissa Wen
47053b1e73 drm/amd/display: correct check of coverage blend mode
Check the value of per_pixel_alpha to decide whether the Coverage pixel
blend mode is applicable or not.

Fixes: 76818cdd11 ("drm/amd/display: add Coverage blend mode for overlay plane")
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Melissa Wen <mwen@igalia.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2022-07-13 12:20:37 -04:00
Yefim Barashkin
0638c98c17 drm/amd/pm: Prevent divide by zero
divide error: 0000 [#1] SMP PTI
CPU: 3 PID: 78925 Comm: tee Not tainted 5.15.50-1-lts #1
Hardware name: MSI MS-7A59/Z270 SLI PLUS (MS-7A59), BIOS 1.90 01/30/2018
RIP: 0010:smu_v11_0_set_fan_speed_rpm+0x11/0x110 [amdgpu]

Speed is user-configurable through a file.
I accidentally set it to zero, and the driver crashed.

Reviewed-by: Evan Quan <evan.quan@amd.com>
Reviewed-by: André Almeida <andrealmeid@igalia.com>
Signed-off-by: Yefim Barashkin <mr.b34r@kolabnow.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
2022-07-13 12:20:37 -04:00
Mario Kleiner
add61d3c31 drm/amd/display: Only use depth 36 bpp linebuffers on DCN display engines.
Various DCE versions had trouble with 36 bpp lb depth, requiring fixes,
last time in commit 353ca0fa56 ("drm/amd/display: Fix 10bit 4K display
on CIK GPUs") for DCE-8. So far >= DCE-11.2 was considered ok, but now I
found out that on DCE-11.2 it causes dithering when there shouldn't be
any, so identity pixel passthrough with identity gamma LUTs doesn't work
when it should. This breaks various important neuroscience applications,
as reported to me by scientific users of Polaris cards under Ubuntu 22.04
with Linux 5.15, and confirmed by testing it myself on DCE-11.2.

Lets only use depth 36 for DCN engines, where my testing showed that it
is both necessary for high color precision output, e.g., RGBA16 fb's,
and not harmful, as far as more than one year in real-world use showed.

DCE engines seem to work fine for high precision output at 30 bpp, so
this ("famous last words") depth 30 should hopefully fix all known problems
without introducing new ones.

Successfully retested on DCE-11.2 Polaris and DCN-1.0 Raven Ridge on
top of Linux 5.19.0-rc2 + drm-next.

Fixes: 353ca0fa56 ("drm/amd/display: Fix 10bit 4K display on CIK GPUs")
Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
Tested-by: Mario Kleiner <mario.kleiner.de@gmail.com>
Cc: stable@vger.kernel.org # 5.14.0
Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2022-07-13 12:20:37 -04:00
Prike Liang
c004486548 drm/amdkfd: correct the MEC atomic support firmware checking for GC 10.3.7
On the GC 10.3.7 platform the initial MEC release version #3 can support
atomic operation,so need correct and set its MEC atomic support version to #3.

Signed-off-by: Prike Liang <Prike.Liang@amd.com>
Reviewed-by: Aaron Liu <aaron.liu@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org # 5.18.x
2022-07-13 12:20:36 -04:00
Fangzhi Zuo
acea108fa0 drm/amd/display: Ignore First MST Sideband Message Return Error
[why]
First MST sideband message returns AUX_RET_ERROR_HPD_DISCON
on certain intel platform. Aux transaction considered failure
if HPD unexpected pulled low. The actual aux transaction success
in such case, hence do not return error.

[how]
Not returning error when AUX_RET_ERROR_HPD_DISCON detected
on the first sideband message.

v2: squash in additional DMI entries
v3: squash in static fix

Signed-off-by: Fangzhi Zuo <Jerry.Zuo@amd.com>
Acked-by: Solomon Chiu <solomon.chiu@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
2022-07-13 12:20:26 -04:00
Andy Shevchenko
568f6869e6 iio: adc: xilinx-xadc: Drop duplicate NULL check in xadc_parse_dt()
The fwnode_for_each_child_node() is NULL-aware, no need to check
its parameters outside. Drop duplicate NULL check in xadc_parse_dt().

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20220531141118.64540-2-andriy.shevchenko@linux.intel.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2022-07-13 17:11:43 +01:00
Andy Shevchenko
59b2947ed4 iio: adc: xilinx-xadc: Make use of device properties
Convert the module to be property provider agnostic and allow
it to be used on non-OF platforms.

Add mod_devicetable.h include.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/20220531141118.64540-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2022-07-13 17:11:43 +01:00
Alexander Lobakin
b0b0b77ea6 iommu/vt-d: avoid invalid memory access via node_online(NUMA_NO_NODE)
KASAN reports:

[ 4.668325][ T0] BUG: KASAN: wild-memory-access in dmar_parse_one_rhsa (arch/x86/include/asm/bitops.h:214 arch/x86/include/asm/bitops.h:226 include/asm-generic/bitops/instrumented-non-atomic.h:142 include/linux/nodemask.h:415 drivers/iommu/intel/dmar.c:497)
[    4.676149][    T0] Read of size 8 at addr 1fffffff85115558 by task swapper/0/0
[    4.683454][    T0]
[    4.685638][    T0] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.19.0-rc3-00004-g0e862838f290 #1
[    4.694331][    T0] Hardware name: Supermicro SYS-5018D-FN4T/X10SDV-8C-TLN4F, BIOS 1.1 03/02/2016
[    4.703196][    T0] Call Trace:
[    4.706334][    T0]  <TASK>
[ 4.709133][ T0] ? dmar_parse_one_rhsa (arch/x86/include/asm/bitops.h:214 arch/x86/include/asm/bitops.h:226 include/asm-generic/bitops/instrumented-non-atomic.h:142 include/linux/nodemask.h:415 drivers/iommu/intel/dmar.c:497)

after converting the type of the first argument (@nr, bit number)
of arch_test_bit() from `long` to `unsigned long`[0].

Under certain conditions (for example, when ACPI NUMA is disabled
via command line), pxm_to_node() can return %NUMA_NO_NODE (-1).
It is valid 'magic' number of NUMA node, but not valid bit number
to use in bitops.
node_online() eventually descends to test_bit() without checking
for the input, assuming it's on caller side (which might be good
for perf-critical tasks). There, -1 becomes %ULONG_MAX which leads
to an insane array index when calculating bit position in memory.

For now, add an explicit check for @node being not %NUMA_NO_NODE
before calling test_bit(). The actual logics didn't change here
at all.

[0] 0e862838f2

Fixes: ee34b32d8c ("dmar: support for parsing Remapping Hardware Static Affinity structure")
Cc: stable@vger.kernel.org # 2.6.33+
Reported-by: kernel test robot <oliver.sang@intel.com>
Signed-off-by: Alexander Lobakin <alexandr.lobakin@intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Yury Norov <yury.norov@gmail.com>
2022-07-13 09:10:32 -07:00
Mark Brown
09cf6054c8
ASoC/SoundWire: Intel: add sdw BE dai trigger
Merge series from Bard Liao <yung-chuan.liao@linux.intel.com>:

For SOF IPC4, we need to set pipeline state in BE DAI trigger.
2022-07-13 16:52:55 +01:00
Urs Schroffenegger
9992b19d75 hwmon: (asus-ec-sensors) add definitions for ROG ZENITH II EXTREME
Add definitions for ROG ZENITH II EXTREME and some unknown yet
temperature sensors in the second EC bank. Details are available at
[1, 2].

[1] https://github.com/zeule/asus-ec-sensors/pull/26
[2] https://github.com/zeule/asus-ec-sensors/issues/16

Signed-off-by: Urs Schroffenegger <nabajour@lampshade.ch>
Signed-off-by: Eugene Shalygin <eugene.shalygin@gmail.com>
Link: https://lore.kernel.org/r/20220710202639.1812058-2-eugene.shalygin@gmail.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2022-07-13 08:39:42 -07:00
Aleksa Savic
654c97351b hwmon: (aquacomputer_d5next) Move device-specific data into struct aqc_data
As preparation for adding support for more devices in upcoming patches,
move device-specific data, such as number of fans, temperature sensors,
register offsets etc. to struct aqc_data. This is made possible by
the fact that the supported Aquacomputer devices share the same layouts
of sensor substructures. This allows aqc_raw_event() and others to stay
general and not be cluttered with similar loops for each device.

Signed-off-by: Jack Doan <me@jackdoan.com>
Signed-off-by: Aleksa Savic <savicaleksa83@gmail.com>
Link: https://lore.kernel.org/r/20220707115050.90021-1-savicaleksa83@gmail.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2022-07-13 08:39:42 -07:00