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
Showing the changes to include/uapi (2 of 412 files). Show all
Unified · Split
| @@ -913,14 +913,25 @@ enum kfd_dbg_trap_exception_code { · 912 unmodified lines | ||
| 913 | 913 | KFD_EC_MASK(EC_DEVICE_NEW)) |
| 914 | 914 | #define KFD_EC_MASK_PROCESS (KFD_EC_MASK(EC_PROCESS_RUNTIME) | \ |
| 915 | 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 | 925 | /* Checks for exception code types for KFD search */ |
| 926 | +#define KFD_DBG_EC_IS_VALID(ecode) (ecode > EC_NONE && ecode < EC_MAX) | |
| 918 | 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 | 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 | 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 | 937 | /* Runtime enable states */ |
| @@ -382,7 +382,7 @@ struct mpi3mr_bsg_in_reply_buf { · 381 unmodified lines | ||
| 382 | 382 | __u8 mpi_reply_type; |
| 383 | 383 | __u8 rsvd1; |
| 384 | 384 | __u16 rsvd2; |
| 385 | − __u8 reply_buf[1]; | |
| 385 | + __u8 reply_buf[]; | |
| 386 | 386 | }; |
| 387 | 387 | |
| 388 | 388 | /** |