Skip to content
Permalink
Namjae-Jeon/ks…
Switch branches/tags

Commits on Feb 8, 2022

  1. ksmbd: fix racy issue from using ->d_parent and ->d_name

    Al pointed out that ksmbd has racy issue from using ->d_parent and ->d_name
    in ksmbd_vfs_unlink and smb2_vfs_rename(). and he suggested changing from
    the way it start with dget_parent(), which can cause retry loop and
    unexpected errors, to find the parent of child, lock it and then look for
    a child in locked directory.
    
    This patch introduce a new helper(vfs_path_parent_lookup()) to avoid
    out of share access and export vfs functions like the following ones to use
    vfs_path_parent_lookup() and filename_parentat().
     - __lookup_hash().
     - getname_kernel() and putname().
     - filename_parentat()
    
    Suggested-by: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
    namjaejeon authored and intel-lab-lkp committed Feb 8, 2022

Commits on Feb 7, 2022

  1. Merge tag '5.17-rc3-ksmbd-server-fixes' of git://git.samba.org/ksmbd

    Pull ksmbd server fixes from Steve French:
    
     - NTLMSSP authentication improvement
    
     - RDMA (smbdirect) fix allowing broader set of NICs to be supported
    
     - improved buffer validation
    
     - additional small fixes, including a posix extensions fix for stable
    
    * tag '5.17-rc3-ksmbd-server-fixes' of git://git.samba.org/ksmbd:
      ksmbd: add support for key exchange
      ksmbd: reduce smb direct max read/write size
      ksmbd: don't align last entry offset in smb2 query directory
      ksmbd: fix same UniqueId for dot and dotdot entries
      ksmbd: smbd: validate buffer descriptor structures
      ksmbd: fix SMB 3.11 posix extension mount failure
    torvalds committed Feb 7, 2022
  2. Merge tag 'ata-5.17-rc4' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/dlemoal/libata
    
    Pull ata fix from Damien Le Moal:
     "A single patch from me, to fix a bug that is causing boot issues in
      the field (reports of problems with Fedora 35).
    
      The bug affects mostly old-ish drives that have issues with read log
      page command handling"
    
    * tag 'ata-5.17-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/libata:
      ata: libata-core: Fix ata_dev_config_cpr()
    torvalds committed Feb 7, 2022
  3. Merge tag 'mmc-v5.17-rc1' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/ulfh/mmc
    
    Pull MMC fixes from Ulf Hansson:
     "MMC core:
       - Fix support for SD Power off notification
    
      MMC host:
       - moxart: Fix potential use-after-free on remove path
       - sdhci-of-esdhc: Fix error path when setting dma mask
       - sh_mmcif: Fix potential NULL pointer dereference"
    
    * tag 'mmc-v5.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc:
      moxart: fix potential use-after-free on remove path
      mmc: core: Wait for command setting 'Power Off Notification' bit to complete
      mmc: sh_mmcif: Check for null res pointer
      mmc: sdhci-of-esdhc: Check for error num after setting mask
    torvalds committed Feb 7, 2022
  4. Merge tag 'integrity-v5.17-fix' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/zohar/linux-integrity
    
    Pull integrity fixes from Mimi Zohar:
     "Fixes for recently found bugs.
    
      One was found/noticed while reviewing IMA support for fsverity digests
      and signatures. Two of them were found/noticed while working on IMA
      namespacing. Plus two other bugs.
    
      All of them are for previous kernel releases"
    
    * tag 'integrity-v5.17-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity:
      ima: Do not print policy rule with inactive LSM labels
      ima: Allow template selection with ima_template[_fmt]= after ima_hash=
      ima: Remove ima_policy file before directory
      integrity: check the return value of audit_log_start()
      ima: fix reference leak in asymmetric_verify()
    torvalds committed Feb 7, 2022
  5. ata: libata-core: Fix ata_dev_config_cpr()

    The concurrent positioning ranges log page 47h is a general purpose log
    page and not a subpage of the indentify device log. Using
    ata_identify_page_supported() to test for concurrent positioning ranges
    support is thus wrong. ata_log_supported() must be used.
    
    Furthermore, unlike other advanced ATA features (e.g. NCQ priority),
    accesses to the concurrent positioning ranges log page are not gated by
    a feature bit from the device IDENTIFY data. Since many older drives
    react badly to the READ LOG EXT and/or READ LOG DMA EXT commands isued
    to read device log pages, avoid problems with older drives by limiting
    the concurrent positioning ranges support detection to drives
    implementing at least the ACS-4 ATA standard (major version 11). This
    additional condition effectively turns ata_dev_config_cpr() into a nop
    for older drives, avoiding problems in the field.
    
    Fixes: fe22e1c ("libata: support concurrent positioning ranges log")
    BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=215519
    Cc: stable@vger.kernel.org
    Reviewed-by: Hannes Reinecke <hare@suse.de>
    Tested-by: Abderraouf Adjal <adjal.arf@gmail.com>
    Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
    Damien Le Moal committed Feb 7, 2022

