Merge tag 'kvm-x86-selftests-6.6' of https://github.com/kvm-x86/linux into HEAD
authorPaolo Bonzini <pbonzini@redhat.com>
Thu, 31 Aug 2023 17:20:45 +0000 (13:20 -0400)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 31 Aug 2023 17:20:45 +0000 (13:20 -0400)
KVM: x86: Selftests changes for 6.6:

 - Add testcases to x86's sync_regs_test for detecting KVM TOCTOU bugs

 - Add support for printf() in guest code and covert all guest asserts to use
   printf-based reporting

 - Clean up the PMU event filter test and add new testcases

 - Include x86 selftests in the KVM x86 MAINTAINERS entry

1  2 
MAINTAINERS
arch/x86/kvm/x86.c

diff --combined MAINTAINERS
@@@ -1865,11 -1865,9 +1865,11 @@@ M:    Martin PoviĊĦer <povik+lin@cutebit.o
  L:    asahi@lists.linux.dev
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
  S:    Maintained
 +F:    Documentation/devicetree/bindings/sound/adi,ssm3515.yaml
  F:    Documentation/devicetree/bindings/sound/apple,*
  F:    sound/soc/apple/*
  F:    sound/soc/codecs/cs42l83-i2c.c
 +F:    sound/soc/codecs/ssm3515.c
  
  ARM/APPLE MACHINE SUPPORT
  M:    Hector Martin <marcan@marcan.st>
@@@ -2339,7 -2337,7 +2339,7 @@@ F:      drivers/phy/mediatek
  ARM/MICROCHIP (ARM64) SoC support
  M:    Conor Dooley <conor@kernel.org>
  M:    Nicolas Ferre <nicolas.ferre@microchip.com>
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  T:    git https://git.kernel.org/pub/scm/linux/kernel/git/at91/linux.git
@@@ -2348,7 -2346,7 +2348,7 @@@ F:      arch/arm64/boot/dts/microchip
  ARM/Microchip (AT91) SoC support
  M:    Nicolas Ferre <nicolas.ferre@microchip.com>
  M:    Alexandre Belloni <alexandre.belloni@bootlin.com>
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  W:    http://www.linux4sam.org
@@@ -3250,7 -3248,7 +3250,7 @@@ F:      include/uapi/linux/atm
  
  ATMEL MACB ETHERNET DRIVER
  M:    Nicolas Ferre <nicolas.ferre@microchip.com>
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  S:    Supported
  F:    drivers/net/ethernet/cadence/
  
@@@ -3262,8 -3260,9 +3262,8 @@@ F:      Documentation/devicetree/bindings/in
  F:    drivers/input/touchscreen/atmel_mxt_ts.c
  
  ATMEL WIRELESS DRIVER
 -M:    Simon Kelley <simon@thekelleys.org.uk>
  L:    linux-wireless@vger.kernel.org
 -S:    Maintained
 +S:    Orphan
  W:    http://www.thekelleys.org.uk/atmel
  W:    http://atmelwlandriver.sourceforge.net/
  F:    drivers/net/wireless/atmel/atmel*
@@@ -3393,7 -3392,7 +3393,7 @@@ F:      drivers/media/radio/radio-aztech
  B43 WIRELESS DRIVER
  L:    linux-wireless@vger.kernel.org
  L:    b43-dev@lists.infradead.org
 -S:    Odd Fixes
 +S:    Orphan
  W:    https://wireless.wiki.kernel.org/en/users/Drivers/b43
  F:    drivers/net/wireless/broadcom/b43/
  
@@@ -4462,6 -4461,7 +4462,6 @@@ CADENCE USB3 DRD IP DRIVE
  M:    Peter Chen <peter.chen@kernel.org>
  M:    Pawel Laszczak <pawell@cadence.com>
  R:    Roger Quadros <rogerq@kernel.org>
 -R:    Aswath Govindraju <a-govindraju@ti.com>
  L:    linux-usb@vger.kernel.org
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/peter.chen/usb.git
@@@ -5147,12 -5147,10 +5147,12 @@@ S:   Maintaine
  F:    include/linux/compiler_attributes.h
  
  COMPUTE EXPRESS LINK (CXL)
 +M:    Davidlohr Bueso <dave@stgolabs.net>
 +M:    Jonathan Cameron <jonathan.cameron@huawei.com>
 +M:    Dave Jiang <dave.jiang@intel.com>
  M:    Alison Schofield <alison.schofield@intel.com>
  M:    Vishal Verma <vishal.l.verma@intel.com>
  M:    Ira Weiny <ira.weiny@intel.com>
 -M:    Ben Widawsky <bwidawsk@kernel.org>
  M:    Dan Williams <dan.j.williams@intel.com>
  L:    linux-cxl@vger.kernel.org
  S:    Maintained
@@@ -5461,7 -5459,8 +5461,7 @@@ F:      Documentation/devicetree/bindings/ne
  F:    drivers/net/can/ctucanfd/
  
  CW1200 WLAN driver
 -M:    Solomon Peachy <pizza@shaftnet.org>
 -S:    Maintained
 +S:    Orphan
  F:    drivers/net/wireless/st/cw1200/
  
  CX18 VIDEO4LINUX DRIVER
@@@ -8812,7 -8811,6 +8812,7 @@@ R:      Michael Walle <michael@walle.cc
  S:    Maintained
  F:    drivers/gpio/gpio-regmap.c
  F:    include/linux/gpio/regmap.h
 +K:    (devm_)?gpio_regmap_(un)?register
  
  GPIO SUBSYSTEM
  M:    Linus Walleij <linus.walleij@linaro.org>
@@@ -9376,6 -9374,7 +9376,6 @@@ F:      drivers/crypto/hisilicon/sgl.
  F:    include/linux/hisi_acc_qm.h
  
  HISILICON ROCE DRIVER
 -M:    Haoyue Xu <xuhaoyue1@hisilicon.com>
  M:    Junxian Huang <huangjunxian6@hisilicon.com>
  L:    linux-rdma@vger.kernel.org
  S:    Maintained
@@@ -9660,7 -9659,6 +9660,7 @@@ F:      tools/hv
  
  HYPERBUS SUPPORT
  M:    Vignesh Raghavendra <vigneshr@ti.com>
 +R:    Tudor Ambarus <tudor.ambarus@linaro.org>
  L:    linux-mtd@lists.infradead.org
  S:    Supported
  Q:    http://patchwork.ozlabs.org/project/linux-mtd/list/
@@@ -11500,6 -11498,8 +11500,8 @@@ F:   arch/x86/include/uapi/asm/svm.
  F:    arch/x86/include/uapi/asm/vmx.h
  F:    arch/x86/kvm/
  F:    arch/x86/kvm/*/
