Re: [PATCH v6 21/36] drm: v3d: fix common struct sg_table related issues
by kernel test robot
Hi Marek,
I love your patch! Perhaps something to improve:
[auto build test WARNING on next-20200618]
[also build test WARNING on v5.8-rc1]
[cannot apply to linuxtv-media/master staging/staging-testing drm-exynos/exynos-drm-next drm-intel/for-linux-next linus/master v5.8-rc1 v5.7 v5.7-rc7]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Marek-Szyprowski/DRM-fix-struct-...
base: ce2cc8efd7a40cbd17841add878cb691d0ce0bba
config: alpha-allyesconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
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
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha
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 >>, old ones prefixed by <<):
In file included from include/linux/kernel.h:11,
from include/linux/delay.h:22,
from drivers/gpu/drm/v3d/v3d_drv.h:4,
from drivers/gpu/drm/v3d/v3d_mmu.c:21:
drivers/gpu/drm/v3d/v3d_mmu.c: In function 'v3d_mmu_insert_ptes':
include/linux/compiler.h:339:38: error: call to '__compiletime_assert_254' declared with attribute error: BUILD_BUG_ON failed: V3D_MMU_PAGE_SHIFT != PAGE_SIZE
339 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^
include/linux/compiler.h:320:4: note: in definition of macro '__compiletime_assert'
320 | prefix ## suffix(); | ^~~~~~
include/linux/compiler.h:339:2: note: in expansion of macro '_compiletime_assert'
339 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:2: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
>> drivers/gpu/drm/v3d/v3d_mmu.c:100:3: note: in expansion of macro 'BUILD_BUG_ON'
100 | BUILD_BUG_ON(V3D_MMU_PAGE_SHIFT != PAGE_SIZE);
| ^~~~~~~~~~~~
vim +/BUILD_BUG_ON +100 drivers/gpu/drm/v3d/v3d_mmu.c
86
87 void v3d_mmu_insert_ptes(struct v3d_bo *bo)
88 {
89 struct drm_gem_shmem_object *shmem_obj = &bo->base;
90 struct v3d_dev *v3d = to_v3d_dev(shmem_obj->base.dev);
91 u32 page = bo->node.start;
92 u32 page_prot = V3D_PTE_WRITEABLE | V3D_PTE_VALID;
93 struct sg_dma_page_iter dma_iter;
94
95 for_each_sgtable_dma_page(shmem_obj->sgt, &dma_iter, 0) {
96 dma_addr_t dma_addr = sg_page_iter_dma_address(&dma_iter);
97 u32 page_address = dma_addr >> V3D_MMU_PAGE_SHIFT;
98 u32 pte = page_prot | page_address;
99
> 100 BUILD_BUG_ON(V3D_MMU_PAGE_SHIFT != PAGE_SIZE);
101 BUG_ON(page_address + 1 >= BIT(24));
102 v3d->pt[page++] = pte;
103 }
104
105 WARN_ON_ONCE(page - bo->node.start !=
106 shmem_obj->base.size >> V3D_MMU_PAGE_SHIFT);
107
108 if (v3d_mmu_flush_all(v3d))
109 dev_err(v3d->drm.dev, "MMU flush timeout\n");
110 }
111
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
Re: [RFC PATCH 16/21] lib: have __zerocopy_sg_from_iter get netgpu pages for a sk
by kernel test robot
Hi Jonathan,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on net/master]
[also build test ERROR on linus/master v5.8-rc1 next-20200618]
[cannot apply to char-misc/char-misc-testing net-next/master]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Jonathan-Lemon/netgpu-networking...
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git ef7232da6bcd4294cbb2d424bc35885721570f01
config: x86_64-kexec (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce (this is a W=1 build):
# save the attached .config to linux build tree
make W=1 ARCH=x86_64
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 >>):
ld: lib/iov_iter.o: in function `__netgpu_get_pages':
>> include/net/netgpu.h:64: undefined reference to `fn_netgpu_get_pages'
>> ld: include/net/netgpu.h:64: undefined reference to `fn_netgpu_get_pages'
vim +64 include/net/netgpu.h
60654acea6f2ba Jonathan Lemon 2020-06-18 59
60654acea6f2ba Jonathan Lemon 2020-06-18 60 static inline int
60654acea6f2ba Jonathan Lemon 2020-06-18 61 __netgpu_get_pages(struct sock *sk, struct page **pages,
60654acea6f2ba Jonathan Lemon 2020-06-18 62 unsigned long addr, int count)
60654acea6f2ba Jonathan Lemon 2020-06-18 63 {
60654acea6f2ba Jonathan Lemon 2020-06-18 @64 return fn_netgpu_get_pages(sk, pages, addr, count);
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
Re: [PATCH v9 3/9] firmware: arm_scmi: Add notification dispatch and delivery
by kernel test robot
Hi Cristian,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on linux/master]
[also build test WARNING on soc/for-next linus/master v5.8-rc1 next-20200618]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Cristian-Marussi/SCMI-Notificati...
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 1b5044021070efa3259f3e9548dc35d1eb6aa844
config: i386-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce (this is a W=1 build):
# 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 warnings (new ones prefixed by >>, old ones prefixed by <<):
drivers/firmware/arm_scmi/notify.c: In function 'scmi_notify':
>> drivers/firmware/arm_scmi/notify.c:146:24: warning: comparison is always true due to limited range of data type [-Wtype-limits]
146 | if ((__ni) && (__pid) < SCMI_MAX_PROTO) | ^
>> drivers/firmware/arm_scmi/notify.c:165:9: note: in expansion of macro 'SCMI_GET_PROTO'
165 | __pd = SCMI_GET_PROTO((__ni), (__pid)); | ^~~~~~~~~~~~~~
>> drivers/firmware/arm_scmi/notify.c:566:10: note: in expansion of macro 'SCMI_GET_REVT'
566 | r_evt = SCMI_GET_REVT(ni, proto_id, evt_id);
| ^~~~~~~~~~~~~
drivers/firmware/arm_scmi/notify.c: In function 'scmi_register_protocol_events':
drivers/firmware/arm_scmi/notify.c:741:31: warning: comparison is always false due to limited range of data type [-Wtype-limits]
741 | if (!ops || !evt || proto_id >= SCMI_MAX_PROTO)
| ^~
vim +146 drivers/firmware/arm_scmi/notify.c
be6c83f5e12aef Cristian Marussi 2020-06-18 135
be6c83f5e12aef Cristian Marussi 2020-06-18 136 /*
be6c83f5e12aef Cristian Marussi 2020-06-18 137 * A set of macros used to access safely @registered_protocols and
be6c83f5e12aef Cristian Marussi 2020-06-18 138 * @registered_events arrays; these are fixed in size and each entry is possibly
be6c83f5e12aef Cristian Marussi 2020-06-18 139 * populated at protocols' registration time and then only read but NEVER
be6c83f5e12aef Cristian Marussi 2020-06-18 140 * modified or removed.
be6c83f5e12aef Cristian Marussi 2020-06-18 141 */
be6c83f5e12aef Cristian Marussi 2020-06-18 142 #define SCMI_GET_PROTO(__ni, __pid) \
be6c83f5e12aef Cristian Marussi 2020-06-18 143 ({ \
be6c83f5e12aef Cristian Marussi 2020-06-18 144 struct scmi_registered_events_desc *__pd = NULL; \
be6c83f5e12aef Cristian Marussi 2020-06-18 145 \
be6c83f5e12aef Cristian Marussi 2020-06-18 @146 if ((__ni) && (__pid) < SCMI_MAX_PROTO) \
be6c83f5e12aef Cristian Marussi 2020-06-18 147 __pd = READ_ONCE((__ni)->registered_protocols[(__pid)]);\
be6c83f5e12aef Cristian Marussi 2020-06-18 148 __pd; \
be6c83f5e12aef Cristian Marussi 2020-06-18 149 })
be6c83f5e12aef Cristian Marussi 2020-06-18 150
be6c83f5e12aef Cristian Marussi 2020-06-18 151 #define SCMI_GET_REVT_FROM_PD(__pd, __eid) \
be6c83f5e12aef Cristian Marussi 2020-06-18 152 ({ \
be6c83f5e12aef Cristian Marussi 2020-06-18 153 struct scmi_registered_event *__revt = NULL; \
be6c83f5e12aef Cristian Marussi 2020-06-18 154 \
be6c83f5e12aef Cristian Marussi 2020-06-18 155 if ((__pd) && (__eid) < (__pd)->num_events) \
be6c83f5e12aef Cristian Marussi 2020-06-18 156 __revt = READ_ONCE((__pd)->registered_events[(__eid)]); \
be6c83f5e12aef Cristian Marussi 2020-06-18 157 __revt; \
be6c83f5e12aef Cristian Marussi 2020-06-18 158 })
be6c83f5e12aef Cristian Marussi 2020-06-18 159
be6c83f5e12aef Cristian Marussi 2020-06-18 160 #define SCMI_GET_REVT(__ni, __pid, __eid) \
be6c83f5e12aef Cristian Marussi 2020-06-18 161 ({ \
be6c83f5e12aef Cristian Marussi 2020-06-18 162 struct scmi_registered_event *__revt; \
be6c83f5e12aef Cristian Marussi 2020-06-18 163 struct scmi_registered_events_desc *__pd; \
be6c83f5e12aef Cristian Marussi 2020-06-18 164 \
be6c83f5e12aef Cristian Marussi 2020-06-18 @165 __pd = SCMI_GET_PROTO((__ni), (__pid)); \
be6c83f5e12aef Cristian Marussi 2020-06-18 166 __revt = SCMI_GET_REVT_FROM_PD(__pd, (__eid)); \
be6c83f5e12aef Cristian Marussi 2020-06-18 167 __revt; \
be6c83f5e12aef Cristian Marussi 2020-06-18 168 })
be6c83f5e12aef Cristian Marussi 2020-06-18 169
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
Re: [RESEND PATCH v27 11/15] leds: lp55xx: Add multicolor framework support to lp55xx
by Dan Murphy
Jacek
On 6/18/20 4:21 PM, Jacek Anaszewski wrote:
> Dan,
>
> On 6/18/20 12:33 AM, Dan Murphy wrote:
>> Jacek
>>
>> On 6/17/20 4:41 PM, Jacek Anaszewski wrote:
>>> Dan,
>>>
>>> On 6/17/20 9:22 PM, Dan Murphy wrote:
>>>> Pavel/Jacek
>>>>
>>>> On 6/17/20 11:28 AM, kernel test robot wrote:
>>>>> Hi Dan,
>>>>>
>>>>> I love your patch! Yet something to improve:
>>>>>
>>>>> [auto build test ERROR on pavel-linux-leds/for-next]
>>>>> [cannot apply to j.anaszewski-leds/for-next]
>>>>> [if your patch is applied to the wrong git tree, please drop us a
>>>>> note to help
>>>>> improve the system. BTW, we also suggest to use '--base' option to
>>>>> specify the
>>>>> base tree in git format-patch, please see
>>>>> https://stackoverflow.com/a/37406982]
>>>>>
>>>>> url:
>>>>> https://github.com/0day-ci/linux/commits/Dan-Murphy/Multicolor-Framework-...
>>>>>
>>>>> base:
>>>>> git://git.kernel.org/pub/scm/linux/kernel/git/pavel/linux-leds.git
>>>>> for-next
>>>>> config: ia64-randconfig-r015-20200617 (attached as .config)
>>>>> compiler: ia64-linux-gcc (GCC) 9.3.0
>>>>> 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
>>>>> # save the attached .config to linux build tree
>>>>> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0
>>>>> make.cross ARCH=ia64
>>>>>
>>>>> 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 >>, old ones prefixed by <<):
>>>>>
>>>>> ia64-linux-ld: drivers/leds/leds-lp55xx-common.o: in function
>>>>> `lp55xx_set_mc_brightness':
>>>>>>> drivers/leds/leds-lp55xx-common.c:146: undefined reference to
>>>>>>> `led_mc_calc_color_components'
>>>>> ia64-linux-ld: drivers/leds/leds-lp55xx-common.o: in function
>>>>> `devm_led_classdev_multicolor_register':
>>>>>>> include/linux/led-class-multicolor.h:74: undefined reference to
>>>>>>> `devm_led_classdev_multicolor_register_ext'
>>>>> vim +146 drivers/leds/leds-lp55xx-common.c
>>>>>
>>>>> 138
>>>>> 139 static int lp55xx_set_mc_brightness(struct led_classdev
>>>>> *cdev,
>>>>> 140 enum led_brightness brightness)
>>>>> 141 {
>>>>> 142 struct led_classdev_mc *mc_dev =
>>>>> lcdev_to_mccdev(cdev);
>>>>> 143 struct lp55xx_led *led = mcled_cdev_to_led(mc_dev);
>>>>> 144 struct lp55xx_device_config *cfg = led->chip->cfg;
>>>>> 145
>>>>> > 146 led_mc_calc_color_components(&led->mc_cdev, brightness);
>>>>> 147 return cfg->multicolor_brightness_fn(led);
>>>>> 148
>>>>
>>>> Well this was a mess to figure out.
>>>>
>>>> The only fix I can figure out here is to remove the
>>>>
>>>> depends on LEDS_CLASS_MULTI_COLOR || !LEDS_CLASS_MULTI_COLOR
>>>>
>>>> from each child device and add
>>>>
>>>> select LEDS_CLASS_MULTI_COLOR
>>>>
>>>> to the LP55XX_COMMON
>>>>
>>>> This way the Multi color framework will inherit the symbol that was
>>>> set by the COMMON flag which is inherited by majority from the
>>>> child flags.
>>>
>>> Did you try this?
>>>
>>> --- a/drivers/leds/Kconfig
>>> +++ b/drivers/leds/Kconfig
>>> @@ -398,6 +398,7 @@ config LEDS_LP50XX
>>> config LEDS_LP55XX_COMMON
>>> tristate "Common Driver for TI/National
>>> LP5521/5523/55231/5562/8501"
>>> depends on LEDS_LP5521 || LEDS_LP5523 || LEDS_LP5562 ||
>>> LEDS_LP8501
>>> + depends on LEDS_CLASS_MULTI_COLOR || !LEDS_CLASS_MULTI_COLOR
>>> depends on OF
>>> select FW_LOADER
>>> select FW_LOADER_USER_HELPER
>>>
>>>
>> Yes I did
>>
>> That gave unmet dependencies.
>>
>> WARNING: unmet direct dependencies detected for LEDS_LP55XX_COMMON
>> Depends on [m]: NEW_LEDS [=y] && (LEDS_LP5521 [=n] || LEDS_LP5523
>> [=m] || LEDS_LP5562 [=y] || LEDS_LP8501 [=y]) &&
>> (LEDS_CLASS_MULTI_COLOR [=m] || !LEDS_CLASS_MULTI_COLOR [=m]) && OF [=y]
>> Selected by [y]:
>> - LEDS_LP5562 [=y] && NEW_LEDS [=y] && LEDS_CLASS [=y] && I2C [=y]
>> - LEDS_LP8501 [=y] && NEW_LEDS [=y] && LEDS_CLASS [=y] && I2C [=y]
>> Selected by [m]:
>> - LEDS_LP5523 [=m] && NEW_LEDS [=y] && LEDS_CLASS [=y] && I2C [=y]
>> && (LEDS_CLASS_MULTI_COLOR [=m] || !LEDS_CLASS_MULTI_COLOR [=m])
>>
>
> When I was testing that yesterday I also had the same warning at some
> point of testing different Kconfig setups, but with what I showed above
> it ceased to appear. Now every time I am doing "make oldconfig" the
> CONFIG_LEDS_LP55XX_COMMON=y entry gets changed to =m with the config
> from the test bot.
>
That is not what I saw in my testing especially after doing a distclean
Dan
2 years, 3 months
[omap-audio:peter/ti-linux-5.4.y/wip 7002/9999] carveout-heap.c:undefined reference to `memunmap'
by kernel test robot
Hi Andrew,
FYI, the error/warning still remains.
tree: https://github.com/omap-audio/linux-audio peter/ti-linux-5.4.y/wip
head: d4ea716deb5cae567d7ffb483c1cc6a18ca0d3ba
commit: d5ba15e3647df3f2bece61d36cca4a536939623b [7002/9999] dma-buf: heaps: Add Carveout heap to dmabuf heaps
config: um-allmodconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce (this is a W=1 build):
git checkout d5ba15e3647df3f2bece61d36cca4a536939623b
# save the attached .config to linux build tree
make W=1 ARCH=um
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 >>):
/usr/bin/ld: arch/um/drivers/vde.o: in function `vde_open_real':
(.text+0x9cb): warning: Using 'getgrnam' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: (.text+0x61d): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: arch/um/drivers/vector_user.o: in function `user_init_socket_fds':
vector_user.c:(.text+0x53a): warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: arch/um/drivers/pcap.o: in function `pcap_nametoaddr':
(.text+0x10095): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: arch/um/drivers/pcap.o: in function `pcap_nametonetaddr':
(.text+0x10155): warning: Using 'getnetbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: arch/um/drivers/pcap.o: in function `pcap_nametoproto':
(.text+0x10395): warning: Using 'getprotobyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: arch/um/drivers/pcap.o: in function `pcap_nametoport':
(.text+0x1018b): warning: Using 'getservbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: drivers/dma-buf/heaps/carveout-heap.o: in function `dma_heap_vunmap':
>> carveout-heap.c:(.text+0xcd): undefined reference to `memunmap'
/usr/bin/ld: drivers/dma-buf/heaps/carveout-heap.o: in function `dma_heap_vmap':
>> carveout-heap.c:(.text+0x198): undefined reference to `memremap'
/usr/bin/ld: drivers/dma-buf/heaps/carveout-heap.o: in function `dma_heap_dma_buf_release':
carveout-heap.c:(.text+0x2f5): undefined reference to `memunmap'
>> /usr/bin/ld: carveout-heap.c:(.text+0x319): undefined reference to `gen_pool_free_owner'
/usr/bin/ld: drivers/dma-buf/heaps/carveout-heap.o: in function `carveout_dma_heap_allocate':
>> carveout-heap.c:(.text+0x76e): undefined reference to `gen_pool_alloc_algo_owner'
/usr/bin/ld: carveout-heap.c:(.text+0x88e): undefined reference to `gen_pool_free_owner'
/usr/bin/ld: drivers/dma-buf/heaps/carveout-heap.o: in function `carveout_dma_heap_export':
>> carveout-heap.c:(.text+0x91f): undefined reference to `gen_pool_create'
>> /usr/bin/ld: carveout-heap.c:(.text+0x969): undefined reference to `gen_pool_add_owner'
/usr/bin/ld: drivers/dma-buf/heaps/carveout-heap.o: in function `carveout_dma_heap_export.cold':
>> carveout-heap.c:(.text.unlikely+0x125): undefined reference to `gen_pool_destroy'
collect2: error: ld returned 1 exit status
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
Re: [PATCH v6 04/36] drm: amdgpu: fix common struct sg_table related issues
by kernel test robot
Hi Marek,
I love your patch! Perhaps something to improve:
[auto build test WARNING on next-20200618]
[also build test WARNING on v5.8-rc1]
[cannot apply to linuxtv-media/master staging/staging-testing drm-exynos/exynos-drm-next drm-intel/for-linux-next linus/master v5.8-rc1 v5.7 v5.7-rc7]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Marek-Szyprowski/DRM-fix-struct-...
base: ce2cc8efd7a40cbd17841add878cb691d0ce0bba
config: alpha-allyesconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
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
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha
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 >>, old ones prefixed by <<):
In file included from include/linux/dma-mapping.h:11,
from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:25:
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c: In function 'amdgpu_vram_mgr_alloc_sgt':
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 | for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
| ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 | for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
| ^~~~~~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:480:2: note: in expansion of macro 'for_each_sgtable_sg'
480 | for_each_sgtable_sg(*sgt, sg, i)
| ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 | for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
| ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 | for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
| ^~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:480:2: note: in expansion of macro 'for_each_sgtable_sg'
480 | for_each_sgtable_sg(*sgt, sg, i)
| ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 | for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
| ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 | for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
| ^~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:484:2: note: in expansion of macro 'for_each_sgtable_sg'
484 | for_each_sgtable_sg(*sgt, sg, i) {
| ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 | for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
| ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 | for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
| ^~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:484:2: note: in expansion of macro 'for_each_sgtable_sg'
484 | for_each_sgtable_sg(*sgt, sg, i) {
| ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 | for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
| ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 | for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
| ^~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:504:2: note: in expansion of macro 'for_each_sgtable_sg'
504 | for_each_sgtable_sg(*sgt, sg, i) {
| ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 | for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
| ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 | for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
| ^~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:504:2: note: in expansion of macro 'for_each_sgtable_sg'
504 | for_each_sgtable_sg(*sgt, sg, i) {
| ^~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:26:
At top level:
drivers/gpu/drm/amd/amdgpu/amdgpu.h:190:18: warning: 'sched_policy' defined but not used [-Wunused-const-variable=]
190 | static const int sched_policy = KFD_SCHED_POLICY_HWS;
| ^~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/../display/dc/dc_types.h:33,
from drivers/gpu/drm/amd/amdgpu/../display/dc/dm_services_types.h:30,
from drivers/gpu/drm/amd/amdgpu/../include/dm_pp_interface.h:26,
from drivers/gpu/drm/amd/amdgpu/amdgpu.h:65,
from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:26:
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:76:32: warning: 'dc_fixpt_ln2_div_2' defined but not used [-Wunused-const-variable=]
76 | static const struct fixed31_32 dc_fixpt_ln2_div_2 = { 1488522236LL };
| ^~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:75:32: warning: 'dc_fixpt_ln2' defined but not used [-Wunused-const-variable=]
75 | static const struct fixed31_32 dc_fixpt_ln2 = { 2977044471LL };
| ^~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:74:32: warning: 'dc_fixpt_e' defined but not used [-Wunused-const-variable=]
74 | static const struct fixed31_32 dc_fixpt_e = { 11674931555LL };
| ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:73:32: warning: 'dc_fixpt_two_pi' defined but not used [-Wunused-const-variable=]
73 | static const struct fixed31_32 dc_fixpt_two_pi = { 26986075409LL };
| ^~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:72:32: warning: 'dc_fixpt_pi' defined but not used [-Wunused-const-variable=]
72 | static const struct fixed31_32 dc_fixpt_pi = { 13493037705LL };
| ^~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:67:32: warning: 'dc_fixpt_zero' defined but not used [-Wunused-const-variable=]
67 | static const struct fixed31_32 dc_fixpt_zero = { 0 };
| ^~~~~~~~~~~~~
vim +/for_each_sgtable_sg +480 drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
444
445 /**
446 * amdgpu_vram_mgr_alloc_sgt - allocate and fill a sg table
447 *
448 * @adev: amdgpu device pointer
449 * @mem: TTM memory object
450 * @dev: the other device
451 * @dir: dma direction
452 * @sgt: resulting sg table
453 *
454 * Allocate and fill a sg table from a VRAM allocation.
455 */
456 int amdgpu_vram_mgr_alloc_sgt(struct amdgpu_device *adev,
457 struct ttm_mem_reg *mem,
458 struct device *dev,
459 enum dma_data_direction dir,
460 struct sg_table **sgt)
461 {
462 struct drm_mm_node *node;
463 struct scatterlist *sg;
464 int num_entries = 0;
465 unsigned int pages;
466 int i, r;
467
468 *sgt = kmalloc(sizeof(*sg), GFP_KERNEL);
469 if (!*sgt)
470 return -ENOMEM;
471
472 for (pages = mem->num_pages, node = mem->mm_node;
473 pages; pages -= node->size, ++node)
474 ++num_entries;
475
476 r = sg_alloc_table(*sgt, num_entries, GFP_KERNEL);
477 if (r)
478 goto error_free;
479
> 480 for_each_sgtable_sg(*sgt, sg, i)
481 sg->length = 0;
482
483 node = mem->mm_node;
484 for_each_sgtable_sg(*sgt, sg, i) {
485 phys_addr_t phys = (node->start << PAGE_SHIFT) +
486 adev->gmc.aper_base;
487 size_t size = node->size << PAGE_SHIFT;
488 dma_addr_t addr;
489
490 ++node;
491 addr = dma_map_resource(dev, phys, size, dir,
492 DMA_ATTR_SKIP_CPU_SYNC);
493 r = dma_mapping_error(dev, addr);
494 if (r)
495 goto error_unmap;
496
497 sg_set_page(sg, NULL, size, 0);
498 sg_dma_address(sg) = addr;
499 sg_dma_len(sg) = size;
500 }
501 return 0;
502
503 error_unmap:
504 for_each_sgtable_sg(*sgt, sg, i) {
505 if (!sg->length)
506 continue;
507
508 dma_unmap_resource(dev, sg->dma_address,
509 sg->length, dir,
510 DMA_ATTR_SKIP_CPU_SYNC);
511 }
512 sg_free_table(*sgt);
513
514 error_free:
515 kfree(*sgt);
516 return r;
517 }
518
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
Re: [PATCH v9 1/9] firmware: arm_scmi: Add notification protocol-registration
by kernel test robot
Hi Cristian,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on linux/master]
[also build test WARNING on soc/for-next linus/master v5.8-rc1 next-20200618]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Cristian-Marussi/SCMI-Notificati...
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 1b5044021070efa3259f3e9548dc35d1eb6aa844
config: i386-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce (this is a W=1 build):
# 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 warnings (new ones prefixed by >>, old ones prefixed by <<):
drivers/firmware/arm_scmi/notify.c: In function 'scmi_register_protocol_events':
>> drivers/firmware/arm_scmi/notify.c:294:31: warning: comparison is always false due to limited range of data type [-Wtype-limits]
294 | if (!ops || !evt || proto_id >= SCMI_MAX_PROTO)
| ^~
vim +294 drivers/firmware/arm_scmi/notify.c
263
264 /**
265 * scmi_register_protocol_events() - Register Protocol Events with the core
266 * @handle: The handle identifying the platform instance against which the
267 * the protocol's events are registered
268 * @proto_id: Protocol ID
269 * @queue_sz: Size in bytes of the associated queue to be allocated
270 * @ops: Protocol specific event-related operations
271 * @evt: Event descriptor array
272 * @num_events: Number of events in @evt array
273 * @num_sources: Number of possible sources for this protocol on this
274 * platform.
275 *
276 * Used by SCMI Protocols initialization code to register with the notification
277 * core the list of supported events and their descriptors: takes care to
278 * pre-allocate and store all needed descriptors, scratch buffers and event
279 * queues.
280 *
281 * Return: 0 on Success
282 */
283 int scmi_register_protocol_events(const struct scmi_handle *handle,
284 u8 proto_id, size_t queue_sz,
285 const struct scmi_event_ops *ops,
286 const struct scmi_event *evt, int num_events,
287 int num_sources)
288 {
289 int i;
290 size_t payld_sz = 0;
291 struct scmi_registered_events_desc *pd;
292 struct scmi_notify_instance *ni;
293
> 294 if (!ops || !evt || proto_id >= SCMI_MAX_PROTO)
295 return -EINVAL;
296
297 /* Ensure notify_priv is updated */
298 smp_rmb();
299 if (unlikely(!handle->notify_priv))
300 return -ENOMEM;
301 ni = handle->notify_priv;
302
303 /* Attach to the notification main devres group */
304 if (!devres_open_group(ni->handle->dev, ni->gid, GFP_KERNEL))
305 return -ENOMEM;
306
307 for (i = 0; i < num_events; i++)
308 payld_sz = max_t(size_t, payld_sz, evt[i].max_payld_sz);
309 pd = scmi_allocate_registered_events_desc(ni, proto_id, queue_sz,
310 sizeof(struct scmi_event_header) + payld_sz,
311 num_events, ops);
312 if (IS_ERR(pd))
313 goto err;
314
315 for (i = 0; i < num_events; i++, evt++) {
316 struct scmi_registered_event *r_evt;
317
318 r_evt = devm_kzalloc(ni->handle->dev, sizeof(*r_evt),
319 GFP_KERNEL);
320 if (!r_evt)
321 goto err;
322 r_evt->proto = pd;
323 r_evt->evt = evt;
324
325 r_evt->sources = devm_kcalloc(ni->handle->dev, num_sources,
326 sizeof(refcount_t), GFP_KERNEL);
327 if (!r_evt->sources)
328 goto err;
329 r_evt->num_sources = num_sources;
330 mutex_init(&r_evt->sources_mtx);
331
332 r_evt->report = devm_kzalloc(ni->handle->dev,
333 evt->max_report_sz, GFP_KERNEL);
334 if (!r_evt->report)
335 goto err;
336
337 pd->registered_events[i] = r_evt;
338 /* Ensure events are updated */
339 smp_wmb();
340 dev_dbg(handle->dev, "registered event - %lX\n",
341 MAKE_ALL_SRCS_KEY(r_evt->proto->id, r_evt->evt->id));
342 }
343
344 /* Register protocol and events...it will never be removed */
345 ni->registered_protocols[proto_id] = pd;
346 /* Ensure protocols are updated */
347 smp_wmb();
348
349 devres_close_group(ni->handle->dev, ni->gid);
350
351 return 0;
352
353 err:
354 dev_warn(handle->dev, "Proto:%X - Registration Failed !\n", proto_id);
355 /* A failing protocol registration does not trigger full failure */
356 devres_close_group(ni->handle->dev, ni->gid);
357
358 return -ENOMEM;
359 }
360
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
[sashal-linux-stable:queue-4.4 76/87] drivers/pci/quirks.c:4250:27: error: 'PCI_BUS_FLAGS_NO_AERSID' undeclared; did you mean
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git queue-4.4
head: 406ac1284a7e2ecc563c113dd80760ac34fe775e
commit: 48a95280236f1251065b24e29b417a63951bf224 [76/87] x86/PCI: VMD: Add quirk for AER to ignore source ID
config: alpha-defconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 7.5.0
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
git checkout 48a95280236f1251065b24e29b417a63951bf224
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-7.5.0 make.cross ARCH=alpha
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 drivers/pci/quirks.c:29:0:
drivers/pci/pci.h: In function 'pci_match_one_device':
drivers/pci/pci.h:202:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if ((id->vendor == PCI_ANY_ID || id->vendor == dev->vendor) &&
^~
drivers/pci/pci.h:203:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
(id->device == PCI_ANY_ID || id->device == dev->device) &&
^~
drivers/pci/pci.h:204:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
(id->subvendor == PCI_ANY_ID || id->subvendor == dev->subsystem_vendor) &&
^~
drivers/pci/pci.h:205:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
(id->subdevice == PCI_ANY_ID || id->subdevice == dev->subsystem_device) &&
^~
drivers/pci/quirks.c: In function 'quirk_via_vlink':
drivers/pci/quirks.c:943:52: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (dev->bus->number != 0 || PCI_SLOT(dev->devfn) > via_vlink_dev_hi ||
^
drivers/pci/quirks.c:944:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
PCI_SLOT(dev->devfn) < via_vlink_dev_lo)
^
drivers/pci/quirks.c: In function 'pci_quirk_intel_pch_acs_match':
drivers/pci/quirks.c:3888:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (i = 0; i < ARRAY_SIZE(pci_quirk_intel_pch_acs_ids); i++)
^
drivers/pci/quirks.c: In function 'quirk_no_aersid':
>> drivers/pci/quirks.c:4250:27: error: 'PCI_BUS_FLAGS_NO_AERSID' undeclared (first use in this function); did you mean 'PCI_BUS_FLAGS_NO_MSI'?
pdev->bus->bus_flags |= PCI_BUS_FLAGS_NO_AERSID;
^~~~~~~~~~~~~~~~~~~~~~~
PCI_BUS_FLAGS_NO_MSI
drivers/pci/quirks.c:4250:27: note: each undeclared identifier is reported only once for each function it appears in
drivers/pci/quirks.c: In function 'quirk_netmos':
drivers/pci/quirks.c:1904:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
if (dev->subsystem_vendor == PCI_VENDOR_ID_IBM &&
^
drivers/pci/quirks.c:1907:2: note: here
case PCI_DEVICE_ID_NETMOS_9735:
^~~~
vim +4250 drivers/pci/quirks.c
4239
4240 /*
4241 * VMD-enabled root ports will change the source ID for all messages
4242 * to the VMD device. Rather than doing device matching with the source
4243 * ID, the AER driver should traverse the child device tree, reading
4244 * AER registers to find the faulting device.
4245 */
4246 static void quirk_no_aersid(struct pci_dev *pdev)
4247 {
4248 /* VMD Domain */
4249 if (pdev->bus->sysdata && pci_domain_nr(pdev->bus) >= 0x10000)
> 4250 pdev->bus->bus_flags |= PCI_BUS_FLAGS_NO_AERSID;
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
[xlnx:master 12/20] drivers/misc/xilinx-ai-engine/ai-engine-fpga.c:21:2: warning: ignoring return value of 'mutex_lock_interruptible', declared with attribute warn_unused_result
by kernel test robot
tree: https://github.com/Xilinx/linux-xlnx master
head: 319e5bc767fe351a63744daa9cdd69b1915956d0
commit: e24d5dbb603552c4cb9c9e946c78055a60f83d85 [12/20] misc: ai-engine: Add FPGA bridge to AI engine partition
config: alpha-allyesconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
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
git checkout e24d5dbb603552c4cb9c9e946c78055a60f83d85
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha
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 >>, old ones prefixed by <<):
drivers/misc/xilinx-ai-engine/ai-engine-fpga.c: In function 'aie_fpga_bridge_enable_set':
>> drivers/misc/xilinx-ai-engine/ai-engine-fpga.c:21:2: warning: ignoring return value of 'mutex_lock_interruptible', declared with attribute warn_unused_result [-Wunused-result]
21 | mutex_lock_interruptible(&apart->mlock);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/misc/xilinx-ai-engine/ai-engine-fpga.c: In function 'aie_fpga_bridge_enable_show':
drivers/misc/xilinx-ai-engine/ai-engine-fpga.c:35:2: warning: ignoring return value of 'mutex_lock_interruptible', declared with attribute warn_unused_result [-Wunused-result]
35 | mutex_lock_interruptible(&apart->mlock);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vim +/mutex_lock_interruptible +21 drivers/misc/xilinx-ai-engine/ai-engine-fpga.c
9
10 static int aie_fpga_bridge_enable_set(struct fpga_bridge *bridge, bool enable)
11 {
12 struct aie_partition *apart = bridge->priv;
13
14 /*
15 * TBD:
16 * "Enable" should enable the SHIM tile configuration.
17 * "Disable" should should disable SHIM DMAs, and wait
18 * until SHIM DMA stops, and disable SHIM
19 * to PL streams within partition.
20 */
> 21 mutex_lock_interruptible(&apart->mlock);
22 if (enable)
23 apart->status |= XAIE_PART_STATUS_BRIDGE_ENABLED;
24 else
25 apart->status &= ~XAIE_PART_STATUS_BRIDGE_ENABLED;
26 mutex_unlock(&apart->mlock);
27 return 0;
28 }
29
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months