Commits on Feb 6, 2022

  1. Linux 5.17-rc3

    torvalds committed Feb 6, 2022
  2. Merge tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/tytso/ext4
    
    Pull ext4 fixes from Ted Ts'o:
     "Various bug fixes for ext4 fast commit and inline data handling.
    
      Also fix regression introduced as part of moving to the new mount API"
    
    * tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
      fs/ext4: fix comments mentioning i_mutex
      ext4: fix incorrect type issue during replay_del_range
      jbd2: fix kernel-doc descriptions for jbd2_journal_shrink_{scan,count}()
      ext4: fix potential NULL pointer dereference in ext4_fill_super()
      jbd2: refactor wait logic for transaction updates into a common function
      jbd2: cleanup unused functions declarations from jbd2.h
      ext4: fix error handling in ext4_fc_record_modified_inode()
      ext4: remove redundant max inline_size check in ext4_da_write_inline_data_begin()
      ext4: fix error handling in ext4_restore_inline_data()
      ext4: fast commit may miss file actions
      ext4: fast commit may not fallback for ineligible commit
      ext4: modify the logic of ext4_mb_new_blocks_simple
      ext4: prevent used blocks from being allocated during fast commit replay
    torvalds committed Feb 6, 2022
  3. Merge tag 'perf-tools-fixes-for-v5.17-2022-02-06' of git://git.kernel…

    ….org/pub/scm/linux/kernel/git/acme/linux
    
    Pull perf tools fixes from Arnaldo Carvalho de Melo:
    
     - Fix display of grouped aliased events in 'perf stat'.
    
     - Add missing branch_sample_type to perf_event_attr__fprintf().
    
     - Apply correct label to user/kernel symbols in branch mode.
    
     - Fix 'perf ftrace' system_wide tracing, it has to be set before
       creating the maps.
    
     - Return error if procfs isn't mounted for PID namespaces when
       synthesizing records for pre-existing processes.
    
     - Set error stream of objdump process for 'perf annotate' TUI, to avoid
       garbling the screen.
    
     - Add missing arm64 support to perf_mmap__read_self(), the kernel part
       got into 5.17.
    
     - Check for NULL pointer before dereference writing debug info about a
       sample.
    
     - Update UAPI copies for asound, perf_event, prctl and kvm headers.
    
     - Fix a typo in bpf_counter_cgroup.c.
    
    * tag 'perf-tools-fixes-for-v5.17-2022-02-06' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux:
      perf ftrace: system_wide collection is not effective by default
      libperf: Add arm64 support to perf_mmap__read_self()
      tools include UAPI: Sync sound/asound.h copy with the kernel sources
      perf stat: Fix display of grouped aliased events
      perf tools: Apply correct label to user/kernel symbols in branch mode
      perf bpf: Fix a typo in bpf_counter_cgroup.c
      perf synthetic-events: Return error if procfs isn't mounted for PID namespaces
      perf session: Check for NULL pointer before dereference
      perf annotate: Set error stream of objdump process for TUI
      perf tools: Add missing branch_sample_type to perf_event_attr__fprintf()
      tools headers UAPI: Sync linux/kvm.h with the kernel sources
      tools headers UAPI: Sync linux/prctl.h with the kernel sources
      perf beauty: Make the prctl arg regexp more strict to cope with PR_SET_VMA
      tools headers cpufeatures: Sync with the kernel sources
      tools headers UAPI: Sync linux/perf_event.h with the kernel sources
      tools include UAPI: Sync sound/asound.h copy with the kernel sources
    torvalds committed Feb 6, 2022
  4. Merge tag 'perf_urgent_for_v5.17_rc3' of git://git.kernel.org/pub/scm…

    …/linux/kernel/git/tip/tip
    
    Pull perf fixes from Borislav Petkov:
    
     - Intel/PT: filters could crash the kernel
    
     - Intel: default disable the PMU for SMM, some new-ish EFI firmware has
       started using CPL3 and the PMU CPL filters don't discriminate against
       SMM, meaning that CPL3 (userspace only) events now also count EFI/SMM
       cycles.
    
     - Fixup for perf_event_attr::sig_data
    
    * tag 'perf_urgent_for_v5.17_rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      perf/x86/intel/pt: Fix crash with stop filters in single-range mode
      perf: uapi: Document perf_event_attr::sig_data truncation on 32 bit architectures
      selftests/perf_events: Test modification of perf_event_attr::sig_data
      perf: Copy perf_event_attr::sig_data on modification
      x86/perf: Default set FREEZE_ON_SMI for all
    torvalds committed Feb 6, 2022
  5. Merge tag 'objtool_urgent_for_v5.17_rc3' of git://git.kernel.org/pub/…

    …scm/linux/kernel/git/tip/tip
    
    Pull objtool fix from Borislav Petkov:
     "Fix a potential truncated string warning triggered by gcc12"
    
    * tag 'objtool_urgent_for_v5.17_rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      objtool: Fix truncated string warning
    torvalds committed Feb 6, 2022
  6. Merge tag 'irq_urgent_for_v5.17_rc3' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/tip/tip
    
    Pull irq fix from Borislav Petkov:
     "Remove a bogus warning introduced by the recent PCI MSI irq affinity
      overhaul"
    
    * tag 'irq_urgent_for_v5.17_rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      PCI/MSI: Remove bogus warning in pci_irq_get_affinity()
    torvalds committed Feb 6, 2022
  7. Merge tag 'edac_urgent_for_v5.17_rc3' of git://git.kernel.org/pub/scm…

    …/linux/kernel/git/ras/ras
    
    Pull EDAC fixes from Borislav Petkov:
     "Fix altera and xgene EDAC drivers to propagate the correct error code
      from platform_get_irq() so that deferred probing still works"
    
    * tag 'edac_urgent_for_v5.17_rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras:
      EDAC/xgene: Fix deferred probing
      EDAC/altera: Fix deferred probing
    torvalds committed Feb 6, 2022
  8. perf ftrace: system_wide collection is not effective by default

    The ftrace.target.system_wide must be set before invoking
    evlist__create_maps(), otherwise it has no effect.
    
    Fixes: 53be502 ("perf ftrace: Add 'latency' subcommand")
    Signed-off-by: Changbin Du <changbin.du@gmail.com>
    Acked-by: Namhyung Kim <namhyung@gmail.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Link: https://lore.kernel.org/r/20220127132010.4836-1-changbin.du@gmail.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    changbindu authored and Arnaldo Carvalho de Melo committed Feb 6, 2022
  9. libperf: Add arm64 support to perf_mmap__read_self()

    Add the arm64 variants for read_perf_counter() and read_timestamp().
    Unfortunately the counter number is encoded into the instruction, so the
    code is a bit verbose to enumerate all possible counters.
    
    Tested-by: Masayoshi Mizuma <m.mizuma@jp.fujitsu.com>
    Signed-off-by: Rob Herring <robh@kernel.org>
    Acked-by: Jiri Olsa <jolsa@redhat.com>
    Tested-by: John Garry <john.garry@huawei.com>
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Link: https://lore.kernel.org/r/20220201214056.702854-1-robh@kernel.org
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Will Deacon <will@kernel.org>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: linux-kernel@vger.kernel.org
    Cc: linux-perf-users@vger.kernel.org
    robherring authored and Arnaldo Carvalho de Melo committed Feb 6, 2022
  10. tools include UAPI: Sync sound/asound.h copy with the kernel sources

    Picking the changes from:
    
      06feec6 ("ASoC: hdmi-codec: Fix OOB memory accesses")
    
    Which entails no changes in the tooling side as it doesn't introduce new
    SNDRV_PCM_IOCTL_ ioctls.
    
    To silence this perf tools build warning:
    
      Warning: Kernel ABI header at 'tools/include/uapi/sound/asound.h' differs from latest version at 'include/uapi/sound/asound.h'
      diff -u tools/include/uapi/sound/asound.h include/uapi/sound/asound.h
    
    Cc: Dmitry Osipenko <digetx@gmail.com>
    Cc: Mark Brown <broonie@kernel.org>
    Cc: Takashi Iwai <tiwai@suse.de>
    Link: https://lore.kernel.org/lkml/Yf+6OT+2eMrYDEeX@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Arnaldo Carvalho de Melo committed Feb 6, 2022
  11. perf stat: Fix display of grouped aliased events

    An event may have a number of uncore aliases that when added to the
    evlist are consecutive.
    
    If there are multiple uncore events in a group then
    parse_events__set_leader_for_uncore_aliase will reorder the evlist so
    that events on the same PMU are adjacent.
    
    The collect_all_aliases function assumes that aliases are in blocks so
    that only the first counter is printed and all others are marked merged.
    
    The reordering for groups breaks the assumption and so all counts are
    printed.
    
    This change removes the assumption from collect_all_aliases
    that the events are in blocks and instead processes the entire evlist.
    
    Before:
    
      ```
      $ perf stat -e '{UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE,UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE},duration_time' -a -A -- sleep 1
    
       Performance counter stats for 'system wide':
    
      CPU0                  256,866      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 494,413      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                      967      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,738      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  285,161      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 429,920      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                      955      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,443      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  310,753      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 416,657      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,231      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,573      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  416,067      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 405,966      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,481      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,447      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  312,911      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 408,154      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,086      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,380      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  333,994      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 370,349      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,287      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,335      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  188,107      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 302,423      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                      701      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,070      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  307,221      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 383,642      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,036      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,158      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  318,479      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 821,545      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,028      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   2,550      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  227,618      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 372,272      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                      903      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,456      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  376,783      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 419,827      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,406      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,453      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  286,583      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 429,956      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                      999      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,436      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  313,867      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 370,159      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,114      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,291      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  342,083      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 409,111      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,399      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,684      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  365,828      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 376,037      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,378      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,411      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  382,456      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 621,743      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,232      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,955      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  342,316      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 385,067      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,176      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,268      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  373,588      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 386,163      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,394      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,464      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  381,206      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 546,891      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,266      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,712      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  221,176      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 392,069      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                      831      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,456      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  355,401      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 705,595      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,235      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   2,216      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  371,436      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 428,103      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,306      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,442      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  384,352      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 504,200      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,468      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,860      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  228,856      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 287,976      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                      832      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,060      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  215,121      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 334,162      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                      681      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,026      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  296,179      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 436,083      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,084      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,525      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  262,296      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 416,573      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                      986      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,533      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  285,852      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 359,842      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,073      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,326      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  303,379      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 367,222      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,008      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,156      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  273,487      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 425,449      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                      932      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,367      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  297,596      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 414,793      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,140      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,601      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  342,365      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 360,422      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,291      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,342      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  327,196      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 580,858      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,122      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   2,014      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  296,564      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 452,817      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,087      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,694      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  375,002      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 389,393      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,478      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   1,540      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0                  365,213      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36                 594,685      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                    1,401      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                   2,222      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0            1,000,749,060 ns   duration_time
    
             1.000749060 seconds time elapsed
      ```
    
    After:
    
      ```
       Performance counter stats for 'system wide':
    
      CPU0               20,547,434      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU36              45,202,862      UNC_CHA_TOR_OCCUPANCY.IA_MISS_DRD_REMOTE
      CPU0                   82,001      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU36                 159,688      UNC_CHA_TOR_INSERTS.IA_MISS_DRD_REMOTE
      CPU0            1,000,464,828 ns   duration_time
    
             1.000464828 seconds time elapsed
      ```
    
    Fixes: 3cdc5c2 ("perf parse-events: Handle uncore event aliases in small groups properly")
    Reviewed-by: Andi Kleen <ak@linux.intel.com>
    Signed-off-by: Ian Rogers <irogers@google.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Alexandre Torgue <alexandre.torgue@foss.st.com>
    Cc: Asaf Yaffe <asaf.yaffe@intel.com>
    Cc: Caleb Biggers <caleb.biggers@intel.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: James Clark <james.clark@arm.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: John Garry <john.garry@huawei.com>
    Cc: Kan Liang <kan.liang@linux.intel.com>
    Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Perry Taylor <perry.taylor@intel.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Stephane Eranian <eranian@google.com>
    Cc: Vineet Singh <vineet.singh@intel.com>
    Cc: Zhengjun Xing <zhengjun.xing@linux.intel.com>
    Link: https://lore.kernel.org/r/20220205010941.1065469-1-irogers@google.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    captain5050 authored and Arnaldo Carvalho de Melo committed Feb 6, 2022
  12. perf tools: Apply correct label to user/kernel symbols in branch mode

    In branch mode, the branch symbols were being displayed with incorrect
    cpumode labels. So fix this.
    
    For example, before:
      # perf record -b -a -- sleep 1
      # perf report -b
    
      Overhead  Command  Source Shared Object  Source Symbol               Target Symbol
         0.08%  swapper  [kernel.kallsyms]     [k] rcu_idle_enter          [k] cpuidle_enter_state
     ==> 0.08%  cmd0     [kernel.kallsyms]     [.] psi_group_change        [.] psi_group_change
         0.08%  cmd1     [kernel.kallsyms]     [k] psi_group_change        [k] psi_group_change
    
    After:
      # perf report -b
    
      Overhead  Command  Source Shared Object  Source Symbol               Target Symbol
         0.08%  swapper  [kernel.kallsyms]     [k] rcu_idle_enter          [k] cpuidle_enter_state
         0.08%  cmd0     [kernel.kallsyms]     [k] psi_group_change        [k] pei_group_change
         0.08%  cmd1     [kernel.kallsyms]     [k] psi_group_change        [k] psi_group_change
    
    Reviewed-by: James Clark <james.clark@arm.com>
    Signed-off-by: German Gomez <german.gomez@arm.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Link: https://lore.kernel.org/r/20220126105927.3411216-1-german.gomez@arm.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    germangb authored and Arnaldo Carvalho de Melo committed Feb 6, 2022
  13. perf bpf: Fix a typo in bpf_counter_cgroup.c

    This patch fixes a spelling typo in error message.
    
    Signed-off-by: Masanari Iida <standby24x7@gmail.com>
    Acked-by: Namhyung Kim <namhyung@kernel.org>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Link: https://lore.kernel.org/r/20211225005558.503935-1-standby24x7@gmail.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    standby24x7 authored and Arnaldo Carvalho de Melo committed Feb 6, 2022
  14. perf synthetic-events: Return error if procfs isn't mounted for PID n…

    …amespaces
    
    For perf recording, it retrieves process info by iterating nodes in proc
    fs.  If we run perf in a non-root PID namespace with command:
    
      # unshare --fork --pid perf record -e cycles -a -- test_program
    
    ... in this case, unshare command creates a child PID namespace and
    launches perf tool in it, but the issue is the proc fs is not mounted
    for the non-root PID namespace, this leads to the perf tool gathering
    process info from its parent PID namespace.
    
    We can use below command to observe the process nodes under proc fs:
    
      # unshare --pid --fork ls /proc
    1    137   1968  2128  3    342  48  62   78	     crypto	  kcore        net	      uptime
    10   138   2	 2142  30   35	 49  63   8	     devices	  keys	       pagetypeinfo   version
    11   139   20	 2143  304  36	 50  64   82	     device-tree  key-users    partitions     vmallocinfo
    12   14    2011  22    305  37	 51  65   83	     diskstats	  kmsg	       self	      vmstat
    128  140   2038  23    307  39	 52  656  84	     driver	  kpagecgroup  slabinfo       zoneinfo
    129  15    2074  24    309  4	 53  67   9	     execdomains  kpagecount   softirqs
    13   16    2094  241   31   40	 54  68   asound     fb		  kpageflags   stat
    130  164   2096  242   310  41	 55  69   buddyinfo  filesystems  loadavg      swaps
    131  17    2098  25    317  42	 56  70   bus	     fs		  locks        sys
    132  175   21	 26    32   43	 57  71   cgroups    interrupts   meminfo      sysrq-trigger
    133  179   2102  263   329  44	 58  75   cmdline    iomem	  misc	       sysvipc
    134  1875  2103  27    330  45	 59  76   config.gz  ioports	  modules      thread-self
    135  19    2117  29    333  46	 6   77   consoles   irq	  mounts       timer_list
    136  1941  2121  298   34   47	 60  773  cpuinfo    kallsyms	  mtd	       tty
    
    So it shows many existed tasks, since unshared command has not mounted
    the proc fs for the new created PID namespace, it still accesses the
    proc fs of the root PID namespace.  This leads to two prominent issues:
    
    - Firstly, PID values are mismatched between thread info and samples.
      The gathered thread info are coming from the proc fs of the root PID
      namespace, but samples record its PID from the child PID namespace.
    
    - The second issue is profiled program 'test_program' returns its forked
      PID number from the child PID namespace, perf tool wrongly uses this
      PID number to retrieve the process info via the proc fs of the root
      PID namespace.
    
    To avoid issues, we need to mount proc fs for the child PID namespace
    with the option '--mount-proc' when use unshare command:
    
      # unshare --fork --pid --mount-proc perf record -e cycles -a -- test_program
    
    Conversely, when the proc fs of the root PID namespace is used by child
    namespace, perf tool can detect the multiple PID levels and
    nsinfo__is_in_root_namespace() returns false, this patch reports error
    for this case:
    
      # unshare --fork --pid perf record -e cycles -a -- test_program
      Couldn't synthesize bpf events.
      Perf runs in non-root PID namespace but it tries to gather process info from its parent PID namespace.
      Please mount the proc file system properly, e.g. add the option '--mount-proc' for unshare command.
    
    Reviewed-by: James Clark <james.clark@arm.com>
    Signed-off-by: Leo Yan <leo.yan@linaro.org>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Alexei Starovoitov <ast@kernel.org>
    Cc: Andrii Nakryiko <andrii@kernel.org>
    Cc: Daniel Borkmann <daniel@iogearbox.net>
    Cc: Ian Rogers <irogers@google.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: John Fastabend <john.fastabend@gmail.com>
    Cc: KP Singh <kpsingh@kernel.org>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Martin KaFai Lau <kafai@fb.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Song Liu <songliubraving@fb.com>
    Cc: Yonghong Song <yhs@fb.com>
    Link: https://lore.kernel.org/r/20211224124014.2492751-1-leo.yan@linaro.org
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Leo-Yan authored and Arnaldo Carvalho de Melo committed Feb 6, 2022
  15. perf session: Check for NULL pointer before dereference

    Move NULL pointer check before dereferencing the variable.
    
    Addresses-Coverity: 1497622 ("Derereference before null check")
    Reviewed-by: James Clark <james.clark@arm.com>
    Signed-off-by: Ameer Hamza <amhamza.mgc@gmail.com>
    Cc: Adrian Hunter <adrian.hunter@intel.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Alexey Bayduraev <alexey.v.bayduraev@linux.intel.com>
    Cc: German Gomez <german.gomez@arm.com>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Leo Yan <leo.yan@linaro.org>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Riccardo Mancini <rickyman7@gmail.com>
    Link: https://lore.kernel.org/r/20220125121141.18347-1-amhamza.mgc@gmail.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    HamzaLinux authored and Arnaldo Carvalho de Melo committed Feb 6, 2022
  16. perf annotate: Set error stream of objdump process for TUI

    The stderr should be set to a pipe when using TUI.  Otherwise it'd
    print to stdout and break TUI windows with an error message.
    
    Signed-off-by: Namhyung Kim <namhyung@kernel.org>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Ian Rogers <irogers@google.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Link: http://lore.kernel.org/lkml/20220202070828.143303-2-namhyung@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    namhyung authored and Arnaldo Carvalho de Melo committed Feb 6, 2022
  17. perf tools: Add missing branch_sample_type to perf_event_attr__fprintf()

    This updates branch sample type with missing PERF_SAMPLE_BRANCH_TYPE_SAVE.
    
    Suggested-by: James Clark <james.clark@arm.com>
    Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
    Acked-by: Jiri Olsa <jolsa@redhat.com>
    Cc: James Clark <james.clark@arm.com>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: linux-arm-kernel@lists.infradead.org
    Link: http://lore.kernel.org/lkml/1643799443-15109-1-git-send-email-anshuman.khandual@arm.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Anshuman Khandual authored and Arnaldo Carvalho de Melo committed Feb 6, 2022
  18. tools headers UAPI: Sync linux/kvm.h with the kernel sources

    To pick the changes in:
    
      f6c6804 ("kvm: Move KVM_GET_XSAVE2 IOCTL definition at the end of kvm.h")
    
    That just rebuilds perf, as these patches don't add any new KVM ioctl to
    be harvested for the the 'perf trace' ioctl syscall argument
    beautifiers.
    
    This is also by now used by tools/testing/selftests/kvm/, a simple test
    build succeeded.
    
    This silences this perf build warning:
    
      Warning: Kernel ABI header at 'tools/include/uapi/linux/kvm.h' differs from latest version at 'include/uapi/linux/kvm.h'
      diff -u tools/include/uapi/linux/kvm.h include/uapi/linux/kvm.h
    
    Cc: Janosch Frank <frankja@linux.ibm.com>
    Cc: Paolo Bonzini <pbonzini@redhat.com>
    Link: http://lore.kernel.org/lkml/Yf+4k5Fs5Q3HdSG9@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Arnaldo Carvalho de Melo committed Feb 6, 2022
  19. Merge remote-tracking branch 'torvalds/master' into perf/urgent

    To check if more kernel API sync is needed and also to see if the perf
    build tests continue to pass.
    
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Arnaldo Carvalho de Melo committed Feb 6, 2022

