[PATCH 00/11] ALSA: PCM state reference optimization

Takashi Iwai tiwai at suse.de
Mon Sep 26 15:55:47 CEST 2022


Hi,

this is a patch set for simplifying the reference to the current PCM
state by having the local copy in runtime instead of relying on
runtime->status indirection.  This also hardens against the attack by
modifying the mmapped status record.

The first patch does the basic job in the core PCM side, and the
second patch flips the PCM status mmap to read-only for hardening,
while the remaining patches are for drivers to follow the core
change.

The conversions are straightforward.  In most places, it's just
replacing runtime->status->state with runtime->state.


Takashi

===

Takashi Iwai (11):
  ALSA: pcm: Avoid reference to status->state
  ALSA: pcm: Make mmap status read-only
  ALSA: aloop: Replace runtime->status->state reference to
    runtime->state
  ALSA: firewire: Replace runtime->status->state reference to
    runtime->state
  ALSA: hda: Replace runtime->status->state reference to runtime->state
  ALSA: asihpi: Replace runtime->status->state reference to
    runtime->state
  ALSA: usb-audio: Replace runtime->status->state reference to
    runtime->state
  ALSA: usx2y: Replace runtime->status->state reference to
    runtime->state
  ASoC: intel: Replace runtime->status->state reference to
    runtime->state
  ASoC: sh: Replace runtime->status->state reference to runtime->state
  usb: gadget: Replace runtime->status->state reference to
    runtime->state

 drivers/usb/gadget/function/u_uac1_legacy.c |   4 +-
 include/sound/pcm.h                         |  20 ++-
 sound/core/oss/pcm_oss.c                    |  42 +++----
 sound/core/pcm.c                            |   9 +-
 sound/core/pcm_compat.c                     |   4 +-
 sound/core/pcm_lib.c                        |  16 +--
 sound/core/pcm_native.c                     | 128 ++++++++++----------
 sound/drivers/aloop.c                       |   4 +-
 sound/firewire/bebob/bebob_pcm.c            |   4 +-
 sound/firewire/dice/dice-pcm.c              |   4 +-
 sound/firewire/digi00x/digi00x-pcm.c        |   4 +-
 sound/firewire/fireface/ff-pcm.c            |   4 +-
 sound/firewire/fireworks/fireworks_pcm.c    |   4 +-
 sound/firewire/motu/motu-pcm.c              |   4 +-
 sound/firewire/oxfw/oxfw-pcm.c              |   8 +-
 sound/firewire/tascam/tascam-pcm.c          |   4 +-
 sound/hda/hdmi_chmap.c                      |   2 +-
 sound/pci/asihpi/asihpi.c                   |   2 +-
 sound/soc/intel/skylake/skl-pcm.c           |   4 +-
 sound/soc/sh/rz-ssi.c                       |   2 +-
 sound/usb/pcm.c                             |   4 +-
 sound/usb/usx2y/usbusx2yaudio.c             |   3 +-
 sound/usb/usx2y/usx2yhwdeppcm.c             |   3 +-
 23 files changed, 150 insertions(+), 133 deletions(-)

===

Cc: Bard Liao <yung-chuan.liao at linux.intel.com>
Cc: Cezary Rojewski <cezary.rojewski at intel.com>
Cc: Felipe Balbi <balbi at kernel.org>
Cc: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
Cc: Kai Vehmanen <kai.vehmanen at linux.intel.com>
Cc: Liam Girdwood <liam.r.girdwood at linux.intel.com>
Cc: Mark Brown <broonie at kernel.org>
Cc: Peter Ujfalusi <peter.ujfalusi at linux.intel.com>
Cc: Pierre-Louis Bossart <pierre-louis.bossart at linux.intel.com>
Cc: Ranjani Sridharan <ranjani.sridharan at linux.intel.com>
Cc: Takashi Sakamoto <o-takashi at sakamocchi.jp>

-- 
2.35.3



More information about the Alsa-devel mailing list