+ F:    tools/testing/selftests/kvm/*/x86_64/
+ F:    tools/testing/selftests/kvm/x86_64/
  
  KERNFS
  M:    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
@@@ -12480,7 -12480,6 +12482,7 @@@ F:   net/mctp
  
  MAPLE TREE
  M:    Liam R. Howlett <Liam.Howlett@oracle.com>
 +L:    maple-tree@lists.infradead.org
  L:    linux-mm@kvack.org
  S:    Supported
  F:    Documentation/core-api/maple_tree.rst
@@@ -12592,14 -12591,18 +12594,14 @@@ F:        Documentation/devicetree/bindings/ne
  F:    drivers/net/ethernet/marvell/mvpp2/
  
  MARVELL MWIFIEX WIRELESS DRIVER
 -M:    Amitkumar Karwar <amitkarwar@gmail.com>
 -M:    Ganapathi Bhat <ganapathi017@gmail.com>
 -M:    Sharvari Harisangam <sharvari.harisangam@nxp.com>
 -M:    Xinming Hu <huxinming820@gmail.com>
 +M:    Brian Norris <briannorris@chromium.org>
  L:    linux-wireless@vger.kernel.org
 -S:    Maintained
 +S:    Odd Fixes
  F:    drivers/net/wireless/marvell/mwifiex/
  
  MARVELL MWL8K WIRELESS DRIVER
 -M:    Lennert Buytenhek <buytenh@wantstofly.org>
  L:    linux-wireless@vger.kernel.org
 -S:    Odd Fixes
 +S:    Orphan
  F:    drivers/net/wireless/marvell/mwl8k.c
  
  MARVELL NAND CONTROLLER DRIVER
@@@ -13787,7 -13790,7 +13789,7 @@@ F:   Documentation/devicetree/bindings/se
  F:    drivers/spi/spi-at91-usart.c
  
  MICROCHIP AUDIO ASOC DRIVERS
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
  S:    Supported
  F:    Documentation/devicetree/bindings/sound/atmel*
@@@ -13810,7 -13813,7 +13812,7 @@@ S:   Maintaine
  F:    drivers/crypto/atmel-ecc.*
  
  MICROCHIP EIC DRIVER
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  F:    Documentation/devicetree/bindings/interrupt-controller/microchip,sama7g5-eic.yaml
@@@ -13883,7 -13886,7 +13885,7 @@@ F:   drivers/video/fbdev/atmel_lcdfb.
  F:    include/video/atmel_lcdc.h
  
  MICROCHIP MCP16502 PMIC DRIVER
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  F:    Documentation/devicetree/bindings/regulator/mcp16502-regulator.txt
@@@ -13910,7 -13913,7 +13912,7 @@@ F:   Documentation/devicetree/bindings/mt
  F:    drivers/mtd/nand/raw/atmel/*
  
  MICROCHIP OTPC DRIVER
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  F:    Documentation/devicetree/bindings/nvmem/microchip,sama7g5-otpc.yaml
@@@ -13949,7 -13952,7 +13951,7 @@@ F:   Documentation/devicetree/bindings/fp
  F:    drivers/fpga/microchip-spi.c
  
  MICROCHIP PWM DRIVER
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  L:    linux-pwm@vger.kernel.org
  S:    Supported
@@@ -13965,7 -13968,7 +13967,7 @@@ F:   drivers/iio/adc/at91-sama5d2_adc.
  F:    include/dt-bindings/iio/adc/at91-sama5d2_adc.h
  
  MICROCHIP SAMA5D2-COMPATIBLE SHUTDOWN CONTROLLER
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  S:    Supported
  F:    Documentation/devicetree/bindings/power/reset/atmel,sama5d2-shdwc.yaml
  F:    drivers/power/reset/at91-sama5d2_shdwc.c
@@@ -13982,7 -13985,7 +13984,7 @@@ S:   Supporte
  F:    drivers/spi/spi-atmel.*
  
  MICROCHIP SSC DRIVER
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Supported
  F:    Documentation/devicetree/bindings/misc/atmel-ssc.txt
@@@ -14011,7 -14014,7 +14013,7 @@@ F:   drivers/usb/gadget/udc/atmel_usba_ud
  
  MICROCHIP WILC1000 WIFI DRIVER
  M:    Ajay Singh <ajay.kathat@microchip.com>
 -M:    Claudiu Beznea <claudiu.beznea@microchip.com>
 +M:    Claudiu Beznea <claudiu.beznea@tuxon.dev>
  L:    linux-wireless@vger.kernel.org
  S:    Supported
  F:    drivers/net/wireless/microchip/wilc1000/
@@@ -14803,16 -14806,6 +14805,16 @@@ F: net/netfilter/xt_CONNSECMARK.
  F:    net/netfilter/xt_SECMARK.c
  F:    net/netlabel/
  
 +NETWORKING [MACSEC]
 +M:    Sabrina Dubroca <sd@queasysnail.net>
 +L:    netdev@vger.kernel.org
 +S:    Maintained
 +F:    drivers/net/macsec.c
 +F:    include/net/macsec.h
 +F:    include/uapi/linux/if_macsec.h
 +K:    macsec
 +K:    \bmdo_
 +
  NETWORKING [MPTCP]
  M:    Matthieu Baerts <matthieu.baerts@tessares.net>
  M:    Mat Martineau <martineau@kernel.org>
@@@ -16304,7 -16297,6 +16306,7 @@@ F:   drivers/pci/controller/dwc/pci-exyno
  PCI DRIVER FOR SYNOPSYS DESIGNWARE
  M:    Jingoo Han <jingoohan1@gmail.com>
  M:    Gustavo Pimentel <gustavo.pimentel@synopsys.com>
 +M:    Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
  L:    linux-pci@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml
@@@ -17456,7 -17448,6 +17458,7 @@@ F:   drivers/media/tuners/qt1010
  
  QUALCOMM ATH12K WIRELESS DRIVER
  M:    Kalle Valo <kvalo@kernel.org>
 +M:    Jeff Johnson <quic_jjohnson@quicinc.com>
  L:    ath12k@lists.infradead.org
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
@@@ -17464,7 -17455,6 +17466,7 @@@ F:   drivers/net/wireless/ath/ath12k
  
  QUALCOMM ATHEROS ATH10K WIRELESS DRIVER
  M:    Kalle Valo <kvalo@kernel.org>
 +M:    Jeff Johnson <quic_jjohnson@quicinc.com>
  L:    ath10k@lists.infradead.org
  S:    Supported
  W:    https://wireless.wiki.kernel.org/en/users/Drivers/ath10k
@@@ -17474,7 -17464,6 +17476,7 @@@ F:   drivers/net/wireless/ath/ath10k
  
  QUALCOMM ATHEROS ATH11K WIRELESS DRIVER
  M:    Kalle Valo <kvalo@kernel.org>
 +M:    Jeff Johnson <quic_jjohnson@quicinc.com>
  L:    ath11k@lists.infradead.org
  S:    Supported
  W:    https://wireless.wiki.kernel.org/en/users/Drivers/ath11k
@@@ -17995,7 -17984,7 +17997,7 @@@ T:   git git://git.kernel.org/pub/scm/lin
  F:    drivers/net/wireless/realtek/rtlwifi/
  
  REALTEK WIRELESS DRIVER (rtw88)
 -M:    Yan-Hsuan Chuang <tony0620emma@gmail.com>
 +M:    Ping-Ke Shih <pkshih@realtek.com>
  L:    linux-wireless@vger.kernel.org
  S:    Maintained
  F:    drivers/net/wireless/realtek/rtw88/
@@@ -18520,14 -18509,17 +18522,14 @@@ RTL8180 WIRELESS DRIVE
  L:    linux-wireless@vger.kernel.org
  S:    Orphan
  W:    https://wireless.wiki.kernel.org/
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-testing.git
  F:    drivers/net/wireless/realtek/rtl818x/rtl8180/
  
  RTL8187 WIRELESS DRIVER
 -M:    Herton Ronaldo Krzesinski <herton@canonical.com>
 -M:    Hin-Tak Leung <htl10@users.sourceforge.net>
 +M:    Hin-Tak Leung <hintak.leung@gmail.com>
  M:    Larry Finger <Larry.Finger@lwfinger.net>
  L:    linux-wireless@vger.kernel.org
  S:    Maintained
  W:    https://wireless.wiki.kernel.org/
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-testing.git
  F:    drivers/net/wireless/realtek/rtl818x/rtl8187/
  
  RTL8XXXU WIRELESS DRIVER (rtl8xxxu)
@@@ -19234,6 -19226,13 +19236,6 @@@ F:  Documentation/devicetree/bindings/se
  F:    drivers/tty/serdev/
  F:    include/linux/serdev.h
  
 -SERIAL DRIVERS
 -M:    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 -L:    linux-serial@vger.kernel.org
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/serial/
 -F:    drivers/tty/serial/
 -
  SERIAL IR RECEIVER
  M:    Sean Young <sean@mess.org>
  L:    linux-media@vger.kernel.org
@@@ -20404,6 -20403,7 +20406,6 @@@ F:   drivers/pwm/pwm-stm32
  F:    include/linux/*/stm32-*tim*
  
  STMMAC ETHERNET DRIVER
 -M:    Giuseppe Cavallaro <peppe.cavallaro@st.com>
  M:    Alexandre Torgue <alexandre.torgue@foss.st.com>
  M:    Jose Abreu <joabreu@synopsys.com>
  L:    netdev@vger.kernel.org
