From: kernel test robot <lkp@intel.com>
To: Simon Trimmer <simont@opensource.cirrus.com>
Cc: llvm@lists.linux.dev, kbuild-all@lists.01.org,
linux-kernel@vger.kernel.org, Mark Brown <broonie@kernel.org>
Subject: sound/soc/codecs/wm_adsp.c:1490:32: warning: taking address of packed member 'name' of class or structure 'wm_adsp_host_buf_coeff_v1' may result in an unaligned pointer value
Date: Tue, 26 Jul 2022 06:29:46 +0800 [thread overview]
Message-ID: <202207260648.ERQjXCRB-lkp@intel.com> (raw)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: e0dccc3b76fb35bb257b4118367a883073d7390e
commit: 353bb6a5f2ac495f289b7c7a528c7d134c9a8ec4 ASoC: wm_adsp: Compressed stream DSP memory structs should be __packed
date: 5 months ago
config: arm-randconfig-r013-20220724 (https://download.01.org/0day-ci/archive/20220726/202207260648.ERQjXCRB-lkp@intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 9e88cbcc403bdf82f29259ad60ff60a8fc4434a1)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=353bb6a5f2ac495f289b7c7a528c7d134c9a8ec4
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 353bb6a5f2ac495f289b7c7a528c7d134c9a8ec4
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash sound/soc/codecs/
If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
>> sound/soc/codecs/wm_adsp.c:1490:32: warning: taking address of packed member 'name' of class or structure 'wm_adsp_host_buf_coeff_v1' may result in an unaligned pointer value [-Waddress-of-packed-member]
cs_dsp_remove_padding((u32 *)&coeff_v1.name, ARRAY_SIZE(coeff_v1.name));
^~~~~~~~~~~~~
1 warning generated.
vim +1490 sound/soc/codecs/wm_adsp.c
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1434
0700bc2fb94c28 Simon Trimmer 2021-09-13 1435 static int wm_adsp_buffer_parse_coeff(struct cs_dsp_coeff_ctl *cs_ctl)
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1436 {
4f2d4eabf57718 Stuart Henderson 2019-02-22 1437 struct wm_adsp_host_buf_coeff_v1 coeff_v1;
a792af69b08fd7 Charles Keepax 2019-02-22 1438 struct wm_adsp_compr_buf *buf;
e146820215910d Simon Trimmer 2021-09-13 1439 struct wm_adsp *dsp = container_of(cs_ctl->dsp, struct wm_adsp, cs_dsp);
04ae08596737c4 Charles Keepax 2021-09-13 1440 unsigned int version;
a792af69b08fd7 Charles Keepax 2019-02-22 1441 int ret, i;
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1442
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1443 for (i = 0; i < 5; ++i) {
a887f9c7a4d37a Charles Keepax 2022-02-10 1444 ret = cs_dsp_coeff_read_ctrl(cs_ctl, 0, &coeff_v1,
a887f9c7a4d37a Charles Keepax 2022-02-10 1445 min(cs_ctl->len, sizeof(coeff_v1)));
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1446 if (ret < 0)
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1447 return ret;
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1448
04ae08596737c4 Charles Keepax 2021-09-13 1449 if (coeff_v1.host_buf_ptr)
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1450 break;
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1451
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1452 usleep_range(1000, 2000);
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1453 }
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1454
04ae08596737c4 Charles Keepax 2021-09-13 1455 if (!coeff_v1.host_buf_ptr) {
0700bc2fb94c28 Simon Trimmer 2021-09-13 1456 adsp_err(dsp, "Failed to acquire host buffer\n");
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1457 return -EIO;
a792af69b08fd7 Charles Keepax 2019-02-22 1458 }
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1459
0700bc2fb94c28 Simon Trimmer 2021-09-13 1460 buf = wm_adsp_buffer_alloc(dsp);
a792af69b08fd7 Charles Keepax 2019-02-22 1461 if (!buf)
a792af69b08fd7 Charles Keepax 2019-02-22 1462 return -ENOMEM;
a792af69b08fd7 Charles Keepax 2019-02-22 1463
0700bc2fb94c28 Simon Trimmer 2021-09-13 1464 buf->host_buf_mem_type = cs_ctl->alg_region.type;
04ae08596737c4 Charles Keepax 2021-09-13 1465 buf->host_buf_ptr = be32_to_cpu(coeff_v1.host_buf_ptr);
a792af69b08fd7 Charles Keepax 2019-02-22 1466
a792af69b08fd7 Charles Keepax 2019-02-22 1467 ret = wm_adsp_buffer_populate(buf);
a792af69b08fd7 Charles Keepax 2019-02-22 1468 if (ret < 0)
a792af69b08fd7 Charles Keepax 2019-02-22 1469 return ret;
a792af69b08fd7 Charles Keepax 2019-02-22 1470
4f2d4eabf57718 Stuart Henderson 2019-02-22 1471 /*
4f2d4eabf57718 Stuart Henderson 2019-02-22 1472 * v0 host_buffer coefficients didn't have versioning, so if the
4f2d4eabf57718 Stuart Henderson 2019-02-22 1473 * control is one word, assume version 0.
4f2d4eabf57718 Stuart Henderson 2019-02-22 1474 */
0700bc2fb94c28 Simon Trimmer 2021-09-13 1475 if (cs_ctl->len == 4) {
0d3fba3e7a5669 Charles Keepax 2019-02-22 1476 compr_dbg(buf, "host_buf_ptr=%x\n", buf->host_buf_ptr);
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1477 return 0;
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1478 }
d52ed4b0bc73c1 Richard Fitzgerald 2018-07-19 1479
a0b653e89a3afd Richard Fitzgerald 2020-12-30 1480 version = be32_to_cpu(coeff_v1.versions) & HOST_BUF_COEFF_COMPAT_VER_MASK;
a0b653e89a3afd Richard Fitzgerald 2020-12-30 1481 version >>= HOST_BUF_COEFF_COMPAT_VER_SHIFT;
4f2d4eabf57718 Stuart Henderson 2019-02-22 1482
a0b653e89a3afd Richard Fitzgerald 2020-12-30 1483 if (version > HOST_BUF_COEFF_SUPPORTED_COMPAT_VER) {
0700bc2fb94c28 Simon Trimmer 2021-09-13 1484 adsp_err(dsp,
4f2d4eabf57718 Stuart Henderson 2019-02-22 1485 "Host buffer coeff ver %u > supported version %u\n",
a0b653e89a3afd Richard Fitzgerald 2020-12-30 1486 version, HOST_BUF_COEFF_SUPPORTED_COMPAT_VER);
4f2d4eabf57718 Stuart Henderson 2019-02-22 1487 return -EINVAL;
4f2d4eabf57718 Stuart Henderson 2019-02-22 1488 }
4f2d4eabf57718 Stuart Henderson 2019-02-22 1489
5beb8eeade2c03 Simon Trimmer 2021-09-13 @1490 cs_dsp_remove_padding((u32 *)&coeff_v1.name, ARRAY_SIZE(coeff_v1.name));
4f2d4eabf57718 Stuart Henderson 2019-02-22 1491
0700bc2fb94c28 Simon Trimmer 2021-09-13 1492 buf->name = kasprintf(GFP_KERNEL, "%s-dsp-%s", dsp->part,
4f2d4eabf57718 Stuart Henderson 2019-02-22 1493 (char *)&coeff_v1.name);
4f2d4eabf57718 Stuart Henderson 2019-02-22 1494
0d3fba3e7a5669 Charles Keepax 2019-02-22 1495 compr_dbg(buf, "host_buf_ptr=%x coeff version %u\n",
a0b653e89a3afd Richard Fitzgerald 2020-12-30 1496 buf->host_buf_ptr, version);
4f2d4eabf57718 Stuart Henderson 2019-02-22 1497
a0b653e89a3afd Richard Fitzgerald 2020-12-30 1498 return version;
4f2d4eabf57718 Stuart Henderson 2019-02-22 1499 }
4f2d4eabf57718 Stuart Henderson 2019-02-22 1500
:::::: The code at line 1490 was first introduced by commit
:::::: 5beb8eeade2c03b55ae729c05bb9fa245633fe74 ASoC: wm_adsp: Rename generic DSP support
:::::: TO: Simon Trimmer <simont@opensource.cirrus.com>
:::::: CC: Mark Brown <broonie@kernel.org>
--
0-DAY CI Kernel Test Service
https://01.org/lkp
next reply other threads:[~2022-07-25 22:30 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-25 22:29 kernel test robot [this message]
2022-07-25 22:34 ` sound/soc/codecs/wm_adsp.c:1490:32: warning: taking address of packed member 'name' of class or structure 'wm_adsp_host_buf_coeff_v1' may result in an unaligned pointer value Nathan Chancellor
2022-07-25 22:34 ` Nathan Chancellor
2022-07-25 22:36 ` Nathan Chancellor
2022-07-25 22:36 ` Nathan Chancellor
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202207260648.ERQjXCRB-lkp@intel.com \
--to=lkp@intel.com \
--cc=broonie@kernel.org \
--cc=kbuild-all@lists.01.org \
--cc=linux-kernel@vger.kernel.org \
--cc=llvm@lists.linux.dev \
--cc=simont@opensource.cirrus.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.