Re: [PATCH net-next 1/7] ethernet: constify references to netdev->dev_addr in drivers
by kernel test robot
Hi Jakub,
I love your patch! Perhaps something to improve:
[auto build test WARNING on net-next/master]
url: https://github.com/0day-ci/linux/commits/Jakub-Kicinski/ethernet-more-net...
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 5f3b8acee9fee04ece54376a4f842847000a97f3
config: sparc64-randconfig-s032-20211013 (attached as .config)
compiler: sparc64-linux-gcc (GCC) 11.2.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.4-dirty
# https://github.com/0day-ci/linux/commit/6ead16677b0e7c54f6a7679276c70ffa1...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Jakub-Kicinski/ethernet-more-netdev-dev_addr-write-removals/20211014-045931
git checkout 6ead16677b0e7c54f6a7679276c70ffa1bbc17f3
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=sparc64
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/net/ethernet/qlogic/qed/qed_l2.c: In function 'qed_req_bulletin_update_mac':
>> drivers/net/ethernet/qlogic/qed/qed_l2.c:2861:61: warning: passing argument 2 of 'qed_vf_pf_bulletin_update_mac' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
2861 | ret = qed_vf_pf_bulletin_update_mac(p_hwfn, mac);
| ^~~
In file included from drivers/net/ethernet/qlogic/qed/qed_sriov.h:10,
from drivers/net/ethernet/qlogic/qed/qed_l2.c:39:
drivers/net/ethernet/qlogic/qed/qed_vf.h:1262:53: note: expected 'u8 *' {aka 'unsigned char *'} but argument is of type 'const u8 *' {aka 'const unsigned char *'}
1262 | u8 *p_mac)
| ~~~~^~~~~
sparse warnings: (new ones prefixed by >>)
>> drivers/net/ethernet/qlogic/qed/qed_l2.c:2861:61: sparse: sparse: incorrect type in argument 2 (different modifiers) @@ expected unsigned char [usertype] *p_mac @@ got unsigned char const [usertype] *mac @@
drivers/net/ethernet/qlogic/qed/qed_l2.c:2861:61: sparse: expected unsigned char [usertype] *p_mac
drivers/net/ethernet/qlogic/qed/qed_l2.c:2861:61: sparse: got unsigned char const [usertype] *mac
vim +2861 drivers/net/ethernet/qlogic/qed/qed_l2.c
cee4d26448c100 Manish Chopra 2015-10-26 2850
6ead16677b0e7c Jakub Kicinski 2021-10-13 2851 static int qed_req_bulletin_update_mac(struct qed_dev *cdev, const u8 *mac)
809c45a091d93e Shahed Shaikh 2018-04-19 2852 {
809c45a091d93e Shahed Shaikh 2018-04-19 2853 int i, ret;
809c45a091d93e Shahed Shaikh 2018-04-19 2854
809c45a091d93e Shahed Shaikh 2018-04-19 2855 if (IS_PF(cdev))
809c45a091d93e Shahed Shaikh 2018-04-19 2856 return 0;
809c45a091d93e Shahed Shaikh 2018-04-19 2857
809c45a091d93e Shahed Shaikh 2018-04-19 2858 for_each_hwfn(cdev, i) {
809c45a091d93e Shahed Shaikh 2018-04-19 2859 struct qed_hwfn *p_hwfn = &cdev->hwfns[i];
809c45a091d93e Shahed Shaikh 2018-04-19 2860
809c45a091d93e Shahed Shaikh 2018-04-19 @2861 ret = qed_vf_pf_bulletin_update_mac(p_hwfn, mac);
809c45a091d93e Shahed Shaikh 2018-04-19 2862 if (ret)
809c45a091d93e Shahed Shaikh 2018-04-19 2863 return ret;
809c45a091d93e Shahed Shaikh 2018-04-19 2864 }
809c45a091d93e Shahed Shaikh 2018-04-19 2865
809c45a091d93e Shahed Shaikh 2018-04-19 2866 return 0;
809c45a091d93e Shahed Shaikh 2018-04-19 2867 }
809c45a091d93e Shahed Shaikh 2018-04-19 2868
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week
[soc:qcom/drivers 35/36] arch/arm64/boot/dts/qcom/sm8250.dtsi:16:10: fatal error: dt-bindings/power/qcom-aoss-qmp.h: No such file or directory
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git qcom/drivers
head: f27591125a56c8c50491919b159569ab5730878d
commit: e603577231d4d041eceeaf23c25935df5d008798 [35/36] dt-bindings: soc: qcom: aoss: Delete unused power-domain definitions
config: arm64-randconfig-r026-20211013 (attached as .config)
compiler: aarch64-linux-gcc (GCC) 11.2.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
# https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git/commit/?id=e6...
git remote add soc https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git
git fetch --no-tags soc qcom/drivers
git checkout e603577231d4d041eceeaf23c25935df5d008798
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arm64 SHELL=/bin/bash
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 arch/arm64/boot/dts/qcom/qrb5165-rb5.dts:11:
>> arch/arm64/boot/dts/qcom/sm8250.dtsi:16:10: fatal error: dt-bindings/power/qcom-aoss-qmp.h: No such file or directory
16 | #include <dt-bindings/power/qcom-aoss-qmp.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
--
In file included from arch/arm64/boot/dts/qcom/sa8155p-adp.dts:10:
>> arch/arm64/boot/dts/qcom/sm8150.dtsi:9:10: fatal error: dt-bindings/power/qcom-aoss-qmp.h: No such file or directory
9 | #include <dt-bindings/power/qcom-aoss-qmp.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
--
In file included from arch/arm64/boot/dts/qcom/sc7180-idp.dts:13:
>> arch/arm64/boot/dts/qcom/sc7180.dtsi:18:10: fatal error: dt-bindings/power/qcom-aoss-qmp.h: No such file or directory
18 | #include <dt-bindings/power/qcom-aoss-qmp.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
--
In file included from arch/arm64/boot/dts/qcom/sc7280-idp.dtsi:10,
from arch/arm64/boot/dts/qcom/sc7280-idp.dts:11:
>> arch/arm64/boot/dts/qcom/sc7280.dtsi:13:10: fatal error: dt-bindings/power/qcom-aoss-qmp.h: No such file or directory
13 | #include <dt-bindings/power/qcom-aoss-qmp.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
--
In file included from arch/arm64/boot/dts/qcom/sm8350-hdk.dts:10:
>> arch/arm64/boot/dts/qcom/sm8350.dtsi:11:10: fatal error: dt-bindings/power/qcom-aoss-qmp.h: No such file or directory
11 | #include <dt-bindings/power/qcom-aoss-qmp.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
vim +16 arch/arm64/boot/dts/qcom/sm8250.dtsi
087d537aec562a Bjorn Andersson 2020-06-22 @16 #include <dt-bindings/power/qcom-aoss-qmp.h>
b6f78e2709693d Bjorn Andersson 2020-04-14 17 #include <dt-bindings/power/qcom-rpmpd.h>
63e10791ccab66 Srinivas Kandagatla 2020-12-02 18 #include <dt-bindings/soc/qcom,apr.h>
60378f1a171e25 Venkata Narendra Kumar Gutta 2020-03-10 19 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
63e10791ccab66 Srinivas Kandagatla 2020-12-02 20 #include <dt-bindings/sound/qcom,q6afe.h>
bac12f2569d1e2 Amit Kucheria 2020-09-10 21 #include <dt-bindings/thermal/thermal.h>
5b9ec225d4ed22 jonathan(a)marek.ca 2021-04-01 22 #include <dt-bindings/clock/qcom,videocc-sm8250.h>
60378f1a171e25 Venkata Narendra Kumar Gutta 2020-03-10 23
:::::: The code at line 16 was first introduced by commit
:::::: 087d537aec562a62b855b62cbf6e3c70ed6d7115 arm64: dts: qcom: sm8250: Add QMP AOSS node
:::::: TO: Bjorn Andersson <bjorn.andersson(a)linaro.org>
:::::: CC: Bjorn Andersson <bjorn.andersson(a)linaro.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week
[jimc:dd-drm-next 19/20] drivers/gpu/drm/drm_drv.c:886:15: error: implicit declaration of function 'dynamic_debug_register_tracer'
by kernel test robot
tree: https://github.com/jimc/linux.git dd-drm-next
head: 2eec9300d730ad634b967a853579f0b5dffecc01
commit: 25a6802d94cd0a8eb61882bcbf6acdec479a965b [19/20] reg-in-drmdrv
config: openrisc-buildonly-randconfig-r003-20211013 (attached as .config)
compiler: or1k-linux-gcc (GCC) 11.2.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
# https://github.com/jimc/linux/commit/25a6802d94cd0a8eb61882bcbf6acdec479a...
git remote add jimc https://github.com/jimc/linux.git
git fetch --no-tags jimc dd-drm-next
git checkout 25a6802d94cd0a8eb61882bcbf6acdec479a965b
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=openrisc
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/gpu/drm/drm_drv.c: In function 'drm_dev_register':
>> drivers/gpu/drm/drm_drv.c:886:15: error: implicit declaration of function 'dynamic_debug_register_tracer' [-Werror=implicit-function-declaration]
886 | ret = dynamic_debug_register_tracer(THIS_MODULE, drm_trace_printvaf);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/drm_drv.c: In function 'drm_dev_unregister':
>> drivers/gpu/drm/drm_drv.c:957:9: error: implicit declaration of function 'dynamic_debug_unregister_tracer' [-Werror=implicit-function-declaration]
957 | dynamic_debug_unregister_tracer(THIS_MODULE, drm_trace_printvaf);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +/dynamic_debug_register_tracer +886 drivers/gpu/drm/drm_drv.c
840
841 /**
842 * drm_dev_register - Register DRM device
843 * @dev: Device to register
844 * @flags: Flags passed to the driver's .load() function
845 *
846 * Register the DRM device @dev with the system, advertise device to user-space
847 * and start normal device operation. @dev must be initialized via drm_dev_init()
848 * previously.
849 *
850 * Never call this twice on any device!
851 *
852 * NOTE: To ensure backward compatibility with existing drivers method this
853 * function calls the &drm_driver.load method after registering the device
854 * nodes, creating race conditions. Usage of the &drm_driver.load methods is
855 * therefore deprecated, drivers must perform all initialization before calling
856 * drm_dev_register().
857 *
858 * RETURNS:
859 * 0 on success, negative error code on failure.
860 */
861 int drm_dev_register(struct drm_device *dev, unsigned long flags)
862 {
863 const struct drm_driver *driver = dev->driver;
864 int ret;
865
866 if (!driver->load)
867 drm_mode_config_validate(dev);
868
869 WARN_ON(!dev->managed.final_kfree);
870
871 if (drm_dev_needs_global_mutex(dev))
872 mutex_lock(&drm_global_mutex);
873
874 ret = drm_minor_register(dev, DRM_MINOR_RENDER);
875 if (ret)
876 goto err_minors;
877
878 ret = drm_minor_register(dev, DRM_MINOR_PRIMARY);
879 if (ret)
880 goto err_minors;
881
882 ret = create_compat_control_link(dev);
883 if (ret)
884 goto err_minors;
885
> 886 ret = dynamic_debug_register_tracer(THIS_MODULE, drm_trace_printvaf);
887 if (ret)
888 goto err_dyndbg;
889
890 dev->registered = true;
891
892 if (dev->driver->load) {
893 ret = dev->driver->load(dev, flags);
894 if (ret)
895 goto err_minors;
896 }
897
898 if (drm_core_check_feature(dev, DRIVER_MODESET))
899 drm_modeset_register_all(dev);
900
901 DRM_INFO("Initialized %s %d.%d.%d %s for %s on minor %d\n",
902 driver->name, driver->major, driver->minor,
903 driver->patchlevel, driver->date,
904 dev->dev ? dev_name(dev->dev) : "virtual device",
905 dev->primary->index);
906
907 goto out_unlock;
908
909 err_dyndbg:
910 dynamic_debug_register_tracer(THIS_MODULE, drm_trace_printvaf);
911 err_minors:
912 remove_compat_control_link(dev);
913 drm_minor_unregister(dev, DRM_MINOR_PRIMARY);
914 drm_minor_unregister(dev, DRM_MINOR_RENDER);
915 out_unlock:
916 if (drm_dev_needs_global_mutex(dev))
917 mutex_unlock(&drm_global_mutex);
918 return ret;
919 }
920 EXPORT_SYMBOL(drm_dev_register);
921
922 /**
923 * drm_dev_unregister - Unregister DRM device
924 * @dev: Device to unregister
925 *
926 * Unregister the DRM device from the system. This does the reverse of
927 * drm_dev_register() but does not deallocate the device. The caller must call
928 * drm_dev_put() to drop their final reference.
929 *
930 * A special form of unregistering for hotpluggable devices is drm_dev_unplug(),
931 * which can be called while there are still open users of @dev.
932 *
933 * This should be called first in the device teardown code to make sure
934 * userspace can't access the device instance any more.
935 */
936 void drm_dev_unregister(struct drm_device *dev)
937 {
938 if (drm_core_check_feature(dev, DRIVER_LEGACY))
939 drm_lastclose(dev);
940
941 dev->registered = false;
942
943 drm_client_dev_unregister(dev);
944
945 if (drm_core_check_feature(dev, DRIVER_MODESET))
946 drm_modeset_unregister_all(dev);
947
948 if (dev->driver->unload)
949 dev->driver->unload(dev);
950
951 drm_legacy_pci_agp_destroy(dev);
952 drm_legacy_rmmaps(dev);
953
954 remove_compat_control_link(dev);
955 drm_minor_unregister(dev, DRM_MINOR_PRIMARY);
956 drm_minor_unregister(dev, DRM_MINOR_RENDER);
> 957 dynamic_debug_unregister_tracer(THIS_MODULE, drm_trace_printvaf);
958 }
959 EXPORT_SYMBOL(drm_dev_unregister);
960
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week
[linux-next:master 3576/7806] drivers/gpu/drm/msm/msm_gem.c:624:20: error: implicit declaration of function 'vmap'
by kernel test robot
Hi Christian,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 8006b911c90a4ec09958447d24c8a4c3538f5723
commit: b3ed524f84f573ece1aa2f26e9db3c34a593e0d1 [3576/7806] drm/msm: allow compile_test on !ARM
config: hexagon-buildonly-randconfig-r003-20211013 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 6c76d0101193aa4eb891a6954ff047eda2f9cf71)
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
# https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commi...
git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
git fetch --no-tags linux-next master
git checkout b3ed524f84f573ece1aa2f26e9db3c34a593e0d1
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=hexagon
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/gpu/drm/msm/msm_gem.c:624:20: error: implicit declaration of function 'vmap' [-Werror,-Wimplicit-function-declaration]
msm_obj->vaddr = vmap(pages, obj->size >> PAGE_SHIFT,
^
>> drivers/gpu/drm/msm/msm_gem.c:625:5: error: use of undeclared identifier 'VM_MAP'
VM_MAP, msm_gem_pgprot(msm_obj, PAGE_KERNEL));
^
>> drivers/gpu/drm/msm/msm_gem.c:777:2: error: implicit declaration of function 'vunmap' [-Werror,-Wimplicit-function-declaration]
vunmap(msm_obj->vaddr);
^
drivers/gpu/drm/msm/msm_gem.c:777:2: note: did you mean 'kunmap'?
include/linux/highmem.h:46:20: note: 'kunmap' declared here
static inline void kunmap(struct page *page);
^
3 errors generated.
--
>> drivers/gpu/drm/msm/msm_gem_shrinker.c:224:10: error: implicit declaration of function 'register_vmap_purge_notifier' [-Werror,-Wimplicit-function-declaration]
WARN_ON(register_vmap_purge_notifier(&priv->vmap_notifier));
^
drivers/gpu/drm/msm/msm_gem_shrinker.c:224:10: note: did you mean 'register_module_notifier'?
include/linux/module.h:655:5: note: 'register_module_notifier' declared here
int register_module_notifier(struct notifier_block *nb);
^
>> drivers/gpu/drm/msm/msm_gem_shrinker.c:238:11: error: implicit declaration of function 'unregister_vmap_purge_notifier' [-Werror,-Wimplicit-function-declaration]
WARN_ON(unregister_vmap_purge_notifier(&priv->vmap_notifier));
^
drivers/gpu/drm/msm/msm_gem_shrinker.c:238:11: note: did you mean 'unregister_module_notifier'?
include/linux/module.h:656:5: note: 'unregister_module_notifier' declared here
int unregister_module_notifier(struct notifier_block *nb);
^
2 errors generated.
vim +/vmap +624 drivers/gpu/drm/msm/msm_gem.c
c8afe684c95cd1 Rob Clark 2013-06-26 593
fad33f4b1073a4 Rob Clark 2017-09-15 594 static void *get_vaddr(struct drm_gem_object *obj, unsigned madv)
c8afe684c95cd1 Rob Clark 2013-06-26 595 {
c8afe684c95cd1 Rob Clark 2013-06-26 596 struct msm_gem_object *msm_obj = to_msm_bo(obj);
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 597 int ret = 0;
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 598
90643a24a7bfbe Rob Clark 2021-04-05 599 GEM_WARN_ON(!msm_gem_is_locked(obj));
e4b87d227f9e82 Rob Clark 2020-10-23 600
8b6b7d84bfce9a Daniel Vetter 2020-05-14 601 if (obj->import_attach)
8b6b7d84bfce9a Daniel Vetter 2020-05-14 602 return ERR_PTR(-ENODEV);
8b6b7d84bfce9a Daniel Vetter 2020-05-14 603
90643a24a7bfbe Rob Clark 2021-04-05 604 if (GEM_WARN_ON(msm_obj->madv > madv)) {
6a41da17e87dee Mamta Shukla 2018-10-20 605 DRM_DEV_ERROR(obj->dev->dev, "Invalid madv state: %u vs %u\n",
fad33f4b1073a4 Rob Clark 2017-09-15 606 msm_obj->madv, madv);
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 607 return ERR_PTR(-EBUSY);
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 608 }
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 609
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 610 /* increment vmap_count *before* vmap() call, so shrinker can
a6ae74c956e72c Rob Clark 2020-10-23 611 * check vmap_count (is_vunmapable()) outside of msm_obj lock.
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 612 * This guarantees that we won't try to msm_gem_vunmap() this
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 613 * same object from within the vmap() call (while we already
a6ae74c956e72c Rob Clark 2020-10-23 614 * hold msm_obj lock)
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 615 */
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 616 msm_obj->vmap_count++;
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 617
c8afe684c95cd1 Rob Clark 2013-06-26 618 if (!msm_obj->vaddr) {
c8afe684c95cd1 Rob Clark 2013-06-26 619 struct page **pages = get_pages(obj);
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 620 if (IS_ERR(pages)) {
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 621 ret = PTR_ERR(pages);
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 622 goto fail;
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 623 }
c8afe684c95cd1 Rob Clark 2013-06-26 @624 msm_obj->vaddr = vmap(pages, obj->size >> PAGE_SHIFT,
af9b3547079915 Jonathan Marek 2021-04-23 @625 VM_MAP, msm_gem_pgprot(msm_obj, PAGE_KERNEL));
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 626 if (msm_obj->vaddr == NULL) {
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 627 ret = -ENOMEM;
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 628 goto fail;
c8afe684c95cd1 Rob Clark 2013-06-26 629 }
10f76165d30bf5 Rob Clark 2021-04-26 630
10f76165d30bf5 Rob Clark 2021-04-26 631 update_inactive(msm_obj);
c8afe684c95cd1 Rob Clark 2013-06-26 632 }
c8afe684c95cd1 Rob Clark 2013-06-26 633
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 634 return msm_obj->vaddr;
c8afe684c95cd1 Rob Clark 2013-06-26 635
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 636 fail:
e1e9db2ca79575 Rob Clark 2016-05-27 637 msm_obj->vmap_count--;
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 638 return ERR_PTR(ret);
18f23049f640e2 Rob Clark 2016-05-26 639 }
18f23049f640e2 Rob Clark 2016-05-26 640
e4b87d227f9e82 Rob Clark 2020-10-23 641 void *msm_gem_get_vaddr_locked(struct drm_gem_object *obj)
fad33f4b1073a4 Rob Clark 2017-09-15 642 {
fad33f4b1073a4 Rob Clark 2017-09-15 643 return get_vaddr(obj, MSM_MADV_WILLNEED);
fad33f4b1073a4 Rob Clark 2017-09-15 644 }
fad33f4b1073a4 Rob Clark 2017-09-15 645
e4b87d227f9e82 Rob Clark 2020-10-23 646 void *msm_gem_get_vaddr(struct drm_gem_object *obj)
e4b87d227f9e82 Rob Clark 2020-10-23 647 {
e4b87d227f9e82 Rob Clark 2020-10-23 648 void *ret;
e4b87d227f9e82 Rob Clark 2020-10-23 649
e4b87d227f9e82 Rob Clark 2020-10-23 650 msm_gem_lock(obj);
e4b87d227f9e82 Rob Clark 2020-10-23 651 ret = msm_gem_get_vaddr_locked(obj);
e4b87d227f9e82 Rob Clark 2020-10-23 652 msm_gem_unlock(obj);
e4b87d227f9e82 Rob Clark 2020-10-23 653
e4b87d227f9e82 Rob Clark 2020-10-23 654 return ret;
e4b87d227f9e82 Rob Clark 2020-10-23 655 }
e4b87d227f9e82 Rob Clark 2020-10-23 656
fad33f4b1073a4 Rob Clark 2017-09-15 657 /*
fad33f4b1073a4 Rob Clark 2017-09-15 658 * Don't use this! It is for the very special case of dumping
fad33f4b1073a4 Rob Clark 2017-09-15 659 * submits from GPU hangs or faults, were the bo may already
fad33f4b1073a4 Rob Clark 2017-09-15 660 * be MSM_MADV_DONTNEED, but we know the buffer is still on the
fad33f4b1073a4 Rob Clark 2017-09-15 661 * active list.
fad33f4b1073a4 Rob Clark 2017-09-15 662 */
fad33f4b1073a4 Rob Clark 2017-09-15 663 void *msm_gem_get_vaddr_active(struct drm_gem_object *obj)
fad33f4b1073a4 Rob Clark 2017-09-15 664 {
fad33f4b1073a4 Rob Clark 2017-09-15 665 return get_vaddr(obj, __MSM_MADV_PURGED);
fad33f4b1073a4 Rob Clark 2017-09-15 666 }
fad33f4b1073a4 Rob Clark 2017-09-15 667
e4b87d227f9e82 Rob Clark 2020-10-23 668 void msm_gem_put_vaddr_locked(struct drm_gem_object *obj)
18f23049f640e2 Rob Clark 2016-05-26 669 {
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 670 struct msm_gem_object *msm_obj = to_msm_bo(obj);
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 671
90643a24a7bfbe Rob Clark 2021-04-05 672 GEM_WARN_ON(!msm_gem_is_locked(obj));
90643a24a7bfbe Rob Clark 2021-04-05 673 GEM_WARN_ON(msm_obj->vmap_count < 1);
e4b87d227f9e82 Rob Clark 2020-10-23 674
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 675 msm_obj->vmap_count--;
e4b87d227f9e82 Rob Clark 2020-10-23 676 }
e4b87d227f9e82 Rob Clark 2020-10-23 677
e4b87d227f9e82 Rob Clark 2020-10-23 678 void msm_gem_put_vaddr(struct drm_gem_object *obj)
e4b87d227f9e82 Rob Clark 2020-10-23 679 {
e4b87d227f9e82 Rob Clark 2020-10-23 680 msm_gem_lock(obj);
e4b87d227f9e82 Rob Clark 2020-10-23 681 msm_gem_put_vaddr_locked(obj);
a6ae74c956e72c Rob Clark 2020-10-23 682 msm_gem_unlock(obj);
18f23049f640e2 Rob Clark 2016-05-26 683 }
18f23049f640e2 Rob Clark 2016-05-26 684
4cd33c48ea25ba Rob Clark 2016-05-17 685 /* Update madvise status, returns true if not purged, else
4cd33c48ea25ba Rob Clark 2016-05-17 686 * false or -errno.
4cd33c48ea25ba Rob Clark 2016-05-17 687 */
4cd33c48ea25ba Rob Clark 2016-05-17 688 int msm_gem_madvise(struct drm_gem_object *obj, unsigned madv)
4cd33c48ea25ba Rob Clark 2016-05-17 689 {
4cd33c48ea25ba Rob Clark 2016-05-17 690 struct msm_gem_object *msm_obj = to_msm_bo(obj);
4cd33c48ea25ba Rob Clark 2016-05-17 691
a6ae74c956e72c Rob Clark 2020-10-23 692 msm_gem_lock(obj);
4cd33c48ea25ba Rob Clark 2016-05-17 693
4cd33c48ea25ba Rob Clark 2016-05-17 694 if (msm_obj->madv != __MSM_MADV_PURGED)
4cd33c48ea25ba Rob Clark 2016-05-17 695 msm_obj->madv = madv;
4cd33c48ea25ba Rob Clark 2016-05-17 696
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 697 madv = msm_obj->madv;
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 698
3edfa30f2340e6 Rob Clark 2020-11-16 699 /* If the obj is inactive, we might need to move it
3edfa30f2340e6 Rob Clark 2020-11-16 700 * between inactive lists
3edfa30f2340e6 Rob Clark 2020-11-16 701 */
3edfa30f2340e6 Rob Clark 2020-11-16 702 if (msm_obj->active_count == 0)
3edfa30f2340e6 Rob Clark 2020-11-16 703 update_inactive(msm_obj);
3edfa30f2340e6 Rob Clark 2020-11-16 704
a6ae74c956e72c Rob Clark 2020-10-23 705 msm_gem_unlock(obj);
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 706
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 707 return (madv != __MSM_MADV_PURGED);
4cd33c48ea25ba Rob Clark 2016-05-17 708 }
4cd33c48ea25ba Rob Clark 2016-05-17 709
599089c6af6830 Rob Clark 2020-10-23 710 void msm_gem_purge(struct drm_gem_object *obj)
68209390f11603 Rob Clark 2016-05-17 711 {
68209390f11603 Rob Clark 2016-05-17 712 struct drm_device *dev = obj->dev;
68209390f11603 Rob Clark 2016-05-17 713 struct msm_gem_object *msm_obj = to_msm_bo(obj);
68209390f11603 Rob Clark 2016-05-17 714
81d4d597d4faad Rob Clark 2021-04-05 715 GEM_WARN_ON(!msm_gem_is_locked(obj));
90643a24a7bfbe Rob Clark 2021-04-05 716 GEM_WARN_ON(!is_purgeable(msm_obj));
68209390f11603 Rob Clark 2016-05-17 717
20d0ae2f8c72e3 Rob Clark 2021-04-05 718 /* Get rid of any iommu mapping(s): */
20d0ae2f8c72e3 Rob Clark 2021-04-05 719 put_iova_spaces(obj, true);
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 720
599089c6af6830 Rob Clark 2020-10-23 721 msm_gem_vunmap(obj);
68209390f11603 Rob Clark 2016-05-17 722
81d4d597d4faad Rob Clark 2021-04-05 723 drm_vma_node_unmap(&obj->vma_node, dev->anon_inode->i_mapping);
81d4d597d4faad Rob Clark 2021-04-05 724
68209390f11603 Rob Clark 2016-05-17 725 put_pages(obj);
68209390f11603 Rob Clark 2016-05-17 726
9b73bde39cf24b Iskren Chernev 2020-11-26 727 put_iova_vmas(obj);
9b73bde39cf24b Iskren Chernev 2020-11-26 728
68209390f11603 Rob Clark 2016-05-17 729 msm_obj->madv = __MSM_MADV_PURGED;
25ed38b3ed2691 Rob Clark 2021-04-02 730 update_inactive(msm_obj);
68209390f11603 Rob Clark 2016-05-17 731
68209390f11603 Rob Clark 2016-05-17 732 drm_gem_free_mmap_offset(obj);
68209390f11603 Rob Clark 2016-05-17 733
68209390f11603 Rob Clark 2016-05-17 734 /* Our goal here is to return as much of the memory as
68209390f11603 Rob Clark 2016-05-17 735 * is possible back to the system as we are called from OOM.
68209390f11603 Rob Clark 2016-05-17 736 * To do this we must instruct the shmfs to drop all of its
68209390f11603 Rob Clark 2016-05-17 737 * backing pages, *now*.
68209390f11603 Rob Clark 2016-05-17 738 */
68209390f11603 Rob Clark 2016-05-17 739 shmem_truncate_range(file_inode(obj->filp), 0, (loff_t)-1);
68209390f11603 Rob Clark 2016-05-17 740
68209390f11603 Rob Clark 2016-05-17 741 invalidate_mapping_pages(file_inode(obj->filp)->i_mapping,
68209390f11603 Rob Clark 2016-05-17 742 0, (loff_t)-1);
68209390f11603 Rob Clark 2016-05-17 743 }
68209390f11603 Rob Clark 2016-05-17 744
37c68900a252ce Lee Jones 2021-06-02 745 /*
63f17ef834284d Rob Clark 2021-04-05 746 * Unpin the backing pages and make them available to be swapped out.
63f17ef834284d Rob Clark 2021-04-05 747 */
63f17ef834284d Rob Clark 2021-04-05 748 void msm_gem_evict(struct drm_gem_object *obj)
63f17ef834284d Rob Clark 2021-04-05 749 {
63f17ef834284d Rob Clark 2021-04-05 750 struct drm_device *dev = obj->dev;
63f17ef834284d Rob Clark 2021-04-05 751 struct msm_gem_object *msm_obj = to_msm_bo(obj);
63f17ef834284d Rob Clark 2021-04-05 752
63f17ef834284d Rob Clark 2021-04-05 753 GEM_WARN_ON(!msm_gem_is_locked(obj));
63f17ef834284d Rob Clark 2021-04-05 754 GEM_WARN_ON(is_unevictable(msm_obj));
63f17ef834284d Rob Clark 2021-04-05 755 GEM_WARN_ON(!msm_obj->evictable);
63f17ef834284d Rob Clark 2021-04-05 756 GEM_WARN_ON(msm_obj->active_count);
63f17ef834284d Rob Clark 2021-04-05 757
63f17ef834284d Rob Clark 2021-04-05 758 /* Get rid of any iommu mapping(s): */
63f17ef834284d Rob Clark 2021-04-05 759 put_iova_spaces(obj, false);
63f17ef834284d Rob Clark 2021-04-05 760
63f17ef834284d Rob Clark 2021-04-05 761 drm_vma_node_unmap(&obj->vma_node, dev->anon_inode->i_mapping);
63f17ef834284d Rob Clark 2021-04-05 762
63f17ef834284d Rob Clark 2021-04-05 763 put_pages(obj);
63f17ef834284d Rob Clark 2021-04-05 764
63f17ef834284d Rob Clark 2021-04-05 765 update_inactive(msm_obj);
63f17ef834284d Rob Clark 2021-04-05 766 }
63f17ef834284d Rob Clark 2021-04-05 767
599089c6af6830 Rob Clark 2020-10-23 768 void msm_gem_vunmap(struct drm_gem_object *obj)
e1e9db2ca79575 Rob Clark 2016-05-27 769 {
e1e9db2ca79575 Rob Clark 2016-05-27 770 struct msm_gem_object *msm_obj = to_msm_bo(obj);
e1e9db2ca79575 Rob Clark 2016-05-27 771
90643a24a7bfbe Rob Clark 2021-04-05 772 GEM_WARN_ON(!msm_gem_is_locked(obj));
0e08270a1f01bc Sushmita Susheelendra 2017-06-13 773
90643a24a7bfbe Rob Clark 2021-04-05 774 if (!msm_obj->vaddr || GEM_WARN_ON(!is_vunmapable(msm_obj)))
e1e9db2ca79575 Rob Clark 2016-05-27 775 return;
e1e9db2ca79575 Rob Clark 2016-05-27 776
e1e9db2ca79575 Rob Clark 2016-05-27 @777 vunmap(msm_obj->vaddr);
e1e9db2ca79575 Rob Clark 2016-05-27 778 msm_obj->vaddr = NULL;
e1e9db2ca79575 Rob Clark 2016-05-27 779 }
e1e9db2ca79575 Rob Clark 2016-05-27 780
:::::: The code at line 624 was first introduced by commit
:::::: c8afe684c95cd17cf4f273d81af369a0fdfa5a74 drm/msm: basic KMS driver for snapdragon
:::::: TO: Rob Clark <robdclark(a)gmail.com>
:::::: CC: Rob Clark <robdclark(a)gmail.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week
Re: [PATCH v2] bluetooth: Add support to handle MSFT Monitor Device event
by kernel test robot
Hi Manish,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on bluetooth-next/master]
[also build test WARNING on next-20211013]
[cannot apply to bluetooth/master v5.15-rc5]
[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/Manish-Mandlik/bluetooth-Add-sup...
base: https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git master
config: sparc64-randconfig-s032-20211013 (attached as .config)
compiler: sparc64-linux-gcc (GCC) 11.2.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.4-dirty
# https://github.com/0day-ci/linux/commit/8c24f97d82e241c5605046401a106ace2...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Manish-Mandlik/bluetooth-Add-support-to-handle-MSFT-Monitor-Device-event/20211013-211504
git checkout 8c24f97d82e241c5605046401a106ace240d1a5d
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=sparc64 SHELL=/bin/bash net/bluetooth/
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 >>)
net/bluetooth/mgmt.c:3647:29: sparse: sparse: restricted __le16 degrades to integer
net/bluetooth/mgmt.c:4352:9: sparse: sparse: cast to restricted __le32
net/bluetooth/mgmt.c:4352:9: sparse: sparse: cast to restricted __le32
net/bluetooth/mgmt.c:4352:9: sparse: sparse: cast to restricted __le32
net/bluetooth/mgmt.c:4352:9: sparse: sparse: cast to restricted __le32
net/bluetooth/mgmt.c:4352:9: sparse: sparse: cast to restricted __le32
net/bluetooth/mgmt.c:4352:9: sparse: sparse: cast to restricted __le32
>> net/bluetooth/mgmt.c:9712:43: sparse: sparse: invalid assignment: |=
>> net/bluetooth/mgmt.c:9712:43: sparse: left side has type restricted __le32
>> net/bluetooth/mgmt.c:9712:43: sparse: right side has type int
vim +9712 net/bluetooth/mgmt.c
9620
9621 void mgmt_device_found(struct hci_dev *hdev, bdaddr_t *bdaddr, u8 link_type,
9622 u8 addr_type, u8 *dev_class, s8 rssi, u32 flags,
9623 u8 *eir, u16 eir_len, u8 *scan_rsp, u8 scan_rsp_len)
9624 {
9625 char buf[512];
9626 struct monitored_device *dev, *tmp_dev;
9627 struct mgmt_ev_device_found *ev = (void *)buf;
9628 size_t ev_size;
9629 bool monitored = false;
9630
9631 /* Don't send events for a non-kernel initiated discovery. With
9632 * LE one exception is if we have pend_le_reports > 0 in which
9633 * case we're doing passive scanning and want these events.
9634 */
9635 if (!hci_discovery_active(hdev)) {
9636 if (link_type == ACL_LINK)
9637 return;
9638 if (link_type == LE_LINK &&
9639 list_empty(&hdev->pend_le_reports) &&
9640 !hci_is_adv_monitoring(hdev)) {
9641 return;
9642 }
9643 }
9644
9645 if (hdev->discovery.result_filtering) {
9646 /* We are using service discovery */
9647 if (!is_filter_match(hdev, rssi, eir, eir_len, scan_rsp,
9648 scan_rsp_len))
9649 return;
9650 }
9651
9652 if (hdev->discovery.limited) {
9653 /* Check for limited discoverable bit */
9654 if (dev_class) {
9655 if (!(dev_class[1] & 0x20))
9656 return;
9657 } else {
9658 u8 *flags = eir_get_data(eir, eir_len, EIR_FLAGS, NULL);
9659 if (!flags || !(flags[0] & LE_AD_LIMITED))
9660 return;
9661 }
9662 }
9663
9664 /* Make sure that the buffer is big enough. The 5 extra bytes
9665 * are for the potential CoD field.
9666 */
9667 if (sizeof(*ev) + eir_len + scan_rsp_len + 5 > sizeof(buf))
9668 return;
9669
9670 memset(buf, 0, sizeof(buf));
9671
9672 /* In case of device discovery with BR/EDR devices (pre 1.2), the
9673 * RSSI value was reported as 0 when not available. This behavior
9674 * is kept when using device discovery. This is required for full
9675 * backwards compatibility with the API.
9676 *
9677 * However when using service discovery, the value 127 will be
9678 * returned when the RSSI is not available.
9679 */
9680 if (rssi == HCI_RSSI_INVALID && !hdev->discovery.report_invalid_rssi &&
9681 link_type == ACL_LINK)
9682 rssi = 0;
9683
9684 bacpy(&ev->addr.bdaddr, bdaddr);
9685 ev->addr.type = link_to_bdaddr(link_type, addr_type);
9686 ev->rssi = rssi;
9687 ev->flags = cpu_to_le32(flags);
9688
9689 if (eir_len > 0)
9690 /* Copy EIR or advertising data into event */
9691 memcpy(ev->eir, eir, eir_len);
9692
9693 if (dev_class && !eir_get_data(ev->eir, eir_len, EIR_CLASS_OF_DEV,
9694 NULL))
9695 eir_len = eir_append_data(ev->eir, eir_len, EIR_CLASS_OF_DEV,
9696 dev_class, 3);
9697
9698 if (scan_rsp_len > 0)
9699 /* Append scan response data to event */
9700 memcpy(ev->eir + eir_len, scan_rsp, scan_rsp_len);
9701
9702 ev->eir_len = cpu_to_le16(eir_len + scan_rsp_len);
9703 ev_size = sizeof(*ev) + eir_len + scan_rsp_len;
9704
9705 if (!list_empty(&hdev->monitored_devices)) {
9706 /* An advertisement could match multiple advertisement monitors.
9707 * Send the Device Found event once for all matched monitors.
9708 */
9709 list_for_each_entry_safe(dev, tmp_dev, &hdev->monitored_devices,
9710 list) {
9711 if (!bacmp(&dev->bdaddr, &ev->addr.bdaddr)) {
> 9712 ev->flags |= MGMT_DEV_FOUND_MONITORING;
9713 ev->monitor_handle = cpu_to_le16(dev->handle);
9714
9715 list_del(&dev->list);
9716 kfree(dev);
9717
9718 mgmt_event(MGMT_EV_DEVICE_FOUND, hdev, ev,
9719 ev_size, NULL);
9720 monitored = true;
9721 }
9722 }
9723 }
9724
9725 if (!monitored)
9726 mgmt_event(MGMT_EV_DEVICE_FOUND, hdev, ev, ev_size, NULL);
9727 }
9728
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week
Re: [PATCH v2] tracing/cfi: Fix cmp_entries_* functions signature mismatch
by kernel test robot
Hi Kalesh,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on 348949d9a4440abdab3b1dc99a9bb660e8c7da7c]
url: https://github.com/0day-ci/linux/commits/Kalesh-Singh/tracing-cfi-Fix-cmp...
base: 348949d9a4440abdab3b1dc99a9bb660e8c7da7c
config: powerpc-allmodconfig (attached as .config)
compiler: powerpc-linux-gcc (GCC) 11.2.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
# https://github.com/0day-ci/linux/commit/aca9efb61e0559ff7abff8c8bce5e1a65...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Kalesh-Singh/tracing-cfi-Fix-cmp_entries_-functions-signature-mismatch/20211014-093824
git checkout aca9efb61e0559ff7abff8c8bce5e1a65a73ccce
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=powerpc
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 >>):
kernel/trace/tracing_map.c: In function 'cmp_entries_dup':
>> kernel/trace/tracing_map.c:839:52: error: initialization discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
839 | const struct tracing_map_sort_entry **pa = A;
| ^
kernel/trace/tracing_map.c:840:52: error: initialization discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
840 | const struct tracing_map_sort_entry **pb = B;
| ^
kernel/trace/tracing_map.c: In function 'cmp_entries_sum':
kernel/trace/tracing_map.c:853:52: error: initialization discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
853 | const struct tracing_map_sort_entry **pa = A;
| ^
kernel/trace/tracing_map.c:854:52: error: initialization discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
854 | const struct tracing_map_sort_entry **pb = B;
| ^
kernel/trace/tracing_map.c: In function 'cmp_entries_key':
kernel/trace/tracing_map.c:884:52: error: initialization discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
884 | const struct tracing_map_sort_entry **pa = A;
| ^
kernel/trace/tracing_map.c:885:52: error: initialization discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
885 | const struct tracing_map_sort_entry **pb = B;
| ^
cc1: all warnings being treated as errors
vim +/const +839 kernel/trace/tracing_map.c
836
837 static int cmp_entries_dup(const void *A, const void *B)
838 {
> 839 const struct tracing_map_sort_entry **pa = A;
840 const struct tracing_map_sort_entry **pb = B;
841 const struct tracing_map_sort_entry *a = *pa;
842 const struct tracing_map_sort_entry *b = *pb;
843 int ret = 0;
844
845 if (memcmp(a->key, b->key, a->elt->map->key_size))
846 ret = 1;
847
848 return ret;
849 }
850
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week
[peterz-queue:objtool/core 27/39] vmlinux.o: warning: objtool: file already has .retpoline_sites, skipping
by kernel test robot
CC: linux-kernel(a)vger.kernel.org
TO: Peter Zijlstra <peterz(a)infradead.org>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git objtool/core
head: c59205d0022488e4625ffbcf7c87095dca05fa6d
commit: 53cc499ebb8c7f65fb373c8392c3308fccd4dd7e [27/39] objtool,x86: Replace alternatives with .retpoline_sites
config: x86_64-randconfig-a006-20211013 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project b6a8c695542b2987eb9a203d5663a0740cb4725f)
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
# https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git/commit/?...
git remote add peterz-queue https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git
git fetch --no-tags peterz-queue objtool/core
git checkout 53cc499ebb8c7f65fb373c8392c3308fccd4dd7e
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash
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 >>):
>> vmlinux.o: warning: objtool: file already has .retpoline_sites, skipping
vmlinux.o: warning: objtool: do_syscall_64()+0x18: call to static_key_count() leaves .noinstr.text section
vmlinux.o: warning: objtool: fixup_bad_iret()+0x21: call to memset() leaves .noinstr.text section
vmlinux.o: warning: objtool: in_task_stack()+0xc: call to task_stack_page() leaves .noinstr.text section
vmlinux.o: warning: objtool: in_entry_stack()+0x10: call to cpu_entry_stack() leaves .noinstr.text section
vmlinux.o: warning: objtool: rcu_nmi_enter()+0x2a: call to __kcsan_check_access() leaves .noinstr.text section
vmlinux.o: warning: objtool: enter_from_user_mode()+0x2c: call to __kcsan_check_access() leaves .noinstr.text section
vmlinux.o: warning: objtool: syscall_enter_from_user_mode()+0x35: call to __kcsan_check_access() leaves .noinstr.text section
vmlinux.o: warning: objtool: syscall_enter_from_user_mode_prepare()+0x2c: call to __kcsan_check_access() leaves .noinstr.text section
vmlinux.o: warning: objtool: exit_to_user_mode()+0x26: call to __kcsan_check_access() leaves .noinstr.text section
vmlinux.o: warning: objtool: syscall_exit_to_user_mode()+0x89: call to __kcsan_check_access() leaves .noinstr.text section
vmlinux.o: warning: objtool: irqentry_enter_from_user_mode()+0x2c: call to __kcsan_check_access() leaves .noinstr.text section
vmlinux.o: warning: objtool: irqentry_exit_to_user_mode()+0x2d: call to __kcsan_check_access() leaves .noinstr.text section
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week
Re: [PATCH] iommu/iova: Add support for IOVA max alignment tuning
by kernel test robot
Hi Georgi,
I love your patch! Yet something to improve:
[auto build test ERROR on joro-iommu/next]
[also build test ERROR on hnaz-mm/master linus/master v5.15-rc5 next-20211013]
[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/Georgi-Djakov/iommu-iova-Add-sup...
base: https://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git next
config: i386-randconfig-a003-20211013 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project b6a8c695542b2987eb9a203d5663a0740cb4725f)
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
# https://github.com/0day-ci/linux/commit/dc4cf3ea2ffff2a4c30a8a2c395e830ea...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Georgi-Djakov/iommu-iova-Add-support-for-IOVA-max-alignment-tuning/20211014-021248
git checkout dc4cf3ea2ffff2a4c30a8a2c395e830ea37dd819
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/iommu/
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/iommu/iova.c:52:13: error: expected parameter declarator
early_param("iommu.max_align_shift", iommu_set_def_max_align_shift);
^
>> drivers/iommu/iova.c:52:13: error: expected ')'
drivers/iommu/iova.c:52:12: note: to match this '('
early_param("iommu.max_align_shift", iommu_set_def_max_align_shift);
^
>> drivers/iommu/iova.c:52:1: warning: declaration specifier missing, defaulting to 'int'
early_param("iommu.max_align_shift", iommu_set_def_max_align_shift);
^
int
>> drivers/iommu/iova.c:52:12: error: this function declaration is not a prototype [-Werror,-Wstrict-prototypes]
early_param("iommu.max_align_shift", iommu_set_def_max_align_shift);
^
void
1 warning and 3 errors generated.
vim +52 drivers/iommu/iova.c
40
41 static int __init iommu_set_def_max_align_shift(char *str)
42 {
43 unsigned long max_align_shift;
44
45 int ret = kstrtoul(str, 10, &max_align_shift);
46
47 if (!ret)
48 iommu_max_align_shift = max_align_shift;
49
50 return 0;
51 }
> 52 early_param("iommu.max_align_shift", iommu_set_def_max_align_shift);
53
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
11 months, 1 week