@@@ -21062,39 -21062,6 +21064,39 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/sound/davinci-mcasp-audio.yaml
  F:    sound/soc/ti/
  
 +TEXAS INSTRUMENTS AUDIO (ASoC/HDA) DRIVERS
 +M:    Shenghao Ding <shenghao-ding@ti.com>
 +M:    Kevin Lu <kevin-lu@ti.com>
 +M:    Baojun Xu <x1077012@ti.com>
 +L:    alsa-devel@alsa-project.org (moderated for non-subscribers)
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/sound/tas2552.txt
 +F:    Documentation/devicetree/bindings/sound/tas2562.yaml
 +F:    Documentation/devicetree/bindings/sound/tas2770.yaml
 +F:    Documentation/devicetree/bindings/sound/tas27xx.yaml
 +F:    Documentation/devicetree/bindings/sound/ti,pcm1681.txt
 +F:    Documentation/devicetree/bindings/sound/ti,pcm3168a.yaml
 +F:    Documentation/devicetree/bindings/sound/ti,tlv320*.yaml
 +F:    Documentation/devicetree/bindings/sound/tlv320adcx140.yaml
 +F:    Documentation/devicetree/bindings/sound/tlv320aic31xx.txt
 +F:    Documentation/devicetree/bindings/sound/tpa6130a2.txt
 +F:    include/sound/tas2*.h
 +F:    include/sound/tlv320*.h
 +F:    include/sound/tpa6130a2-plat.h
 +F:    sound/pci/hda/tas2781_hda_i2c.c
 +F:    sound/soc/codecs/pcm1681.c
 +F:    sound/soc/codecs/pcm1789*.*
 +F:    sound/soc/codecs/pcm179x*.*
 +F:    sound/soc/codecs/pcm186x*.*
 +F:    sound/soc/codecs/pcm3008.*
 +F:    sound/soc/codecs/pcm3060*.*
 +F:    sound/soc/codecs/pcm3168a*.*
 +F:    sound/soc/codecs/pcm5102a.c
 +F:    sound/soc/codecs/pcm512x*.*
 +F:    sound/soc/codecs/tas2*.*
 +F:    sound/soc/codecs/tlv320*.*
 +F:    sound/soc/codecs/tpa6130a2.*
 +
  TEXAS INSTRUMENTS DMA DRIVERS
  M:    Peter Ujfalusi <peter.ujfalusi@gmail.com>
  L:    dmaengine@vger.kernel.org
