1. 26 Jun, 2023 3 commits
    • Rafael J. Wysocki's avatar
      Merge branch 'powercap' · c89a27f4
      Rafael J. Wysocki authored
      Merge power capping updates for 6.5-rc1:
      
       - Introduce power capping core support for Intel TPMI (Topology Aware
         Register and PM Capsule Interface) and a TPMI interface driver for
         Intel RAPL (Zhang Rui, Dan Carpenter).
      
       - Fix CONFIG_IOSF_MBI dependency in the Intel RAPL power capping
         driver (Zhang Rui).
      
       - Fix invalid initialization for pl4_supported field in the Intel RAPL
         power capping driver (Sumeet Pawnikar).
      
      * powercap:
        powercap: RAPL: Fix a NULL vs IS_ERR() bug
        powercap: RAPL: Fix CONFIG_IOSF_MBI dependency
        powercap: RAPL: fix invalid initialization for pl4_supported field
        powercap: intel_rapl: Introduce RAPL TPMI interface driver
        powercap: intel_rapl: Introduce core support for TPMI interface
        powercap: intel_rapl: Introduce RAPL I/F type
        powercap: intel_rapl: Make cpu optional for rapl_package
        powercap: intel_rapl: Remove redundant cpu parameter
        powercap: intel_rapl: Add support for lock bit per Power Limit
        powercap: intel_rapl: Cleanup Power Limits support
        powercap: intel_rapl: Use bitmap for Power Limits
        powercap: intel_rapl: Change primitive order
        powercap: intel_rapl: Use index to initialize primitive information
        powercap: intel_rapl: Support per domain energy/power/time unit
        powercap: intel_rapl: Support per Interface primitive information
        powercap: intel_rapl: Support per Interface rapl_defaults
        powercap: intel_rapl: Allow probing without CPUID match
        powercap: intel_rapl: Remove unused field in struct rapl_if_priv
      c89a27f4
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-sleep' and 'pm-domains' · 9b8f3639
      Rafael J. Wysocki authored
      Merge updates related to system-wide power management and generic power
      domains (genpd) updates for 6.5-rc1:
      
       - Fix the handling of pm_suspend_target_state when CONFIG_PM is unset
         (Kai-Heng Feng).
      
       - Correct spelling mistake in a comment in the hibernation code (Wang
         Honghui).
      
       - Add arch_resume_nosmt() prototype to avoid a "missing prototypes"
         build warning (Arnd Bergmann).
      
       - Restrict pm_pr_dbg() to system-wide power transitions and use it in
         a few additional places (Mario Limonciello).
      
       - Drop verification of in-params from genpd_add_device() and ensure
         that all of its callers will do it (Ulf Hansson).
      
       - Prevent possible integer overflows from occurring in
         genpd_parse_state() (Nikita Zhandarovich).
      
      * pm-sleep:
        platform/x86/amd: pmc: Use pm_pr_dbg() for suspend related messages
        pinctrl: amd: Use pm_pr_dbg to show debugging messages
        ACPI: x86: Add pm_debug_messages for LPS0 _DSM state tracking
        include/linux/suspend.h: Only show pm_pr_dbg messages at suspend/resume
        PM: suspend: add a arch_resume_nosmt() prototype
        PM: hibernate: Correct spelling mistake in a comment
        PM: suspend: Fix pm_suspend_target_state handling for !CONFIG_PM
      
      * pm-domains:
        PM: domains: Move the verification of in-params from genpd_add_device()
        PM: domains: fix integer overflow issues in genpd_parse_state()
      9b8f3639
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-cpufreq' and 'pm-cpuidle' · 4af191d6
      Rafael J. Wysocki authored
      Merge cpufreq and cpuidle updates for 6.5-rc1:
      
       - Prevent cpufreq drivers that provide the ->adjust_perf() callback
         without a ->fast_switch() one which is used as a fallback from the
         former in some cases (Wyes Karny).
      
       - Fix some issues related to the AMD P-state cpufreq driver (Mario
         Limonciello, Wyes Karny).
      
       - Fix the energy_performance_preference attribute handling in the
         intel_pstate driver in passive mode (Tero Kristo).
      
       - Clean up the intel_idle driver, make it work with VM guests that
         cannot use the MWAIT instruction and address the case in which the
         host may enter a deep idle state when the guest is idle (Arjan van
         de Ven).
      
      * pm-cpufreq:
        cpufreq: intel_pstate: Fix energy_performance_preference for passive
        cpufreq: amd-pstate: Add a kernel config option to set default mode
        cpufreq: amd-pstate: Set a fallback policy based on preferred_profile
        ACPI: CPPC: Add definition for undefined FADT preferred PM profile value
        cpufreq: amd-pstate: Set default governor to schedutil
        cpufreq: amd-pstate: Make amd-pstate EPP driver name hyphenated
        cpufreq: amd-pstate: Write CPPC enable bit per-socket
        cpufreq: Fail driver register if it has adjust_perf without fast_switch
      
      * pm-cpuidle:
        intel_idle: Add a "Long HLT" C1 state for the VM guest mode
        intel_idle: Add support for using intel_idle in a VM guest using just hlt
        intel_idle: clean up the (new) state_update_enter_method function
        intel_idle: refactor state->enter manipulation into its own function
      4af191d6
  2. 21 Jun, 2023 5 commits
  3. 20 Jun, 2023 2 commits
  4. 18 Jun, 2023 6 commits
  5. 17 Jun, 2023 5 commits
    • Linus Torvalds's avatar
      Merge tag 'staging-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 1b29d271
      Linus Torvalds authored
      Pull staging driver fix from Greg KH:
       "Here is a single staging driver "fix" for 6.4-rc7. I've been sitting
        on it in my tree for many weeks as it is just a simple documentation
        update, with the hope that maybe some other staging driver fixes would
        need to be merged for 6.4-final, but that does not seem to be the
        case.
      
        So please, pull in this one documentation update so that Aaro doesn't
        get emails going forward that he can't do anything about"
      
      * tag 'staging-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        staging: octeon: delete my name from TODO contact
      1b29d271
    • Linus Torvalds's avatar
      Merge tag 'usb-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 670062e7
      Linus Torvalds authored
      Pull USB / Thunderbolt fixes from Greg KH:
       "Here are some small USB and Thunderbolt driver fixes and new device
        ids for 6.4-rc7 to resolve some reported problems. Included in here
        are:
      
         - new USB serial device ids
      
         - USB gadget core fixes for long-dissussed problems
      
         - dwc3 bugfixes for reported issues.
      
         - typec driver fixes
      
         - thunderbolt driver fixes
      
        All of these have been in linux-next this week with no reported issues"
      
      * tag 'usb-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        usb: gadget: udc: core: Prevent soft_connect_store() race
        usb: gadget: udc: core: Offload usb_udc_vbus_handler processing
        usb: typec: Fix fast_role_swap_current show function
        usb: typec: ucsi: Fix command cancellation
        USB: dwc3: fix use-after-free on core driver unbind
        USB: dwc3: qcom: fix NULL-deref on suspend
        usb: dwc3: gadget: Reset num TRBs before giving back the request
        usb: gadget: udc: renesas_usb3: Fix RZ/V2M {modprobe,bind} error
        USB: serial: option: add Quectel EM061KGL series
        thunderbolt: Mask ring interrupt on Intel hardware as well
        thunderbolt: Do not touch CL state configuration during discovery
        thunderbolt: Increase DisplayPort Connection Manager handshake timeout
        thunderbolt: dma_test: Use correct value for absent rings when creating paths
      670062e7
    • Linus Torvalds's avatar
      Merge tag 'tty-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 3c0eb442
      Linus Torvalds authored
      Pull serial driver fixes from Greg KH:
       "Here are two small serial driver fixes for 6.4-rc7 that resolve some
        reported problems:
      
         - lantiq serial driver irq fix
      
         - fsl_lpuart serial driver watermark fix
      
        Both of these have been in linux-next this week with no reported issues"
      
      * tag 'tty-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        tty: serial: fsl_lpuart: reduce RX watermark to 0 on LS1028A
        serial: lantiq: add missing interrupt ack
      3c0eb442
    • Ben Hutchings's avatar
      parisc: Delete redundant register definitions in <asm/assembly.h> · b5b2a02b
      Ben Hutchings authored
      We define sp and ipsw in <asm/asmregs.h> using ".reg", and when using
      current binutils (snapshot 2.40.50.20230611) the definitions in
      <asm/assembly.h> using "=" conflict with those:
      
      arch/parisc/include/asm/assembly.h: Assembler messages:
      arch/parisc/include/asm/assembly.h:93: Error: symbol `sp' is already defined
      arch/parisc/include/asm/assembly.h:95: Error: symbol `ipsw' is already defined
      
      Delete the duplicate definitions in <asm/assembly.h>.
      
      Also delete the definition of gp, which isn't used anywhere.
      Signed-off-by: default avatarBen Hutchings <benh@debian.org>
      Cc: stable@vger.kernel.org # v6.0+
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      b5b2a02b
    • Linus Torvalds's avatar
      Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · c6cf6be9
      Linus Torvalds authored
      Pull clk fixes from Stephen Boyd:
       "A handful of clk driver fixes:
      
         - Fix an OOB issue in the Mediatek mt8365 driver where arrays of clks
           are mismatched in size
      
         - Use the proper clk_ops for a few clks in the Mediatek mt8365 driver
      
         - Stop using abs() in clk_composite_determine_rate() because 64-bit
           math goes wrong on large unsigned long numbers that are subtracted
           and passed into abs()
      
         - Zero initialize a struct clk_init_data in clk-loongson2 to avoid
           stack junk confusing clk_hw_register()
      
         - Actually use a pointer to __iomem for writel() in
           pxa3xx_clk_update_accr() so we don't oops"
      
      * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
        clk: pxa: fix NULL pointer dereference in pxa3xx_clk_update_accr
        clk: clk-loongson2: Zero init clk_init_data
        clk: mediatek: mt8365: Fix inverted topclk operations
        clk: composite: Fix handling of high clock rates
        clk: mediatek: mt8365: Fix index issue
      c6cf6be9
  6. 16 Jun, 2023 19 commits
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-2023-06-17' of git://anongit.freedesktop.org/drm/drm · 1639fae5
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "A bunch of misc fixes across the board.
      
        amdgpu is the usual bulk with a revert and other fixes, nouveau has a
        race fix that was causing a UAF that was hard hanging systems,
        otherwise some qaic, bridge and radeon.
      
        amdgpu:
         - GFX9 preemption fixes
         - Add missing radeon secondary PCI ID
         - vblflash fixes
         - SMU 13 fix
         - VCN 4.0 fix
         - Re-enable TOPDOWN flag for large BAR systems to fix regression
         - eDP fix
         - PSR hang fix
         - DPIA fix
      
        radeon:
         - fbdev client warning fix
      
        qaic:
         - leak fix
         - null ptr deref fix
      
        nouveau:
         - use-after-free caused by fence race fix
         - runtime pm fix
         - NULL ptr checks
      
        bridge:
         - ti-sn65dsi86: Avoid possible buffer overflow"
      
      * tag 'drm-fixes-2023-06-17' of git://anongit.freedesktop.org/drm/drm: (21 commits)
        nouveau: fix client work fence deletion race
        drm/amd/display: limit DPIA link rate to HBR3
        drm/amd/display: fix the system hang while disable PSR
        drm/amd/display: edp do not add non-edid timings
        Revert "drm/amdgpu: remove TOPDOWN flags when allocating VRAM in large bar system"
        drm/amdgpu: vcn_4_0 set instance 0 init sched score to 1
        drm/radeon: Disable outputs when releasing fbdev client
        drm/amd/pm: workaround for compute workload type on some skus
        drm/amd: Tighten permissions on VBIOS flashing attributes
        drm/amd: Make sure image is written to trigger VBIOS image update flow
        drm/amdgpu: add missing radeon secondary PCI ID
        drm/amdgpu: Implement gfx9 patch functions for resubmission
        drm/amdgpu: Modify indirect buffer packages for resubmission
        drm/amdgpu: Program gds backup address as zero if no gds allocated
        drm/nouveau: add nv_encoder pointer check for NULL
        drm/amdgpu: Reset CP_VMID_PREEMPT after trailing fence signaled
        drm/nouveau/dp: check for NULL nv_connector->native_mode
        drm/bridge: ti-sn65dsi86: Avoid possible buffer overflow
        drm/nouveau: don't detect DSM for non-NVIDIA device
        accel/qaic: Fix NULL pointer deref in qaic_destroy_drm_device()
        ...
      1639fae5
    • David Howells's avatar
      afs: Fix vlserver probe RTT handling · ba00b190
      David Howells authored
      In the same spirit as commit ca57f022 ("afs: Fix fileserver probe
      RTT handling"), don't rule out using a vlserver just because there
      haven't been enough packets yet to calculate a real rtt.  Always set the
      server's probe rtt from the estimate provided by rxrpc_kernel_get_srtt,
      which is capped at 1 second.
      
      This could lead to EDESTADDRREQ errors when accessing a cell for the
      first time, even though the vl servers are known and have responded to a
      probe.
      
      Fixes: 1d4adfaf ("rxrpc: Make rxrpc_kernel_get_srtt() indicate validity")
      Signed-off-by: default avatarMarc Dionne <marc.dionne@auristor.com>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      cc: linux-afs@lists.infradead.org
      Link: http://lists.infradead.org/pipermail/linux-afs/2023-June/006746.htmlSigned-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ba00b190
    • Dave Airlie's avatar
      Merge tag 'drm-misc-fixes-2023-06-16' of git://anongit.freedesktop.org/drm/drm-misc into drm-fixes · 9930f518
      Dave Airlie authored
      drm-misc-fixes maybe in time for v6.4-rc7:
      - qaic leak and null deref fix.
      - Fix runtime pm in nouveau.
      - Fix array overflow in ti-sn65dsi86 pwm chip handling.
      - Assorted null check fixes in nouveau.
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      From: Maarten Lankhorst <dev@lankhorst.se>
      Link: https://patchwork.freedesktop.org/patch/msgid/641eb8a8-fbd7-90ad-0805-310b7fec9344@lankhorst.se
      9930f518
    • Linus Torvalds's avatar
      Merge tag 'for-6.4-rc6-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · 4973ca29
      Linus Torvalds authored
      Pull btrfs fixes from David Sterba:
       "Two fixes for NOCOW files, a regression fix in scrub and an assertion
        fix:
      
         - NOCOW fixes:
            - keep length of iomap direct io request in case of a failure
            - properly pass mode of extent reference checking, this can break
              some cases for swapfile
      
         - fix error value confusion when scrubbing a stripe
      
         - convert assertion to a proper error handling when loading global
           roots, reported by syzbot"
      
      * tag 'for-6.4-rc6-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
        btrfs: scrub: fix a return value overwrite in scrub_stripe()
        btrfs: do not ASSERT() on duplicated global roots
        btrfs: can_nocow_file_extent should pass down args->strict from callers
        btrfs: fix iomap_begin length for nocow writes
      4973ca29
    • Linus Torvalds's avatar
      Merge tag 'block-6.4-2023-06-15' of git://git.kernel.dk/linux · b9c1133a
      Linus Torvalds authored
      Pull block fix from Jens Axboe:
       "Just a single fix for blk-cg stats flushing"
      
      * tag 'block-6.4-2023-06-15' of git://git.kernel.dk/linux:
        blk-cgroup: Flush stats before releasing blkcg_gq
      b9c1133a
    • Linus Torvalds's avatar
      Merge tag 'io_uring-6.4-2023-06-15' of git://git.kernel.dk/linux · 3a12faba
      Linus Torvalds authored
      Pull io_uring fixes from Jens Axboe:
       "A fix for sendmsg with CMSG, and the followup fix discussed for
        avoiding touching task->worker_private after the worker has started
        exiting"
      
      * tag 'io_uring-6.4-2023-06-15' of git://git.kernel.dk/linux:
        io_uring/io-wq: clear current->worker_private on exit
        io_uring/net: save msghdr->msg_control for retries
      3a12faba
    • Linus Torvalds's avatar
      Merge tag 'sound-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · b4af6821
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "Just a few small fixes. The only change to the core code is for a
        minor race in ALSA OSS sequencer, and the rest are all device-specific
        fixes (regression fixes and a usual quirk)"
      
      * tag 'sound-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: usb-audio: Add quirk flag for HEM devices to enable native DSD playback
        ALSA: usb-audio: Fix broken resume due to UAC3 power state
        ALSA: seq: oss: Fix racy open/close of MIDI devices
        ASoC: tegra: Fix Master Volume Control
        ALSA: hda/realtek: Add a quirk for Compaq N14JP6
        firmware: cs_dsp: Log correct region name in bin error messages
      b4af6821
    • Linus Torvalds's avatar
      Merge tag 'urgent-rcu.2023.06.11a' of... · b73056e9
      Linus Torvalds authored
      Merge tag 'urgent-rcu.2023.06.11a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu
      
      Pull RCU fix from Paul McKenney:
       "This fixes a spinlock-initialization regression in SRCU that causes
        the SRCU notifier to fail.
      
        The fix simply adds the initialization, but introduces a #ifdef
        because there is no spinlock to initialize for the Tiny SRCU used in
        !SMP builds.
      
        Yes, it would be nice to abstract this somehow in order to hide it in
        SRCU, but I still don't see a good way of doing this"
      
      * tag 'urgent-rcu.2023.06.11a' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu:
        notifier: Initialize new struct srcu_usage field
      b73056e9
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux · f4fd69a3
      Linus Torvalds authored
      Pull RISC-V fix from Palmer Dabbelt:
      
       - A documentation patch describing how we use patchwork
      
      * tag 'riscv-for-linus-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux:
        Documentation: RISC-V: patch-acceptance: mention patchwork's role
      f4fd69a3
    • Ulf Hansson's avatar
      PM: domains: Move the verification of in-params from genpd_add_device() · 4384a70c
      Ulf Hansson authored
      Commit f38d1a6d ("PM: domains: Allocate governor data dynamically
      based on a genpd governor") started to use the in-parameters in
      genpd_add_device(), without first doing a verification of them.
      
      This isn't really a big problem, as most callers do a verification already.
      
      Therefore, let's drop the verification from genpd_add_device() and make
      sure all the callers take care of it instead.
      Reported-by: default avatarDan Carpenter <dan.carpenter@linaro.org>
      Fixes: f38d1a6d ("PM: domains: Allocate governor data dynamically based on a genpd governor")
      Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      4384a70c
    • Wyes Karny's avatar
      cpufreq: amd-pstate: Make amd-pstate EPP driver name hyphenated · f4aad639
      Wyes Karny authored
      amd-pstate passive mode driver is hyphenated. So make amd-pstate active
      mode driver consistent with that rename "amd_pstate_epp" to
      "amd-pstate-epp".
      
      Fixes: ffa5096a ("cpufreq: amd-pstate: implement Pstate EPP support for the AMD processors")
      Cc: All applicable <stable@vger.kernel.org>
      Reviewed-by: default avatarGautham R. Shenoy <gautham.shenoy@amd.com>
      Signed-off-by: default avatarWyes Karny <wyes.karny@amd.com>
      Acked-by: default avatarHuang Rui <ray.huang@amd.com>
      Reviewed-by: default avatarPerry Yuan <Perry.Yuan@amd.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      f4aad639
    • Wyes Karny's avatar
      cpufreq: amd-pstate: Write CPPC enable bit per-socket · 217e6778
      Wyes Karny authored
      Currently amd_pstate sets CPPC enable bit in MSR_AMD_CPPC_ENABLE only
      for the CPU where the module_init happened. But MSR_AMD_CPPC_ENABLE is
      per-socket. This causes CPPC enable bit to set for only one socket for
      servers with more than one physical packages. To fix this write
      MSR_AMD_CPPC_ENABLE per-socket.
      
      Also, handle duplicate calls for cppc_enable, because it's called from
      per-policy/per-core callbacks and can result in duplicate MSR writes.
      
      Before the fix:
      amd@amd:~$ sudo rdmsr -a 0xc00102b1 | uniq --count
      	192 0
          192 1
      
      After the fix:
      amd@amd:~$ sudo rdmsr -a 0xc00102b1 | uniq --count
          384 1
      Suggested-by: default avatarGautham R. Shenoy <gautham.shenoy@amd.com>
      Signed-off-by: default avatarWyes Karny <wyes.karny@amd.com>
      Acked-by: default avatarHuang Rui <ray.huang@amd.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      217e6778
    • Arjan van de Ven's avatar
      intel_idle: Add support for using intel_idle in a VM guest using just hlt · 2f3d08f0
      Arjan van de Ven authored
      In a typical VM guest, the mwait instruction is not available, leaving
      only the 'hlt' instruction (which causes a VMEXIT to the host).
      
      So for this common case, intel_idle will detect the lack of mwait, and
      fail to initialize (after which another idle method would step in which
      will just use hlt always).
      
      Other (non-common) cases exist; the table below shows the before/after
      for these:
      
      +------------+--------------------------+-------------------------+
      | Hypervisor | Idle method before patch | Idle method after patch |
      | exposes    |                          |                         |
      +============+==========================+=========================+
      | nothing    | default_idle fallback    | intel_idle VM table     |
      | (common)   | (straight "hlt")         |                         |
      +------------+--------------------------+-------------------------+
      | mwait      | intel_idle mwait table   | intel_idle mwait table  |
      +------------+--------------------------+-------------------------+
      | ACPI       | ACPI C1 state ("hlt")    | intel_idle VM table     |
      +------------+--------------------------+-------------------------+
      
      This is only applicable to CPUs known by intel_idle. For the bare metal
      case, unknown CPU models will use the ACPI tables (when available) to
      get estimates for latency and break even point for longer idle states.
      In guests, the common case is that ACPI tables are not available, but
      even when they are available, they can't and don't provide the latency
      information for the longer (mwait based) states. For this scenario
      (unknown CPU model), the default_idle mode (no ACPI) or ACPI C1 (ACPI
      avaible) will be used.
      
      By providing capability to do this with the intel_idle driver, we can
      do better than the fallback or ACPI table methods. While this current
      change only gets us to the existing behavior, later patches in this
      series will add new capabilities such as optimized TLB flushing.
      
      In order to do this, a simplified version of the initialization
      function for VM guests is created, and this will be called if the CPU
      is recognized, but mwait is not supported, and we're in a VM guest.
      
      One thing to note is that the max latency (and break even) of this C1
      state is higher than the typical bare metal C1 state. Because hlt causes
      a vmexit, and the cost of vmexit + hypervisor overhead + vmenter is
      typically in the order of upto 5 microseconds... even if the hypervisor
      does not actually goes into a hardware power saving state.
      Signed-off-by: default avatarArjan van de Ven <arjan@linux.intel.com>
      [ rjw: Dropped redundant checks from should_verify_mwait() ]
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      2f3d08f0
    • Takashi Iwai's avatar
      Merge tag 'asoc-fix-v6.4-rc6-2' of... · 227d2c31
      Takashi Iwai authored
      Merge tag 'asoc-fix-v6.4-rc6-2' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus
      
      ASoC: Fixes for v6.4
      
      A couple more fixes for v6.4, one fixing a misleading error log and
      another stopping us seeing spurious failures setting the master volume
      on some Tegra systems introduced by a change to how we calculate delay
      times.
      227d2c31
    • Lukasz Tyl's avatar
      ALSA: usb-audio: Add quirk flag for HEM devices to enable native DSD playback · 122e2cb7
      Lukasz Tyl authored
      This commit adds new DEVICE_FLG with QUIRK_FLAG_DSD_RAW and Vendor Id for
      HEM devices which supports native DSD. Prior to this change Linux kernel
      was not enabling native DSD playback for HEM devices, and as a result,
      DSD audio was being converted to PCM "on the fly". HEM devices,
      when connected to the system, would only play audio in PCM format,
      even if the source material was in DSD format. With the addition of new
      VENDOR_FLG in the quircks.c file, the devices are now correctly
      recognized, and raw DSD data is transmitted to the device,
      allowing for native DSD playback.
      Signed-off-by: default avatarLukasz Tyl <ltyl@hem-e.com>
      Cc: <stable@vger.kernel.org>
      Link: https://lore.kernel.org/r/20230614122524.30271-1-ltyl@hem-e.comSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      122e2cb7
    • Takashi Iwai's avatar
      ALSA: usb-audio: Fix broken resume due to UAC3 power state · 8ba61c9f
      Takashi Iwai authored
      As reported in the bugzilla below, the PM resume of a UAC3 device may
      fail due to the incomplete power state change, stuck at D1.  The
      reason is that the driver expects the full D0 power state change only
      at hw_params, while the normal PCM resume procedure doesn't call
      hw_params.
      
      For fixing the bug, we add the same power state update to D0 at the
      prepare callback, which is certainly called by the resume procedure.
      
      Note that, with this change, the power state change in the hw_params
      becomes almost redundant, since snd_usb_hw_params() doesn't touch the
      parameters (at least it tires so).  But dropping it is still a bit
      risky (e.g. we have the media-driver binding), so I leave the D0 power
      state change in snd_usb_hw_params() as is for now.
      
      Fixes: a0a4959e ("ALSA: usb-audio: Operate UAC3 Power Domains in PCM callbacks")
      Cc: <stable@vger.kernel.org>
      Link: https://bugzilla.kernel.org/show_bug.cgi?id=217539
      Link: https://lore.kernel.org/r/20230612132818.29486-1-tiwai@suse.deSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      8ba61c9f
    • Takashi Iwai's avatar
      ALSA: seq: oss: Fix racy open/close of MIDI devices · 297224fc
      Takashi Iwai authored
      Although snd_seq_oss_midi_open() and snd_seq_oss_midi_close() can be
      called concurrently from different code paths, we have no proper data
      protection against races.  Introduce open_mutex to each seq_oss_midi
      object for avoiding the races.
      Reported-by: default avatar"Gong, Sishuai" <sishuai@purdue.edu>
      Closes: https://lore.kernel.org/r/7DC9AF71-F481-4ABA-955F-76C535661E33@purdue.edu
      Link: https://lore.kernel.org/r/20230612125533.27461-1-tiwai@suse.deSigned-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      297224fc
    • Linus Torvalds's avatar
      Merge tag 'net-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 40f71e7c
      Linus Torvalds authored
      Pull networking fixes from Jakub Kicinski:
       "Including fixes from wireless, and netfilter.
      
        Selftests excluded - we have 58 patches and diff of +442/-199, which
        isn't really small but perhaps with the exception of the WiFi locking
        change it's old(ish) bugs.
      
        We have no known problems with v6.4.
      
        The selftest changes are rather large as MPTCP folks try to apply
        Greg's guidance that selftest from torvalds/linux should be able to
        run against stable kernels.
      
        Last thing I should call out is the DCCP/UDP-lite deprecation notices.
        We are fairly sure those are dead, but if we're wrong reverting them
        back in won't be fun.
      
        Current release - regressions:
      
         - wifi:
            - cfg80211: fix double lock bug in reg_wdev_chan_valid()
            - iwlwifi: mvm: spin_lock_bh() to fix lockdep regression
      
        Current release - new code bugs:
      
         - handshake: remove fput() that causes use-after-free
      
        Previous releases - regressions:
      
         - sched: cls_u32: fix reference counter leak leading to overflow
      
         - sched: cls_api: fix lockup on flushing explicitly created chain
      
        Previous releases - always broken:
      
         - nf_tables: integrate pipapo into commit protocol
      
         - nf_tables: incorrect error path handling with NFT_MSG_NEWRULE, fix
           dangling pointer on failure
      
         - ping6: fix send to link-local addresses with VRF
      
         - sched: act_pedit: parse L3 header for L4 offset, the skb may not
           have the offset saved
      
         - sched: act_ct: fix promotion of offloaded unreplied tuple
      
         - sched: refuse to destroy an ingress and clsact Qdiscs if there are
           lockless change operations in flight
      
         - wifi: mac80211: fix handful of bugs in multi-link operation
      
         - ipvlan: fix bound dev checking for IPv6 l3s mode
      
         - eth: enetc: correct the indexes of highest and 2nd highest TCs
      
         - eth: ice: fix XDP memory leak when NIC is brought up and down
      
        Misc:
      
         - add deprecation notices for UDP-lite and DCCP
      
         - selftests: mptcp: skip tests not supported by old kernels
      
         - sctp: handle invalid error codes without calling BUG()"
      
      * tag 'net-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (91 commits)
        dccp: Print deprecation notice.
        udplite: Print deprecation notice.
        octeon_ep: Add missing check for ioremap
        selftests/ptp: Fix timestamp printf format for PTP_SYS_OFFSET
        net: ethernet: stmicro: stmmac: fix possible memory leak in __stmmac_open
        net: tipc: resize nlattr array to correct size
        sfc: fix XDP queues mode with legacy IRQ
        net: macsec: fix double free of percpu stats
        net: lapbether: only support ethernet devices
        MAINTAINERS: add reviewers for SMC Sockets
        s390/ism: Fix trying to free already-freed IRQ by repeated ism_dev_exit()
        net: dsa: felix: fix taprio guard band overflow at 10Mbps with jumbo frames
        net/sched: cls_api: Fix lockup on flushing explicitly created chain
        ice: Fix ice module unload
        net/handshake: remove fput() that causes use-after-free
        selftests: forwarding: hw_stats_l3: Set addrgenmode in a separate step
        net/sched: qdisc_destroy() old ingress and clsact Qdiscs before grafting
        net/sched: Refactor qdisc_graft() for ingress and clsact Qdiscs
        net/sched: act_ct: Fix promotion of offloaded unreplied tuple
        wifi: iwlwifi: mvm: spin_lock_bh() to fix lockdep regression
        ...
      40f71e7c
    • Linus Torvalds's avatar
      Merge tag 'loongarch-fixes-6.4-1' of... · 627d8586
      Linus Torvalds authored
      Merge tag 'loongarch-fixes-6.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
      
      Pull LoongArch fixes from Huacai Chen:
       "Some trivial bug fixes for v6.4-rc7"
      
      * tag 'loongarch-fixes-6.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson:
        LoongArch: Fix debugfs_create_dir() error checking
        LoongArch: Avoid uninitialized alignment_mask
        LoongArch: Fix perf event id calculation
        LoongArch: Fix the write_fcsr() macro
        LoongArch: Let pmd_present() return true when splitting pmd
      627d8586