tree:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
linux-4.9.y
head: 9769e65dc140de1f4c694ec4afeb68014a130bf0
commit: 8c36cde29ad1e563def83c41094a96027b7a9b1b [549/623] libata: implement
ATA_HORKAGE_MAX_TRIM_128M and apply to Sandisks
config: powerpc64-randconfig-r033-20200918 (attached as .config)
compiler: powerpc-linux-gcc (GCC) 7.5.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
git checkout 8c36cde29ad1e563def83c41094a96027b7a9b1b
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-7.5.0 make.cross ARCH=powerpc64
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 >>):
^
arch/powerpc/include/asm/bug.h:76:7: note: in definition of macro 'BUG_ON'
if (x) \
^
include/linux/dma-mapping.h:284:9: note: in expansion of macro 'pfn_valid'
BUG_ON(pfn_valid(PHYS_PFN(phys_addr)));
^~~~~~~~~
arch/powerpc/include/asm/page.h:129:32: warning: comparison of unsigned expression
>= 0 is always true [-Wtype-limits]
#define pfn_valid(pfn) ((pfn) >= ARCH_PFN_OFFSET && (pfn) < max_mapnr)
^
arch/powerpc/include/asm/bug.h:84:25: note: in definition of macro 'BUG_ON'
"r" ((__force long)(x))); \
^
include/linux/dma-mapping.h:284:9: note: in expansion of macro 'pfn_valid'
BUG_ON(pfn_valid(PHYS_PFN(phys_addr)));
^~~~~~~~~
In file included from drivers/ata/libata-scsi.c:43:0:
include/scsi/scsi_cmnd.h: At top level:
include/scsi/scsi_cmnd.h:30:25: warning: "BLK_MAX_CDB" is not defined,
evaluates to 0 [-Wundef]
#if (MAX_COMMAND_SIZE > BLK_MAX_CDB)
^~~~~~~~~~~
include/scsi/scsi_cmnd.h:31:3: error: #error MAX_COMMAND_SIZE can not be bigger than
BLK_MAX_CDB
# error MAX_COMMAND_SIZE can not be bigger than BLK_MAX_CDB
^~~~~
include/scsi/scsi_cmnd.h: In function 'scsi_cmd_to_driver':
include/scsi/scsi_cmnd.h:155:45: error: dereferencing pointer to incomplete type
'struct request'
return *(struct scsi_driver **)cmd->request->rq_disk->private_data;
^~
include/scsi/scsi_cmnd.h: In function 'scsi_bidi_cmnd':
include/scsi/scsi_cmnd.h:201:9: error: implicit declaration of function
'blk_bidi_rq' [-Werror=implicit-function-declaration]
return blk_bidi_rq(cmd->request) &&
^~~~~~~~~~~
include/scsi/scsi_cmnd.h: In function 'scsi_get_lba':
include/scsi/scsi_cmnd.h:294:9: error: implicit declaration of function
'blk_rq_pos' [-Werror=implicit-function-declaration]
return blk_rq_pos(scmd->request);
^~~~~~~~~~
In file included from drivers/ata/libata-scsi.c:44:0:
include/scsi/scsi_eh.h: At top level:
include/scsi/scsi_eh.h:42:24: error: 'BLK_MAX_CDB' undeclared here (not in a
function); did you mean 'BLK_MQ_H'?
unsigned char eh_cmnd[BLK_MAX_CDB];
^~~~~~~~~~~
BLK_MQ_H
In file included from include/asm-generic/bug.h:4:0,
from arch/powerpc/include/asm/bug.h:127,
from include/linux/bug.h:4,
from include/linux/mmdebug.h:4,
from include/linux/gfp.h:4,
from include/linux/slab.h:14,
from drivers/ata/libata-scsi.c:36:
drivers/ata/libata-scsi.c: In function 'atapi_drain_needed':
drivers/ata/libata-scsi.c:1189:29: error: 'REQ_TYPE_BLOCK_PC' undeclared (first
use in this function)
if (likely(rq->cmd_type != REQ_TYPE_BLOCK_PC))
^
include/linux/compiler.h:152:43: note: in definition of macro 'likely'
# define likely(x) (__builtin_constant_p(x) ? !!(x) : __branch_check__(x, 1))
^
drivers/ata/libata-scsi.c:1189:29: note: each undeclared identifier is reported only
once for each function it appears in
if (likely(rq->cmd_type != REQ_TYPE_BLOCK_PC))
^
include/linux/compiler.h:152:43: note: in definition of macro 'likely'
# define likely(x) (__builtin_constant_p(x) ? !!(x) : __branch_check__(x, 1))
^
drivers/ata/libata-scsi.c:1192:7: error: implicit declaration of function
'blk_rq_bytes'; did you mean 'clear_bits'?
[-Werror=implicit-function-declaration]
if (!blk_rq_bytes(rq) || op_is_write(req_op(rq)))
^~~~~~~~~~~~
clear_bits
drivers/ata/libata-scsi.c:1192:27: error: implicit declaration of function
'op_is_write'; did you mean 'acpi_write'?
[-Werror=implicit-function-declaration]
if (!blk_rq_bytes(rq) || op_is_write(req_op(rq)))
^~~~~~~~~~~
acpi_write
drivers/ata/libata-scsi.c:1192:39: error: implicit declaration of function
'req_op'; did you mean 'seq_open'?
[-Werror=implicit-function-declaration]
if (!blk_rq_bytes(rq) || op_is_write(req_op(rq)))
^~~~~~
seq_open
drivers/ata/libata-scsi.c: In function 'ata_scsi_dev_config':
drivers/ata/libata-scsi.c:1207:2: error: implicit declaration of function
'blk_queue_max_hw_sectors' [-Werror=implicit-function-declaration]
blk_queue_max_hw_sectors(q, dev->max_sectors);
^~~~~~~~~~~~~~~~~~~~~~~~
drivers/ata/libata-scsi.c:1215:3: error: implicit declaration of function
'blk_queue_update_dma_pad' [-Werror=implicit-function-declaration]
blk_queue_update_dma_pad(q, ATA_DMA_PAD_SZ - 1);
^~~~~~~~~~~~~~~~~~~~~~~~
drivers/ata/libata-scsi.c:1218:35: error: dereferencing pointer to incomplete type
'struct request_queue'
buf = kmalloc(ATAPI_MAX_DRAIN, q->bounce_gfp | GFP_KERNEL);
^~
drivers/ata/libata-scsi.c:1224:3: error: implicit declaration of function
'blk_queue_dma_drain' [-Werror=implicit-function-declaration]
blk_queue_dma_drain(q, atapi_drain_needed, buf, ATAPI_MAX_DRAIN);
^~~~~~~~~~~~~~~~~~~
drivers/ata/libata-scsi.c:1242:2: error: implicit declaration of function
'blk_queue_update_dma_alignment'; did you mean '__assume_page_alignment'?
[-Werror=implicit-function-declaration]
blk_queue_update_dma_alignment(q, sdev->sector_size - 1);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
__assume_page_alignment
drivers/ata/libata-scsi.c:1255:2: error: implicit declaration of function
'blk_queue_flush_queueable'; did you mean 'blk_needs_flush_plug'?
[-Werror=implicit-function-declaration]
blk_queue_flush_queueable(q, false);
^~~~~~~~~~~~~~~~~~~~~~~~~
blk_needs_flush_plug
drivers/ata/libata-scsi.c: In function 'ata_check_nblocks':
drivers/ata/libata-scsi.c:1742:7: error: implicit declaration of function
'blk_rq_is_passthrough' [-Werror=implicit-function-declaration]
if (!blk_rq_is_passthrough(rq))
^~~~~~~~~~~~~~~~~~~~~
drivers/ata/libata-scsi.c: In function 'ata_scsiop_inq_b0':
> drivers/ata/libata-scsi.c:2346:30: error: 'SECTOR_SHIFT'
undeclared (first use in this function); did you mean 'SOFTIRQ_SHIFT'?
max_blocks = 128 << (20 - SECTOR_SHIFT);
^~~~~~~~~~~~
SOFTIRQ_SHIFT
drivers/ata/libata-scsi.c: In function 'atapi_drain_needed':
drivers/ata/libata-scsi.c:1196:1: warning: control reaches end of non-void function
[-Wreturn-type]
}
^
drivers/ata/libata-scsi.c: In function 'ata_scsiop_maint_in':
drivers/ata/libata-scsi.c:3601:6: warning: this statement may fall through
[-Wimplicit-fallthrough=]
if (!ata_id_sct_write_same(dev->id))
^
drivers/ata/libata-scsi.c:3604:2: note: here
case ZBC_IN:
^~~~
cc1: some warnings being treated as errors
#
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gi...
git remote add linux-stable-rc
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git fetch --no-tags linux-stable-rc linux-4.9.y
git checkout 8c36cde29ad1e563def83c41094a96027b7a9b1b
vim +2346 drivers/ata/libata-scsi.c
2314
2315 static unsigned int ata_scsiop_inq_b0(struct ata_scsi_args *args, u8 *rbuf)
2316 {
2317 struct ata_device *dev = args->dev;
2318 u16 min_io_sectors;
2319
2320 rbuf[1] = 0xb0;
2321 rbuf[3] = 0x3c; /* required VPD size with unmap support */
2322
2323 /*
2324 * Optimal transfer length granularity.
2325 *
2326 * This is always one physical block, but for disks with a smaller
2327 * logical than physical sector size we need to figure out what the
2328 * latter is.
2329 */
2330 min_io_sectors = 1 << ata_id_log2_per_physical_sector(args->id);
2331 put_unaligned_be16(min_io_sectors, &rbuf[6]);
2332
2333 /*
2334 * Optimal unmap granularity.
2335 *
2336 * The ATA spec doesn't even know about a granularity or alignment
2337 * for the TRIM command. We can leave away most of the unmap related
2338 * VPD page entries, but we have specifify a granularity to signal
2339 * that we support some form of unmap - in thise case via WRITE SAME
2340 * with the unmap bit set.
2341 */
2342 if (ata_id_has_trim(args->id)) {
2343 u64 max_blocks = 65535 * ATA_MAX_TRIM_RNUM;
2344
2345 if (dev->horkage & ATA_HORKAGE_MAX_TRIM_128M)
2346 max_blocks = 128 << (20 - SECTOR_SHIFT);
2347
2348 put_unaligned_be64(max_blocks, &rbuf[36]);
2349 put_unaligned_be32(1, &rbuf[28]);
2350 }
2351
2352 return 0;
2353 }
2354
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org