@@@ -21671,16 -21638,14 +21673,16 @@@ W:        https://github.com/srcres258/linux-d
  T:    git git://github.com/srcres258/linux-doc.git doc-zh-tw
  F:    Documentation/translations/zh_TW/
  
 -TTY LAYER
 +TTY LAYER AND SERIAL DRIVERS
  M:    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  M:    Jiri Slaby <jirislaby@kernel.org>
 +L:    linux-kernel@vger.kernel.org
 +L:    linux-serial@vger.kernel.org
  S:    Supported
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git
 +F:    Documentation/devicetree/bindings/serial/
  F:    Documentation/driver-api/serial/
  F:    drivers/tty/
 -F:    drivers/tty/serial/serial_core.c
  F:    include/linux/selection.h
  F:    include/linux/serial.h
  F:    include/linux/serial_core.h
@@@ -21709,14 -21674,11 +21711,14 @@@ S:        Orpha
  F:    drivers/net/ethernet/dec/tulip/
  
  TUN/TAP driver
 -M:    Maxim Krasnyansky <maxk@qti.qualcomm.com>
 +M:    Willem de Bruijn <willemdebruijn.kernel@gmail.com>
 +M:    Jason Wang <jasowang@redhat.com>
  S:    Maintained
  W:    http://vtun.sourceforge.net/tun
  F:    Documentation/networking/tuntap.rst
  F:    arch/um/os-Linux/drivers/
 +F:    drivers/net/tap.c
 +F:    drivers/net/tun.c
  
  TURBOCHANNEL SUBSYSTEM
  M:    "Maciej W. Rozycki" <macro@orcam.me.uk>
