1. 07 May, 2021 20 commits
  2. 05 May, 2021 1 commit
  3. 03 May, 2021 9 commits
  4. 02 May, 2021 4 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.13-ofs-1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux · 9ccce092
      Linus Torvalds authored
      Pull orangefs updates from Mike Marshall:
       "orangefs: implement orangefs_readahead
      
        mm/readahead.c/read_pages was quite a bit different back when I put my
        open-coded readahead logic into orangefs_readpage. That logic seemed
        to work as designed back then, it is a trainwreck now.
      
        This implements orangefs_readahead using the new xarray and
        readahead_expand features and removes all my open-coded readahead
        logic.
      
        This results in an extreme read performance improvement, these sample
        numbers are from my test VM:
      
        Here's an example of what's upstream in
        5.11.8-200.fc33.x86_64:
      
           30+0 records in
           30+0 records out
           125829120 bytes (126 MB, 120 MiB) copied, 5.77943 s, 21.8 MB/s
      
        And here's this version of orangefs_readahead on top of 5.12.0-rc4:
      
           30+0 records in
           30+0 records out
           125829120 bytes (126 MB, 120 MiB) copied, 0.325919 s, 386 MB/s
      
        There are four xfstest regressions with this patch. David Howells and
        Matthew Wilcox have been helping me work with this code"
      
      * tag 'for-linus-5.13-ofs-1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux:
        orangefs: leave files in the page cache for a few micro seconds at least
        Orangef: implement orangefs_readahead.
      9ccce092
    • Linus Torvalds's avatar
      Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 27787ba3
      Linus Torvalds authored
      Pull misc vfs updates from Al Viro:
       "Assorted stuff all over the place"
      
      * 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        useful constants: struct qstr for ".."
        hostfs_open(): don't open-code file_dentry()
        whack-a-mole: kill strlen_user() (again)
        autofs: should_expire() argument is guaranteed to be positive
        apparmor:match_mn() - constify devpath argument
        buffer: a small optimization in grow_buffers
        get rid of autofs_getpath()
        constify dentry argument of dentry_path()/dentry_path_raw()
      27787ba3
    • Linus Torvalds's avatar
      Merge branch 'work.ecryptfs' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · b28866f4
      Linus Torvalds authored
      Pull exryptfs updates from Al Viro:
       "The interesting part here is (ecryptfs) lock_parent() fixes - its
        treatment of ->d_parent had been very wrong.
      
        The rest is trivial cleanups"
      
      * 'work.ecryptfs' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        ecryptfs: ecryptfs_dentry_info->crypt_stat is never used
        ecryptfs: get rid of unused accessors
        ecryptfs: saner API for lock_parent()
        ecryptfs: get rid of pointless dget/dput in ->symlink() and ->link()
      b28866f4
    • Linus Torvalds's avatar
      Merge tag 'landlock_v34' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · 17ae69ab
      Linus Torvalds authored
      Pull Landlock LSM from James Morris:
       "Add Landlock, a new LSM from Mickaël Salaün.
      
        Briefly, Landlock provides for unprivileged application sandboxing.
      
        From Mickaël's cover letter:
          "The goal of Landlock is to enable to restrict ambient rights (e.g.
           global filesystem access) for a set of processes. Because Landlock
           is a stackable LSM [1], it makes possible to create safe security
           sandboxes as new security layers in addition to the existing
           system-wide access-controls. This kind of sandbox is expected to
           help mitigate the security impact of bugs or unexpected/malicious
           behaviors in user-space applications. Landlock empowers any
           process, including unprivileged ones, to securely restrict
           themselves.
      
           Landlock is inspired by seccomp-bpf but instead of filtering
           syscalls and their raw arguments, a Landlock rule can restrict the
           use of kernel objects like file hierarchies, according to the
           kernel semantic. Landlock also takes inspiration from other OS
           sandbox mechanisms: XNU Sandbox, FreeBSD Capsicum or OpenBSD
           Pledge/Unveil.
      
           In this current form, Landlock misses some access-control features.
           This enables to minimize this patch series and ease review. This
           series still addresses multiple use cases, especially with the
           combined use of seccomp-bpf: applications with built-in sandboxing,
           init systems, security sandbox tools and security-oriented APIs [2]"
      
        The cover letter and v34 posting is here:
      
            https://lore.kernel.org/linux-security-module/20210422154123.13086-1-mic@digikod.net/
      
        See also:
      
            https://landlock.io/
      
        This code has had extensive design discussion and review over several
        years"
      
      Link: https://lore.kernel.org/lkml/50db058a-7dde-441b-a7f9-f6837fe8b69f@schaufler-ca.com/ [1]
      Link: https://lore.kernel.org/lkml/f646e1c7-33cf-333f-070c-0a40ad0468cd@digikod.net/ [2]
      
      * tag 'landlock_v34' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        landlock: Enable user space to infer supported features
        landlock: Add user and kernel documentation
        samples/landlock: Add a sandbox manager example
        selftests/landlock: Add user space tests
        landlock: Add syscall implementations
        arch: Wire up Landlock syscalls
        fs,security: Add sb_delete hook
        landlock: Support filesystem access-control
        LSM: Infrastructure management of the superblock
        landlock: Add ptrace restrictions
        landlock: Set up the security framework and manage credentials
        landlock: Add ruleset and domain management
        landlock: Add object management
      17ae69ab
  5. 01 May, 2021 6 commits
    • Linus Torvalds's avatar
      Merge tag 'integrity-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity · e6f0bf09
      Linus Torvalds authored
      Pull IMA updates from Mimi Zohar:
       "In addition to loading the kernel module signing key onto the builtin
        keyring, load it onto the IMA keyring as well.
      
        Also six trivial changes and bug fixes"
      
      * tag 'integrity-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity:
        ima: ensure IMA_APPRAISE_MODSIG has necessary dependencies
        ima: Fix fall-through warnings for Clang
        integrity: Add declarations to init_once void arguments.
        ima: Fix function name error in comment.
        ima: enable loading of build time generated key on .ima keyring
        ima: enable signing of modules with build time generated key
        keys: cleanup build time module signing keys
        ima: Fix the error code for restoring the PCR value
        ima: without an IMA policy loaded, return quickly
      e6f0bf09
    • Linus Torvalds's avatar
      Merge tag 'perf-tools-for-v5.13-2021-04-29' of... · 10a3efd0
      Linus Torvalds authored
      Merge tag 'perf-tools-for-v5.13-2021-04-29' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux
      
      Pull perf tool updates from Arnaldo Carvalho de Melo:
       "perf stat:
      
         - Add support for hybrid PMUs to support systems such as Intel
           Alderlake and its BIG/little core/atom cpus.
      
         - Introduce 'bperf' to share hardware PMCs with BPF.
      
         - New --iostat option to collect and present IO stats on Intel
           hardware.
      
           This functionality is based on recently introduced sysfs attributes
           for Intel® Xeon® Scalable processor family (code name Skylake-SP)
           in commit bb42b3d3 ("perf/x86/intel/uncore: Expose an Uncore
           unit to IIO PMON mapping")
      
           It is intended to provide four I/O performance metrics in MB per
           each PCIe root port:
      
             - Inbound Read: I/O devices below root port read from the host memory
             - Inbound Write: I/O devices below root port write to the host memory
             - Outbound Read: CPU reads from I/O devices below root port
             - Outbound Write: CPU writes to I/O devices below root port
      
         - Align CSV output for summary.
      
         - Clarify --null use cases: Assess raw overhead of 'perf stat' or
           measure just wall clock time.
      
         - Improve readability of shadow stats.
      
        perf record:
      
         - Change the COMM when starting tha workload so that --exclude-perf
           doesn't seem to be not honoured.
      
         - Improve 'Workload failed' message printing events + what was
           exec'ed.
      
         - Fix cross-arch support for TIME_CONV.
      
        perf report:
      
         - Add option to disable raw event ordering.
      
         - Dump the contents of PERF_RECORD_TIME_CONV in 'perf report -D'.
      
         - Improvements to --stat output, that shows information about
           PERF_RECORD_ events.
      
         - Preserve identifier id in OCaml demangler.
      
        perf annotate:
      
         - Show full source location with 'l' hotkey in the 'perf annotate'
           TUI.
      
         - Add line number like in TUI and source location at EOL to the 'perf
           annotate' --stdio mode.
      
         - Add --demangle and --demangle-kernel to 'perf annotate'.
      
         - Allow configuring annotate.demangle{,_kernel} in 'perf config'.
      
         - Fix sample events lost in stdio mode.
      
        perf data:
      
         - Allow converting a perf.data file to JSON.
      
        libperf:
      
         - Add support for user space counter access.
      
         - Update topdown documentation to permit rdpmc calls.
      
        perf test:
      
         - Add 'perf test' for 'perf stat' CSV output.
      
         - Add 'perf test' entries to test the hybrid PMU support.
      
         - Cleanup 'perf test daemon' if its 'perf test' is interrupted.
      
         - Handle metric reuse in pmu-events parsing 'perf test' entry.
      
         - Add test for PE executable support.
      
         - Add timeout for wait for daemon start in its 'perf test' entries.
      
        Build:
      
         - Enable libtraceevent dynamic linking.
      
         - Improve feature detection output.
      
         - Fix caching of feature checks caching.
      
         - First round of updates for tools copies of kernel headers.
      
         - Enable warnings when compiling BPF programs.
      
        Vendor specific events:
      
         - Intel:
            - Add missing skylake & icelake model numbers.
      
         - arm64:
            - Add Hisi hip08 L1, L2 and L3 metrics.
            - Add Fujitsu A64FX PMU events.
      
         - PowerPC:
            - Initial JSON/events list for power10 platform.
            - Remove unsupported power9 metrics.
      
         - AMD:
            - Add Zen3 events.
            - Fix broken L2 Cache Hits from L2 HWPF metric.
            - Use lowercases for all the eventcodes and umasks.
      
        Hardware tracing:
      
         - arm64:
            - Update CoreSight ETM metadata format.
            - Fix bitmap for CS-ETM option.
            - Support PID tracing in config.
            - Detect pid in VMID for kernel running at EL2.
      
        Arch specific updates:
      
         - MIPS:
            - Support MIPS unwinding and dwarf-regs.
            - Generate mips syscalls_n64.c syscall table.
      
         - PowerPC:
            - Add support for PERF_SAMPLE_WEIGH_STRUCT on PowerPC.
            - Support pipeline stage cycles for powerpc.
      
        libbeauty:
      
         - Fix fsconfig generator"
      
      * tag 'perf-tools-for-v5.13-2021-04-29' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux: (132 commits)
        perf build: Defer printing detected features to the end of all feature checks
        tools build: Allow deferring printing the results of feature detection
        perf build: Regenerate the FEATURE_DUMP file after extra feature checks
        perf session: Dump PERF_RECORD_TIME_CONV event
        perf session: Add swap operation for event TIME_CONV
        perf jit: Let convert_timestamp() to be backwards-compatible
        perf tools: Change fields type in perf_record_time_conv
        perf tools: Enable libtraceevent dynamic linking
        perf Documentation: Document intel-hybrid support
        perf tests: Skip 'perf stat metrics (shadow stat) test' for hybrid
        perf tests: Support 'Convert perf time to TSC' test for hybrid
        perf tests: Support 'Session topology' test for hybrid
        perf tests: Support 'Parse and process metrics' test for hybrid
        perf tests: Support 'Track with sched_switch' test for hybrid
        perf tests: Skip 'Setup struct perf_event_attr' test for hybrid
        perf tests: Add hybrid cases for 'Roundtrip evsel->name' test
        perf tests: Add hybrid cases for 'Parse event definition strings' test
        perf record: Uniquify hybrid event name
        perf stat: Warn group events from different hybrid PMU
        perf stat: Filter out unmatched aggregation for hybrid event
        ...
      10a3efd0
    • David Howells's avatar
      afs: Fix speculative status fetches · 22650f14
      David Howells authored
      The generic/464 xfstest causes kAFS to emit occasional warnings of the
      form:
      
              kAFS: vnode modified {100055:8a} 30->31 YFS.StoreData64 (c=6015)
      
      This indicates that the data version received back from the server did not
      match the expected value (the DV should be incremented monotonically for
      each individual modification op committed to a vnode).
      
      What is happening is that a lookup call is doing a bulk status fetch
      speculatively on a bunch of vnodes in a directory besides getting the
      status of the vnode it's actually interested in.  This is racing with a
      StoreData operation (though it could also occur with, say, a MakeDir op).
      
      On the client, a modification operation locks the vnode, but the bulk
      status fetch only locks the parent directory, so no ordering is imposed
      there (thereby avoiding an avenue to deadlock).
      
      On the server, the StoreData op handler doesn't lock the vnode until it's
      received all the request data, and downgrades the lock after committing the
      data until it has finished sending change notifications to other clients -
      which allows the status fetch to occur before it has finished.
      
      This means that:
      
       - a status fetch can access the target vnode either side of the exclusive
         section of the modification
      
       - the status fetch could start before the modification, yet finish after,
         and vice-versa.
      
       - the status fetch and the modification RPCs can complete in either order.
      
       - the status fetch can return either the before or the after DV from the
         modification.
      
       - the status fetch might regress the locally cached DV.
      
      Some of these are handled by the previous fix[1], but that's not sufficient
      because it checks the DV it received against the DV it cached at the start
      of the op, but the DV might've been updated in the meantime by a locally
      generated modification op.
      
      Fix this by the following means:
      
       (1) Keep track of when we're performing a modification operation on a
           vnode.  This is done by marking vnode parameters with a 'modification'
           note that causes the AFS_VNODE_MODIFYING flag to be set on the vnode
           for the duration.
      
       (2) Alter the speculation race detection to ignore speculative status
           fetches if either the vnode is marked as being modified or the data
           version number is not what we expected.
      
      Note that whilst the "vnode modified" warning does get recovered from as it
      causes the client to refetch the status at the next opportunity, it will
      also invalidate the pagecache, so changes might get lost.
      
      Fixes: a9e5c87c ("afs: Fix speculative status fetch going out of order wrt to modifications")
      Reported-by: default avatarMarc Dionne <marc.dionne@auristor.com>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Tested-and-reviewed-by: default avatarMarc Dionne <marc.dionne@auristor.com>
      cc: linux-afs@lists.infradead.org
      Link: https://lore.kernel.org/r/160605082531.252452.14708077925602709042.stgit@warthog.procyon.org.uk/ [1]
      Link: https://lore.kernel.org/linux-fsdevel/161961335926.39335.2552653972195467566.stgit@warthog.procyon.org.uk/ # v1
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      22650f14
    • Linus Torvalds's avatar
      Merge tag 'for-5.13/dm-changes' of... · 7af81cd0
      Linus Torvalds authored
      Merge tag 'for-5.13/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull device mapper updates from Mike Snitzer:
      
       - Improve scalability of DM's device hash by switching to rbtree
      
       - Extend DM ioctl's DM_LIST_DEVICES_CMD handling to include UUID and
         allow filtering based on name or UUID prefix.
      
       - Various small fixes for typos, warnings, unused function, or
         needlessly exported interfaces.
      
       - Remove needless request_queue NULL pointer checks in DM thin and
         cache targets.
      
       - Remove unnecessary loop in DM core's __split_and_process_bio().
      
       - Remove DM core's dm_vcalloc() and just use kvcalloc or kvmalloc_array
         instead (depending whether zeroing is useful).
      
       - Fix request-based DM's double free of blk_mq_tag_set in device remove
         after table load fails.
      
       - Improve DM persistent data performance on non-x86 by fixing packed
         structs to have a stated alignment. Also remove needless extra work
         from redundant calls to sm_disk_get_nr_free() and a paranoid BUG_ON()
         that caused duplicate checksum calculation.
      
       - Fix missing goto in DM integrity's bitmap_flush_interval error
         handling.
      
       - Add "reset_recalculate" feature flag to DM integrity.
      
       - Improve DM integrity by leveraging discard support to avoid needless
         re-writing of metadata and also use discard support to improve hash
         recalculation.
      
       - Fix race with DM raid target's reshape and MD raid4/5/6 resync that
         resulted in inconsistant reshape state during table reloads.
      
       - Update DM raid target to temove unnecessary discard limits for raid0
         and raid10 now that MD has optimized discard handling for both raid
         levels.
      
      * tag 'for-5.13/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm: (26 commits)
        dm raid: remove unnecessary discard limits for raid0 and raid10
        dm rq: fix double free of blk_mq_tag_set in dev remove after table load fails
        dm integrity: use discard support when recalculating
        dm integrity: increase RECALC_SECTORS to improve recalculate speed
        dm integrity: don't re-write metadata if discarding same blocks
        dm raid: fix inconclusive reshape layout on fast raid4/5/6 table reload sequences
        dm raid: fix fall-through warning in rs_check_takeover() for Clang
        dm clone metadata: remove unused function
        dm integrity: fix missing goto in bitmap_flush_interval error handling
        dm: replace dm_vcalloc()
        dm space map common: fix division bug in sm_ll_find_free_block()
        dm persistent data: packed struct should have an aligned() attribute too
        dm btree spine: remove paranoid node_check call in node_prep_for_write()
        dm space map disk: remove redundant calls to sm_disk_get_nr_free()
        dm integrity: add the "reset_recalculate" feature flag
        dm persistent data: remove unused return from exit_shadow_spine()
        dm cache: remove needless request_queue NULL pointer checks
        dm thin: remove needless request_queue NULL pointer check
        dm: unexport dm_{get,put}_table_device
        dm ebs: fix a few typos
        ...
      7af81cd0
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 152d32aa
      Linus Torvalds authored
      Pull kvm updates from Paolo Bonzini:
       "This is a large update by KVM standards, including AMD PSP (Platform
        Security Processor, aka "AMD Secure Technology") and ARM CoreSight
        (debug and trace) changes.
      
        ARM:
      
         - CoreSight: Add support for ETE and TRBE
      
         - Stage-2 isolation for the host kernel when running in protected
           mode
      
         - Guest SVE support when running in nVHE mode
      
         - Force W^X hypervisor mappings in nVHE mode
      
         - ITS save/restore for guests using direct injection with GICv4.1
      
         - nVHE panics now produce readable backtraces
      
         - Guest support for PTP using the ptp_kvm driver
      
         - Performance improvements in the S2 fault handler
      
        x86:
      
         - AMD PSP driver changes
      
         - Optimizations and cleanup of nested SVM code
      
         - AMD: Support for virtual SPEC_CTRL
      
         - Optimizations of the new MMU code: fast invalidation, zap under
           read lock, enable/disably dirty page logging under read lock
      
         - /dev/kvm API for AMD SEV live migration (guest API coming soon)
      
         - support SEV virtual machines sharing the same encryption context
      
         - support SGX in virtual machines
      
         - add a few more statistics
      
         - improved directed yield heuristics
      
         - Lots and lots of cleanups
      
        Generic:
      
         - Rework of MMU notifier interface, simplifying and optimizing the
           architecture-specific code
      
         - a handful of "Get rid of oprofile leftovers" patches
      
         - Some selftests improvements"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (379 commits)
        KVM: selftests: Speed up set_memory_region_test
        selftests: kvm: Fix the check of return value
        KVM: x86: Take advantage of kvm_arch_dy_has_pending_interrupt()
        KVM: SVM: Skip SEV cache flush if no ASIDs have been used
        KVM: SVM: Remove an unnecessary prototype declaration of sev_flush_asids()
        KVM: SVM: Drop redundant svm_sev_enabled() helper
        KVM: SVM: Move SEV VMCB tracking allocation to sev.c
        KVM: SVM: Explicitly check max SEV ASID during sev_hardware_setup()
        KVM: SVM: Unconditionally invoke sev_hardware_teardown()
        KVM: SVM: Enable SEV/SEV-ES functionality by default (when supported)
        KVM: SVM: Condition sev_enabled and sev_es_enabled on CONFIG_KVM_AMD_SEV=y
        KVM: SVM: Append "_enabled" to module-scoped SEV/SEV-ES control variables
        KVM: SEV: Mask CPUID[0x8000001F].eax according to supported features
        KVM: SVM: Move SEV module params/variables to sev.c
        KVM: SVM: Disable SEV/SEV-ES if NPT is disabled
        KVM: SVM: Free sev_asid_bitmap during init if SEV setup fails
        KVM: SVM: Zero out the VMCB array used to track SEV ASID association
        x86/sev: Drop redundant and potentially misleading 'sev_enabled'
        KVM: x86: Move reverse CPUID helpers to separate header file
        KVM: x86: Rename GPR accessors to make mode-aware variants the defaults
        ...
      152d32aa
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 4f970105
      Linus Torvalds authored
      Pull iommu updates from Joerg Roedel:
      
       - Big cleanup of almost unsused parts of the IOMMU API by Christoph
         Hellwig. This mostly affects the Freescale PAMU driver.
      
       - New IOMMU driver for Unisoc SOCs
      
       - ARM SMMU Updates from Will:
           - Drop vestigial PREFETCH_ADDR support (SMMUv3)
           - Elide TLB sync logic for empty gather (SMMUv3)
           - Fix "Service Failure Mode" handling (SMMUv3)
           - New Qualcomm compatible string (SMMUv2)
      
       - Removal of the AMD IOMMU performance counter writeable check on AMD.
         It caused long boot delays on some machines and is only needed to
         work around an errata on some older (possibly pre-production) chips.
         If someone is still hit by this hardware issue anyway the performance
         counters will just return 0.
      
       - Support for targeted invalidations in the AMD IOMMU driver. Before
         that the driver only invalidated a single 4k page or the whole IO/TLB
         for an address space. This has been extended now and is mostly useful
         for emulated AMD IOMMUs.
      
       - Several fixes for the Shared Virtual Memory support in the Intel VT-d
         driver
      
       - Mediatek drivers can now be built as modules
      
       - Re-introduction of the forcedac boot option which got lost when
         converting the Intel VT-d driver to the common dma-iommu
         implementation.
      
       - Extension of the IOMMU device registration interface and support
         iommu_ops to be const again when drivers are built as modules.
      
      * tag 'iommu-updates-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (84 commits)
        iommu: Streamline registration interface
        iommu: Statically set module owner
        iommu/mediatek-v1: Add error handle for mtk_iommu_probe
        iommu/mediatek-v1: Avoid build fail when build as module
        iommu/mediatek: Always enable the clk on resume
        iommu/fsl-pamu: Fix uninitialized variable warning
        iommu/vt-d: Force to flush iotlb before creating superpage
        iommu/amd: Put newline after closing bracket in warning
        iommu/vt-d: Fix an error handling path in 'intel_prepare_irq_remapping()'
        iommu/vt-d: Fix build error of pasid_enable_wpe() with !X86
        iommu/amd: Remove performance counter pre-initialization test
        Revert "iommu/amd: Fix performance counter initialization"
        iommu/amd: Remove duplicate check of devid
        iommu/exynos: Remove unneeded local variable initialization
        iommu/amd: Page-specific invalidations for more than one page
        iommu/arm-smmu-v3: Remove the unused fields for PREFETCH_CONFIG command
        iommu/vt-d: Avoid unnecessary cache flush in pasid entry teardown
        iommu/vt-d: Invalidate PASID cache when root/context entry changed
        iommu/vt-d: Remove WO permissions on second-level paging entries
        iommu/vt-d: Report the right page fault address
        ...
      4f970105