Re: [PATCH 06/28] mm: Start tracking VMAs with maple tree
by kernel test robot
Hi "Liam,
I love your patch! Yet something to improve:
[auto build test ERROR on efi/next]
[also build test ERROR on linus/master v5.10-rc7]
[cannot apply to tip/x86/core hnaz-linux-mm/master next-20201211]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Liam-R-Howlett/RFC-mm-Introducin...
base: https://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git next
config: i386-randconfig-s001-20201210 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.3-179-ga00755aa-dirty
# https://github.com/0day-ci/linux/commit/991a17ff32a6bc9549655cd0aea43c386...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Liam-R-Howlett/RFC-mm-Introducing-the-Maple-Tree/20201211-011029
git checkout 991a17ff32a6bc9549655cd0aea43c386fdea1c6
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from include/linux/mm_types.h:11,
from include/linux/mmzone.h:21,
from include/linux/gfp.h:6,
from include/linux/slab.h:15,
from include/linux/crypto.h:20,
from arch/x86/kernel/asm-offsets.c:9:
>> include/linux/maple_tree.h:79:22: error: 'MAPLE_RANGE64_SLOTS' undeclared here (not in a function)
79 | unsigned long pivot[MAPLE_RANGE64_SLOTS - 1];
| ^~~~~~~~~~~~~~~~~~~
>> include/linux/maple_tree.h:85:22: error: 'MAPLE_ARANGE64_SLOTS' undeclared here (not in a function)
85 | unsigned long pivot[MAPLE_ARANGE64_SLOTS - 1];
| ^~~~~~~~~~~~~~~~~~~~
>> include/linux/maple_tree.h:91:28: error: 'MAPLE_NODE_SLOTS' undeclared here (not in a function); did you mean 'MAPLE_ALLOC_SLOTS'?
91 | #define MAPLE_ALLOC_SLOTS (MAPLE_NODE_SLOTS - 1)
| ^~~~~~~~~~~~~~~~
include/linux/maple_tree.h:96:27: note: in expansion of macro 'MAPLE_ALLOC_SLOTS'
96 | struct maple_alloc *slot[MAPLE_ALLOC_SLOTS];
| ^~~~~~~~~~~~~~~~~
--
In file included from include/linux/mm_types.h:11,
from include/linux/mmzone.h:21,
from include/linux/gfp.h:6,
from include/linux/slab.h:15,
from include/linux/crypto.h:20,
from arch/x86/kernel/asm-offsets.c:9:
>> include/linux/maple_tree.h:79:22: error: 'MAPLE_RANGE64_SLOTS' undeclared here (not in a function)
79 | unsigned long pivot[MAPLE_RANGE64_SLOTS - 1];
| ^~~~~~~~~~~~~~~~~~~
>> include/linux/maple_tree.h:85:22: error: 'MAPLE_ARANGE64_SLOTS' undeclared here (not in a function)
85 | unsigned long pivot[MAPLE_ARANGE64_SLOTS - 1];
| ^~~~~~~~~~~~~~~~~~~~
>> include/linux/maple_tree.h:91:28: error: 'MAPLE_NODE_SLOTS' undeclared here (not in a function); did you mean 'MAPLE_ALLOC_SLOTS'?
91 | #define MAPLE_ALLOC_SLOTS (MAPLE_NODE_SLOTS - 1)
| ^~~~~~~~~~~~~~~~
include/linux/maple_tree.h:96:27: note: in expansion of macro 'MAPLE_ALLOC_SLOTS'
96 | struct maple_alloc *slot[MAPLE_ALLOC_SLOTS];
| ^~~~~~~~~~~~~~~~~
make[2]: *** [scripts/Makefile.build:117: arch/x86/kernel/asm-offsets.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [Makefile:1200: prepare0] Error 2
make[1]: Target 'modules_prepare' not remade because of errors.
make: *** [Makefile:185: __sub-make] Error 2
make: Target 'modules_prepare' not remade because of errors.
--
In file included from include/linux/mm_types.h:11,
from include/linux/mmzone.h:21,
from include/linux/gfp.h:6,
from include/linux/slab.h:15,
from include/linux/crypto.h:20,
from arch/x86/kernel/asm-offsets.c:9:
>> include/linux/maple_tree.h:79:22: error: 'MAPLE_RANGE64_SLOTS' undeclared here (not in a function)
79 | unsigned long pivot[MAPLE_RANGE64_SLOTS - 1];
| ^~~~~~~~~~~~~~~~~~~
>> include/linux/maple_tree.h:85:22: error: 'MAPLE_ARANGE64_SLOTS' undeclared here (not in a function)
85 | unsigned long pivot[MAPLE_ARANGE64_SLOTS - 1];
| ^~~~~~~~~~~~~~~~~~~~
>> include/linux/maple_tree.h:91:28: error: 'MAPLE_NODE_SLOTS' undeclared here (not in a function); did you mean 'MAPLE_ALLOC_SLOTS'?
91 | #define MAPLE_ALLOC_SLOTS (MAPLE_NODE_SLOTS - 1)
| ^~~~~~~~~~~~~~~~
include/linux/maple_tree.h:96:27: note: in expansion of macro 'MAPLE_ALLOC_SLOTS'
96 | struct maple_alloc *slot[MAPLE_ALLOC_SLOTS];
| ^~~~~~~~~~~~~~~~~
make[2]: *** [scripts/Makefile.build:117: arch/x86/kernel/asm-offsets.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [Makefile:1200: prepare0] Error 2
make[1]: Target 'prepare' not remade because of errors.
make: *** [Makefile:185: __sub-make] Error 2
make: Target 'prepare' not remade because of errors.
vim +/MAPLE_RANGE64_SLOTS +79 include/linux/maple_tree.h
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 40
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 41
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 42 /**
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 43 * maple_tree node explained
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 44 *
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 45 * Each node type has a number of slots for entries and a number of slots for
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 46 * pivots. In the case of dense nodes, the pivots are implied by the position
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 47 * and are simply the slot index + the minimum of the node.
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 48 *
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 49 * In regular B-Tree terms, pivots are called keys. The term pivot is used to
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 50 * indicate that the tree is specifying ranges, Pivots may appear in the
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 51 * subtree with an entry attached to the value where as keys are unique to a
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 52 * specific position of a B-tree. Pivot values are inclusive of the slot with
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 53 * the same index.
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 54 *
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 55 *
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 56 * The following illustrates the layout of a range64 nodes slots and pivots.
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 57 *
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 58 * _________________________________
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 59 * Slots -> | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 60 * ┬ ┬ ┬ ┬ ┬ ┬ ┬ ┬ ┬
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 61 * │ │ │ │ │ │ │ │ └─ Implied maximum
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 62 * │ │ │ │ │ │ │ └─ Pivot 6
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 63 * │ │ │ │ │ │ └─ Pivot 5
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 64 * │ │ │ │ │ └─ Pivot 4
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 65 * │ │ │ │ └─ Pivot 3
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 66 * │ │ │ └─ Pivot 2
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 67 * │ │ └─ Pivot 1
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 68 * │ └─ Pivot 0
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 69 * └─ Implied minimum
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 70 *
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 71 * Slot contents:
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 72 * Internal (non-leaf) nodes contain pointers to other nodes.
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 73 * Leaf nodes contain entries.
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 74 *
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 75 *
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 76 */
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 77 struct maple_range_64 {
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 78 struct maple_pnode *parent;
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 @79 unsigned long pivot[MAPLE_RANGE64_SLOTS - 1];
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 80 void __rcu *slot[MAPLE_RANGE64_SLOTS];
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 81 };
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 82
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 83 struct maple_arange_64 {
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 84 struct maple_pnode *parent;
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 @85 unsigned long pivot[MAPLE_ARANGE64_SLOTS - 1];
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 86 void __rcu *slot[MAPLE_ARANGE64_SLOTS];
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 87 unsigned long gap[MAPLE_ARANGE64_SLOTS];
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 88 unsigned char meta;
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 89 };
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 90
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 @91 #define MAPLE_ALLOC_SLOTS (MAPLE_NODE_SLOTS - 1)
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 92 struct maple_alloc {
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 93 unsigned long total;
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 94 unsigned char node_count;
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 95 unsigned int request_count;
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 96 struct maple_alloc *slot[MAPLE_ALLOC_SLOTS];
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 97 };
d79b3ea66666bc9 Liam R. Howlett 2020-12-10 98
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 9 months
Re: [PATCH v2] drm/ast: Fixed CVE for DP501
by kernel test robot
Hi KuoHsiang,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on drm-exynos/exynos-drm-next]
[also build test WARNING on drm-intel/for-linux-next tegra-drm/drm/tegra/for-next drm-tip/drm-tip linus/master v5.10-rc7 next-20201211]
[cannot apply to drm/drm-next]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/KuoHsiang-Chou/drm-ast-Fixed-CVE...
base: https://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos.git exynos-drm-next
config: x86_64-randconfig-s022-20201210 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.3-179-ga00755aa-dirty
# https://github.com/0day-ci/linux/commit/75af180bfa7bc2227224653381d743b93...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review KuoHsiang-Chou/drm-ast-Fixed-CVE-for-DP501/20201211-162352
git checkout 75af180bfa7bc2227224653381d743b9396b41c2
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
"sparse warnings: (new ones prefixed by >>)"
>> drivers/gpu/drm/ast/ast_dp501.c:357:39: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/ast/ast_dp501.c:357:39: sparse: expected void volatile [noderef] __iomem *addr
drivers/gpu/drm/ast/ast_dp501.c:357:39: sparse: got unsigned int [usertype] *
drivers/gpu/drm/ast/ast_dp501.c:383:39: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/ast/ast_dp501.c:383:39: sparse: expected void volatile [noderef] __iomem *addr
drivers/gpu/drm/ast/ast_dp501.c:383:39: sparse: got unsigned int [usertype] *
vim +357 drivers/gpu/drm/ast/ast_dp501.c
332
333 bool ast_dp501_read_edid(struct drm_device *dev, u8 *ediddata)
334 {
335 struct ast_private *ast = to_ast_private(dev);
336 u32 i, boot_address, offset, data;
337
338 if (ast->config_mode == ast_use_p2a) {
339 boot_address = get_fw_base(ast);
340
341 /* validate FW version */
342 offset = AST_DP501_GBL_VERSION;
343 data = ast_mindwm(ast, boot_address + offset);
344 if ((data & AST_DP501_FW_VERSION_MASK) != AST_DP501_FW_VERSION_1)
345 return false;
346
347 /* validate PnP Monitor */
348 offset = AST_DP501_PNPMONITOR;
349 data = ast_mindwm(ast, boot_address + offset);
350 if (!(data & AST_DP501_PNP_CONNECTED))
351 return false;
352
353 /* Read EDID */
354 offset = AST_DP501_EDID_DATA;
355 for (i = 0; i < 128; i += 4) {
356 data = ast_mindwm(ast, boot_address + offset + i);
> 357 writel(data, (u32 *)(ediddata + i));
358 }
359 } else {
360 if (!ast->dp501_fw_buf)
361 return false;
362
363 /* dummy read */
364 offset = 0x0000;
365 data = readl(ast->dp501_fw_buf + offset);
366
367 /* validate FW version */
368 offset = AST_DP501_GBL_VERSION;
369 data = readl(ast->dp501_fw_buf + offset);
370 if ((data & AST_DP501_FW_VERSION_MASK) != AST_DP501_FW_VERSION_1)
371 return false;
372
373 /* validate PnP Monitor */
374 offset = AST_DP501_PNPMONITOR;
375 data = readl(ast->dp501_fw_buf + offset);
376 if (!(data & AST_DP501_PNP_CONNECTED))
377 return false;
378
379 /* Read EDID */
380 offset = AST_DP501_EDID_DATA;
381 for (i = 0; i < 128; i += 4) {
382 data = readl(ast->dp501_fw_buf + offset + i);
383 writel(data, (u32 *)(ediddata + i));
384 }
385 }
386
387 return true;
388 }
389
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 9 months
Re: [PATCH] nvmet: fix mismatched serial
by kernel test robot
Hi zhenwei,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on hch-configfs/for-next]
[also build test WARNING on linux/master linus/master v5.10-rc7 next-20201211]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/zhenwei-pi/nvmet-fix-mismatched-...
base: git://git.infradead.org/users/hch/configfs.git for-next
config: openrisc-randconfig-s031-20201209 (attached as .config)
compiler: or1k-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.3-179-ga00755aa-dirty
# https://github.com/0day-ci/linux/commit/57f71eb4dff3b1b3ecef2f0368f710025...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review zhenwei-pi/nvmet-fix-mismatched-serial/20201211-150008
git checkout 57f71eb4dff3b1b3ecef2f0368f710025c5d47f2
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=openrisc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
"sparse warnings: (new ones prefixed by >>)"
>> drivers/nvme/target/configfs.c:1000:52: sparse: sparse: cast to restricted __be64
>> drivers/nvme/target/configfs.c:1012:33: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long [usertype] serial @@ got restricted __be64 [usertype] @@
drivers/nvme/target/configfs.c:1012:33: sparse: expected unsigned long long [usertype] serial
drivers/nvme/target/configfs.c:1012:33: sparse: got restricted __be64 [usertype]
vim +1000 drivers/nvme/target/configfs.c
994
995 static ssize_t nvmet_subsys_attr_serial_show(struct config_item *item,
996 char *page)
997 {
998 struct nvmet_subsys *subsys = to_subsys(item);
999
> 1000 return snprintf(page, PAGE_SIZE, "%llx\n", be64_to_cpu(subsys->serial));
1001 }
1002
1003 static ssize_t nvmet_subsys_attr_serial_store(struct config_item *item,
1004 const char *page, size_t count)
1005 {
1006 u64 serial;
1007
1008 if (sscanf(page, "%llx\n", &serial) != 1)
1009 return -EINVAL;
1010
1011 down_write(&nvmet_config_sem);
> 1012 to_subsys(item)->serial = cpu_to_be64(serial);
1013 up_write(&nvmet_config_sem);
1014
1015 return count;
1016 }
1017 CONFIGFS_ATTR(nvmet_subsys_, attr_serial);
1018
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 9 months
Re: [PATCH net-next v2 12/12] gtp: add dst_cache to tunnels
by kernel test robot
Hi Jonas,
I love your patch! Yet something to improve:
[auto build test ERROR on net-next/master]
url: https://github.com/0day-ci/linux/commits/Jonas-Bonn/gtp-IPv6-support/2020...
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 91163f82143630a9629a8bf0227d49173697c69c
config: mips-randconfig-r026-20201209 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 5ff35356f1af2bb92785b38c657463924d9ec386)
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 mips cross compiling tool for clang build
# apt-get install binutils-mips-linux-gnu
# https://github.com/0day-ci/linux/commit/a8ea47bc0c1903be018f4d566bb96146c...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Jonas-Bonn/gtp-IPv6-support/20201211-203639
git checkout a8ea47bc0c1903be018f4d566bb96146c156ddce
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
drivers/net/gtp.c:471:2: warning: variable 'err' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
if (!ptype)
^~~~~~~~~~~
include/linux/compiler.h:56:28: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:58:30: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/gtp.c:482:9: note: uninitialized use occurs here
return err;
^~~
drivers/net/gtp.c:471:2: note: remove the 'if' if its condition is always false
if (!ptype)
^~~~~~~~~~~
include/linux/compiler.h:56:23: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^
drivers/net/gtp.c:465:2: warning: variable 'err' is used uninitialized whenever switch default is taken [-Wsometimes-uninitialized]
default:
^~~~~~~
drivers/net/gtp.c:482:9: note: uninitialized use occurs here
return err;
^~~
drivers/net/gtp.c:441:9: note: initialize the variable 'err' to silence this warning
int err;
^
= 0
>> drivers/net/gtp.c:627:8: error: implicit declaration of function 'dst_cache_get_ip6' [-Werror,-Wimplicit-function-declaration]
dst = dst_cache_get_ip6(dst_cache, saddr);
^
drivers/net/gtp.c:627:8: note: did you mean 'dst_cache_get_ip4'?
include/net/dst_cache.h:33:16: note: 'dst_cache_get_ip4' declared here
struct rtable *dst_cache_get_ip4(struct dst_cache *dst_cache, __be32 *saddr);
^
>> drivers/net/gtp.c:627:6: warning: incompatible integer to pointer conversion assigning to 'struct dst_entry *' from 'int' [-Wint-conversion]
dst = dst_cache_get_ip6(dst_cache, saddr);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/gtp.c:649:2: error: implicit declaration of function 'dst_cache_set_ip6' [-Werror,-Wimplicit-function-declaration]
dst_cache_set_ip6(dst_cache, dst, saddr);
^
3 warnings and 2 errors generated.
vim +/dst_cache_get_ip6 +627 drivers/net/gtp.c
615
616 static struct dst_entry *gtp_get_v6_dst(struct sk_buff *skb,
617 struct net_device *dev,
618 struct pdp_ctx *pctx,
619 struct in6_addr *saddr)
620 {
621 const struct sock *sk = pctx->sk;
622 struct dst_entry *dst = NULL;
623 struct dst_cache *dst_cache;
624 struct flowi6 fl6;
625
626 dst_cache = (struct dst_cache *)&pctx->dst_cache;
> 627 dst = dst_cache_get_ip6(dst_cache, saddr);
628 if (dst)
629 return dst;
630
631 memset(&fl6, 0, sizeof(fl6));
632 fl6.flowi6_mark = skb->mark;
633 fl6.flowi6_proto = IPPROTO_UDP;
634 fl6.daddr = pctx->peer_addr;
635
636 dst = ipv6_stub->ipv6_dst_lookup_flow(sock_net(sk), sk, &fl6, NULL);
637 if (IS_ERR(dst)) {
638 netdev_dbg(pctx->dev, "no route to %pI6\n", &fl6.daddr);
639 return ERR_PTR(-ENETUNREACH);
640 }
641 if (dst->dev == pctx->dev) {
642 netdev_dbg(pctx->dev, "circular route to %pI6\n", &fl6.daddr);
643 dst_release(dst);
644 return ERR_PTR(-ELOOP);
645 }
646
647 *saddr = fl6.saddr;
648
> 649 dst_cache_set_ip6(dst_cache, dst, saddr);
650
651 return dst;
652 }
653
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 9 months
[chrome-os:chromeos-5.4 21/21] drivers/iio/common/cros_ec_sensors/cros_ec_activity.c:232:7: error: this statement may fall through
by kernel test robot
tree: https://chromium.googlesource.com/chromiumos/third_party/kernel chromeos-5.4
head: a98547e350e9e17e150d23cb0afa1cd587f0a370
commit: a98547e350e9e17e150d23cb0afa1cd587f0a370 [21/21] CHROMIUM: platform/iio: cros_ec_activity: add body_detection push event
config: i386-randconfig-a006-20201209 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
git remote add chrome-os https://chromium.googlesource.com/chromiumos/third_party/kernel
git fetch --no-tags chrome-os chromeos-5.4
git checkout a98547e350e9e17e150d23cb0afa1cd587f0a370
# save the attached .config to linux build tree
make W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/iio/common/cros_ec_sensors/cros_ec_activity.c: In function 'cros_ec_activity_push_data':
>> drivers/iio/common/cros_ec_sensors/cros_ec_activity.c:232:7: error: this statement may fall through [-Werror=implicit-fallthrough=]
232 | dir = IIO_EV_DIR_FALLING;
| ~~~~^~~~~~~~~~~~~~~~~~~~
drivers/iio/common/cros_ec_sensors/cros_ec_activity.c:233:2: note: here
233 | default:
| ^~~~~~~
cc1: all warnings being treated as errors
vim +232 drivers/iio/common/cros_ec_sensors/cros_ec_activity.c
204
205 static int cros_ec_activity_push_data(
206 struct iio_dev *indio_dev,
207 s16 *data,
208 s64 timestamp)
209 {
210 struct ec_response_activity_data *activity_data =
211 (struct ec_response_activity_data *)data;
212 enum motionsensor_activity activity = activity_data->activity;
213 uint8_t state = activity_data->state;
214 const struct cros_ec_sensors_state *st = iio_priv(indio_dev);
215 const struct iio_chan_spec *chan;
216 const struct iio_event_spec *event;
217 enum iio_event_direction dir;
218 int index;
219 u64 ev;
220
221 switch (activity) {
222 case MOTIONSENSE_ACTIVITY_BODY_DETECTION:
223 index = st->body_detection_channel_index;
224 dir = state ? IIO_EV_DIR_FALLING : IIO_EV_DIR_RISING;
225 break;
226 case MOTIONSENSE_ACTIVITY_SIG_MOTION:
227 index = st->sig_motion_channel_index;
228 dir = IIO_EV_DIR_FALLING;
229 break;
230 case MOTIONSENSE_ACTIVITY_DOUBLE_TAP:
231 index = st->double_tap_channel_index;
> 232 dir = IIO_EV_DIR_FALLING;
233 default:
234 dev_warn(&indio_dev->dev, "Unknown activity: %d\n", activity);
235 return 0;
236 }
237 chan = &st->channels[index];
238 event = &chan->event_spec[0];
239
240 ev = IIO_UNMOD_EVENT_CODE(chan->type, index, event->type, dir);
241 iio_push_event(indio_dev, ev, timestamp);
242 return 0;
243 }
244
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 9 months
Re: [Intel-gfx] [PATCH 09/11] drm/i915: migrate skl planes code new file
by kernel test robot
Hi Dave,
I love your patch! Perhaps something to improve:
[auto build test WARNING on drm-intel/for-linux-next]
[also build test WARNING on drm-tip/drm-tip next-20201211]
[cannot apply to v5.10-rc7]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Dave-Airlie/drm-i915-display-mov...
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: x86_64-randconfig-a003-20201210 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 5ff35356f1af2bb92785b38c657463924d9ec386)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://github.com/0day-ci/linux/commit/a5c9dca8844730c679e9716efd016bfe0...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Dave-Airlie/drm-i915-display-move-needs_modeset-to-an-inline-in-header/20201211-163119
git checkout a5c9dca8844730c679e9716efd016bfe04f9d002
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> drivers/gpu/drm/i915/display/intel_gen9_plane.c:1396:5: warning: no previous prototype for function 'skl_plane_ctl_crtc' [-Wmissing-prototypes]
u32 skl_plane_ctl_crtc(const struct intel_crtc_state *crtc_state)
^
drivers/gpu/drm/i915/display/intel_gen9_plane.c:1396:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
u32 skl_plane_ctl_crtc(const struct intel_crtc_state *crtc_state)
^
static
>> drivers/gpu/drm/i915/display/intel_gen9_plane.c:1416:5: warning: no previous prototype for function 'skl_plane_ctl' [-Wmissing-prototypes]
u32 skl_plane_ctl(const struct intel_crtc_state *crtc_state,
^
drivers/gpu/drm/i915/display/intel_gen9_plane.c:1416:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
u32 skl_plane_ctl(const struct intel_crtc_state *crtc_state,
^
static
>> drivers/gpu/drm/i915/display/intel_gen9_plane.c:1455:5: warning: no previous prototype for function 'glk_plane_color_ctl_crtc' [-Wmissing-prototypes]
u32 glk_plane_color_ctl_crtc(const struct intel_crtc_state *crtc_state)
^
drivers/gpu/drm/i915/display/intel_gen9_plane.c:1455:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
u32 glk_plane_color_ctl_crtc(const struct intel_crtc_state *crtc_state)
^
static
>> drivers/gpu/drm/i915/display/intel_gen9_plane.c:1472:5: warning: no previous prototype for function 'glk_plane_color_ctl' [-Wmissing-prototypes]
u32 glk_plane_color_ctl(const struct intel_crtc_state *crtc_state,
^
drivers/gpu/drm/i915/display/intel_gen9_plane.c:1472:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
u32 glk_plane_color_ctl(const struct intel_crtc_state *crtc_state,
^
static
4 warnings generated.
vim +/skl_plane_ctl_crtc +1396 drivers/gpu/drm/i915/display/intel_gen9_plane.c
1395
> 1396 u32 skl_plane_ctl_crtc(const struct intel_crtc_state *crtc_state)
1397 {
1398 struct drm_i915_private *dev_priv = to_i915(crtc_state->uapi.crtc->dev);
1399 u32 plane_ctl = 0;
1400
1401 if (crtc_state->uapi.async_flip)
1402 plane_ctl |= PLANE_CTL_ASYNC_FLIP;
1403
1404 if (INTEL_GEN(dev_priv) >= 10 || IS_GEMINILAKE(dev_priv))
1405 return plane_ctl;
1406
1407 if (crtc_state->gamma_enable)
1408 plane_ctl |= PLANE_CTL_PIPE_GAMMA_ENABLE;
1409
1410 if (crtc_state->csc_enable)
1411 plane_ctl |= PLANE_CTL_PIPE_CSC_ENABLE;
1412
1413 return plane_ctl;
1414 }
1415
> 1416 u32 skl_plane_ctl(const struct intel_crtc_state *crtc_state,
1417 const struct intel_plane_state *plane_state)
1418 {
1419 struct drm_i915_private *dev_priv =
1420 to_i915(plane_state->uapi.plane->dev);
1421 const struct drm_framebuffer *fb = plane_state->hw.fb;
1422 unsigned int rotation = plane_state->hw.rotation;
1423 const struct drm_intel_sprite_colorkey *key = &plane_state->ckey;
1424 u32 plane_ctl;
1425
1426 plane_ctl = PLANE_CTL_ENABLE;
1427
1428 if (INTEL_GEN(dev_priv) < 10 && !IS_GEMINILAKE(dev_priv)) {
1429 plane_ctl |= skl_plane_ctl_alpha(plane_state);
1430 plane_ctl |= PLANE_CTL_PLANE_GAMMA_DISABLE;
1431
1432 if (plane_state->hw.color_encoding == DRM_COLOR_YCBCR_BT709)
1433 plane_ctl |= PLANE_CTL_YUV_TO_RGB_CSC_FORMAT_BT709;
1434
1435 if (plane_state->hw.color_range == DRM_COLOR_YCBCR_FULL_RANGE)
1436 plane_ctl |= PLANE_CTL_YUV_RANGE_CORRECTION_DISABLE;
1437 }
1438
1439 plane_ctl |= skl_plane_ctl_format(fb->format->format);
1440 plane_ctl |= skl_plane_ctl_tiling(fb->modifier);
1441 plane_ctl |= skl_plane_ctl_rotate(rotation & DRM_MODE_ROTATE_MASK);
1442
1443 if (INTEL_GEN(dev_priv) >= 10)
1444 plane_ctl |= cnl_plane_ctl_flip(rotation &
1445 DRM_MODE_REFLECT_MASK);
1446
1447 if (key->flags & I915_SET_COLORKEY_DESTINATION)
1448 plane_ctl |= PLANE_CTL_KEY_ENABLE_DESTINATION;
1449 else if (key->flags & I915_SET_COLORKEY_SOURCE)
1450 plane_ctl |= PLANE_CTL_KEY_ENABLE_SOURCE;
1451
1452 return plane_ctl;
1453 }
1454
> 1455 u32 glk_plane_color_ctl_crtc(const struct intel_crtc_state *crtc_state)
1456 {
1457 struct drm_i915_private *dev_priv = to_i915(crtc_state->uapi.crtc->dev);
1458 u32 plane_color_ctl = 0;
1459
1460 if (INTEL_GEN(dev_priv) >= 11)
1461 return plane_color_ctl;
1462
1463 if (crtc_state->gamma_enable)
1464 plane_color_ctl |= PLANE_COLOR_PIPE_GAMMA_ENABLE;
1465
1466 if (crtc_state->csc_enable)
1467 plane_color_ctl |= PLANE_COLOR_PIPE_CSC_ENABLE;
1468
1469 return plane_color_ctl;
1470 }
1471
> 1472 u32 glk_plane_color_ctl(const struct intel_crtc_state *crtc_state,
1473 const struct intel_plane_state *plane_state)
1474 {
1475 struct drm_i915_private *dev_priv =
1476 to_i915(plane_state->uapi.plane->dev);
1477 const struct drm_framebuffer *fb = plane_state->hw.fb;
1478 struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
1479 u32 plane_color_ctl = 0;
1480
1481 plane_color_ctl |= PLANE_COLOR_PLANE_GAMMA_DISABLE;
1482 plane_color_ctl |= glk_plane_color_ctl_alpha(plane_state);
1483
1484 if (fb->format->is_yuv && !icl_is_hdr_plane(dev_priv, plane->id)) {
1485 switch (plane_state->hw.color_encoding) {
1486 case DRM_COLOR_YCBCR_BT709:
1487 plane_color_ctl |= PLANE_COLOR_CSC_MODE_YUV709_TO_RGB709;
1488 break;
1489 case DRM_COLOR_YCBCR_BT2020:
1490 plane_color_ctl |=
1491 PLANE_COLOR_CSC_MODE_YUV2020_TO_RGB2020;
1492 break;
1493 default:
1494 plane_color_ctl |=
1495 PLANE_COLOR_CSC_MODE_YUV601_TO_RGB601;
1496 }
1497 if (plane_state->hw.color_range == DRM_COLOR_YCBCR_FULL_RANGE)
1498 plane_color_ctl |= PLANE_COLOR_YUV_RANGE_CORRECTION_DISABLE;
1499 } else if (fb->format->is_yuv) {
1500 plane_color_ctl |= PLANE_COLOR_INPUT_CSC_ENABLE;
1501 }
1502
1503 return plane_color_ctl;
1504 }
1505
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 9 months
Re: [PATCH] i2c: sprd: use a specific timeout to avoid system hang up issue
by kernel test robot
Hi Chunyan,
I love your patch! Yet something to improve:
[auto build test ERROR on wsa/i2c/for-next]
[also build test ERROR on v5.10-rc7 next-20201211]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Chunyan-Zhang/i2c-sprd-use-a-spe...
base: https://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git i2c/for-next
config: arm-randconfig-r012-20201210 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 5ff35356f1af2bb92785b38c657463924d9ec386)
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://github.com/0day-ci/linux/commit/725c61cfaa18f63c1fbc7f4a25a04a72c...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Chunyan-Zhang/i2c-sprd-use-a-specific-timeout-to-avoid-system-hang-up-issue/20201211-182817
git checkout 725c61cfaa18f63c1fbc7f4a25a04a72c4fbda48
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> drivers/i2c/busses/i2c-sprd.c:249:43: error: use of undeclared identifier 'I2C_XFER_TIMEOUT'
unsigned long timeout = msecs_to_jiffies(I2C_XFER_TIMEOUT);
^
1 error generated.
vim +/I2C_XFER_TIMEOUT +249 drivers/i2c/busses/i2c-sprd.c
244
245 static int sprd_i2c_handle_msg(struct i2c_adapter *i2c_adap,
246 struct i2c_msg *msg, bool is_last_msg)
247 {
248 struct sprd_i2c *i2c_dev = i2c_adap->algo_data;
> 249 unsigned long timeout = msecs_to_jiffies(I2C_XFER_TIMEOUT);
250
251 i2c_dev->msg = msg;
252 i2c_dev->buf = msg->buf;
253 i2c_dev->count = msg->len;
254
255 reinit_completion(&i2c_dev->complete);
256 sprd_i2c_reset_fifo(i2c_dev);
257 sprd_i2c_set_devaddr(i2c_dev, msg);
258 sprd_i2c_set_count(i2c_dev, msg->len);
259
260 if (msg->flags & I2C_M_RD) {
261 sprd_i2c_opt_mode(i2c_dev, 1);
262 sprd_i2c_send_stop(i2c_dev, 1);
263 } else {
264 sprd_i2c_opt_mode(i2c_dev, 0);
265 sprd_i2c_send_stop(i2c_dev, !!is_last_msg);
266 }
267
268 /*
269 * We should enable rx fifo full interrupt to get data when receiving
270 * full data.
271 */
272 if (msg->flags & I2C_M_RD)
273 sprd_i2c_set_fifo_full_int(i2c_dev, 1);
274 else
275 sprd_i2c_data_transfer(i2c_dev);
276
277 sprd_i2c_opt_start(i2c_dev);
278
279 timeout = wait_for_completion_timeout(&i2c_dev->complete, timeout);
280 if (!timeout)
281 return -EIO;
282
283 return i2c_dev->err;
284 }
285
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 9 months
[morimoto-linux:fw-cleanup-2020-12-11-v3 57/73] sound/soc/soc-dai.c:173:1: error: redefinition of '__ksymtab_snd_soc_dai_set_fmt'
by kernel test robot
tree: https://github.com/morimoto/linux fw-cleanup-2020-12-11-v3
head: f3cc575c07169de36c9964f4bacf1ad5caee9ff1
commit: 8ba55018968592e5b9ddc77c656463b42bd8ac5c [57/73] ASoC: add snd_soc_runtime_get_dai_fmt()
config: arm-randconfig-r012-20201209 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 5ff35356f1af2bb92785b38c657463924d9ec386)
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://github.com/morimoto/linux/commit/8ba55018968592e5b9ddc77c656463b4...
git remote add morimoto-linux https://github.com/morimoto/linux
git fetch --no-tags morimoto-linux fw-cleanup-2020-12-11-v3
git checkout 8ba55018968592e5b9ddc77c656463b42bd8ac5c
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> sound/soc/soc-dai.c:173:1: error: redefinition of '__ksymtab_snd_soc_dai_set_fmt'
EXPORT_SYMBOL_GPL(snd_soc_dai_set_fmt);
^
include/linux/export.h:159:33: note: expanded from macro 'EXPORT_SYMBOL_GPL'
#define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "_gpl")
^
include/linux/export.h:155:34: note: expanded from macro '_EXPORT_SYMBOL'
#define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
^
include/linux/export.h:147:39: note: expanded from macro '__EXPORT_SYMBOL'
#define __EXPORT_SYMBOL(sym, sec, ns) ___EXPORT_SYMBOL(sym, sec, ns)
^
include/linux/export.h:108:2: note: expanded from macro '___EXPORT_SYMBOL'
__KSYMTAB_ENTRY(sym, sec)
^
include/linux/export.h:67:36: note: expanded from macro '__KSYMTAB_ENTRY'
static const struct kernel_symbol __ksymtab_##sym \
^
<scratch space>:63:1: note: expanded from here
__ksymtab_snd_soc_dai_set_fmt
^
sound/soc/soc-dai.c:154:1: note: previous definition is here
EXPORT_SYMBOL_GPL(snd_soc_dai_set_fmt);
^
include/linux/export.h:159:33: note: expanded from macro 'EXPORT_SYMBOL_GPL'
#define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "_gpl")
^
include/linux/export.h:155:34: note: expanded from macro '_EXPORT_SYMBOL'
#define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
^
include/linux/export.h:147:39: note: expanded from macro '__EXPORT_SYMBOL'
#define __EXPORT_SYMBOL(sym, sec, ns) ___EXPORT_SYMBOL(sym, sec, ns)
^
include/linux/export.h:108:2: note: expanded from macro '___EXPORT_SYMBOL'
__KSYMTAB_ENTRY(sym, sec)
^
include/linux/export.h:67:36: note: expanded from macro '__KSYMTAB_ENTRY'
static const struct kernel_symbol __ksymtab_##sym \
^
<scratch space>:52:1: note: expanded from here
__ksymtab_snd_soc_dai_set_fmt
^
1 error generated.
vim +/__ksymtab_snd_soc_dai_set_fmt +173 sound/soc/soc-dai.c
8ba55018968592 Kuninori Morimoto 2020-12-08 155
06f6e1d41427f3 Kuninori Morimoto 2019-07-22 156 /**
06f6e1d41427f3 Kuninori Morimoto 2019-07-22 157 * snd_soc_dai_set_fmt - configure DAI hardware audio format.
06f6e1d41427f3 Kuninori Morimoto 2019-07-22 158 * @dai: DAI
06f6e1d41427f3 Kuninori Morimoto 2019-07-22 159 * @fmt: SND_SOC_DAIFMT_* format value.
06f6e1d41427f3 Kuninori Morimoto 2019-07-22 160 *
06f6e1d41427f3 Kuninori Morimoto 2019-07-22 161 * Configures the DAI hardware format and clocking.
06f6e1d41427f3 Kuninori Morimoto 2019-07-22 162 */
06f6e1d41427f3 Kuninori Morimoto 2019-07-22 163 int snd_soc_dai_set_fmt(struct snd_soc_dai *dai, unsigned int fmt)
06f6e1d41427f3 Kuninori Morimoto 2019-07-22 164 {
aa7b8230d4c3d0 Kuninori Morimoto 2020-04-24 165 int ret = -ENOTSUPP;
aa7b8230d4c3d0 Kuninori Morimoto 2020-04-24 166
479914ed779d40 Kuninori Morimoto 2020-04-24 167 if (dai->driver->ops &&
479914ed779d40 Kuninori Morimoto 2020-04-24 168 dai->driver->ops->set_fmt)
aa7b8230d4c3d0 Kuninori Morimoto 2020-04-24 169 ret = dai->driver->ops->set_fmt(dai, fmt);
aa7b8230d4c3d0 Kuninori Morimoto 2020-04-24 170
aa7b8230d4c3d0 Kuninori Morimoto 2020-04-24 171 return soc_dai_ret(dai, ret);
06f6e1d41427f3 Kuninori Morimoto 2019-07-22 172 }
06f6e1d41427f3 Kuninori Morimoto 2019-07-22 @173 EXPORT_SYMBOL_GPL(snd_soc_dai_set_fmt);
06f6e1d41427f3 Kuninori Morimoto 2019-07-22 174
:::::: The code at line 173 was first introduced by commit
:::::: 06f6e1d41427f394ad3f67ecf06efcd28a46932c ASoC: add soc-dai.c
:::::: TO: Kuninori Morimoto <kuninori.morimoto.gx(a)renesas.com>
:::::: CC: Mark Brown <broonie(a)kernel.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 9 months