@@@ -21939,8 -21901,9 +21941,8 @@@ S:   Maintaine
  F:    drivers/usb/misc/apple-mfi-fastcharge.c
  
  USB AR5523 WIRELESS DRIVER
 -M:    Pontus Fuchs <pontus.fuchs@gmail.com>
  L:    linux-wireless@vger.kernel.org
 -S:    Maintained
 +S:    Orphan
  F:    drivers/net/wireless/ath/ar5523/
  
  USB ATTACHED SCSI
@@@ -22217,8 -22180,9 +22219,8 @@@ F:   drivers/usb/gadget/legacy/webcam.
  F:    include/uapi/linux/usb/g_uvc.h
  
  USB WIRELESS RNDIS DRIVER (rndis_wlan)
 -M:    Jussi Kivilinna <jussi.kivilinna@iki.fi>
  L:    linux-wireless@vger.kernel.org
 -S:    Maintained
 +S:    Orphan
  F:    drivers/net/wireless/legacy/rndis_wlan.c
  
  USB XHCI DRIVER
@@@ -22507,6 -22471,7 +22509,6 @@@ L:   virtualization@lists.linux-foundatio
  S:    Maintained
  F:    drivers/block/virtio_blk.c
  F:    drivers/scsi/virtio_scsi.c
 -F:    drivers/vhost/scsi.c
  F:    include/uapi/linux/virtio_blk.h
  F:    include/uapi/linux/virtio_scsi.h
  
