1. 08 Mar, 2024 3 commits
  2. 06 Mar, 2024 9 commits
    • Robin Murphy's avatar
      iommu/dma: Document min_align_mask assumption · e2addba4
      Robin Murphy authored
      iommu-dma does not explicitly reference min_align_mask since we already
      assume that will be less than or equal to any typical IOVA granule.
      We wouldn't realistically expect to see the case where it is larger, and
      that would be non-trivial to support, however for the sake of reasoning
      (particularly around the interaction with SWIOTLB), let's clearly
      enforce the assumption.
      Signed-off-by: default avatarRobin Murphy <robin.murphy@arm.com>
      Reviewed-by: default avatarMichael Kelley <mhklinux@outlook.com>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Link: https://lore.kernel.org/r/dbb4d2d8e5d1691ac9a6c67e9758904e6c447ba5.1709553942.git.robin.murphy@arm.comSigned-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      e2addba4
    • Lu Baolu's avatar
      iommu/vt-d: Remove scalabe mode in domain_context_clear_one() · 80ca79f3
      Lu Baolu authored
      domain_context_clear_one() only handles the context entry teardown in
      legacy mode. Remove the scalable mode check in it to avoid dead code.
      
      Remove an unnecessary check in the code as well.
      Signed-off-by: default avatarLu Baolu <baolu.lu@linux.intel.com>
      Reviewed-by: default avatarKevin Tian <kevin.tian@intel.com>
      Link: https://lore.kernel.org/r/20240305013305.204605-6-baolu.lu@linux.intel.comSigned-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      80ca79f3
    • Lu Baolu's avatar
      iommu/vt-d: Remove scalable mode context entry setup from attach_dev · a016e538
      Lu Baolu authored
      The scalable mode context entry is now setup in the probe_device path,
      eliminating the need to configure it in the attach_dev path. Removes the
      redundant code from the attach_dev path to avoid dead code.
      Signed-off-by: default avatarLu Baolu <baolu.lu@linux.intel.com>
      Reviewed-by: default avatarKevin Tian <kevin.tian@intel.com>
      Link: https://lore.kernel.org/r/20240305013305.204605-5-baolu.lu@linux.intel.comSigned-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      a016e538
    • Lu Baolu's avatar
      iommu/vt-d: Setup scalable mode context entry in probe path · 301f1a80
      Lu Baolu authored
      In contrast to legacy mode, the DMA translation table is configured in
      the PASID table entry instead of the context entry for scalable mode.
      For this reason, it is more appropriate to set up the scalable mode
      context entry in the device_probe callback and direct it to the
      appropriate PASID table.
      
      The iommu domain attach/detach operations only affect the PASID table
      entry. Therefore, there is no need to modify the context entry when
      configuring the translation type and page table.
      
      The only exception is the kdump case, where context entry setup is
      postponed until the device driver invokes the first DMA interface.
      Signed-off-by: default avatarLu Baolu <baolu.lu@linux.intel.com>
      Reviewed-by: default avatarKevin Tian <kevin.tian@intel.com>
      Link: https://lore.kernel.org/r/20240305013305.204605-4-baolu.lu@linux.intel.comSigned-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      301f1a80
    • Lu Baolu's avatar
      iommu/vt-d: Fix NULL domain on device release · 81e921fd
      Lu Baolu authored
      In the kdump kernel, the IOMMU operates in deferred_attach mode. In this
      mode, info->domain may not yet be assigned by the time the release_device
      function is called. It leads to the following crash in the crash kernel:
      
          BUG: kernel NULL pointer dereference, address: 000000000000003c
          ...
          RIP: 0010:do_raw_spin_lock+0xa/0xa0
          ...
          _raw_spin_lock_irqsave+0x1b/0x30
          intel_iommu_release_device+0x96/0x170
          iommu_deinit_device+0x39/0xf0
          __iommu_group_remove_device+0xa0/0xd0
          iommu_bus_notifier+0x55/0xb0
          notifier_call_chain+0x5a/0xd0
          blocking_notifier_call_chain+0x41/0x60
          bus_notify+0x34/0x50
          device_del+0x269/0x3d0
          pci_remove_bus_device+0x77/0x100
          p2sb_bar+0xae/0x1d0
          ...
          i801_probe+0x423/0x740
      
      Use the release_domain mechanism to fix it. The scalable mode context
      entry which is not part of release domain should be cleared in
      release_device().
      
      Fixes: 586081d3 ("iommu/vt-d: Remove DEFER_DEVICE_DOMAIN_INFO")
      Reported-by: default avatarEric Badger <ebadger@purestorage.com>
      Closes: https://lore.kernel.org/r/20240113181713.1817855-1-ebadger@purestorage.comSigned-off-by: default avatarLu Baolu <baolu.lu@linux.intel.com>
      Reviewed-by: default avatarKevin Tian <kevin.tian@intel.com>
      Link: https://lore.kernel.org/r/20240305013305.204605-3-baolu.lu@linux.intel.comSigned-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      81e921fd
    • Lu Baolu's avatar
      iommu: Add static iommu_ops->release_domain · 0061ffe2
      Lu Baolu authored
      The current device_release callback for individual iommu drivers does the
      following:
      
      1) Silent IOMMU DMA translation: It detaches any existing domain from the
         device and puts it into a blocking state (some drivers might use the
         identity state).
      2) Resource release: It releases resources allocated during the
         device_probe callback and restores the device to its pre-probe state.
      
      Step 1 is challenging for individual iommu drivers because each must check
      if a domain is already attached to the device. Additionally, if a deferred
      attach never occurred, the device_release should avoid modifying hardware
      configuration regardless of the reason for its call.
      
      To simplify this process, introduce a static release_domain within the
      iommu_ops structure. It can be either a blocking or identity domain
      depending on the iommu hardware. The iommu core will decide whether to
      attach this domain before the device_release callback, eliminating the
      need for repetitive code in various drivers.
      
      Consequently, the device_release callback can focus solely on the opposite
      operations of device_probe, including releasing all resources allocated
      during that callback.
      Co-developed-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
      Signed-off-by: default avatarLu Baolu <baolu.lu@linux.intel.com>
      Reviewed-by: default avatarKevin Tian <kevin.tian@intel.com>
      Link: https://lore.kernel.org/r/20240305013305.204605-2-baolu.lu@linux.intel.comSigned-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      0061ffe2
    • Ethan Zhao's avatar
      iommu/vt-d: Improve ITE fault handling if target device isn't present · 80a9b50c
      Ethan Zhao authored
      Because surprise removal could happen anytime, e.g. user could request safe
      removal to EP(endpoint device) via sysfs and brings its link down to do
      surprise removal cocurrently. such aggressive cases would cause ATS
      invalidation request issued to non-existence target device, then deadly
      loop to retry that request after ITE fault triggered in interrupt context.
      this patch aims to optimize the ITE handling by checking the target device
      presence state to avoid retrying the timeout request blindly, thus avoid
      hard lockup or system hang.
      
      Devices TLB should only be invalidated when devices are in the
      iommu->device_rbtree (probed, not released) and present.
      
      Fixes: 6ba6c3a4 ("VT-d: add device IOTLB invalidation support")
      Reviewed-by: default avatarDan Carpenter <dan.carpenter@linaro.org>
      Signed-off-by: default avatarEthan Zhao <haifeng.zhao@linux.intel.com>
      Link: https://lore.kernel.org/r/20240301080727.3529832-4-haifeng.zhao@linux.intel.comSigned-off-by: default avatarLu Baolu <baolu.lu@linux.intel.com>
      Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      80a9b50c
    • Ethan Zhao's avatar
      iommu/vt-d: Don't issue ATS Invalidation request when device is disconnected · 4fc82cd9
      Ethan Zhao authored
      For those endpoint devices connect to system via hotplug capable ports,
      users could request a hot reset to the device by flapping device's link
      through setting the slot's link control register, as pciehp_ist() DLLSC
      interrupt sequence response, pciehp will unload the device driver and
      then power it off. thus cause an IOMMU device-TLB invalidation (Intel
      VT-d spec, or ATS Invalidation in PCIe spec r6.1) request for non-existence
      target device to be sent and deadly loop to retry that request after ITE
      fault triggered in interrupt context.
      
      That would cause following continuous hard lockup warning and system hang
      
      [ 4211.433662] pcieport 0000:17:01.0: pciehp: Slot(108): Link Down
      [ 4211.433664] pcieport 0000:17:01.0: pciehp: Slot(108): Card not present
      [ 4223.822591] NMI watchdog: Watchdog detected hard LOCKUP on cpu 144
      [ 4223.822622] CPU: 144 PID: 1422 Comm: irq/57-pciehp Kdump: loaded Tainted: G S
               OE    kernel version xxxx
      [ 4223.822623] Hardware name: vendorname xxxx 666-106,
      BIOS 01.01.02.03.01 05/15/2023
      [ 4223.822623] RIP: 0010:qi_submit_sync+0x2c0/0x490
      [ 4223.822624] Code: 48 be 00 00 00 00 00 08 00 00 49 85 74 24 20 0f 95 c1 48 8b
       57 10 83 c1 04 83 3c 1a 03 0f 84 a2 01 00 00 49 8b 04 24 8b 70 34 <40> f6 c6 1
      0 74 17 49 8b 04 24 8b 80 80 00 00 00 89 c2 d3 fa 41 39
      [ 4223.822624] RSP: 0018:ffffc4f074f0bbb8 EFLAGS: 00000093
      [ 4223.822625] RAX: ffffc4f040059000 RBX: 0000000000000014 RCX: 0000000000000005
      [ 4223.822625] RDX: ffff9f3841315800 RSI: 0000000000000000 RDI: ffff9f38401a8340
      [ 4223.822625] RBP: ffff9f38401a8340 R08: ffffc4f074f0bc00 R09: 0000000000000000
      [ 4223.822626] R10: 0000000000000010 R11: 0000000000000018 R12: ffff9f384005e200
      [ 4223.822626] R13: 0000000000000004 R14: 0000000000000046 R15: 0000000000000004
      [ 4223.822626] FS:  0000000000000000(0000) GS:ffffa237ae400000(0000)
      knlGS:0000000000000000
      [ 4223.822627] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [ 4223.822627] CR2: 00007ffe86515d80 CR3: 000002fd3000a001 CR4: 0000000000770ee0
      [ 4223.822627] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      [ 4223.822628] DR3: 0000000000000000 DR6: 00000000fffe07f0 DR7: 0000000000000400
      [ 4223.822628] PKRU: 55555554
      [ 4223.822628] Call Trace:
      [ 4223.822628]  qi_flush_dev_iotlb+0xb1/0xd0
      [ 4223.822628]  __dmar_remove_one_dev_info+0x224/0x250
      [ 4223.822629]  dmar_remove_one_dev_info+0x3e/0x50
      [ 4223.822629]  intel_iommu_release_device+0x1f/0x30
      [ 4223.822629]  iommu_release_device+0x33/0x60
      [ 4223.822629]  iommu_bus_notifier+0x7f/0x90
      [ 4223.822630]  blocking_notifier_call_chain+0x60/0x90
      [ 4223.822630]  device_del+0x2e5/0x420
      [ 4223.822630]  pci_remove_bus_device+0x70/0x110
      [ 4223.822630]  pciehp_unconfigure_device+0x7c/0x130
      [ 4223.822631]  pciehp_disable_slot+0x6b/0x100
      [ 4223.822631]  pciehp_handle_presence_or_link_change+0xd8/0x320
      [ 4223.822631]  pciehp_ist+0x176/0x180
      [ 4223.822631]  ? irq_finalize_oneshot.part.50+0x110/0x110
      [ 4223.822632]  irq_thread_fn+0x19/0x50
      [ 4223.822632]  irq_thread+0x104/0x190
      [ 4223.822632]  ? irq_forced_thread_fn+0x90/0x90
      [ 4223.822632]  ? irq_thread_check_affinity+0xe0/0xe0
      [ 4223.822633]  kthread+0x114/0x130
      [ 4223.822633]  ? __kthread_cancel_work+0x40/0x40
      [ 4223.822633]  ret_from_fork+0x1f/0x30
      [ 4223.822633] Kernel panic - not syncing: Hard LOCKUP
      [ 4223.822634] CPU: 144 PID: 1422 Comm: irq/57-pciehp Kdump: loaded Tainted: G S
               OE     kernel version xxxx
      [ 4223.822634] Hardware name: vendorname xxxx 666-106,
      BIOS 01.01.02.03.01 05/15/2023
      [ 4223.822634] Call Trace:
      [ 4223.822634]  <NMI>
      [ 4223.822635]  dump_stack+0x6d/0x88
      [ 4223.822635]  panic+0x101/0x2d0
      [ 4223.822635]  ? ret_from_fork+0x11/0x30
      [ 4223.822635]  nmi_panic.cold.14+0xc/0xc
      [ 4223.822636]  watchdog_overflow_callback.cold.8+0x6d/0x81
      [ 4223.822636]  __perf_event_overflow+0x4f/0xf0
      [ 4223.822636]  handle_pmi_common+0x1ef/0x290
      [ 4223.822636]  ? __set_pte_vaddr+0x28/0x40
      [ 4223.822637]  ? flush_tlb_one_kernel+0xa/0x20
      [ 4223.822637]  ? __native_set_fixmap+0x24/0x30
      [ 4223.822637]  ? ghes_copy_tofrom_phys+0x70/0x100
      [ 4223.822637]  ? __ghes_peek_estatus.isra.16+0x49/0xa0
      [ 4223.822637]  intel_pmu_handle_irq+0xba/0x2b0
      [ 4223.822638]  perf_event_nmi_handler+0x24/0x40
      [ 4223.822638]  nmi_handle+0x4d/0xf0
      [ 4223.822638]  default_do_nmi+0x49/0x100
      [ 4223.822638]  exc_nmi+0x134/0x180
      [ 4223.822639]  end_repeat_nmi+0x16/0x67
      [ 4223.822639] RIP: 0010:qi_submit_sync+0x2c0/0x490
      [ 4223.822639] Code: 48 be 00 00 00 00 00 08 00 00 49 85 74 24 20 0f 95 c1 48 8b
       57 10 83 c1 04 83 3c 1a 03 0f 84 a2 01 00 00 49 8b 04 24 8b 70 34 <40> f6 c6 10
       74 17 49 8b 04 24 8b 80 80 00 00 00 89 c2 d3 fa 41 39
      [ 4223.822640] RSP: 0018:ffffc4f074f0bbb8 EFLAGS: 00000093
      [ 4223.822640] RAX: ffffc4f040059000 RBX: 0000000000000014 RCX: 0000000000000005
      [ 4223.822640] RDX: ffff9f3841315800 RSI: 0000000000000000 RDI: ffff9f38401a8340
      [ 4223.822641] RBP: ffff9f38401a8340 R08: ffffc4f074f0bc00 R09: 0000000000000000
      [ 4223.822641] R10: 0000000000000010 R11: 0000000000000018 R12: ffff9f384005e200
      [ 4223.822641] R13: 0000000000000004 R14: 0000000000000046 R15: 0000000000000004
      [ 4223.822641]  ? qi_submit_sync+0x2c0/0x490
      [ 4223.822642]  ? qi_submit_sync+0x2c0/0x490
      [ 4223.822642]  </NMI>
      [ 4223.822642]  qi_flush_dev_iotlb+0xb1/0xd0
      [ 4223.822642]  __dmar_remove_one_dev_info+0x224/0x250
      [ 4223.822643]  dmar_remove_one_dev_info+0x3e/0x50
      [ 4223.822643]  intel_iommu_release_device+0x1f/0x30
      [ 4223.822643]  iommu_release_device+0x33/0x60
      [ 4223.822643]  iommu_bus_notifier+0x7f/0x90
      [ 4223.822644]  blocking_notifier_call_chain+0x60/0x90
      [ 4223.822644]  device_del+0x2e5/0x420
      [ 4223.822644]  pci_remove_bus_device+0x70/0x110
      [ 4223.822644]  pciehp_unconfigure_device+0x7c/0x130
      [ 4223.822644]  pciehp_disable_slot+0x6b/0x100
      [ 4223.822645]  pciehp_handle_presence_or_link_change+0xd8/0x320
      [ 4223.822645]  pciehp_ist+0x176/0x180
      [ 4223.822645]  ? irq_finalize_oneshot.part.50+0x110/0x110
      [ 4223.822645]  irq_thread_fn+0x19/0x50
      [ 4223.822646]  irq_thread+0x104/0x190
      [ 4223.822646]  ? irq_forced_thread_fn+0x90/0x90
      [ 4223.822646]  ? irq_thread_check_affinity+0xe0/0xe0
      [ 4223.822646]  kthread+0x114/0x130
      [ 4223.822647]  ? __kthread_cancel_work+0x40/0x40
      [ 4223.822647]  ret_from_fork+0x1f/0x30
      [ 4223.822647] Kernel Offset: 0x6400000 from 0xffffffff81000000 (relocation
      range: 0xffffffff80000000-0xffffffffbfffffff)
      
      Such issue could be triggered by all kinds of regular surprise removal
      hotplug operation. like:
      
      1. pull EP(endpoint device) out directly.
      2. turn off EP's power.
      3. bring the link down.
      etc.
      
      this patch aims to work for regular safe removal and surprise removal
      unplug. these hot unplug handling process could be optimized for fix the
      ATS Invalidation hang issue by calling pci_dev_is_disconnected() in
      function devtlb_invalidation_with_pasid() to check target device state to
      avoid sending meaningless ATS Invalidation request to iommu when device is
      gone. (see IMPLEMENTATION NOTE in PCIe spec r6.1 section 10.3.1)
      
      For safe removal, device wouldn't be removed until the whole software
      handling process is done, it wouldn't trigger the hard lock up issue
      caused by too long ATS Invalidation timeout wait. In safe removal path,
      device state isn't set to pci_channel_io_perm_failure in
      pciehp_unconfigure_device() by checking 'presence' parameter, calling
      pci_dev_is_disconnected() in devtlb_invalidation_with_pasid() will return
      false there, wouldn't break the function.
      
      For surprise removal, device state is set to pci_channel_io_perm_failure in
      pciehp_unconfigure_device(), means device is already gone (disconnected)
      call pci_dev_is_disconnected() in devtlb_invalidation_with_pasid() will
      return true to break the function not to send ATS Invalidation request to
      the disconnected device blindly, thus avoid to trigger further ITE fault,
      and ITE fault will block all invalidation request to be handled.
      furthermore retry the timeout request could trigger hard lockup.
      
      safe removal (present) & surprise removal (not present)
      
      pciehp_ist()
         pciehp_handle_presence_or_link_change()
           pciehp_disable_slot()
             remove_board()
               pciehp_unconfigure_device(presence) {
                 if (!presence)
                      pci_walk_bus(parent, pci_dev_set_disconnected, NULL);
                 }
      
      this patch works for regular safe removal and surprise removal of ATS
      capable endpoint on PCIe switch downstream ports.
      
      Fixes: 6f7db75e ("iommu/vt-d: Add second level page table interface")
      Reviewed-by: default avatarDan Carpenter <dan.carpenter@linaro.org>
      Tested-by: default avatarHaorong Ye <yehaorong@bytedance.com>
      Signed-off-by: default avatarEthan Zhao <haifeng.zhao@linux.intel.com>
      Link: https://lore.kernel.org/r/20240301080727.3529832-3-haifeng.zhao@linux.intel.comSigned-off-by: default avatarLu Baolu <baolu.lu@linux.intel.com>
      Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      4fc82cd9
    • Ethan Zhao's avatar
      PCI: Make pci_dev_is_disconnected() helper public for other drivers · 39714fd7
      Ethan Zhao authored
      Make pci_dev_is_disconnected() public so that it can be called from
      Intel VT-d driver to quickly fix/workaround the surprise removal
      unplug hang issue for those ATS capable devices on PCIe switch downstream
      hotplug capable ports.
      
      Beside pci_device_is_present() function, this one has no config space
      space access, so is light enough to optimize the normal pure surprise
      removal and safe removal flow.
      Acked-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      Reviewed-by: default avatarDan Carpenter <dan.carpenter@linaro.org>
      Tested-by: default avatarHaorong Ye <yehaorong@bytedance.com>
      Signed-off-by: default avatarEthan Zhao <haifeng.zhao@linux.intel.com>
      Link: https://lore.kernel.org/r/20240301080727.3529832-2-haifeng.zhao@linux.intel.comSigned-off-by: default avatarLu Baolu <baolu.lu@linux.intel.com>
      Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      39714fd7
  3. 03 Mar, 2024 5 commits
    • Linus Torvalds's avatar
      Linux 6.8-rc7 · 90d35da6
      Linus Torvalds authored
      90d35da6
    • Linus Torvalds's avatar
      Merge tag 'phy-fixes2-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy · 58c806d8
      Linus Torvalds authored
      Pull phy fixes from Vinod Koul:
      
        - qcom: m31 pointer err fix, eusb2 fix redundant zero-out loop and v3
          offset fix on qmp-usb
      
        - freescale: fix for dphy alias
      
      * tag 'phy-fixes2-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy:
        phy: qcom-qmp-usb: fix v3 offsets data
        phy: qualcomm: eusb2-repeater: Rework init to drop redundant zero-out loop
        phy: qcom: phy-qcom-m31: fix wrong pointer pass to PTR_ERR()
        phy: freescale: phy-fsl-imx8-mipi-dphy: Fix alias name to use dashes
      58c806d8
    • Linus Torvalds's avatar
      Merge tag 'dmaengine-fix2-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine · d57dd2d2
      Linus Torvalds authored
      Pull dmaengine fixes from Vinod Koul:
      
       - dw-edma fixes to improve driver and remote HDMA setup
      
       - fsl-edma fixes for SoC hange, irq init and byte calculations and
         sparse fixes
      
       - idxd: safe user copy of completion record fix
      
       - ptdma: consistent DMA mask fix
      
      * tag 'dmaengine-fix2-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine:
        dmaengine: ptdma: use consistent DMA masks
        dmaengine: fsl-qdma: add __iomem and struct in union to fix sparse warning
        dmaengine: idxd: Ensure safe user copy of completion record
        dmaengine: fsl-edma: correct max_segment_size setting
        dmaengine: idxd: Remove shadow Event Log head stored in idxd
        dmaengine: fsl-edma: correct calculation of 'nbytes' in multi-fifo scenario
        dmaengine: fsl-qdma: init irq after reg initialization
        dmaengine: fsl-qdma: fix SoC may hang on 16 byte unaligned read
        dmaengine: dw-edma: eDMA: Add sync read before starting the DMA transfer in remote setup
        dmaengine: dw-edma: HDMA: Add sync read before starting the DMA transfer in remote setup
        dmaengine: dw-edma: Add HDMA remote interrupt configuration
        dmaengine: dw-edma: HDMA_V0_REMOTEL_STOP_INT_EN typo fix
        dmaengine: dw-edma: Fix wrong interrupt bit set for HDMA
        dmaengine: dw-edma: Fix the ch_count hdma callback
      d57dd2d2
    • Linus Torvalds's avatar
      Merge tag 'powerpc-6.8-5' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · e4f79000
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
      
       - Fix IOMMU table initialisation when doing kdump over SR-IOV
      
       - Fix incorrect RTAS function name for resetting TCE tables
      
       - Fix fpu_signal selftest failures since a recent change
      
      Thanks to Gaurav Batra and Nathan Lynch.
      
      * tag 'powerpc-6.8-5' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        selftests/powerpc: Fix fpu_signal failures
        powerpc/rtas: use correct function name for resetting TCE tables
        powerpc/pseries/iommu: IOMMU table is not initialized for kdump over SR-IOV
      e4f79000
    • Linus Torvalds's avatar
      Merge tag 'x86_urgent_for_v6.8_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 73d35f83
      Linus Torvalds authored
      Pull x86 fixes from Borislav Petkov:
      
       - Do not reserve SETUP_RNG_SEED setup data in the e820 map as it should
         be used by kexec only
      
       - Make sure MKTME feature detection happens at an earlier time in the
         boot process so that the physical address size supported by the CPU
         is properly corrected and MTRR masks are programmed properly, leading
         to TDX systems booting without disable_mtrr_cleanup on the cmdline
      
       - Make sure the different address sizes supported by the CPU are read
         out as early as possible
      
      * tag 'x86_urgent_for_v6.8_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/e820: Don't reserve SETUP_RNG_SEED in e820
        x86/cpu/intel: Detect TME keyid bits before setting MTRR mask registers
        x86/cpu: Allow reducing x86_phys_bits during early_identify_cpu()
      73d35f83
  4. 02 Mar, 2024 8 commits
  5. 01 Mar, 2024 15 commits