From: kernel test robot <lkp@intel.com>
To: Jiri Pirko <jiri@nvidia.com>
Cc: llvm@lists.linux.dev, kbuild-all@lists.01.org,
linux-kernel@vger.kernel.org
Subject: [jpirko-mlxsw:jiri_devel_linecards 13/56] drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:744:19: warning: incompatible integer to pointer conversion assigning to 'char *' from 'int'
Date: Sun, 16 Jan 2022 05:41:24 +0800 [thread overview]
Message-ID: <202201160519.bgz5nnMA-lkp@intel.com> (raw)
tree: https://github.com/jpirko/linux_mlxsw jiri_devel_linecards
head: f53503fb3489103cf72bc705b0e49e4853e5d485
commit: 53d54437e55ccd600a39e5dd5227d163b3ead000 [13/56] mlxsw: core_linecards: Add line card objects and implement provisioning
config: hexagon-allyesconfig (https://download.01.org/0day-ci/archive/20220116/202201160519.bgz5nnMA-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 650fc40b6d8d9a5869b4fca525d5f237b0ee2803)
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/jpirko/linux_mlxsw/commit/53d54437e55ccd600a39e5dd5227d163b3ead000
git remote add jpirko-mlxsw https://github.com/jpirko/linux_mlxsw
git fetch --no-tags jpirko-mlxsw jiri_devel_linecards
git checkout 53d54437e55ccd600a39e5dd5227d163b3ead000
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=hexagon SHELL=/bin/bash drivers/block/rnbd/ drivers/net/ethernet/mellanox/mlxsw/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:425:26: warning: variable 'linecards' set but not used [-Wunused-but-set-variable]
struct mlxsw_linecards *linecards;
^
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:744:21: error: implicit declaration of function 'vmalloc' [-Werror,-Wimplicit-function-declaration]
types_info->data = vmalloc(types_info->data_size);
^
>> drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:744:19: warning: incompatible integer to pointer conversion assigning to 'char *' from 'int' [-Wint-conversion]
types_info->data = vmalloc(types_info->data_size);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:772:2: error: implicit declaration of function 'vfree' [-Werror,-Wimplicit-function-declaration]
vfree(types_info->data);
^
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:783:2: error: implicit declaration of function 'vfree' [-Werror,-Wimplicit-function-declaration]
vfree(types_info->data);
^
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:806:14: error: implicit declaration of function 'vzalloc' [-Werror,-Wimplicit-function-declaration]
linecards = vzalloc(struct_size(linecards, linecards, slot_count));
^
>> drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:806:12: warning: incompatible integer to pointer conversion assigning to 'struct mlxsw_linecards *' from 'int' [-Wint-conversion]
linecards = vzalloc(struct_size(linecards, linecards, slot_count));
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:842:2: error: implicit declaration of function 'vfree' [-Werror,-Wimplicit-function-declaration]
vfree(linecards);
^
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:860:2: error: implicit declaration of function 'vfree' [-Werror,-Wimplicit-function-declaration]
vfree(linecards);
^
3 warnings and 6 errors generated.
vim +744 drivers/net/ethernet/mellanox/mlxsw/core_linecards.c
717
718 static int mlxsw_linecard_types_init(struct mlxsw_core *mlxsw_core,
719 struct mlxsw_linecards *linecards)
720 {
721 struct mlxsw_linecard_types_info *types_info;
722 const char *lc_ini_bundle_filename;
723 const struct firmware *firmware;
724 int err;
725
726 lc_ini_bundle_filename = mlxsw_core_lc_ini_bundle_filename(mlxsw_core);
727 if (!lc_ini_bundle_filename)
728 return 0;
729
730 err = request_firmware_direct(&firmware, lc_ini_bundle_filename,
731 linecards->bus_info->dev);
732 if (err) {
733 dev_warn(linecards->bus_info->dev, "Could not request linecards INI file \"%s\", provisioning will not be possible\n",
734 lc_ini_bundle_filename);
735 return 0;
736 }
737
738 types_info = kzalloc(sizeof(*types_info), GFP_KERNEL);
739 if (!types_info)
740 return -ENOMEM;
741 linecards->types_info = types_info;
742
743 types_info->data_size = firmware->size;
> 744 types_info->data = vmalloc(types_info->data_size);
745 if (!types_info->data) {
746 err = -ENOMEM;
747 goto err_data_alloc;
748 }
749 memcpy(types_info->data, firmware->data, types_info->data_size);
750 release_firmware(firmware);
751
752 err = mlxsw_linecard_types_file_validate(linecards, types_info);
753 if (err) {
754 err = 0;
755 goto err_type_file_file_validate;
756 }
757
758 types_info->ini_files = kmalloc_array(types_info->count,
759 sizeof(struct mlxsw_linecard_ini_file),
760 GFP_KERNEL);
761 if (!types_info->ini_files) {
762 err = -ENOMEM;
763 goto err_ini_files_alloc;
764 }
765
766 mlxsw_linecard_types_file_parse(types_info);
767
768 return 0;
769
770 err_ini_files_alloc:
771 err_type_file_file_validate:
> 772 vfree(types_info->data);
773 err_data_alloc:
774 kfree(types_info);
775 return err;
776 }
777
778 static void mlxsw_linecard_types_fini(struct mlxsw_linecards *linecards)
779 {
780 struct mlxsw_linecard_types_info *types_info = linecards->types_info;
781
782 kfree(types_info->ini_files);
783 vfree(types_info->data);
784 kfree(types_info);
785 }
786
787 int mlxsw_linecards_init(struct mlxsw_core *mlxsw_core,
788 const struct mlxsw_bus_info *bus_info)
789 {
790 char mgpir_pl[MLXSW_REG_MGPIR_LEN];
791 struct mlxsw_linecards *linecards;
792 u8 slot_count;
793 int err;
794 int i;
795
796 mlxsw_reg_mgpir_pack(mgpir_pl, 0);
797 err = mlxsw_reg_query(mlxsw_core, MLXSW_REG(mgpir), mgpir_pl);
798 if (err)
799 return err;
800
801 mlxsw_reg_mgpir_unpack(mgpir_pl, NULL, NULL, NULL,
802 NULL, &slot_count);
803 if (!slot_count)
804 return 0;
805
> 806 linecards = vzalloc(struct_size(linecards, linecards, slot_count));
807 if (!linecards)
808 return -ENOMEM;
809 linecards->count = slot_count;
810 linecards->mlxsw_core = mlxsw_core;
811 linecards->bus_info = bus_info;
812
813 err = mlxsw_linecard_types_init(mlxsw_core, linecards);
814 if (err)
815 goto err_types_init;
816
817 err = mlxsw_core_traps_register(mlxsw_core, mlxsw_linecard_listener,
818 ARRAY_SIZE(mlxsw_linecard_listener),
819 mlxsw_core);
820 if (err)
821 goto err_traps_register;
822
823 mlxsw_core_linecards_set(mlxsw_core, linecards);
824
825 for (i = 0; i < linecards->count; i++) {
826 err = mlxsw_linecard_init(mlxsw_core, linecards, i + 1);
827 if (err)
828 goto err_linecard_init;
829 }
830
831 return 0;
832
833 err_linecard_init:
834 for (i--; i >= 0; i--)
835 mlxsw_linecard_fini(mlxsw_core, linecards, i + 1);
836 mlxsw_core_traps_unregister(mlxsw_core, mlxsw_linecard_listener,
837 ARRAY_SIZE(mlxsw_linecard_listener),
838 mlxsw_core);
839 err_traps_register:
840 mlxsw_linecard_types_fini(linecards);
841 err_types_init:
842 vfree(linecards);
843
844 return err;
845 }
846
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [jpirko-mlxsw:jiri_devel_linecards 13/56] drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:744:19: warning: incompatible integer to pointer conversion assigning to 'char *' from 'int'
Date: Sun, 16 Jan 2022 05:41:24 +0800 [thread overview]
Message-ID: <202201160519.bgz5nnMA-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 8061 bytes --]
tree: https://github.com/jpirko/linux_mlxsw jiri_devel_linecards
head: f53503fb3489103cf72bc705b0e49e4853e5d485
commit: 53d54437e55ccd600a39e5dd5227d163b3ead000 [13/56] mlxsw: core_linecards: Add line card objects and implement provisioning
config: hexagon-allyesconfig (https://download.01.org/0day-ci/archive/20220116/202201160519.bgz5nnMA-lkp(a)intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 650fc40b6d8d9a5869b4fca525d5f237b0ee2803)
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/jpirko/linux_mlxsw/commit/53d54437e55ccd600a39e5dd5227d163b3ead000
git remote add jpirko-mlxsw https://github.com/jpirko/linux_mlxsw
git fetch --no-tags jpirko-mlxsw jiri_devel_linecards
git checkout 53d54437e55ccd600a39e5dd5227d163b3ead000
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=hexagon SHELL=/bin/bash drivers/block/rnbd/ drivers/net/ethernet/mellanox/mlxsw/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:425:26: warning: variable 'linecards' set but not used [-Wunused-but-set-variable]
struct mlxsw_linecards *linecards;
^
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:744:21: error: implicit declaration of function 'vmalloc' [-Werror,-Wimplicit-function-declaration]
types_info->data = vmalloc(types_info->data_size);
^
>> drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:744:19: warning: incompatible integer to pointer conversion assigning to 'char *' from 'int' [-Wint-conversion]
types_info->data = vmalloc(types_info->data_size);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:772:2: error: implicit declaration of function 'vfree' [-Werror,-Wimplicit-function-declaration]
vfree(types_info->data);
^
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:783:2: error: implicit declaration of function 'vfree' [-Werror,-Wimplicit-function-declaration]
vfree(types_info->data);
^
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:806:14: error: implicit declaration of function 'vzalloc' [-Werror,-Wimplicit-function-declaration]
linecards = vzalloc(struct_size(linecards, linecards, slot_count));
^
>> drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:806:12: warning: incompatible integer to pointer conversion assigning to 'struct mlxsw_linecards *' from 'int' [-Wint-conversion]
linecards = vzalloc(struct_size(linecards, linecards, slot_count));
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:842:2: error: implicit declaration of function 'vfree' [-Werror,-Wimplicit-function-declaration]
vfree(linecards);
^
drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:860:2: error: implicit declaration of function 'vfree' [-Werror,-Wimplicit-function-declaration]
vfree(linecards);
^
3 warnings and 6 errors generated.
vim +744 drivers/net/ethernet/mellanox/mlxsw/core_linecards.c
717
718 static int mlxsw_linecard_types_init(struct mlxsw_core *mlxsw_core,
719 struct mlxsw_linecards *linecards)
720 {
721 struct mlxsw_linecard_types_info *types_info;
722 const char *lc_ini_bundle_filename;
723 const struct firmware *firmware;
724 int err;
725
726 lc_ini_bundle_filename = mlxsw_core_lc_ini_bundle_filename(mlxsw_core);
727 if (!lc_ini_bundle_filename)
728 return 0;
729
730 err = request_firmware_direct(&firmware, lc_ini_bundle_filename,
731 linecards->bus_info->dev);
732 if (err) {
733 dev_warn(linecards->bus_info->dev, "Could not request linecards INI file \"%s\", provisioning will not be possible\n",
734 lc_ini_bundle_filename);
735 return 0;
736 }
737
738 types_info = kzalloc(sizeof(*types_info), GFP_KERNEL);
739 if (!types_info)
740 return -ENOMEM;
741 linecards->types_info = types_info;
742
743 types_info->data_size = firmware->size;
> 744 types_info->data = vmalloc(types_info->data_size);
745 if (!types_info->data) {
746 err = -ENOMEM;
747 goto err_data_alloc;
748 }
749 memcpy(types_info->data, firmware->data, types_info->data_size);
750 release_firmware(firmware);
751
752 err = mlxsw_linecard_types_file_validate(linecards, types_info);
753 if (err) {
754 err = 0;
755 goto err_type_file_file_validate;
756 }
757
758 types_info->ini_files = kmalloc_array(types_info->count,
759 sizeof(struct mlxsw_linecard_ini_file),
760 GFP_KERNEL);
761 if (!types_info->ini_files) {
762 err = -ENOMEM;
763 goto err_ini_files_alloc;
764 }
765
766 mlxsw_linecard_types_file_parse(types_info);
767
768 return 0;
769
770 err_ini_files_alloc:
771 err_type_file_file_validate:
> 772 vfree(types_info->data);
773 err_data_alloc:
774 kfree(types_info);
775 return err;
776 }
777
778 static void mlxsw_linecard_types_fini(struct mlxsw_linecards *linecards)
779 {
780 struct mlxsw_linecard_types_info *types_info = linecards->types_info;
781
782 kfree(types_info->ini_files);
783 vfree(types_info->data);
784 kfree(types_info);
785 }
786
787 int mlxsw_linecards_init(struct mlxsw_core *mlxsw_core,
788 const struct mlxsw_bus_info *bus_info)
789 {
790 char mgpir_pl[MLXSW_REG_MGPIR_LEN];
791 struct mlxsw_linecards *linecards;
792 u8 slot_count;
793 int err;
794 int i;
795
796 mlxsw_reg_mgpir_pack(mgpir_pl, 0);
797 err = mlxsw_reg_query(mlxsw_core, MLXSW_REG(mgpir), mgpir_pl);
798 if (err)
799 return err;
800
801 mlxsw_reg_mgpir_unpack(mgpir_pl, NULL, NULL, NULL,
802 NULL, &slot_count);
803 if (!slot_count)
804 return 0;
805
> 806 linecards = vzalloc(struct_size(linecards, linecards, slot_count));
807 if (!linecards)
808 return -ENOMEM;
809 linecards->count = slot_count;
810 linecards->mlxsw_core = mlxsw_core;
811 linecards->bus_info = bus_info;
812
813 err = mlxsw_linecard_types_init(mlxsw_core, linecards);
814 if (err)
815 goto err_types_init;
816
817 err = mlxsw_core_traps_register(mlxsw_core, mlxsw_linecard_listener,
818 ARRAY_SIZE(mlxsw_linecard_listener),
819 mlxsw_core);
820 if (err)
821 goto err_traps_register;
822
823 mlxsw_core_linecards_set(mlxsw_core, linecards);
824
825 for (i = 0; i < linecards->count; i++) {
826 err = mlxsw_linecard_init(mlxsw_core, linecards, i + 1);
827 if (err)
828 goto err_linecard_init;
829 }
830
831 return 0;
832
833 err_linecard_init:
834 for (i--; i >= 0; i--)
835 mlxsw_linecard_fini(mlxsw_core, linecards, i + 1);
836 mlxsw_core_traps_unregister(mlxsw_core, mlxsw_linecard_listener,
837 ARRAY_SIZE(mlxsw_linecard_listener),
838 mlxsw_core);
839 err_traps_register:
840 mlxsw_linecard_types_fini(linecards);
841 err_types_init:
842 vfree(linecards);
843
844 return err;
845 }
846
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
next reply other threads:[~2022-01-15 21:41 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-15 21:41 kernel test robot [this message]
2022-01-15 21:41 ` [jpirko-mlxsw:jiri_devel_linecards 13/56] drivers/net/ethernet/mellanox/mlxsw/core_linecards.c:744:19: warning: incompatible integer to pointer conversion assigning to 'char *' from 'int' kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202201160519.bgz5nnMA-lkp@intel.com \
--to=lkp@intel.com \
--cc=jiri@nvidia.com \
--cc=kbuild-all@lists.01.org \
--cc=linux-kernel@vger.kernel.org \
--cc=llvm@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.