@@@ -22605,16 -22570,6 +22607,16 @@@ F: include/linux/vhost_iotlb.
  F:    include/uapi/linux/vhost.h
  F:    kernel/vhost_task.c
  
 +VIRTIO HOST (VHOST-SCSI)
 +M:    "Michael S. Tsirkin" <mst@redhat.com>
 +M:    Jason Wang <jasowang@redhat.com>
 +M:    Mike Christie <michael.christie@oracle.com>
 +R:    Paolo Bonzini <pbonzini@redhat.com>
 +R:    Stefan Hajnoczi <stefanha@redhat.com>
 +L:    virtualization@lists.linux-foundation.org
 +S:    Maintained
 +F:    drivers/vhost/scsi.c
 +
  VIRTIO I2C DRIVER
  M:    Conghui Chen <conghui.chen@intel.com>
  M:    Viresh Kumar <viresh.kumar@linaro.org>
@@@ -23002,7 -22957,7 +23004,7 @@@ F:   drivers/input/misc/wistron_btns.
  
  WL3501 WIRELESS PCMCIA CARD DRIVER
  L:    linux-wireless@vger.kernel.org
 -S:    Odd fixes
 +S:    Orphan
  F:    drivers/net/wireless/legacy/wl3501*
  
  WMI BINARY MOF DRIVER
@@@ -23573,8 -23528,11 +23575,8 @@@ S:  Maintaine
  F:    mm/zbud.c
  
  ZD1211RW WIRELESS DRIVER
 -M:    Ulrich Kunitz <kune@deine-taler.de>
  L:    linux-wireless@vger.kernel.org
 -L:    zd1211-devs@lists.sourceforge.net (subscribers-only)
 -S:    Maintained
 -W:    http://zd1211.ath.cx/wiki/DriverRewrite
 +S:    Orphan
  F:    drivers/net/wireless/zydas/zd1211rw/
  
  ZD1301 MEDIA DRIVER