Commits on Feb 5, 2022

  1. Merge tag 'for-linus-5.17a-rc3-tag' of git://git.kernel.org/pub/scm/l…

    …inux/kernel/git/xen/tip
    
    Pull xen fixes from Juergen Gross:
    
     - documentation fixes related to Xen
    
     - enable x2apic mode when available when running as hardware
       virtualized guest under Xen
    
     - cleanup and fix a corner case of vcpu enumeration when running a
       paravirtualized Xen guest
    
    * tag 'for-linus-5.17a-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
      x86/Xen: streamline (and fix) PV CPU enumeration
      xen: update missing ioctl magic numers documentation
      Improve docs for IOCTL_GNTDEV_MAP_GRANT_REF
      xen: xenbus_dev.h: delete incorrect file name
      xen/x2apic: enable x2apic mode when supported for HVM
    torvalds committed Feb 5, 2022
  2. Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

    Pull kvm fixes from Paolo Bonzini:
     "ARM:
    
       - A couple of fixes when handling an exception while a SError has
         been delivered
    
       - Workaround for Cortex-A510's single-step erratum
    
      RISC-V:
    
       - Make CY, TM, and IR counters accessible in VU mode
    
       - Fix SBI implementation version
    
      x86:
    
       - Report deprecation of x87 features in supported CPUID
    
       - Preparation for fixing an interrupt delivery race on AMD hardware
    
       - Sparse fix
    
      All except POWER and s390:
    
       - Rework guest entry code to correctly mark noinstr areas and fix
         vtime' accounting (for x86, this was already mostly correct but not
         entirely; for ARM, MIPS and RISC-V it wasn't)"
    
    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
      KVM: x86: Use ERR_PTR_USR() to return -EFAULT as a __user pointer
      KVM: x86: Report deprecated x87 features in supported CPUID
      KVM: arm64: Workaround Cortex-A510's single-step and PAC trap errata
      KVM: arm64: Stop handle_exit() from handling HVC twice when an SError occurs
      KVM: arm64: Avoid consuming a stale esr value when SError occur
      RISC-V: KVM: Fix SBI implementation version
      RISC-V: KVM: make CY, TM, and IR counters accessible in VU mode
      kvm/riscv: rework guest entry logic
      kvm/arm64: rework guest entry logic
      kvm/x86: rework guest entry logic
      kvm/mips: rework guest entry logic
      kvm: add guest_state_{enter,exit}_irqoff()
      KVM: x86: Move delivery of non-APICv interrupt into vendor code
      kvm: Move KVM_GET_XSAVE2 IOCTL definition at the end of kvm.h
    torvalds committed Feb 5, 2022
  3. Merge tag 'xfs-5.17-fixes-1' of git://git.kernel.org/pub/scm/fs/xfs/x…

    …fs-linux
    
    Pull xfs fixes from Darrick Wong:
     "I was auditing operations in XFS that clear file privileges, and
      realized that XFS' fallocate implementation drops suid/sgid but
      doesn't clear file capabilities the same way that file writes and
      reflink do.
    
      There are VFS helpers that do it correctly, so refactor XFS to use
      them. I also noticed that we weren't flushing the log at the correct
      point in the fallocate operation, so that's fixed too.
    
      Summary:
    
       - Fix fallocate so that it drops all file privileges when files are
         modified instead of open-coding that incompletely.
    
       - Fix fallocate to flush the log if the caller wanted synchronous
         file updates"
    
    * tag 'xfs-5.17-fixes-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
      xfs: ensure log flush at the end of a synchronous fallocate call
      xfs: move xfs_update_prealloc_flags() to xfs_pnfs.c
      xfs: set prealloc flag in xfs_alloc_file_space()
      xfs: fallocate() should call file_modified()
      xfs: remove XFS_PREALLOC_SYNC
      xfs: reject crazy array sizes being fed to XFS_IOC_GETBMAP*
    torvalds committed Feb 5, 2022
  4. Merge tag 'vfs-5.17-fixes-2' of git://git.kernel.org/pub/scm/fs/xfs/x…

    …fs-linux
    
    Pull vfs fixes from Darrick Wong:
     "I was auditing the sync_fs code paths recently and noticed that most
      callers of ->sync_fs ignore its return value (and many implementations
      never return nonzero even if the fs is broken!), which means that
      internal fs errors and corruption are not passed up to userspace
      callers of syncfs(2) or FIFREEZE. Hence fixing the common code and
      XFS, and I'll start working on the ext4/btrfs folks if this is merged.
    
      Summary:
    
       - Fix a bug where callers of ->sync_fs (e.g. sync_filesystem and
         syncfs(2)) ignore the return value.
    
       - Fix a bug where callers of sync_filesystem (e.g. fs freeze) ignore
         the return value.
    
       - Fix a bug in XFS where xfs_fs_sync_fs never passed back error
         returns"
    
    * tag 'vfs-5.17-fixes-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
      xfs: return errors in xfs_fs_sync_fs
      quota: make dquot_quota_sync return errors from ->sync_fs
      vfs: make sync_filesystem return errors from ->sync_fs
      vfs: make freeze_super abort when sync_filesystem returns error
    torvalds committed Feb 5, 2022
  5. Merge tag 'iomap-5.17-fixes-1' of git://git.kernel.org/pub/scm/fs/xfs…

    …/xfs-linux
    
    Pull iomap fix from Darrick Wong:
     "A single bugfix for iomap.
    
      The fix should eliminate occasional complaints about stall warnings
      when a lot of writeback IO completes all at once and we have to then
      go clearing status on a large number of folios.
    
      Summary:
    
       - Limit the length of ioend chains in writeback so that we don't trip
         the softlockup watchdog and to limit long tail latency on clearing
         PageWriteback"
    
    * tag 'iomap-5.17-fixes-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
      xfs, iomap: limit individual ioend chain lengths in writeback
    torvalds committed Feb 5, 2022
  6. Merge tag 'kvmarm-fixes-5.17-2' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/kvmarm/kvmarm into HEAD
    
    KVM/arm64 fixes for 5.17, take #2
    
    - A couple of fixes when handling an exception while a SError has been
      delivered
    
    - Workaround for Cortex-A510's single-step[ erratum
    bonzini committed Feb 5, 2022
  7. Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/gi…

    …t/rdma/rdma
    
    Pull rdma fixes from Jason Gunthorpe:
     "Some medium sized bugs in the various drivers. A couple are more
      recent regressions:
    
       - Fix two panics in hfi1 and two allocation problems
    
       - Send the IGMP to the correct address in cma
    
       - Squash a syzkaller bug related to races reading the multicast list
    
       - Memory leak in siw and cm
    
       - Fix a corner case spec compliance for HFI/QIB
    
       - Correct the implementation of fences in siw
    
       - Error unwind bug in mlx4"
    
    * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
      RDMA/mlx4: Don't continue event handler after memory allocation failure
      RDMA/siw: Fix broken RDMA Read Fence/Resume logic.
      IB/rdmavt: Validate remote_addr during loopback atomic tests
      IB/cm: Release previously acquired reference counter in the cm_id_priv
      RDMA/siw: Fix refcounting leak in siw_create_qp()
      RDMA/ucma: Protect mc during concurrent multicast leaves
      RDMA/cma: Use correct address when leaving multicast group
      IB/hfi1: Fix tstats alloc and dealloc
      IB/hfi1: Fix AIP early init panic
      IB/hfi1: Fix alloc failure with larger txqueuelen
      IB/hfi1: Fix panic with larger ipoib send_queue_size
    torvalds committed Feb 5, 2022

Commits on Feb 4, 2022

  1. Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/g…

    …it/jejb/scsi
    
    Pull SCSI fixes from James Bottomley:
     "Seven fixes, six of which are fairly obvious driver fixes.
    
      The one core change to the device budget depth is to try to ensure
      that if the default depth is large (which can produce quite a sizeable
      bitmap allocation per device), we give back the memory we don't need
      if there's a queue size reduction in slave_configure (which happens to
      a lot of devices)"
    
    * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
      scsi: hisi_sas: Fix setting of hisi_sas_slot.is_internal
      scsi: pm8001: Fix use-after-free for aborted SSP/STP sas_task
      scsi: pm8001: Fix use-after-free for aborted TMF sas_task
      scsi: pm8001: Fix warning for undescribed param in process_one_iomb()
      scsi: core: Reallocate device's budget map on queue depth change
      scsi: bnx2fc: Make bnx2fc_recv_frame() mp safe
      scsi: pm80xx: Fix double completion for SATA devices
    torvalds committed Feb 4, 2022
  2. Merge tag 'pci-v5.17-fixes-3' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/helgaas/pci
    
    Pull pci fixes from Bjorn Helgaas:
    
     - Restructure j721e_pcie_probe() so we don't dereference a NULL pointer
       (Bjorn Helgaas)
    
     - Add a kirin_pcie_data struct to identify different Kirin variants to
       fix probe failure for controllers with an internal PHY (Bjorn
       Helgaas)
    
    * tag 'pci-v5.17-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
      PCI: kirin: Add dev struct for of_device_get_match_data()
      PCI: j721e: Initialize pcie->cdns_pcie before using it
    torvalds committed Feb 4, 2022
  3. PCI: kirin: Add dev struct for of_device_get_match_data()

    Bean reported that a622435 ("PCI: kirin: Prefer
    of_device_get_match_data()") broke kirin_pcie_probe() because it assumed
    match data of 0 was a failure when in fact, it meant the match data was
    "(void *)PCIE_KIRIN_INTERNAL_PHY".
    
    Therefore, probing of "hisilicon,kirin960-pcie" devices failed with -EINVAL
    and an "OF data missing" message.
    
    Add a struct kirin_pcie_data to encode the PHY type.  Then the result of
    of_device_get_match_data() should always be a non-NULL pointer to a struct
    kirin_pcie_data that contains the PHY type.
    
    Fixes: a622435 ("PCI: kirin: Prefer of_device_get_match_data()")
    Link: https://lore.kernel.org/r/20220202162659.GA12603@bhelgaas
    Link: https://lore.kernel.org/r/20220201215941.1203155-1-huobean@gmail.com
    Reported-by: Bean Huo <beanhuo@micron.com>
    Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
    bjorn-helgaas committed Feb 4, 2022
Older