1. 17 Mar, 2023 30 commits
    • Petr Mladek's avatar
      workqueue: Warn when a new worker could not be created · 3f0ea0b8
      Petr Mladek authored
      The workqueue watchdog reports a lockup when there was not any progress
      in the worker pool for a long time. The progress means that a pending
      work item starts being proceed.
      
      The progress is guaranteed by using idle workers or creating new workers
      for pending work items.
      
      There are several reasons why a new worker could not be created:
      
         + there is not enough memory
      
         + there is no free pool ID (IDR API)
      
         + the system reached PID limit
      
         + the process creating the new worker was interrupted
      
         + the last idle worker (manager) has not been scheduled for a long
           time. It was not able to even start creating the kthread.
      
      None of these failures is reported at the moment. The only clue is that
      show_one_worker_pool() prints that there is a manager. It is the last
      idle worker that is responsible for creating a new one. But it is not
      clear if create_worker() is failing and why.
      
      Make the debugging easier by printing errors in create_worker().
      
      The error code is important, especially from kthread_create_on_node().
      It helps to distinguish the various reasons. For example, reaching
      memory limit (-ENOMEM), other system limits (-EAGAIN), or process
      interrupted (-EINTR).
      
      Use pr_once() to avoid repeating the same error every CREATE_COOLDOWN
      for each stuck worker pool.
      
      Ratelimited printk() might be better. It would help to know if the problem
      remains. It would be more clear if the create_worker() errors and workqueue
      stalls are related. Also old messages might get lost when the internal log
      buffer is full. The problem is that printk() might touch the watchdog.
      For example, see touch_nmi_watchdog() in serial8250_console_write().
      It would require synchronization of the begin and length of the ratelimit
      interval with the workqueue watchdog. Otherwise, the error messages
      might break the watchdog. This does not look worth the complexity.
      Signed-off-by: default avatarPetr Mladek <pmladek@suse.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      3f0ea0b8
    • Petr Mladek's avatar
      workqueue: Fix hung time report of worker pools · 335a42eb
      Petr Mladek authored
      The workqueue watchdog prints a warning when there is no progress in
      a worker pool. Where the progress means that the pool started processing
      a pending work item.
      
      Note that it is perfectly fine to process work items much longer.
      The progress should be guaranteed by waking up or creating idle
      workers.
      
      show_one_worker_pool() prints state of non-idle worker pool. It shows
      a delay since the last pool->watchdog_ts.
      
      The timestamp is updated when a first pending work is queued in
      __queue_work(). Also it is updated when a work is dequeued for
      processing in worker_thread() and rescuer_thread().
      
      The delay is misleading when there is no pending work item. In this
      case it shows how long the last work item is being proceed. Show
      zero instead. There is no stall if there is no pending work.
      
      Fixes: 82607adc ("workqueue: implement lockup detector")
      Signed-off-by: default avatarPetr Mladek <pmladek@suse.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      335a42eb
    • Ammar Faizi's avatar
      workqueue: Simplify a pr_warn() call in wq_select_unbound_cpu() · a8ec5880
      Ammar Faizi authored
      Use pr_warn_once() to achieve the same thing. It's simpler.
      Signed-off-by: default avatarAmmar Faizi <ammarfaizi2@gnuweeb.org>
      Reviewed-by: default avatarLai Jiangshan <jiangshanlai@gmail.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      a8ec5880
    • Ammar Faizi's avatar
      MAINTAINERS: Add workqueue_internal.h to the WORKQUEUE entry · 2c106e15
      Ammar Faizi authored
      This file doesn't have a maintainer. It should belong to the WORKQUEUE
      entry part. Add it to the WORKQUEUE entry.
      Signed-off-by: default avatarAmmar Faizi <ammarfaizi2@gnuweeb.org>
      Reviewed-by: default avatarLai Jiangshan <jiangshanlai@gmail.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      2c106e15
    • Linus Torvalds's avatar
      Merge tag 'block-6.3-2023-03-16' of git://git.kernel.dk/linux · 8d3c682a
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "A bit bigger than usual, as the NVMe pull request missed last weeks
        submission. In detail:
      
         - NVMe pull request via Christoph:
              - Avoid potential UAF in nvmet_req_complete (Damien Le Moal)
              - More quirks (Elmer Miroslav Mosher Golovin, Philipp Geulen)
              - Fix a memory leak in the nvme-pci probe teardown path
                (Irvin Cote)
              - Repair the MAINTAINERS entry (Lukas Bulwahn)
              - Fix handling single range discard request (Ming Lei)
              - Show more opcode names in trace events (Minwoo Im)
              - Fix nvme-tcp timeout reporting (Sagi Grimberg)
      
         - MD pull request via Song:
              - Two fixes for old issues (Neil)
              - Resource leak in device stopping (Xiao)
      
         - Bio based device stats fix (Yu)
      
         - Kill unused CONFIG_BLOCK_COMPAT (Lukas)
      
         - sunvdc missing mdesc_grab() failure check (Liang)
      
         - Fix for reversal of request ordering upon issue for certain cases
           (Jan)
      
         - null_blk timeout fixes (Damien)
      
         - Loop use-after-free fix (Bart)
      
         - blk-mq SRCU fix for BLK_MQ_F_BLOCKING devices (Chris)"
      
      * tag 'block-6.3-2023-03-16' of git://git.kernel.dk/linux:
        block: remove obsolete config BLOCK_COMPAT
        md: select BLOCK_LEGACY_AUTOLOAD
        block: count 'ios' and 'sectors' when io is done for bio-based device
        block: sunvdc: add check for mdesc_grab() returning NULL
        nvmet: avoid potential UAF in nvmet_req_complete()
        nvme-trace: show more opcode names
        nvme-tcp: add nvme-tcp pdu size build protection
        nvme-tcp: fix opcode reporting in the timeout handler
        nvme-pci: add NVME_QUIRK_BOGUS_NID for Lexar NM620
        nvme-pci: add NVME_QUIRK_BOGUS_NID for Netac NV3000
        nvme-pci: fixing memory leak in probe teardown path
        nvme: fix handling single range discard request
        MAINTAINERS: repair malformed T: entries in NVM EXPRESS DRIVERS
        block: null_blk: cleanup null_queue_rq()
        block: null_blk: Fix handling of fake timeout request
        blk-mq: fix "bad unlock balance detected" on q->srcu in __blk_mq_run_dispatch_ops
        loop: Fix use-after-free issues
        block: do not reverse request order when flushing plug list
        md: avoid signed overflow in slot_store()
        md: Free resources in __md_stop
      8d3c682a
    • Linus Torvalds's avatar
      Merge tag 'io_uring-6.3-2023-03-16' of git://git.kernel.dk/linux · b7966a5a
      Linus Torvalds authored
      Pull io_uring fixes from Jens Axboe:
      
       - When PF_NO_SETAFFINITY was removed for io-wq threads, we kind of
         forgot about the SQPOLL thread. Remove it there as well, there's even
         less of a reason to set it there (Michal)
      
       - Fixup a confusing 'ret' setting (Li)
      
       - When MSG_RING is used to send a direct descriptor to another ring,
         it's possible to have it allocate it on the target ring rather than
         provide a specific index for it. If this is done, return the chosen
         value in the CQE, like we would've done locally (Pavel)
      
       - Fix a regression in this series on huge page bvec collapsing (Pavel)
      
      * tag 'io_uring-6.3-2023-03-16' of git://git.kernel.dk/linux:
        io_uring/rsrc: fix folio accounting
        io_uring/msg_ring: let target know allocated index
        io_uring: rsrc: Optimize return value variable 'ret'
        io_uring/sqpoll: Do not set PF_NO_SETAFFINITY on sqpoll threads
      b7966a5a
    • Linus Torvalds's avatar
      Merge tag 'pm-6.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 02ef7d39
      Linus Torvalds authored
      Pull power management fixes from Rafael Wysocki:
       "These fix an error code path issue in a cpuidle driver and make the
        sleepgraph utility more robust against unexpected input.
      
        Specifics:
      
         - Fix the psci_pd_init_topology() failure path in the PSCI cpuidle
           driver (Shawn Guo)
      
         - Modify the sleepgraph utility so it does not crash on binary data
           in device names (Todd Brandt)"
      
      * tag 'pm-6.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        pm-graph: sleepgraph: Avoid crashing on binary data in device names
        cpuidle: psci: Iterate backwards over list in psci_pd_remove()
      02ef7d39
    • Linus Torvalds's avatar
      Merge tag 'acpi-6.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · abb02a82
      Linus Torvalds authored
      Pull ACPI fixes from Rafael Wysocki:
       "These add some new quirks, fix PPTT handling, fix an ACPI utility and
        correct a mistake in the ACPI documentation.
      
        Specifics:
      
         - Fix ACPI PPTT handling to avoid sleep in the atomic context when it
           is not present (Sudeep Holla)
      
         - Add 'backlight=native' DMI quirk for Dell Vostro 15 3535 to the
           ACPI video driver (Chia-Lin Kao)
      
         - Add ACPI quirks for I2C device enumeration on Lenovo Yoga Book X90
           and Acer Iconia One 7 B1-750 (Hans de Goede)
      
         - Fix handling of invalid command line option values in the ACPI
           pfrut utility (Chen Yu)
      
         - Fix references to I2C device data type in the ACPI documentation
           for device enumeration (Andy Shevchenko)"
      
      * tag 'acpi-6.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI: tools: pfrut: Check if the input of level and type is in the right numeric range
        ACPI: PPTT: Fix to avoid sleep in the atomic context when PPTT is absent
        ACPI: x86: Add skip i2c clients quirk for Lenovo Yoga Book X90
        ACPI: x86: Add skip i2c clients quirk for Acer Iconia One 7 B1-750
        ACPI: x86: Introduce an acpi_quirk_skip_gpio_event_handlers() helper
        ACPI: video: Add backlight=native DMI quirk for Dell Vostro 15 3535
        ACPI: docs: enumeration: Correct reference to the I²C device data type
      abb02a82
    • Linus Torvalds's avatar
      Merge branch 'turbostat' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux · ba9c7791
      Linus Torvalds authored
      Pull turbostat fweaks and fixes from Len Brown:
       "Leprechaun sized fixes and tweaks touching only turbostat.
      
        'Keeping happy users happy since 2010'"
      
      * 'turbostat' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux:
        tools/power turbostat: version 2023.03.17
        tools/power turbostat: fix decoding of HWP_STATUS
        tools/power turbostat: Introduce support for EMR
        tools/power turbostat: remove stray newlines from warn/warnx strings
        tools/power turbostat: Fix /dev/cpu_dma_latency warnings
        tools/power turbostat: Provide better debug messages for failed capabilities accesses
        tools/power turbostat: update dump of SECONDARY_TURBO_RATIO_LIMIT
      ba9c7791
    • Linus Torvalds's avatar
      Merge tag 'for-linus-6.3-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 0eb392ec
      Linus Torvalds authored
      Pull xen fixes from Juergen Gross:
      
       - cleanup for xen time handling
      
       - enable the VGA console in a Xen PVH dom0
      
       - cleanup in the xenfs driver
      
      * tag 'for-linus-6.3-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen: remove unnecessary (void*) conversions
        x86/PVH: obtain VGA console info in Dom0
        x86/xen/time: cleanup xen_tsc_safe_clocksource
        xen: update arch/x86/include/asm/xen/cpuid.h
      0eb392ec
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-6.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux · cb80b960
      Linus Torvalds authored
      Pull RISC-V fixes from Palmer Dabbelt:
      
       - fixes to the ASID allocator to avoid leaking stale mappings between
         tasks
      
       - fix the vmalloc fault handler to tolerate huge pages
      
      * tag 'riscv-for-linus-6.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux:
        RISC-V: mm: Support huge page in vmalloc_fault()
        riscv: asid: Fixup stale TLB entry cause application crash
        Revert "riscv: mm: notify remote harts about mmu cache updates"
      cb80b960
    • Linus Torvalds's avatar
      Merge tag 's390-6.3-3' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · e50a8038
      Linus Torvalds authored
      Pull s390 fixes from Vasily Gorbik:
      
       - Update defconfigs
      
       - Fix early boot code by adding missing intersection check to prevent
         potential overwriting of the ipl report
      
       - Fix a use-after-free issue in s390-specific code related to PCI
         resources being retained after hot-unplugging individual functions,
         by removing the resources from the PCI bus's resource list and using
         the zpci_bar_struct's resource pointer directly
      
      * tag 's390-6.3-3' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390: update defconfigs
        PCI: s390: Fix use-after-free of PCI resources with per-function hotplug
        s390/ipl: add missing intersection check to ipl_report handling
      e50a8038
    • Linus Torvalds's avatar
      Merge tag 'powerpc-6.3-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 17adaeae
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
      
       - Fix false detection of read faults, introduced by execute-only
         support
      
       - Fix a build failure when GENERIC_ALLOCATOR is not selected
      
      Thanks to Russell Currey, Randy Dunlap, Michal Suchánek, Nathan Lynch,
      and Benjamin Gray.
      
      * tag 'powerpc-6.3-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/mm: Fix false detection of read faults
        powerpc/pseries: RTAS work area requires GENERIC_ALLOCATOR
      17adaeae
    • Linus Torvalds's avatar
      Merge tag 'mmc-v6.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · 2c50b0ca
      Linus Torvalds authored
      Pull MMC host fixes from Ulf Hansson:
      
       - dw_mmc-starfive: Fix initialization of the prev_err variable
      
       - sdhci_am654: Lower power-on failed message severity
      
      * tag 'mmc-v6.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc:
        mmc: dw_mmc-starfive: Fix initialization of prev_err
        mmc: sdhci_am654: lower power-on failed message severity
      2c50b0ca
    • Linus Torvalds's avatar
      Merge tag 'sound-6.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 97eb2d98
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "Nothing surprising, a collection of small device-specific fixes.
      
        The majority of changes are for ASoC Intel stuff, while a few other
        ASoC and HD-audio fixes are found"
      
      * tag 'sound-6.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (31 commits)
        ALSA: hda/ca0132: fixup buffer overrun at tuning_ctl_set()
        ALSA: asihpi: check pao in control_message()
        ASoC: hdmi-codec: only startup/shutdown on supported streams
        ASoC: da7219: Initialize jack_det_mutex
        ALSA: hda: Match only Intel devices with CONTROLLER_IN_GPU()
        ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro
        ALSA: hda/realtek: fix speaker, mute/micmute LEDs not work on a HP platform
        ALSA: hda: intel-dsp-config: add MTL PCI id
        ASoC: SOF: IPC4: update gain ipc msg definition to align with fw
        ASoC: SOF: sof-audio: don't squelch errors in WIDGET_SETUP phase
        ASoC: SOF: Intel: hda-ctrl: re-add sleep after entering and exiting reset
        ASoC: SOF: Intel: hda-dsp: harden D0i3 programming sequence
        ASoC: SOF: ipc4-topology: set dmic dai index from copier
        ASoC: SOF: sof-audio: Fix broken early bclk feature for SSP
        ASoC: SOF: Intel: pci-tng: revert invalid bar size setting
        ASoC: SOF: topology: Fix error handling in sof_widget_ready()
        ASoC: Intel: soc-acpi: fix copy-paste issue in topology names
        ASoC: SOF: ipc4-topology: Fix incorrect sample rate print unit
        ASoC: SOF: ipc3: Check for upper size limit for the received message
        ASOC: SOF: Intel: pci-tgl: Fix device description
        ...
      97eb2d98
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2023-03-17' of git://anongit.freedesktop.org/drm/drm · 2cf5a401
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Seems like a pretty regular rc3, i915 and amdgpu with the usual
        selection of fixes, then a scattering of fixes across misc drivers and
        other areas:
      
        accel:
         - build fix for accel
      
        edid:
         - fix info leak in edid
      
        ttm:
         - fix NULL ptr deref
         - reference counting fix
      
        i915:
         - Fix hwmon PL1 power limit enabling
         - Fix audio ELD handling for DP MST
         - Fix PSR io and wake line calculations
         - Fix DG2 HDMI modes with 267.30 and 319.89 MHz pixel clocks
         - Fix SSEU subslice out-of-bounds access
         - Fix misuse of non-idle barriers as fence trackers
      
        amdgpu:
         - SMU 13 update
         - RDNA2 suspend/resume fix when overclocking is enabled
         - SRIOV VCN fixes
         - HDCP suspend/resume fix
         - Fix drm polling splat regression
         - Fix dirty rectangle tracking for PSR
         - Fix vangogh regression on certain BIOSes
         - Misc display fixes
         - Suspend/resume IOMMU regression fix
      
        amdkfd:
         - Fix BO offset for multi-VMA page migration
         - Fix a possible double free
         - Fix potential use after free
         - Fix process cleanup on module exit
      
        bridge:
         - fix returned array size name documentation
      
        fbdev:
         - ref-counting fix for fbdev deferred I/O
      
        virtio:
         - dma sync fix
      
        shmem-helper:
         - error path fix
      
        msm:
         - shrinker blocking fix
      
        panfrost:
         - shrinker rpm fix
      
        chipsfb:
         - fix error code
      
        meson:
         - fix 1px pink line
         - fix regulator interaction
      
        sun4i:
         - fix missing component unbind"
      
      * tag 'drm-fixes-2023-03-17' of git://anongit.freedesktop.org/drm/drm: (38 commits)
        drm/ttm: drop extra ttm_bo_put in ttm_bo_cleanup_refs
        drm/amdgpu: Don't resume IOMMU after incomplete init
        drm/amdkfd: Fixed kfd_process cleanup on module exit.
        drm/amd/display: disconnect MPCC only on OTG change
        drm/amd/display: Fix DP MST sinks removal issue
        drm/amd/display: Do not set DRR on pipe Commit
        drm/amd/display: Remove OTG DIV register write for Virtual signals.
        drm/meson: dw-hdmi: Fix devm_regulator_*get_enable*() conversion again
        drm/bridge: Fix returned array size name for atomic_get_input_bus_fmts kdoc
        drm/amdgpu/vcn: Disable indirect SRAM on Vangogh broken BIOSes
        drm/amdgpu/nv: fix codec array for SR_IOV
        drm/amd/display: Write to correct dirty_rect
        drm/amdgpu: move poll enabled/disable into non DC path
        drm/amd/display: Fix HDCP failing to enable after suspend
        drm/amdkfd: fix potential kgd_mem UAFs
        drm/amdgpu/vcn: custom video info caps for sriov
        drm/amd/pm: Fix sienna cichlid incorrect OD volage after resume
        drm/amd/pm: bump SMU 13.0.4 driver_if header version
        drm/amdkfd: fix a potential double free in pqm_create_queue
        drm/amdkfd: Get prange->offset after svm_range_vram_node_new
        ...
      2cf5a401
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 7622976c
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Ten patches, eight in drivers and two in the core, which correct a
        regression from directory removal and add a no VPD size quirk also to
        fix a regression. All pretty small"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: ufs: mcq: Use active_reqs to check busy in clock scaling
        scsi: core: Fix a procfs host directory removal regression
        scsi: core: Add BLIST_NO_VPD_SIZE for some VDASD
        scsi: mpi3mr: Fix expander node leak in mpi3mr_remove()
        scsi: mpi3mr: Fix memory leaks in mpi3mr_init_ioc()
        scsi: mpi3mr: Fix sas_hba.phy memory leak in mpi3mr_remove()
        scsi: mpi3mr: Fix mpi3mr_hba_port memory leak in mpi3mr_remove()
        scsi: mpi3mr: Fix config page DMA memory leak
        scsi: mpi3mr: Fix throttle_groups memory leak
        scsi: mpt3sas: Fix NULL pointer access in mpt3sas_transport_port_add()
      7622976c
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-cpuidle' · 1fa9d47b
      Rafael J. Wysocki authored
      Merge a PSCI cpuidle driver fix for 6.3-rc1:
      
       - Fix the psci_pd_init_topology() failure path in the PSCI cpuidle
         driver (Shawn Guo).
      
      * pm-cpuidle:
        cpuidle: psci: Iterate backwards over list in psci_pd_remove()
      1fa9d47b
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-video', 'acpi-x86', 'acpi-tools' and 'acpi-docs' · f36cc6cd
      Rafael J. Wysocki authored
      Merge a new ACPI backlight quirk, new ACPI quirks for I2C device
      enumeration on some platforms, a pfrut utility fix and an ACPI
      documentation fix for 6.3-rc3:
      
       - Add backlight=native DMI quirk for Dell Vostro 15 3535 to the ACPI
         video driver (Chia-Lin Kao).
      
       - Add ACPI quirks for I2C devices enumeration on Lenovo Yoga Book X90
         and Acer Iconia One 7 B1-750 (Hans de Goede).
      
       - Fix handling of invalid command line option values in the ACPI pfrut
         utility (Chen Yu).
      
       - Fix references to I2C device data type in the ACPI documentation for
         device enumeration (Andy Shevchenko).
      
      * acpi-video:
        ACPI: video: Add backlight=native DMI quirk for Dell Vostro 15 3535
      
      * acpi-x86:
        ACPI: x86: Add skip i2c clients quirk for Lenovo Yoga Book X90
        ACPI: x86: Add skip i2c clients quirk for Acer Iconia One 7 B1-750
        ACPI: x86: Introduce an acpi_quirk_skip_gpio_event_handlers() helper
      
      * acpi-tools:
        ACPI: tools: pfrut: Check if the input of level and type is in the right numeric range
      
      * acpi-docs:
        ACPI: docs: enumeration: Correct reference to the I²C device data type
      f36cc6cd
    • Len Brown's avatar
      tools/power turbostat: version 2023.03.17 · de7839ee
      Len Brown authored
      Happy St. Patrick's Day!
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      de7839ee
    • Antti Laakso's avatar
      tools/power turbostat: fix decoding of HWP_STATUS · 92c25393
      Antti Laakso authored
      The "excursion to minimum" information is in bit2
      in HWP_STATUS MSR. Fix the bitmask used for
      decoding the register.
      Signed-off-by: default avatarAntti Laakso <antti.laakso@intel.com>
      Reviewed-by: default avatarArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      92c25393
    • Zhang Rui's avatar
      93cac415
    • Len Brown's avatar
      tools/power turbostat: remove stray newlines from warn/warnx strings · 6cbfedc7
      Len Brown authored
      warn(3) terminates strings with newlines
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      6cbfedc7
    • Prarit Bhargava's avatar
      tools/power turbostat: Fix /dev/cpu_dma_latency warnings · 40aafc7d
      Prarit Bhargava authored
      When running as non-root the following error is seen in turbostat:
      
      turbostat: fopen /dev/cpu_dma_latency
      : Permission denied
      
      turbostat and the man page have information on how to avoid other
      permission errors, so these can be fixed the same way.
      
      Provide better /dev/cpu_dma_latency warnings that provide instructions on
      how to avoid the error, and update the man page.
      Signed-off-by: default avatarPrarit Bhargava <prarit@redhat.com>
      Cc: linux-pm@vger.kernel.org
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      40aafc7d
    • Prarit Bhargava's avatar
      tools/power turbostat: Provide better debug messages for failed capabilities accesses · 9c085817
      Prarit Bhargava authored
      turbostat reports some capabilities access errors and not others.  Provide
      the same debug message for all errors.
      
      [lenb: remove extra quotes]
      
      Cc: David Arcari <darcari@redhat.com>
      Signed-off-by: default avatarPrarit Bhargava <prarit@redhat.com>
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      9c085817
    • Len Brown's avatar
      tools/power turbostat: update dump of SECONDARY_TURBO_RATIO_LIMIT · 884a1f95
      Len Brown authored
      cosmetic only (but useful if you copy/paste)
      Signed-off-by: default avatarLen Brown <len.brown@intel.com>
      884a1f95
    • Christian König's avatar
      drm/ttm: drop extra ttm_bo_put in ttm_bo_cleanup_refs · c00133a9
      Christian König authored
      That was accidentially left over when we switched to the delayed delete
      worker.
      Suggested-by: default avatarMatthew Auld <matthew.william.auld@gmail.com>
      Signed-off-by: default avatarChristian König <christian.koenig@amd.com>
      Fixes: 9bff18d1 ("drm/ttm: use per BO cleanup workers")
      Reported-by: default avatarSteven Rostedt (Google) <rostedt@goodmis.org>
      Tested-by: default avatarSteven Rostedt (Google) <rostedt@goodmis.org>
      Reviewed-by: default avatarMatthew Auld <matthew.auld@intel.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230316072647.406707-1-christian.koenig@amd.com
      c00133a9
    • Dave Airlie's avatar
      Merge tag 'amd-drm-fixes-6.3-2023-03-15' of... · c31a72db
      Dave Airlie authored
      Merge tag 'amd-drm-fixes-6.3-2023-03-15' of https://gitlab.freedesktop.org/agd5f/linux into drm-fixes
      
      amd-drm-fixes-6.3-2023-03-15:
      
      amdgpu:
      - SMU 13 update
      - RDNA2 suspend/resume fix when overclocking is enabled
      - SRIOV VCN fixes
      - HDCP suspend/resume fix
      - Fix drm polling splat regression
      - Fix dirty rectangle tracking for PSR
      - Fix vangogh regression on certain BIOSes
      - Misc display fixes
      - Suspend/resume IOMMU regression fix
      
      amdkfd:
      - Fix BO offset for multi-VMA page migration
      - Fix a possible double free
      - Fix potential use after free
      - Fix process cleanup on module exit
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Alex Deucher <alexander.deucher@amd.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230315224400.7558-1-alexander.deucher@amd.com
      c31a72db
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2023-03-15' of... · 2a210e6a
      Dave Airlie authored
      Merge tag 'drm-intel-fixes-2023-03-15' of git://anongit.freedesktop.org/drm/drm-intel into drm-fixes
      
      drm/i915 fixes for v6.3-rc3:
      - Fix hwmon PL1 power limit enabling
      - Fix audio ELD handling for DP MST
      - Fix PSR io and wake line calculations
      - Fix DG2 HDMI modes with 267.30 and 319.89 MHz pixel clocks
      - Fix SSEU subslice out-of-bounds access
      - Fix misuse of non-idle barriers as fence trackers
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Jani Nikula <jani.nikula@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/87r0tq5nyn.fsf@intel.com
      2a210e6a
    • Dave Airlie's avatar
      Merge tag 'drm-misc-fixes-2023-03-16' of git://anongit.freedesktop.org/drm/drm-misc into drm-fixes · bcd9d56f
      Dave Airlie authored
      Short summary of fixes pull:
      
       * fix info leak in edid
       * build fix for accel/
       * ref-counting fix for fbdev deferred I/O
       * driver fixes
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      
      From: Thomas Zimmermann <tzimmermann@suse.de>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230316143347.GA9246@linux-uq9g
      bcd9d56f
  2. 16 Mar, 2023 8 commits
    • Linus Torvalds's avatar
      Merge tag '6.3-rc2-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6 · 38e04b3e
      Linus Torvalds authored
      Pull cifs client fixes from Steve French:
       "Seven cifs/smb3 client fixes, all also for stable:
      
         - four DFS fixes
      
         - multichannel reconnect fix
      
         - fix smb1 stats for cancel command
      
         - fix for set file size error path"
      
      * tag '6.3-rc2-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: use DFS root session instead of tcon ses
        cifs: return DFS root session id in DebugData
        cifs: fix use-after-free bug in refresh_cache_worker()
        cifs: set DFS root session in cifs_get_smb_ses()
        cifs: generate signkey for the channel that's reconnecting
        cifs: Fix smb2_set_path_size()
        cifs: Move the in_send statistic to __smb_send_rqst()
      38e04b3e
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 0ddc84d2
      Linus Torvalds authored
      Pull kvm fixes from Paolo Bonzini:
       "ARM64:
      
         - Address a rather annoying bug w.r.t. guest timer offsetting. The
           synchronization of timer offsets between vCPUs was broken, leading
           to inconsistent timer reads within the VM.
      
        x86:
      
         - New tests for the slow path of the EVTCHNOP_send Xen hypercall
      
         - Add missing nVMX consistency checks for CR0 and CR4
      
         - Fix bug that broke AMD GATag on 512 vCPU machines
      
        Selftests:
      
         - Skip hugetlb tests if huge pages are not available
      
         - Sync KVM exit reasons"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: selftests: Sync KVM exit reasons in selftests
        KVM: selftests: Add macro to generate KVM exit reason strings
        KVM: selftests: Print expected and actual exit reason in KVM exit reason assert
        KVM: selftests: Make vCPU exit reason test assertion common
        KVM: selftests: Add EVTCHNOP_send slow path test to xen_shinfo_test
        KVM: selftests: Use enum for test numbers in xen_shinfo_test
        KVM: selftests: Add helpers to make Xen-style VMCALL/VMMCALL hypercalls
        KVM: selftests: Move the guts of kvm_hypercall() to a separate macro
        KVM: SVM: WARN if GATag generation drops VM or vCPU ID information
        KVM: SVM: Modify AVIC GATag to support max number of 512 vCPUs
        KVM: SVM: Fix a benign off-by-one bug in AVIC physical table mask
        selftests: KVM: skip hugetlb tests if huge pages are not available
        KVM: VMX: Use tabs instead of spaces for indentation
        KVM: VMX: Fix indentation coding style issue
        KVM: nVMX: remove unnecessary #ifdef
        KVM: nVMX: add missing consistency checks for CR0 and CR4
        KVM: arm64: timers: Convert per-vcpu virtual offset to a global value
      0ddc84d2
    • Lukas Bulwahn's avatar
      block: remove obsolete config BLOCK_COMPAT · 8f0d196e
      Lukas Bulwahn authored
      Before commit bdc1ddad ("compat_ioctl: block: move
      blkdev_compat_ioctl() into ioctl.c"), the config BLOCK_COMPAT was used to
      include compat_ioctl.c into the kernel build. With this commit, the code
      is moved into ioctl.c and included with the config COMPAT. So, since then,
      the config BLOCK_COMPAT has no effect and any further purpose.
      
      Remove this obsolete config BLOCK_COMPAT.
      Signed-off-by: default avatarLukas Bulwahn <lukas.bulwahn@gmail.com>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Acked-by: default avatarArnd Bergmann <arnd@arndb.de>
      Link: https://lore.kernel.org/r/20230316111630.4897-1-lukas.bulwahn@gmail.comSigned-off-by: default avatarJens Axboe <axboe@kernel.dk>
      8f0d196e
    • Pavel Begunkov's avatar
      io_uring/rsrc: fix folio accounting · d2acf789
      Pavel Begunkov authored
      | BUG: Bad page state in process kworker/u8:0  pfn:5c001
      | page:00000000bfda61c8 refcount:0 mapcount:0 mapping:0000000000000000 index:0x20001 pfn:0x5c001
      | head:0000000011409842 order:9 entire_mapcount:0 nr_pages_mapped:0 pincount:1
      | anon flags: 0x3fffc00000b0004(uptodate|head|mappedtodisk|swapbacked|node=0|zone=0|lastcpupid=0xffff)
      | raw: 03fffc0000000000 fffffc0000700001 ffffffff00700903 0000000100000000
      | raw: 0000000000000200 0000000000000000 00000000ffffffff 0000000000000000
      | head: 03fffc00000b0004 dead000000000100 dead000000000122 ffff00000a809dc1
      | head: 0000000000020000 0000000000000000 00000000ffffffff 0000000000000000
      | page dumped because: nonzero pincount
      | CPU: 3 PID: 9 Comm: kworker/u8:0 Not tainted 6.3.0-rc2-00001-gc6811bf0cd87 #1
      | Hardware name: linux,dummy-virt (DT)
      | Workqueue: events_unbound io_ring_exit_work
      | Call trace:
      |  dump_backtrace+0x13c/0x208
      |  show_stack+0x34/0x58
      |  dump_stack_lvl+0x150/0x1a8
      |  dump_stack+0x20/0x30
      |  bad_page+0xec/0x238
      |  free_tail_pages_check+0x280/0x350
      |  free_pcp_prepare+0x60c/0x830
      |  free_unref_page+0x50/0x498
      |  free_compound_page+0xcc/0x100
      |  free_transhuge_page+0x1f0/0x2b8
      |  destroy_large_folio+0x80/0xc8
      |  __folio_put+0xc4/0xf8
      |  gup_put_folio+0xd0/0x250
      |  unpin_user_page+0xcc/0x128
      |  io_buffer_unmap+0xec/0x2c0
      |  __io_sqe_buffers_unregister+0xa4/0x1e0
      |  io_ring_exit_work+0x68c/0x1188
      |  process_one_work+0x91c/0x1a58
      |  worker_thread+0x48c/0xe30
      |  kthread+0x278/0x2f0
      |  ret_from_fork+0x10/0x20
      
      Mark reports an issue with the recent patches coalescing compound pages
      while registering them in io_uring. The reason is that we try to drop
      excessive references with folio_put_refs(), but pages were acquired
      with pin_user_pages(), which has extra accounting and so should be put
      down with matching unpin_user_pages() or at least gup_put_folio().
      
      As a fix unpin_user_pages() all but first page instead, and let's figure
      out a better API after.
      
      Fixes: 57bebf80 ("io_uring/rsrc: optimise registered huge pages")
      Reported-by: default avatarMark Rutland <mark.rutland@arm.com>
      Reviewed-by: default avatarJens Axboe <axboe@kernel.dk>
      Tested-by: default avatarJens Axboe <axboe@kernel.dk>
      Signed-off-by: default avatarPavel Begunkov <asml.silence@gmail.com>
      Link: https://lore.kernel.org/r/10efd5507d6d1f05ea0f3c601830e08767e189bd.1678980230.git.asml.silence@gmail.comSigned-off-by: default avatarJens Axboe <axboe@kernel.dk>
      d2acf789
    • Pavel Begunkov's avatar
      io_uring/msg_ring: let target know allocated index · 5da28edd
      Pavel Begunkov authored
      msg_ring requests transferring files support auto index selection via
      IORING_FILE_INDEX_ALLOC, however they don't return the selected index
      to the target ring and there is no other good way for the userspace to
      know where is the receieved file.
      
      Return the index for allocated slots and 0 otherwise, which is
      consistent with other fixed file installing requests.
      
      Cc: stable@vger.kernel.org # v6.0+
      Fixes: e6130eba ("io_uring: add support for passing fixed file descriptors")
      Signed-off-by: default avatarPavel Begunkov <asml.silence@gmail.com>
      Link: https://github.com/axboe/liburing/issues/809Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
      5da28edd
    • Jens Axboe's avatar
      Merge tag 'nvme-6.3-2022-03-16' of git://git.infradead.org/nvme into block-6.3 · 890a2fb0
      Jens Axboe authored
      Pull NVMe fixes from Christoph:
      
      "nvme fixes for Linux 6.3
      
       - avoid potential UAF in nvmet_req_complete (Damien Le Moal)
       - more quirks (Elmer Miroslav Mosher Golovin, Philipp Geulen)
       - fix a memory leak in the nvme-pci probe teardown path (Irvin Cote)
       - repair the MAINTAINERS entry (Lukas Bulwahn)
       - fix handling single range discard request (Ming Lei)
       - show more opcode names in trace events (Minwoo Im)
       - fix nvme-tcp timeout reporting (Sagi Grimberg)"
      
      * tag 'nvme-6.3-2022-03-16' of git://git.infradead.org/nvme:
        nvmet: avoid potential UAF in nvmet_req_complete()
        nvme-trace: show more opcode names
        nvme-tcp: add nvme-tcp pdu size build protection
        nvme-tcp: fix opcode reporting in the timeout handler
        nvme-pci: add NVME_QUIRK_BOGUS_NID for Lexar NM620
        nvme-pci: add NVME_QUIRK_BOGUS_NID for Netac NV3000
        nvme-pci: fixing memory leak in probe teardown path
        nvme: fix handling single range discard request
        MAINTAINERS: repair malformed T: entries in NVM EXPRESS DRIVERS
      890a2fb0
    • Yu Zhe's avatar
      xen: remove unnecessary (void*) conversions · 7ad2c398
      Yu Zhe authored
      Pointer variables of void * type do not require type cast.
      Signed-off-by: default avatarYu Zhe <yuzhe@nfschina.com>
      Reviewed-by: default avatarJuergen Gross <jgross@suse.com>
      Link: https://lore.kernel.org/r/20230316083954.4223-1-yuzhe@nfschina.comSigned-off-by: default avatarJuergen Gross <jgross@suse.com>
      7ad2c398
    • Li zeming's avatar
      io_uring: rsrc: Optimize return value variable 'ret' · 6acd352d
      Li zeming authored
      The initialization assignment of the variable ret is changed to 0, only
      in 'goto fail;' Use the ret variable as the function return value.
      Signed-off-by: default avatarLi zeming <zeming@nfschina.com>
      Link: https://lore.kernel.org/r/20230317182538.3027-1-zeming@nfschina.comSigned-off-by: default avatarJens Axboe <axboe@kernel.dk>
      6acd352d
  3. 15 Mar, 2023 2 commits