From patchwork Fri May 29 21:38:23 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John Stultz X-Patchwork-Id: 187332 Delivered-To: patches@linaro.org Received: by 2002:a92:5b0a:0:0:0:0:0 with SMTP id p10csp965536ilb; Fri, 29 May 2020 14:38:31 -0700 (PDT) X-Received: by 2002:a17:90a:e7cf:: with SMTP id kb15mr11861651pjb.86.1590788310903; Fri, 29 May 2020 14:38:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1590788310; cv=none; d=google.com; s=arc-20160816; b=P8LIsbGHZoxzAyq/JI8xWjb35uOBVPHrHQF4iF0QRXpPVwEgLcu41N6+qRNDdUOxIA 3Ex4fpFnzT94JjLhImM0KwYOs2ARHMbkBkAjXUcLE87lSEskww9j4yV4lA9Za0/AATGk be5ghTfLbmErH/h3CM78zmjsnXcs54T6eZp2Z7ar81HOE7JpgR7foH/xVpkSBj9ViB1i LSxL5Y0v63/DuuA0ecfyO1dhCX5lMt0VjTx6rboowWTjvc0Rv53+H9jVghHDiTLMWCNC e6wkm1ioAPClC2Uk4VrH+D7fRthvx+TFED1/VSaDNdCUUGY8eLbPchl41Nzse7fvr9ly hzTw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=message-id:date:subject:cc:to:from:dkim-signature; bh=U/JCQHWiwK23f0xFBIe6II6wByU6wFtw8VXlLquuDwE=; b=UjbUIQRLV7ayY1dC2S7RX1rqNXg3OhQx8GhBP8f+EBjRFGKwEzs2csPErJhgmLUIup UNctJzfQips6udcnJG9l1+8F8hcQ/KkajUMkc+h8FLUzHYFjeYpYHWfH/jDTumlZojG9 CezhxpgBjuMhwuihIHnQfZn31QpK6oU9LgjZnYXVt+++9CbjCGm/XOSsTrHl5g75QIK/ UShvfXk5YbcRVV2LFKN1i7a3zgIwOrmoanF0UBbGsWn7IrkAygWxTR3s9E+JGvPZQ73G hwuI42UHu/Q+a/8a3gQXxXLzFoUMAASVbZhK0074nFQeHiyW89btTrgpPy3+oOV1u/AO b8Lg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=T7X6k9UB; spf=pass (google.com: domain of john.stultz@linaro.org designates 209.85.220.65 as permitted sender) smtp.mailfrom=john.stultz@linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from mail-sor-f65.google.com (mail-sor-f65.google.com. [209.85.220.65]) by mx.google.com with SMTPS id cs15sor942043pjb.6.2020.05.29.14.38.30 for (Google Transport Security); Fri, 29 May 2020 14:38:30 -0700 (PDT) Received-SPF: pass (google.com: domain of john.stultz@linaro.org designates 209.85.220.65 as permitted sender) client-ip=209.85.220.65; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=T7X6k9UB; spf=pass (google.com: domain of john.stultz@linaro.org designates 209.85.220.65 as permitted sender) smtp.mailfrom=john.stultz@linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=U/JCQHWiwK23f0xFBIe6II6wByU6wFtw8VXlLquuDwE=; b=T7X6k9UBCwiGjhA/q7YA+IYVp60Sl9Oq9FRGyG5tLFbtmsWN5VvFE26WaMbbeOovkv OF/ldU0YDz1oJRqaJ5L9jy/y573Gq44pRL+kuNN3g6aU2BJkhfAgzl9nU6s57E4t7vHU v+BDXk459rTRhpFcftbfPDOZCkhpLOfnONHb+TU7e3f3ancqtLpwjERiAFBsE5wMWgMC TCtg/oAHLHQvkD5suKBbFMRr4fjmiaKZ5lDzhzSAQQh1f7lNQ32dZWwFJ7LXXPu67plz XWZbTNuuVYizWXma5v6FMCxzJtAngM4epA87s071QgRJpcYiintDfvwMSt6SIK+TC/eY 9hog== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=U/JCQHWiwK23f0xFBIe6II6wByU6wFtw8VXlLquuDwE=; b=NDwNZFp4mU4OrNaW7IhHK8nlI/ck0PvXMkdsue3X7CqeEZC6NiMTmUnTtPBF63AmS9 IVbqrUZ+h83Hm2eCYK2r2TJvSR+bPF14UKfAZJ2z/O5PSTJVRSAXEYL5e8SitJQeVUFD PMW4UYAZKTBMGBhRUCHdDzJuK59gbi7ORVt2eeXaGqNrFkZ/6wBLPP/AxPBvic2v3E0w XYmCza2mKnZtX8oQKT5m76CQOkRmxd3VaDS4cEJyoGMAYDyNbcYKJ6UKGPgL1UHJRG5T hEQ4LkDgQ9dya6ui1XZdjT4HL2i2vT9+yvNKB8PFCCxFWm7BI9FRa7ruSBXMulNVFJwr wSSA== X-Gm-Message-State: AOAM531Pj8xkDz3NEiAte62H4Y2qCXQbKKvhqBuB8CVOynRiT3ZDdezN vMIt8UUzaRPBbwjeDSQhxzMyG6Vz X-Google-Smtp-Source: ABdhPJzkXew6827lBFOqhUNImfruIgLQKY4yL6SEaYsd4psiMfMw7eB14pTrasZI2VKBt37TklCBqw== X-Received: by 2002:a17:90a:aa8f:: with SMTP id l15mr12104229pjq.156.1590788310361; Fri, 29 May 2020 14:38:30 -0700 (PDT) Return-Path: Received: from localhost.localdomain ([2601:1c2:680:1319:692:26ff:feda:3a81]) by smtp.gmail.com with ESMTPSA id c24sm313775pjs.51.2020.05.29.14.38.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 May 2020 14:38:29 -0700 (PDT) From: John Stultz To: lkml Cc: John Stultz , Patrick Lai , Banajit Goswami , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Srinivas Kandagatla , Vinod Koul , Kuninori Morimoto , Stephan Gerhold , Sami Tolvanen , Todd Kjos , Alistair Delva , Amit Pundir , Sumit Semwal , alsa-devel@alsa-project.org Subject: [RFC][PATCH] ASoC: qcom: q6asm-dai: kCFI fix Date: Fri, 29 May 2020 21:38:23 +0000 Message-Id: <20200529213823.98812-1-john.stultz@linaro.org> X-Mailer: git-send-email 2.17.1 Fixes the following kCFI crash seen on db845c, caused by the function prototypes not matching the callback function prototype. [ 82.585661] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000001 [ 82.595387] Mem abort info: [ 82.599463] ESR = 0x96000005 [ 82.602658] EC = 0x25: DABT (current EL), IL = 32 bits [ 82.608177] SET = 0, FnV = 0 [ 82.611829] EA = 0, S1PTW = 0 [ 82.615369] Data abort info: [ 82.618751] ISV = 0, ISS = 0x00000005 [ 82.622641] CM = 0, WnR = 0 [ 82.625774] user pgtable: 4k pages, 39-bit VAs, pgdp=0000000174259000 [ 82.632292] [0000000000000001] pgd=0000000000000000, pud=0000000000000000 [ 82.639167] Internal error: Oops: 96000005 [#1] PREEMPT SMP [ 82.644795] Modules linked in: hci_uart btqca xhci_plat_hcd xhci_pci_renesas xhci_pci xhci_hcd wcn36xx wcnss_ctrl wcd934x vctrl_regulator ufs_qcom syscon_reboot_e [ 82.644927] qcom_apcs_ipc_mailbox q6asm_dai q6routing q6asm q6afe_dai q6adm q6afe q6core q6dsp_common pm8941_pwrkey pm8916_wdt platform_mhu pinctrl_spmi_mpp pine [ 82.812982] CPU: 3 PID: 240 Comm: kworker/u16:4 Tainted: G W 5.6.0-rc7-mainline-00960-g0c34353d11b9-dirty #1 [ 82.824201] Hardware name: Thundercomm Dragonboard 845c (DT) [ 82.829937] Workqueue: qcom_apr_rx apr_rxwq [apr] [ 82.834698] pstate: 80c00005 (Nzcv daif +PAN +UAO) [ 82.839553] pc : __cfi_check_fail+0x4/0x1c [q6asm_dai] [ 82.844754] lr : __cfi_check+0x3a8/0x3b0 [q6asm_dai] [ 82.849767] sp : ffffffc0105f3c20 [ 82.853123] x29: ffffffc0105f3c30 x28: 0000000000000020 [ 82.858489] x27: ffffff80f4588400 x26: ffffff80f458ec94 [ 82.863854] x25: ffffff80f458ece8 x24: ffffffe3670c7000 [ 82.869220] x23: ffffff8094bb7b34 x22: ffffffe367137000 [ 82.874585] x21: bd07909b332eada6 x20: 0000000000000001 [ 82.879950] x19: ffffffe36713863c x18: ffffff80f8df4430 [ 82.885316] x17: 0000000000000001 x16: ffffffe39d15e660 [ 82.890681] x15: 0000000000000001 x14: 0000000000000027 [ 82.896047] x13: 0000000000000000 x12: ffffffe39e6465a0 [ 82.901413] x11: 0000000000000051 x10: 000000000000ffff [ 82.906779] x9 : 000ffffffe366c19 x8 : c3c5f18762d1ceef [ 82.912145] x7 : 0000000000000000 x6 : ffffffc010877698 [ 82.917511] x5 : ffffffc0105f3c00 x4 : 0000000000000000 [ 82.922877] x3 : 0000000000000000 x2 : 0000000000000001 [ 82.928243] x1 : ffffffe36713863c x0 : 0000000000000001 [ 82.933610] Call trace: [ 82.936099] __cfi_check_fail+0x4/0x1c [q6asm_dai] [ 82.940955] q6asm_srvc_callback+0x22c/0x618 [q6asm] [ 82.945973] apr_rxwq+0x1a8/0x27c [apr] [ 82.949861] process_one_work+0x2e8/0x54c [ 82.953919] worker_thread+0x27c/0x4d4 [ 82.957715] kthread+0x144/0x154 [ 82.960985] ret_from_fork+0x10/0x18 [ 82.964603] Code: a8c37bfd f85f8e5e d65f03c0 b40000a0 (39400008) [ 82.970762] ---[ end trace 410accb839617143 ]--- [ 82.975429] Kernel panic - not syncing: Fatal exception Cc: Patrick Lai Cc: Banajit Goswami Cc: Liam Girdwood Cc: Mark Brown Cc: Jaroslav Kysela Cc: Takashi Iwai Cc: Srinivas Kandagatla Cc: Vinod Koul Cc: Kuninori Morimoto Cc: Stephan Gerhold Cc: Sami Tolvanen Cc: Todd Kjos Cc: Alistair Delva Cc: Amit Pundir Cc: Sumit Semwal Cc: alsa-devel@alsa-project.org Signed-off-by: John Stultz --- sound/soc/qcom/qdsp6/q6asm-dai.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- 2.17.1 diff --git a/sound/soc/qcom/qdsp6/q6asm-dai.c b/sound/soc/qcom/qdsp6/q6asm-dai.c index 125af00bba53..4640804aab7f 100644 --- a/sound/soc/qcom/qdsp6/q6asm-dai.c +++ b/sound/soc/qcom/qdsp6/q6asm-dai.c @@ -176,7 +176,7 @@ static const struct snd_compr_codec_caps q6asm_compr_caps = { }; static void event_handler(uint32_t opcode, uint32_t token, - uint32_t *payload, void *priv) + void *payload, void *priv) { struct q6asm_dai_rtd *prtd = priv; struct snd_pcm_substream *substream = prtd->substream; @@ -490,7 +490,7 @@ static int q6asm_dai_hw_params(struct snd_soc_component *component, } static void compress_event_handler(uint32_t opcode, uint32_t token, - uint32_t *payload, void *priv) + void *payload, void *priv) { struct q6asm_dai_rtd *prtd = priv; struct snd_compr_stream *substream = prtd->cstream;