Re: [PATCH -next 2/3] mm/hugetlb_cgroup: prepare cftypes based on template

From: Dan Carpenter
Date: Wed Jun 05 2024 - 01:24:58 EST


Hi Xiu,

kernel test robot noticed the following build warnings:

url: https://github.com/intel-lab-lkp/linux/commits/Xiu-Jianfeng/mm-hugetlb_cgroup-identify-the-legacy-using-cgroup_subsys_on_dfl/20240603-201513
base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
patch link: https://lore.kernel.org/r/20240603120506.1837322-3-xiujianfeng%40huawei.com
patch subject: [PATCH -next 2/3] mm/hugetlb_cgroup: prepare cftypes based on template
config: i386-randconfig-r071-20240604 (https://download.01.org/0day-ci/archive/20240605/202406050210.OWthxCFt-lkp@xxxxxxxxx/config)
compiler: gcc-13 (Ubuntu 13.2.0-4ubuntu3) 13.2.0

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
| Closes: https://lore.kernel.org/r/202406050210.OWthxCFt-lkp@xxxxxxxxx/

smatch warnings:
mm/hugetlb_cgroup.c:828 hugetlb_cgroup_cfttypes_init() warn: this array is probably non-NULL. 'tmpl->name'

vim +828 mm/hugetlb_cgroup.c

66bcc9ace99241 Xiu Jianfeng 2024-06-03 815 static void __init
66bcc9ace99241 Xiu Jianfeng 2024-06-03 816 hugetlb_cgroup_cfttypes_init(struct hstate *h, struct cftype *cft,
66bcc9ace99241 Xiu Jianfeng 2024-06-03 817 struct cftype *tmpl, int tmpl_size)
66bcc9ace99241 Xiu Jianfeng 2024-06-03 818 {
66bcc9ace99241 Xiu Jianfeng 2024-06-03 819 char buf[32];
66bcc9ace99241 Xiu Jianfeng 2024-06-03 820 int i, idx = hstate_index(h);
66bcc9ace99241 Xiu Jianfeng 2024-06-03 821
66bcc9ace99241 Xiu Jianfeng 2024-06-03 822 /* format the size */
66bcc9ace99241 Xiu Jianfeng 2024-06-03 823 mem_fmt(buf, sizeof(buf), huge_page_size(h));
66bcc9ace99241 Xiu Jianfeng 2024-06-03 824
66bcc9ace99241 Xiu Jianfeng 2024-06-03 825 for (i = 0; i < tmpl_size; cft++, tmpl++, i++) {
66bcc9ace99241 Xiu Jianfeng 2024-06-03 826 *cft = *tmpl;
66bcc9ace99241 Xiu Jianfeng 2024-06-03 827 /* rebuild the name */
66bcc9ace99241 Xiu Jianfeng 2024-06-03 @828 if (tmpl->name)
66bcc9ace99241 Xiu Jianfeng 2024-06-03 829 snprintf(cft->name, MAX_CFTYPE_NAME, "%s.%s", buf, tmpl->name);

tmpl->name is an array so it's non-NULL. Just do the snprintf(). No
need for the if statement.

66bcc9ace99241 Xiu Jianfeng 2024-06-03 830 /* rebuild the private */
66bcc9ace99241 Xiu Jianfeng 2024-06-03 831 if (tmpl->private)
66bcc9ace99241 Xiu Jianfeng 2024-06-03 832 cft->private = MEMFILE_PRIVATE(idx, tmpl->private);
66bcc9ace99241 Xiu Jianfeng 2024-06-03 833 /* rebuild the file_offset */
66bcc9ace99241 Xiu Jianfeng 2024-06-03 834 if (tmpl->file_offset) {
66bcc9ace99241 Xiu Jianfeng 2024-06-03 835 unsigned int offset = tmpl->file_offset;
66bcc9ace99241 Xiu Jianfeng 2024-06-03 836
66bcc9ace99241 Xiu Jianfeng 2024-06-03 837 cft->file_offset = MEMFILE_OFFSET0(offset) +
66bcc9ace99241 Xiu Jianfeng 2024-06-03 838 MEMFILE_FIELD_SIZE(offset) * idx;
66bcc9ace99241 Xiu Jianfeng 2024-06-03 839 }
66bcc9ace99241 Xiu Jianfeng 2024-06-03 840 }
66bcc9ace99241 Xiu Jianfeng 2024-06-03 841 }

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki