Skip to content
  1. May 23, 2023
    • Takashi Iwai's avatar
      ALSA: seq: Introduce SNDRV_SEQ_IOCTL_USER_PVERSION ioctl · afb72505
      Takashi Iwai authored
      
      
      For the future extension of ALSA sequencer ABI, introduce a new ioctl
      SNDRV_SEQ_IOCTL_USER_PVERSION.  This is similar like the ioctls used
      in PCM and other interfaces, for an application to specify its
      supporting ABI version.
      
      The use of this ioctl will be mandatory for the upcoming UMP support.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-25-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      afb72505
    • Takashi Iwai's avatar
      ALSA: seq: Prohibit creating ports with special numbers · 13599053
      Takashi Iwai authored
      
      
      Some port numbers are special, such as 254 for subscribers and 255 for
      broadcast.  Return error if application tries to create such a port.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-24-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      13599053
    • Takashi Iwai's avatar
      ALSA: seq: Check validity before creating a port object · 4f92eb79
      Takashi Iwai authored
      
      
      The client type and the port info validity check should be done before
      actually creating a port, instead of unnecessary create-and-scratch.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-23-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      4f92eb79
    • Takashi Iwai's avatar
      ALSA: seq: Check the conflicting port at port creation · 7c3f0d3d
      Takashi Iwai authored
      
      
      We didn't check if a port with the given port number has been already
      present at creating a new port.  Check it and return -EBUSY properly
      if the port number conflicts.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-22-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      7c3f0d3d
    • Takashi Iwai's avatar
      ALSA: seq: Drop dead code for the old broadcast support · 94c5b717
      Takashi Iwai authored
      
      
      The broadcast and multicast supports have been never enabled.
      Let's drop the dead code.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-21-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      94c5b717
    • Takashi Iwai's avatar
      ALSA: seq: Treat snd_seq_client object directly in client drivers · d0c8308f
      Takashi Iwai authored
      
      
      Introduce the new helpers, snd_seq_kernel_client_get() and _put() for
      kernel client drivers to treat the snd_seq_client more directly.
      This allows us to reduce the exported symbols and APIs at each time we
      need to access some field in future.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-20-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      d0c8308f
    • Takashi Iwai's avatar
      ALSA: seq: Add snd_seq_expand_var_event_at() helper · ea46f797
      Takashi Iwai authored
      
      
      Create a new variant of snd_seq_expand_var_event() for expanding the
      data starting from the given byte offset.  It'll be used by the new
      UMP sequencer code later.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-19-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      ea46f797
    • Takashi Iwai's avatar
      ALSA: seq: Clear padded bytes at expanding events · f80e6d60
      Takashi Iwai authored
      
      
      There can be a small memory hole that may not be cleared at expanding
      an event with the variable length type.  Make sure to clear it.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-18-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      f80e6d60
    • Takashi Iwai's avatar
      ALSA: usb-audio: Inform inconsistent protocols in GTBs · f4487c42
      Takashi Iwai authored
      
      
      When parsing Group Terminal Blocks, we overwrote the preferred
      protocol and the protocol capabilities silently from the last parsed
      GTB.  This patch adds the information print indicating the unexpected
      overrides instead of silent action.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-17-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      f4487c42
    • Takashi Iwai's avatar
      ALSA: usb-audio: Enable the legacy raw MIDI support · ec362b63
      Takashi Iwai authored
      
      
      Attach the legacy rawmidi devices when enabled in Kconfig accordingly.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-16-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      ec362b63
    • Takashi Iwai's avatar
      ALSA: ump: Add legacy raw MIDI support · 0b5288f5
      Takashi Iwai authored
      
      
      This patch extends the UMP core code to support the legacy MIDI 1.0
      rawmidi devices.  When the new kconfig CONFIG_SND_UMP_LEGACY_RAWMIDI
      is set, the UMP core allows to attach an additional rawmidi device for
      each UMP Endpoint.  The rawmidi device contains 16 substreams where
      each substream corresponds to a UMP Group belonging to the EP.  The
      device reads/writes the legacy MIDI 1.0 byte streams and translates
      from/to UMP packets.
      
      The legacy rawmidi devices are exclusive with the UMP rawmidi devices,
      hence both of them can't be opened at the same time unless the UMP
      rawmidi is opened in APPEND mode.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-15-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      0b5288f5
    • Takashi Iwai's avatar
      ALSA: ump: Redirect rawmidi substream access via own helpers · 6b41e64a
      Takashi Iwai authored
      
      
      This is a code refactoring for abstracting the rawmidi access to the
      UMP's own helpers.  It's a preliminary work for the later code
      refactoring of the UMP layer.
      
      Until now, we access to the rawmidi substream directly from the
      driver via rawmidi access helpers, but after this change, the driver
      is supposed to access via the newly introduced snd_ump_ops and
      receive/transmit via snd_ump_receive() and snd_ump_transmit() helpers.
      As of this commit, those are merely wrappers for the rawmidi
      substream, and no much function change is seen here.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-14-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      6b41e64a
    • Takashi Iwai's avatar
      ALSA: usb-audio: Create UMP blocks from USB MIDI GTBs · d9c99876
      Takashi Iwai authored
      
      
      USB MIDI spec defines the Group Terminal Blocks (GTB) that associate
      multiple UMP Groups.  Those correspond to snd_ump_block entities in
      ALSA UMP abstraction, and now we create those UMP Block objects for
      each UMP Endpoint from the parsed GTB information.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-13-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      d9c99876
    • Takashi Iwai's avatar
      ALSA: usb-audio: Trim superfluous "MIDI" suffix from UMP EP name · 51701400
      Takashi Iwai authored
      
      
      A single USB audio device may have multiple interfaces for different
      purposes (e.g. audio, MIDI and HID), where the iInterface descriptor
      of each interface may contain an own suffix, e.g. "MIDI" for a MIDI
      interface.  as such a suffix is superfluous as a rawmidi and UMP
      Endpoint name, this patch trims the superfluous "MIDI" suffix from the
      name string.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-12-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      51701400
    • Takashi Iwai's avatar
      ALSA: usb-audio: Get UMP EP name string from USB interface · 06cf3bf0
      Takashi Iwai authored
      
      
      USB descriptor may provide a nicer name for USB interface, and we may
      take it as the UMP Endpoint name.  The UMP EP name is copied as the
      rawmidi name, too.
      
      Also, fill the UMP block product_id field from the iSerialNumber
      string of the USB device descriptor as a recommended unique id, too.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-11-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      06cf3bf0
    • Takashi Iwai's avatar
      ALSA: usb-audio: USB MIDI 2.0 UMP support · ff49d1df
      Takashi Iwai authored
      
      
      This patch provides a basic support for USB MIDI 2.0.  As of this
      patch, the driver creates a UMP device per MIDI I/O endpoints, which
      serves as a dumb terminal to read/write UMP streams.
      
      A new Kconfig CONFIG_SND_USB_AUDIO_MIDI_V2 manages whether to enable
      or disable the MIDI 2.0 support.  Also, the driver provides a new
      module option, midi2_enable, to allow disabling the MIDI 2.0 at
      runtime, too.  When MIDI 2.0 support is disabled, the driver tries to
      fall back to the already existing MIDI 1.0 device (each MIDI 2.0
      device is supposed to provide the MIDI 1.0 interface at the altset
      0).
      
      For now, the driver doesn't manage any MIDI-CI or other protocol
      setups by itself, but relies on the default protocol given via the
      group terminal block descriptors.
      
      The MIDI 1.0 messages on MIDI 2.0 device will be automatically
      converted in ALSA sequencer in a later patch.  As of this commit, the
      driver accepts merely the rawmidi UMP accesses.
      
      The driver builds up the topology in the following way:
      - Create an object for each MIDI endpoint belonging to the USB
        interface
      - Find MIDI EP "pairs" that share the same GTB;
        note that MIDI EP is unidirectional, while UMP is (normally)
        bidirectional, so two MIDI EPs can form a single UMP EP
      - A UMP endpoint object is created for each I/O pair
      - For remaining "solo" MIDI EPs, create unidirectional UMP EPs
      - Finally, parse GTBs and fill the protocol bits on each UMP
      
      So the driver may support multiple UMP Endpoints in theory, although
      most devices are supposed to have a single UMP EP that can contain up
      to 16 groups -- which should be large enough.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-10-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      ff49d1df
    • Takashi Iwai's avatar
      ALSA: usb-audio: Define USB MIDI 2.0 specs · f8ddb0fb
      Takashi Iwai authored
      
      
      Define new structs and constants from USB MIDI 2.0 specification,
      to be used in the upcoming MIDI 2.0 support in USB-audio driver.
      
      A new class-specific endpoint descriptor and group terminal block
      descriptors are defined.
      
      Acked-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Acked-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-9-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      f8ddb0fb
    • Takashi Iwai's avatar
      ALSA: usb-audio: Manage number of rawmidis globally · bb1bf4fa
      Takashi Iwai authored
      
      
      We're going to create rawmidi objects for MIDI 2.0 in a different code
      from the current code for USB-MIDI 1.0.  As a preliminary work, this
      patch adds the number of rawmidi objects to keep globally in a
      USB-audio card instance, so that it can be referred from both MIDI 1.0
      and 2.0 code.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-8-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      bb1bf4fa
    • Takashi Iwai's avatar
      ALSA: ump: Additional proc output · fa030f66
      Takashi Iwai authored
      
      
      UMP devices may have more interesting information than the traditional
      rawmidi.  Extend the rawmidi_global_ops to allow the optional proc
      info output and show some more bits in the proc file for UMP.
      
      Note that the "Groups" field shows the first and the last UMP Groups,
      and both numbers are 1-based (i.e. the first group is 1).
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-7-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      fa030f66
    • Takashi Iwai's avatar
      ALSA: ump: Add ioctls to inquiry UMP EP and Block info via control API · 30fc1392
      Takashi Iwai authored
      
      
      It'd be convenient to have ioctls to inquiry the UMP Endpoint and UMP
      Block information directly via the control API without opening the
      rawmidi interface, just like SNDRV_CTL_IOCTL_RAWMIDI_INFO.
      
      This patch extends the rawmidi ioctl handler to support those; new
      ioctls, SNDRV_CTL_IOCTL_UMP_ENDPOINT_INFO and
      SNDRV_CTL_IOCTL_UMP_BLOCK_INFO, return the snd_ump_endpoint and
      snd_ump_block data that is specified by the device field,
      respectively.
      
      Suggested-by: default avatarJaroslav Kysela <perex@perex.cz>
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-6-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      30fc1392
    • Takashi Iwai's avatar
      ALSA: rawmidi: Skip UMP devices at SNDRV_CTL_IOCTL_RAWMIDI_NEXT_DEVICE · 127ae6f6
      Takashi Iwai authored
      
      
      Applications may look for rawmidi devices with the ioctl
      SNDRV_CTL_IOCTL_RAWMIDI_NEXT_DEVICE.  Returning a UMP device from this
      ioctl may confuse the existing applications that support only the
      legacy rawmidi.
      
      This patch changes the code to skip the UMP devices from the lookup
      for avoiding the confusion, and introduces a new ioctl to look for the
      UMP devices instead.
      
      Along with this change, bump the CTL protocol version to 2.0.9.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-5-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      127ae6f6
    • Takashi Iwai's avatar
      ALSA: rawmidi: UMP support · e3a8a5b7
      Takashi Iwai authored
      
      
      This patch adds the support helpers for UMP (Universal MIDI Packet) in
      ALSA core.
      
      The basic design is that a rawmidi instance is assigned to each UMP
      Endpoint.  A UMP Endpoint provides a UMP stream, typically
      bidirectional (but can be also uni-directional, too), which may hold
      up to 16 UMP Groups, where each UMP (input/output) Group corresponds
      to the traditional MIDI I/O Endpoint.
      
      Additionally, the ALSA UMP abstraction provides the multiple UMP
      Blocks that can be assigned to each UMP Endpoint.  A UMP Block is a
      metadata to hold the UMP Group clusters, and can represent the
      functions assigned to each UMP Group.  A typical implementation of UMP
      Block is the Group Terminal Blocks of USB MIDI 2.0 specification.
      
      For distinguishing from the legacy byte-stream MIDI device, a new
      device "umpC*D*" will be created, instead of the standard (MIDI 1.0)
      devices "midiC*D*".  The UMP instance can be identified by the new
      rawmidi info bit SNDRV_RAWMIDI_INFO_UMP, too.
      
      A UMP rawmidi device reads/writes only in 4-bytes words alignment,
      stored in CPU native endianness.
      
      The transmit and receive functions take care of the input/out data
      alignment, and may return zero or aligned size, and the params ioctl
      may return -EINVAL when the given input/output buffer size isn't
      aligned.
      
      A few new UMP-specific ioctls are added for obtaining the new UMP
      endpoint and block information.
      
      As of this commit, no ALSA sequencer instance is attached to UMP
      devices yet.  They will be supported by later patches.
      
      Along with those changes, the protocol version for rawmidi is bumped
      to 2.0.3.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-4-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      e3a8a5b7
    • Takashi Iwai's avatar
      ALSA: rawmidi: Add ioctl callback to snd_rawmidi_global_ops · fb3bd121
      Takashi Iwai authored
      
      
      A new callback, ioctl, is added to snd_rawmidi_global_ops for allowing
      the driver to deal with the own ioctls.  This is another preparation
      patch for the upcoming UMP support.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-3-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      fb3bd121
    • Takashi Iwai's avatar
      ALSA: rawmidi: Pass rawmidi directly to snd_rawmidi_kernel_open() · 09b62892
      Takashi Iwai authored
      
      
      snd_rawmidi_kernel_open() is used only internally from ALSA sequencer,
      so far, and parsing the card / device matching table at each open is
      redundant, as each sequencer client already gets the rawmidi object
      beforehand.
      
      This patch optimizes the path by passing the rawmidi object directly
      at snd_rawmidi_kernel_open().  This is also a preparation for the
      upcoming UMP rawmidi I/O support.
      
      Reviewed-by: default avatarJaroslav Kysela <perex@perex.cz>
      Link: https://lore.kernel.org/r/20230523075358.9672-2-tiwai@suse.de
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      09b62892
  2. May 15, 2023
  3. May 14, 2023
    • Linus Torvalds's avatar
      Merge tag 'locking_urgent_for_v6.4_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 31f4104e
      Linus Torvalds authored
      Pull locking fix from Borislav Petkov:
      
       - Make sure __down_read_common() is always inlined so that the callers'
         names land in traceevents output and thus the blocked function can be
         identified
      
      * tag 'locking_urgent_for_v6.4_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking/rwsem: Add __always_inline annotation to __down_read_common() and inlined callers
      31f4104e
    • Linus Torvalds's avatar
      Merge tag 'perf_urgent_for_v6.4_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ef21831c
      Linus Torvalds authored
      Pull perf fixes from Borislav Petkov:
      
       - Make sure the PEBS buffer is flushed before reprogramming the
         hardware so that the correct record sizes are used
      
       - Update the sample size for AMD BRS events
      
       - Fix a confusion with using the same on-stack struct with different
         events in the event processing path
      
      * tag 'perf_urgent_for_v6.4_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86/intel/ds: Flush PEBS DS when changing PEBS_DATA_CFG
        perf/x86: Fix missing sample size update on AMD BRS
        perf/core: Fix perf_sample_data not properly initialized for different swevents in perf_tp_event()
      ef21831c
    • Linus Torvalds's avatar
      Merge tag 'sched_urgent_for_v6.4_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f3b9e8e4
      Linus Torvalds authored
      Pull scheduler fix from Borislav Petkov:
      
       - Fix a couple of kernel-doc warnings
      
      * tag 'sched_urgent_for_v6.4_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched: fix cid_lock kernel-doc warnings
      f3b9e8e4
    • Linus Torvalds's avatar
      Merge tag 'x86_urgent_for_v6.4_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 011e33ee
      Linus Torvalds authored
      Pull x86 fix from Borislav Petkov:
      
       - Add the required PCI IDs so that the generic SMN accesses provided by
         amd_nb.c work for drivers which switch to them. Add a PCI device ID
         to k10temp's table so that latter is loaded on such systems too
      
      * tag 'x86_urgent_for_v6.4_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        hwmon: (k10temp) Add PCI ID for family 19, model 78h
        x86/amd_nb: Add PCI ID for family 19h model 78h
      011e33ee
    • Linus Torvalds's avatar
      Merge tag 'timers_urgent_for_v6.4_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 491459b5
      Linus Torvalds authored
      Pull timer fix from Borislav Petkov:
      
       - Prevent CPU state corruption when an active clockevent broadcast
         device is replaced while the system is already in oneshot mode
      
      * tag 'timers_urgent_for_v6.4_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        tick/broadcast: Make broadcast device replacement work correctly
      491459b5
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · bb7c241f
      Linus Torvalds authored
      Pull ext4 fixes from Ted Ts'o:
       "Some ext4 bug fixes (mostly to address Syzbot reports)"
      
      * tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
        ext4: bail out of ext4_xattr_ibody_get() fails for any reason
        ext4: add bounds checking in get_max_inline_xattr_value_size()
        ext4: add indication of ro vs r/w mounts in the mount message
        ext4: fix deadlock when converting an inline directory in nojournal mode
        ext4: improve error recovery code paths in __ext4_remount()
        ext4: improve error handling from ext4_dirhash()
        ext4: don't clear SB_RDONLY when remounting r/w until quota is re-enabled
        ext4: check iomap type only if ext4_iomap_begin() does not fail
        ext4: avoid a potential slab-out-of-bounds in ext4_group_desc_csum
        ext4: fix data races when using cached status extents
        ext4: avoid deadlock in fs reclaim with page writeback
        ext4: fix invalid free tracking in ext4_xattr_move_to_block()
        ext4: remove a BUG_ON in ext4_mb_release_group_pa()
        ext4: allow ext4_get_group_info() to fail
        ext4: fix lockdep warning when enabling MMP
        ext4: fix WARNING in mb_find_extent
      bb7c241f
    • Linus Torvalds's avatar
      Merge tag 'fbdev-for-6.4-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev · adfbf653
      Linus Torvalds authored
      Pull fbdev fixes from Helge Deller:
      
       - use after free fix in imsttfb (Zheng Wang)
      
       - fix error handling in arcfb (Zongjie Li)
      
       - lots of whitespace cleanups (Thomas Zimmermann)
      
       - add 1920x1080 modedb entry (me)
      
      * tag 'fbdev-for-6.4-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev:
        fbdev: stifb: Fix info entry in sti_struct on error path
        fbdev: modedb: Add 1920x1080 at 60 Hz video mode
        fbdev: imsttfb: Fix use after free bug in imsttfb_probe
        fbdev: vfb: Remove trailing whitespaces
        fbdev: valkyriefb: Remove trailing whitespaces
        fbdev: stifb: Remove trailing whitespaces
        fbdev: sa1100fb: Remove trailing whitespaces
        fbdev: platinumfb: Remove trailing whitespaces
        fbdev: p9100: Remove trailing whitespaces
        fbdev: maxinefb: Remove trailing whitespaces
        fbdev: macfb: Remove trailing whitespaces
        fbdev: hpfb: Remove trailing whitespaces
        fbdev: hgafb: Remove trailing whitespaces
        fbdev: g364fb: Remove trailing whitespaces
        fbdev: controlfb: Remove trailing whitespaces
        fbdev: cg14: Remove trailing whitespaces
        fbdev: atmel_lcdfb: Remove trailing whitespaces
        fbdev: 68328fb: Remove trailing whitespaces
        fbdev: arcfb: Fix error handling in arcfb_probe()
      adfbf653
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 046206ba
      Linus Torvalds authored
      Pull SCSI fix from James Bottomley:
       "A single small fix for the UFS driver to fix a power management
        failure"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: ufs: core: Fix I/O hang that occurs when BKOPS fails in W-LUN suspend
      046206ba
    • Helge Deller's avatar
      parisc: Fix encoding of swp_entry due to added SWP_EXCLUSIVE flag · 6f9e9884
      Helge Deller authored
      Fix the __swp_offset() and __swp_entry() macros due to commit 6d239fc7
      
      
      ("parisc/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE") which introduced the
      SWP_EXCLUSIVE flag by reusing the _PAGE_ACCESSED flag.
      
      Reported-by: default avatarChristoph Biedl <linux-kernel.bfrz@manchmal.in-ulm.de>
      Tested-by: default avatarChristoph Biedl <linux-kernel.bfrz@manchmal.in-ulm.de>
      Reviewed-by: default avatarDavid Hildenbrand <david@redhat.com>
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      Fixes: 6d239fc7 ("parisc/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE")
      Cc: <stable@vger.kernel.org> # v6.3+
      6f9e9884
    • Theodore Ts'o's avatar
      ext4: bail out of ext4_xattr_ibody_get() fails for any reason · 2a534e1d
      Theodore Ts'o authored
      
      
      In ext4_update_inline_data(), if ext4_xattr_ibody_get() fails for any
      reason, it's best if we just fail as opposed to stumbling on,
      especially if the failure is EFSCORRUPTED.
      
      Cc: stable@kernel.org
      Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
      2a534e1d
    • Theodore Ts'o's avatar
      ext4: add bounds checking in get_max_inline_xattr_value_size() · 2220eaf9
      Theodore Ts'o authored
      
      
      Normally the extended attributes in the inode body would have been
      checked when the inode is first opened, but if someone is writing to
      the block device while the file system is mounted, it's possible for
      the inode table to get corrupted.  Add bounds checking to avoid
      reading beyond the end of allocated memory if this happens.
      
      Reported-by: default avatar <syzbot+1966db24521e5f6e23f7@syzkaller.appspotmail.com>
      Link: https://syzkaller.appspot.com/bug?extid=1966db24521e5f6e23f7
      Cc: stable@kernel.org
      Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
      2220eaf9
    • Theodore Ts'o's avatar
      ext4: add indication of ro vs r/w mounts in the mount message · 6dcc98fb
      Theodore Ts'o authored
      
      
      Whether the file system is mounted read-only or read/write is more
      important than the quota mode, which we are already printing.  Add the
      ro vs r/w indication since this can be helpful in debugging problems
      from the console log.
      
      Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
      6dcc98fb