From: kernel test robot <lkp@intel.com>
To: David Laight <David.Laight@aculab.com>,
"'linux-kernel@vger.kernel.org'" <linux-kernel@vger.kernel.org>,
'Linus Torvalds' <torvalds@linux-foundation.org>,
'Netdev' <netdev@vger.kernel.org>,
"'dri-devel@lists.freedesktop.org'"
<dri-devel@lists.freedesktop.org>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
'Jens Axboe' <axboe@kernel.dk>,
"'Matthew Wilcox (Oracle)'" <willy@infradead.org>,
'Christoph Hellwig' <hch@infradead.org>,
"'linux-btrfs@vger.kernel.org'" <linux-btrfs@vger.kernel.org>,
'Andrew Morton' <akpm@linux-foundation.org>,
Linux Memory Management List <linux-mm@kvack.org>,
'Andy Shevchenko' <andriy.shevchenko@linux.intel.com>,
"'David S . Miller'" <davem@davemloft.net>,
'Dan Carpenter' <dan.carpenter@linaro.org>,
'Jani Nikula' <jani.nikula@linux.intel.com>
Subject: Re: [PATCH next v2 11/11] minmax: min() and max() don't need to return constant expressions
Date: Mon, 26 Feb 2024 17:42:13 +0800 [thread overview]
Message-ID: <202402261720.EAMC0eHM-lkp@intel.com> (raw)
In-Reply-To: <a18dcae310f74dcb9c6fc01d5bdc0568@AcuMS.aculab.com>
Hi David,
kernel test robot noticed the following build warnings:
[auto build test WARNING on drm-misc/drm-misc-next]
[also build test WARNING on linux/master mkl-can-next/testing kdave/for-next akpm-mm/mm-nonmm-unstable linus/master v6.8-rc6]
[cannot apply to next-20240223 dtor-input/next dtor-input/for-linus axboe-block/for-next horms-ipvs/master next-20240223]
[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#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/David-Laight/minmax-Put-all-the-clamp-definitions-together/20240226-005902
base: git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
patch link: https://lore.kernel.org/r/a18dcae310f74dcb9c6fc01d5bdc0568%40AcuMS.aculab.com
patch subject: [PATCH next v2 11/11] minmax: min() and max() don't need to return constant expressions
config: i386-buildonly-randconfig-001-20240226 (https://download.01.org/0day-ci/archive/20240226/202402261720.EAMC0eHM-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240226/202402261720.EAMC0eHM-lkp@intel.com/reproduce)
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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202402261720.EAMC0eHM-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> arch/x86/mm/pgtable.c:437:14: warning: variable length array used [-Wvla]
437 | pmd_t *pmds[MAX_PREALLOCATED_PMDS];
| ^~~~~~~~~~~~~~~~~~~~~
arch/x86/mm/pgtable.c:180:31: note: expanded from macro 'MAX_PREALLOCATED_PMDS'
180 | #define MAX_PREALLOCATED_PMDS MAX_UNSHARED_PTRS_PER_PGD
| ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/mm/pgtable.c:113:2: note: expanded from macro 'MAX_UNSHARED_PTRS_PER_PGD'
113 | max_t(size_t, KERNEL_PGD_BOUNDARY, PTRS_PER_PGD)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/minmax.h:152:27: note: expanded from macro 'max_t'
152 | #define max_t(type, x, y) __careful_cmp(max, (type)(x), (type)(y), __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/minmax.h:62:2: note: expanded from macro '__careful_cmp'
59 | #define __careful_cmp(op, x, y, uniq) ({ \
| ~~~~~~~~~~~
60 | _Static_assert(__types_ok(x, y), \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
61 | #op "(" #x ", " #y ") signedness error, fix types or consider u" #op "() before " #op "_t()"); \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
62 | __cmp_once(op, x, y, uniq); })
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/minmax.h:57:2: note: expanded from macro '__cmp_once'
57 | __cmp(op, __x_##uniq, __y_##uniq); })
| ^
include/linux/minmax.h:52:26: note: expanded from macro '__cmp'
52 | #define __cmp(op, x, y) ((x) __cmp_op_##op (y) ? (x) : (y))
| ^
1 warning generated.
vim +437 arch/x86/mm/pgtable.c
1db491f77b6ed0 Fenghua Yu 2015-01-15 432
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 433 pgd_t *pgd_alloc(struct mm_struct *mm)
1ec1fe73dfb711 Ingo Molnar 2008-03-19 434 {
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 435 pgd_t *pgd;
184d47f0fd3651 Kees Cook 2018-10-08 436 pmd_t *u_pmds[MAX_PREALLOCATED_USER_PMDS];
184d47f0fd3651 Kees Cook 2018-10-08 @437 pmd_t *pmds[MAX_PREALLOCATED_PMDS];
1ec1fe73dfb711 Ingo Molnar 2008-03-19 438
1db491f77b6ed0 Fenghua Yu 2015-01-15 439 pgd = _pgd_alloc();
1ec1fe73dfb711 Ingo Molnar 2008-03-19 440
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 441 if (pgd == NULL)
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 442 goto out;
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 443
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 444 mm->pgd = pgd;
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 445
25226df4b9be7f Gustavo A. R. Silva 2022-09-21 446 if (sizeof(pmds) != 0 &&
25226df4b9be7f Gustavo A. R. Silva 2022-09-21 447 preallocate_pmds(mm, pmds, PREALLOCATED_PMDS) != 0)
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 448 goto out_free_pgd;
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 449
25226df4b9be7f Gustavo A. R. Silva 2022-09-21 450 if (sizeof(u_pmds) != 0 &&
25226df4b9be7f Gustavo A. R. Silva 2022-09-21 451 preallocate_pmds(mm, u_pmds, PREALLOCATED_USER_PMDS) != 0)
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 452 goto out_free_pmds;
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 453
f59dbe9ca6707e Joerg Roedel 2018-07-18 454 if (paravirt_pgd_alloc(mm) != 0)
f59dbe9ca6707e Joerg Roedel 2018-07-18 455 goto out_free_user_pmds;
f59dbe9ca6707e Joerg Roedel 2018-07-18 456
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 457 /*
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 458 * Make sure that pre-populating the pmds is atomic with
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 459 * respect to anything walking the pgd_list, so that they
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 460 * never see a partially populated pgd.
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 461 */
a79e53d85683c6 Andrea Arcangeli 2011-02-16 462 spin_lock(&pgd_lock);
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 463
617d34d9e5d832 Jeremy Fitzhardinge 2010-09-21 464 pgd_ctor(mm, pgd);
25226df4b9be7f Gustavo A. R. Silva 2022-09-21 465 if (sizeof(pmds) != 0)
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 466 pgd_prepopulate_pmd(mm, pgd, pmds);
25226df4b9be7f Gustavo A. R. Silva 2022-09-21 467
25226df4b9be7f Gustavo A. R. Silva 2022-09-21 468 if (sizeof(u_pmds) != 0)
f59dbe9ca6707e Joerg Roedel 2018-07-18 469 pgd_prepopulate_user_pmd(mm, pgd, u_pmds);
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 470
a79e53d85683c6 Andrea Arcangeli 2011-02-16 471 spin_unlock(&pgd_lock);
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 472
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 473 return pgd;
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 474
f59dbe9ca6707e Joerg Roedel 2018-07-18 475 out_free_user_pmds:
25226df4b9be7f Gustavo A. R. Silva 2022-09-21 476 if (sizeof(u_pmds) != 0)
f59dbe9ca6707e Joerg Roedel 2018-07-18 477 free_pmds(mm, u_pmds, PREALLOCATED_USER_PMDS);
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 478 out_free_pmds:
25226df4b9be7f Gustavo A. R. Silva 2022-09-21 479 if (sizeof(pmds) != 0)
f59dbe9ca6707e Joerg Roedel 2018-07-18 480 free_pmds(mm, pmds, PREALLOCATED_PMDS);
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 481 out_free_pgd:
1db491f77b6ed0 Fenghua Yu 2015-01-15 482 _pgd_free(pgd);
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 483 out:
d8d5900ef8afc5 Jeremy Fitzhardinge 2008-06-25 484 return NULL;
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 485 }
4f76cd382213b2 Jeremy Fitzhardinge 2008-03-17 486
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2024-02-26 9:43 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-25 16:46 [PATCH next v2 00/11] minmax: Optimise to reduce .i line length David Laight
2024-02-25 16:48 ` [PATCH next v2 01/11] minmax: Put all the clamp() definitions together David Laight
2024-02-25 16:49 ` [PATCH next v2 02/11] minmax: Use _Static_assert() instead of static_assert() David Laight
2024-02-26 9:28 ` Jani Nikula
2024-02-26 10:07 ` David Laight
2024-02-26 10:27 ` Jani Nikula
2024-02-25 16:49 ` [PATCH next v2 03/11] minmax: Simplify signedness check David Laight
2024-02-27 1:34 ` kernel test robot
2024-02-27 9:10 ` David Laight
2024-02-25 16:50 ` [PATCH next v2 04/11] minmax: Replace multiple __UNIQUE_ID() by directly using __COUNTER__ David Laight
2024-02-25 16:51 ` [PATCH next v2 05/11] minmax: Move the signedness check out of __cmp_once() and __clamp_once() David Laight
2024-02-25 16:52 ` [PATCH next v2 06/11] minmax: Remove 'constexpr' check from __careful_clamp() David Laight
2024-02-25 16:53 ` [PATCH next v2 07/11] minmax: minmax: Add __types_ok3() and optimise defines with 3 arguments David Laight
2024-02-25 16:53 ` [PATCH next v2 08/11] minmax: Add min_const() and max_const() David Laight
2024-02-25 17:13 ` Linus Torvalds
2024-02-25 21:09 ` David Laight
2024-02-25 21:26 ` David Laight
2024-02-26 1:11 ` Dave Airlie
2024-02-25 16:54 ` [PATCH next v2 09/11] tree-wide: minmax: Replace all the uses of max() for array sizes with max_const() David Laight
2024-02-25 16:56 ` [PATCH next v2 10/11] block: Use a boolean expression instead of max() on booleans David Laight
2024-02-25 16:56 ` [PATCH next v2 11/11] minmax: min() and max() don't need to return constant expressions David Laight
2024-02-26 9:42 ` kernel test robot [this message]
2024-02-26 10:16 ` David Laight
2024-02-26 10:56 ` 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=202402261720.EAMC0eHM-lkp@intel.com \
--to=lkp@intel.com \
--cc=David.Laight@aculab.com \
--cc=akpm@linux-foundation.org \
--cc=andriy.shevchenko@linux.intel.com \
--cc=axboe@kernel.dk \
--cc=dan.carpenter@linaro.org \
--cc=davem@davemloft.net \
--cc=dri-devel@lists.freedesktop.org \
--cc=hch@infradead.org \
--cc=jani.nikula@linux.intel.com \
--cc=linux-btrfs@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=llvm@lists.linux.dev \
--cc=netdev@vger.kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=torvalds@linux-foundation.org \
--cc=willy@infradead.org \
/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.