diff --combined arch/x86/kvm/x86.c
@@@ -906,22 -906,6 +906,22 @@@ int load_pdptrs(struct kvm_vcpu *vcpu, 
  }
  EXPORT_SYMBOL_GPL(load_pdptrs);
  
 +static bool kvm_is_valid_cr0(struct kvm_vcpu *vcpu, unsigned long cr0)
 +{
 +#ifdef CONFIG_X86_64
 +      if (cr0 & 0xffffffff00000000UL)
 +              return false;
 +#endif
 +
 +      if ((cr0 & X86_CR0_NW) && !(cr0 & X86_CR0_CD))
 +              return false;
 +
 +      if ((cr0 & X86_CR0_PG) && !(cr0 & X86_CR0_PE))
 +              return false;
 +
 +      return static_call(kvm_x86_is_valid_cr0)(vcpu, cr0);
 +}
 +
  void kvm_post_set_cr0(struct kvm_vcpu *vcpu, unsigned long old_cr0, unsigned long cr0)
  {
        /*
@@@ -968,13 -952,20 +968,13 @@@ int kvm_set_cr0(struct kvm_vcpu *vcpu, 
  {
        unsigned long old_cr0 = kvm_read_cr0(vcpu);
  
 -      cr0 |= X86_CR0_ET;
 -
 -#ifdef CONFIG_X86_64
 -      if (cr0 & 0xffffffff00000000UL)
 +      if (!kvm_is_valid_cr0(vcpu, cr0))
                return 1;
 -#endif
 -
 -      cr0 &= ~CR0_RESERVED_BITS;
  
 -      if ((cr0 & X86_CR0_NW) && !(cr0 & X86_CR0_CD))
 -              return 1;
 +      cr0 |= X86_CR0_ET;
  
 -      if ((cr0 & X86_CR0_PG) && !(cr0 & X86_CR0_PE))
 -              return 1;
 +      /* Write to CR0 reserved bits are ignored, even on Intel. */
 +      cr0 &= ~CR0_RESERVED_BITS;
  
  #ifdef CONFIG_X86_64
        if ((vcpu->arch.efer & EFER_LME) && !is_paging(vcpu) &&
@@@ -1616,7 -1607,7 +1616,7 @@@ static bool kvm_is_immutable_feature_ms
         ARCH_CAP_SKIP_VMENTRY_L1DFLUSH | ARCH_CAP_SSB_NO | ARCH_CAP_MDS_NO | \
         ARCH_CAP_PSCHANGE_MC_NO | ARCH_CAP_TSX_CTRL_MSR | ARCH_CAP_TAA_NO | \
         ARCH_CAP_SBDR_SSDP_NO | ARCH_CAP_FBSDP_NO | ARCH_CAP_PSDP_NO | \
 -       ARCH_CAP_FB_CLEAR | ARCH_CAP_RRSBA | ARCH_CAP_PBRSB_NO)
 +       ARCH_CAP_FB_CLEAR | ARCH_CAP_RRSBA | ARCH_CAP_PBRSB_NO | ARCH_CAP_GDS_NO)
  
  static u64 kvm_get_arch_capabilities(void)
  {
                 */
        }
  
 +      if (!boot_cpu_has_bug(X86_BUG_GDS) || gds_ucode_mitigated())
 +              data |= ARCH_CAP_GDS_NO;
 +
        return data;
  }
  
@@@ -2184,8 -2172,6 +2184,8 @@@ fastpath_t handle_fastpath_set_msr_irqo
        u64 data;
        fastpath_t ret = EXIT_FASTPATH_NONE;
  
 +      kvm_vcpu_srcu_read_lock(vcpu);
 +
        switch (msr) {
        case APIC_BASE_MSR + (APIC_ICR >> 4):
                data = kvm_read_edx_eax(vcpu);
        if (ret != EXIT_FASTPATH_NONE)
                trace_kvm_msr_write(msr, data);
  
 +      kvm_vcpu_srcu_read_unlock(vcpu);
 +
        return ret;
  }
  EXPORT_SYMBOL_GPL(handle_fastpath_set_msr_irqoff);
