History

ASoC: Intel: avs: Fixes and cleanups for 6.10

Merge series from Cezary Rojewski <cezary.rojewski@intel.com>: Set of changes targeting the avs-driver only. No new features, patchset either fixes or fortifies existing code. Patchset starts off with a fix for debugbility on ICL+ platforms which I have forgotten to fixup when providing support for these initially. The next two address copier module initialization, most importantly, silence the gcc 'field-spanning write' false-positive. The following four: 6/13 ASoC: Intel: avs: Replace risky functions with safer variants 7/13 ASoC: Intel: avs: Fix potential integer overflow 8/13 ASoC: Intel: avs: Test result of avs_get_module_entry() 9/13 ASoC: Intel: avs: Remove dead code address problems found out by Coverity static analysis tool. The last two worth mentioning are: recommendation from the firmware team to wake subsystem from D0ix when starting any pipeline -and- shielding against invalid period/buffer sizes. Audio format shall be taken into consideration when calculating either of these. Amadeusz Sławiński (2): ASoC: Intel: avs: Restore stream decoupling on prepare ASoC: Intel: avs: Add assert_static to guarantee ABI sizes Cezary Rojewski (11): ASoC: Intel: avs: Fix debug-slot offset calculation ASoC: Intel: avs: Silence false-positive memcpy() warnings ASoC: Intel: avs: Fix config_length for config-less copiers ASoC: Intel: avs: Fix ASRC module initialization ASoC: Intel: avs: Replace risky functions with safer variants ASoC: Intel: avs: Fix potential integer overflow ASoC: Intel: avs: Test result of avs_get_module_entry() ASoC: Intel: avs: Remove dead code ASoC: Intel: avs: Wake from D0ix when starting streaming ASoC: Intel: avs: Init debugfs before booting firmware ASoC: Intel: avs: Rule invalid buffer and period sizes out sound/soc/intel/avs/avs.h | 1 + sound/soc/intel/avs/cldma.c | 2 +- sound/soc/intel/avs/core.c | 4 +-- sound/soc/intel/avs/icl.c | 12 ++++++--- sound/soc/intel/avs/loader.c | 6 +++-- sound/soc/intel/avs/messages.h | 47 ++++++++++++++++++++++++++++++++-- sound/soc/intel/avs/path.c | 13 ++++------ sound/soc/intel/avs/pcm.c | 34 +++++++++++++++++++++++- sound/soc/intel/avs/probes.c | 14 ++++++---- 9 files changed, 109 insertions(+), 24 deletions(-) -- 2.25.1

Mark Brown committed 2 years ago

Commit 3018fdf2 parents 716778b 9a38599412 files · +3581 −1914Browse files

Showing the changes to include/uapi (2 of 412 files). Show all

Unified · Split

2 files
  1. include/uapi/linux/kfd_ioctl.h +14 −3
  2. include/uapi/scsi/scsi_bsg_mpi3mr.h +1 −1
include/uapi/linux/kfd_ioctl.h+14−3
@@ -913,14 +913,25 @@ enum kfd_dbg_trap_exception_code { · 912 unmodified lines
913 KFD_EC_MASK(EC_DEVICE_NEW))913 KFD_EC_MASK(EC_DEVICE_NEW))
914#define KFD_EC_MASK_PROCESS (KFD_EC_MASK(EC_PROCESS_RUNTIME) | \914#define KFD_EC_MASK_PROCESS (KFD_EC_MASK(EC_PROCESS_RUNTIME) | \
915 KFD_EC_MASK(EC_PROCESS_DEVICE_REMOVE))915 KFD_EC_MASK(EC_PROCESS_DEVICE_REMOVE))
916#define KFD_EC_MASK_PACKET (KFD_EC_MASK(EC_QUEUE_PACKET_DISPATCH_DIM_INVALID) | \
917 KFD_EC_MASK(EC_QUEUE_PACKET_DISPATCH_GROUP_SEGMENT_SIZE_INVALID) | \
918 KFD_EC_MASK(EC_QUEUE_PACKET_DISPATCH_CODE_INVALID) | \
919 KFD_EC_MASK(EC_QUEUE_PACKET_RESERVED) | \
920 KFD_EC_MASK(EC_QUEUE_PACKET_UNSUPPORTED) | \
921 KFD_EC_MASK(EC_QUEUE_PACKET_DISPATCH_WORK_GROUP_SIZE_INVALID) | \
922 KFD_EC_MASK(EC_QUEUE_PACKET_DISPATCH_REGISTER_INVALID) | \
923 KFD_EC_MASK(EC_QUEUE_PACKET_VENDOR_UNSUPPORTED))
916 924
917/* Checks for exception code types for KFD search */925/* Checks for exception code types for KFD search */
926#define KFD_DBG_EC_IS_VALID(ecode) (ecode > EC_NONE && ecode < EC_MAX)
918#define KFD_DBG_EC_TYPE_IS_QUEUE(ecode) \927#define KFD_DBG_EC_TYPE_IS_QUEUE(ecode) \
919 (!!(KFD_EC_MASK(ecode) & KFD_EC_MASK_QUEUE))928 (KFD_DBG_EC_IS_VALID(ecode) && !!(KFD_EC_MASK(ecode) & KFD_EC_MASK_QUEUE))
920#define KFD_DBG_EC_TYPE_IS_DEVICE(ecode) \929#define KFD_DBG_EC_TYPE_IS_DEVICE(ecode) \
921 (!!(KFD_EC_MASK(ecode) & KFD_EC_MASK_DEVICE))930 (KFD_DBG_EC_IS_VALID(ecode) && !!(KFD_EC_MASK(ecode) & KFD_EC_MASK_DEVICE))
922#define KFD_DBG_EC_TYPE_IS_PROCESS(ecode) \931#define KFD_DBG_EC_TYPE_IS_PROCESS(ecode) \
923 (!!(KFD_EC_MASK(ecode) & KFD_EC_MASK_PROCESS))932 (KFD_DBG_EC_IS_VALID(ecode) && !!(KFD_EC_MASK(ecode) & KFD_EC_MASK_PROCESS))
933#define KFD_DBG_EC_TYPE_IS_PACKET(ecode) \
934 (KFD_DBG_EC_IS_VALID(ecode) && !!(KFD_EC_MASK(ecode) & KFD_EC_MASK_PACKET))
924 935
925 936
926/* Runtime enable states */937/* Runtime enable states */
include/uapi/scsi/scsi_bsg_mpi3mr.h+1−1
@@ -382,7 +382,7 @@ struct mpi3mr_bsg_in_reply_buf { · 381 unmodified lines
382 __u8 mpi_reply_type;382 __u8 mpi_reply_type;
383 __u8 rsvd1;383 __u8 rsvd1;
384 __u16 rsvd2;384 __u16 rsvd2;
385 __u8 reply_buf[1];385 __u8 reply_buf[];
386};386};
387 387
388/**388/**