tree:
git://git.infradead.org/users/hch/block.git delete-write-same.5
head: e6a05a99f46ef909822031d28dfbcd1a7c9cfb56
commit: 4eeaaa4ec1e82312848c5bc48584de3247743df6 [7/8] block: remove REQ_OP_WRITE_SAME
support
config: arm-randconfig-r022-20220113
(
https://download.01.org/0day-ci/archive/20220115/202201150233.ahptDc1V-lk...)
compiler: clang version 14.0.0 (
https://github.com/llvm/llvm-project
82c8aca93488730ce8f66101e0f3538f14b551dd)
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
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
git remote add hch-block
git://git.infradead.org/users/hch/block.git
git fetch --no-tags hch-block delete-write-same.5
git checkout 4eeaaa4ec1e82312848c5bc48584de3247743df6
# 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=arm SHELL=/bin/bash block/ drivers/nvme/host/
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 >>):
> block/blk-settings.c:185:6: warning: no previous prototype for
function 'blk_queue_max_write_zeroes_sectors' [-Wmissing-prototypes]
void
blk_queue_max_write_zeroes_sectors(struct request_queue *q,
^
block/blk-settings.c:185:1: note: declare 'static' if the function is not
intended to be used outside of this translation unit
void blk_queue_max_write_zeroes_sectors(struct request_queue *q,
^
static
1 warning generated.
--
> drivers/nvme/host/core.c:1682:3: error: implicit declaration of
function 'blk_queue_max_write_zeroes_sectors'
[-Werror,-Wimplicit-function-declaration]
blk_queue_max_write_zeroes_sectors(queue, UINT_MAX);
^
drivers/nvme/host/core.c:1865:2: error: implicit declaration of function
'blk_queue_max_write_zeroes_sectors' [-Werror,-Wimplicit-function-declaration]
blk_queue_max_write_zeroes_sectors(disk->queue,
^
2 errors generated.
vim +/blk_queue_max_write_zeroes_sectors +1682 drivers/nvme/host/core.c
1673f1f08c8876 Christoph Hellwig 2015-11-26 1653
2631857160ecbe Christoph Hellwig 2019-03-13 1654 static void nvme_config_discard(struct
gendisk *disk, struct nvme_ns *ns)
1673f1f08c8876 Christoph Hellwig 2015-11-26 1655 {
3831761eb859f5 Jens Axboe 2018-05-02 1656 struct nvme_ctrl *ctrl = ns->ctrl;
2631857160ecbe Christoph Hellwig 2019-03-13 1657 struct request_queue *queue =
disk->queue;
30e5e929c7bfaf Christoph Hellwig 2017-11-02 1658 u32 size =
queue_logical_block_size(queue);
30e5e929c7bfaf Christoph Hellwig 2017-11-02 1659
5befc7c26e5a98 Keith Busch 2021-03-24 1660 if (ctrl->max_discard_sectors == 0)
{
3831761eb859f5 Jens Axboe 2018-05-02 1661
blk_queue_flag_clear(QUEUE_FLAG_DISCARD, queue);
3831761eb859f5 Jens Axboe 2018-05-02 1662 return;
3831761eb859f5 Jens Axboe 2018-05-02 1663 }
3831761eb859f5 Jens Axboe 2018-05-02 1664
3831761eb859f5 Jens Axboe 2018-05-02 1665 if (ctrl->nr_streams &&
ns->sws && ns->sgs)
3831761eb859f5 Jens Axboe 2018-05-02 1666 size *= ns->sws * ns->sgs;
08095e70783f1d Keith Busch 2016-03-04 1667
b35ba01ea69791 Christoph Hellwig 2017-02-08 1668 BUILD_BUG_ON(PAGE_SIZE / sizeof(struct
nvme_dsm_range) <
b35ba01ea69791 Christoph Hellwig 2017-02-08 1669 NVME_DSM_MAX_RANGES);
b35ba01ea69791 Christoph Hellwig 2017-02-08 1670
b224f6134d72e3 David Disseldorp 2017-11-24 1671 queue->limits.discard_alignment =
0;
30e5e929c7bfaf Christoph Hellwig 2017-11-02 1672 queue->limits.discard_granularity =
size;
f5d118406247ac Jens Axboe 2017-06-27 1673
3831761eb859f5 Jens Axboe 2018-05-02 1674 /* If discard is already enabled,
don't reset queue limits */
3831761eb859f5 Jens Axboe 2018-05-02 1675 if
(blk_queue_flag_test_and_set(QUEUE_FLAG_DISCARD, queue))
3831761eb859f5 Jens Axboe 2018-05-02 1676 return;
3831761eb859f5 Jens Axboe 2018-05-02 1677
5befc7c26e5a98 Keith Busch 2021-03-24 1678 blk_queue_max_discard_sectors(queue,
ctrl->max_discard_sectors);
5befc7c26e5a98 Keith Busch 2021-03-24 1679 blk_queue_max_discard_segments(queue,
ctrl->max_discard_segments);
e850fd16f751a6 Christoph Hellwig 2017-04-05 1680
e850fd16f751a6 Christoph Hellwig 2017-04-05 1681 if (ctrl->quirks &
NVME_QUIRK_DEALLOCATE_ZEROES)
30e5e929c7bfaf Christoph Hellwig 2017-11-02 @1682
blk_queue_max_write_zeroes_sectors(queue, UINT_MAX);
1673f1f08c8876 Christoph Hellwig 2015-11-26 1683 }
1673f1f08c8876 Christoph Hellwig 2015-11-26 1684
:::::: The code at line 1682 was first introduced by commit
:::::: 30e5e929c7bfaf87a65f926715773ef14339b79f nvme: don't pass struct nvme_ns to
nvme_config_discard
:::::: TO: Christoph Hellwig <hch(a)lst.de>
:::::: CC: Jens Axboe <axboe(a)kernel.dk>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org