@@@ -10219,13 -10203,9 +10219,13 @@@ static int kvm_check_and_inject_events(
                if (r < 0)
                        goto out;
                if (r) {
 -                      kvm_queue_interrupt(vcpu, kvm_cpu_get_interrupt(vcpu), false);
 -                      static_call(kvm_x86_inject_irq)(vcpu, false);
 -                      WARN_ON(static_call(kvm_x86_interrupt_allowed)(vcpu, true) < 0);
 +                      int irq = kvm_cpu_get_interrupt(vcpu);
 +
 +                      if (!WARN_ON_ONCE(irq == -1)) {
 +                              kvm_queue_interrupt(vcpu, irq, false);
 +                              static_call(kvm_x86_inject_irq)(vcpu, false);
 +                              WARN_ON(static_call(kvm_x86_interrupt_allowed)(vcpu, true) < 0);
 +                      }
                }
                if (kvm_cpu_has_injectable_intr(vcpu))
                        static_call(kvm_x86_enable_irq_window)(vcpu);
@@@ -11480,8 -11460,7 +11480,8 @@@ static bool kvm_is_valid_sregs(struct k
                        return false;
        }
  
 -      return kvm_is_valid_cr4(vcpu, sregs->cr4);
 +      return kvm_is_valid_cr4(vcpu, sregs->cr4) &&
 +             kvm_is_valid_cr0(vcpu, sregs->cr0);
  }
  
  static int __set_sregs_common(struct kvm_vcpu *vcpu, struct kvm_sregs *sregs,
@@@ -11798,15 -11777,22 +11798,22 @@@ static int sync_regs(struct kvm_vcpu *v
                __set_regs(vcpu, &vcpu->run->s.regs.regs);
                vcpu->run->kvm_dirty_regs &= ~KVM_SYNC_X86_REGS;
        }
        if (vcpu->run->kvm_dirty_regs & KVM_SYNC_X86_SREGS) {
-               if (__set_sregs(vcpu, &vcpu->run->s.regs.sregs))
+               struct kvm_sregs sregs = vcpu->run->s.regs.sregs;
+               if (__set_sregs(vcpu, &sregs))
                        return -EINVAL;
                vcpu->run->kvm_dirty_regs &= ~KVM_SYNC_X86_SREGS;
        }
        if (vcpu->run->kvm_dirty_regs & KVM_SYNC_X86_EVENTS) {
-               if (kvm_vcpu_ioctl_x86_set_vcpu_events(
-                               vcpu, &vcpu->run->s.regs.events))
+               struct kvm_vcpu_events events = vcpu->run->s.regs.events;
+               if (kvm_vcpu_ioctl_x86_set_vcpu_events(vcpu, &events))
                        return -EINVAL;
                vcpu->run->kvm_dirty_regs &= ~KVM_SYNC_X86_EVENTS;
        }
  
@@@ -12772,7 -12758,7 +12779,7 @@@ static void kvm_mmu_slot_apply_flags(st
                 * See is_writable_pte() for more details (the case involving
                 * access-tracked SPTEs is particularly relevant).
                 */
 -              kvm_arch_flush_remote_tlbs_memslot(kvm, new);
 +              kvm_flush_remote_tlbs_memslot(kvm, new);
        }
  }
  
@@@ -13206,7 -13192,7 +13213,7 @@@ EXPORT_SYMBOL_GPL(kvm_arch_has_noncoher
  
  bool kvm_arch_has_irq_bypass(void)
  {
 -      return true;
 +      return enable_apicv && irq_remapping_cap(IRQ_POSTING_CAP);
  }
  
  int kvm_arch_irq_bypass_add_producer(struct irq_bypass_consumer *cons,