tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: c6935931c1894ff857616ff8549b61236a19148f commit: aa71987472a974f4f6dc4be377720564079ef42e nvme: fabrics drivers don't need the nvme-pci driver date: 2 weeks ago config: i386-randconfig-h0-09052023 (attached as .config) compiler: gcc-6 (Debian 6.1.1-9) 6.1.1 20160705 reproduce: git checkout aa71987472a974f4f6dc4be377720564079ef42e # save the attached .config to linux build tree make ARCH=i386
All error/warnings (new ones prefixed by >>): In file included from drivers/nvme/host/core.c:16:0: include/linux/blk-mq.h:61:18: error: field 'kobj' has incomplete type struct kobject kobj; ^~~~ include/linux/blk-mq.h:128:2: error: unknown type name 'softirq_done_fn' softirq_done_fn *complete; ^~~~~~~~~~~~~~~ include/linux/blk-mq.h:181:33: warning: 'struct gendisk' declared inside parameter list will not be visible outside of this definition or declaration int blk_mq_register_disk(struct gendisk *); ^~~~~~~ include/linux/blk-mq.h:182:36: warning: 'struct gendisk' declared inside parameter list will not be visible outside of this definition or declaration void blk_mq_unregister_disk(struct gendisk *); ^~~~~~~ include/linux/blk-mq.h: In function 'blk_mq_rq_from_pdu': include/linux/blk-mq.h:260:22: error: invalid application of 'sizeof' to incomplete type 'struct request' return pdu - sizeof(struct request); ^~~~~~ include/linux/blk-mq.h: In function 'blk_mq_rq_to_pdu': include/linux/blk-mq.h:264:2: error: invalid use of undefined type 'struct request' return rq + 1; ^~~~~~ In file included from drivers/nvme/host/core.c:32:0: drivers/nvme/host/nvme.h: In function 'nvme_map_len': drivers/nvme/host/nvme.h:217:6: error: implicit declaration of function 'req_op' [-Werror=implicit-function-declaration] if (req_op(rq) == REQ_OP_DISCARD) ^~~~~~ >> drivers/nvme/host/nvme.h:217:20: error: 'REQ_OP_DISCARD' undeclared (first >> use in this function) if (req_op(rq) == REQ_OP_DISCARD) ^~~~~~~~~~~~~~ drivers/nvme/host/nvme.h:217:20: note: each undeclared identifier is reported only once for each function it appears in drivers/nvme/host/nvme.h:220:10: error: implicit declaration of function 'blk_rq_bytes' [-Werror=implicit-function-declaration] return blk_rq_bytes(rq); ^~~~~~~~~~~~ drivers/nvme/host/nvme.h: In function 'nvme_cleanup_cmd': drivers/nvme/host/nvme.h:225:21: error: 'REQ_OP_DISCARD' undeclared (first use in this function) if (req_op(req) == REQ_OP_DISCARD) ^~~~~~~~~~~~~~ drivers/nvme/host/nvme.h:226:12: error: dereferencing pointer to incomplete type 'struct request' kfree(req->completion_data); ^~ drivers/nvme/host/nvme.h: In function 'nvme_req_needs_retry': drivers/nvme/host/nvme.h:243:35: error: implicit declaration of function 'blk_noretry_request' [-Werror=implicit-function-declaration] return !(status & NVME_SC_DNR || blk_noretry_request(req)) && ^~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_cancel_request': drivers/nvme/host/core.c:75:6: error: implicit declaration of function 'blk_queue_dying' [-Werror=implicit-function-declaration] if (blk_queue_dying(req->q)) ^~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_free_ns': drivers/nvme/host/core.c:157:42: error: dereferencing pointer to incomplete type 'struct gendisk' nvme_nvm_unregister(ns->queue, ns->disk->disk_name); ^~ drivers/nvme/host/core.c:163:2: error: implicit declaration of function 'put_disk' [-Werror=implicit-function-declaration] put_disk(ns->disk); ^~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_requeue_req': drivers/nvme/host/core.c:203:7: error: implicit declaration of function 'blk_queue_stopped' [-Werror=implicit-function-declaration] if (!blk_queue_stopped(req->q)) ^~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_alloc_request': drivers/nvme/host/core.c:223:18: error: 'REQ_TYPE_DRV_PRIV' undeclared (first use in this function) req->cmd_type = REQ_TYPE_DRV_PRIV; ^~~~~~~~~~~~~~~~~ >> drivers/nvme/host/core.c:224:20: error: 'REQ_FAILFAST_DRIVER' undeclared >> (first use in this function) req->cmd_flags |= REQ_FAILFAST_DRIVER; ^~~~~~~~~~~~~~~~~~~ In file included from include/linux/byteorder/little_endian.h:4:0, from arch/x86/include/uapi/asm/byteorder.h:4, from include/asm-generic/bitops/le.h:5, from arch/x86/include/asm/bitops.h:504, from include/linux/bitops.h:36, from include/linux/kernel.h:10, from include/linux/sched.h:17, from include/linux/blkdev.h:4, from drivers/nvme/host/core.c:15: drivers/nvme/host/core.c: In function 'nvme_setup_discard': drivers/nvme/host/core.c:254:46: error: implicit declaration of function 'blk_rq_pos' [-Werror=implicit-function-declaration] range->slba = cpu_to_le64(nvme_block_nr(ns, blk_rq_pos(req))); ^ include/uapi/linux/byteorder/little_endian.h:30:51: note: in definition of macro '__cpu_to_le64' #define __cpu_to_le64(x) ((__force __le64)(__u64)(x)) ^ drivers/nvme/host/core.c:254:16: note: in expansion of macro 'cpu_to_le64' range->slba = cpu_to_le64(nvme_block_nr(ns, blk_rq_pos(req))); ^~~~~~~~~~~ drivers/nvme/host/core.c:265:2: error: implicit declaration of function 'blk_add_request_payload' [-Werror=implicit-function-declaration] blk_add_request_payload(req, page, offset, sizeof(*range)); ^~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_setup_rw': >> drivers/nvme/host/core.c:283:23: error: 'REQ_FUA' undeclared (first use in >> this function) if (req->cmd_flags & REQ_FUA) ^~~~~~~ >> drivers/nvme/host/core.c:285:24: error: 'REQ_FAILFAST_DEV' undeclared (first >> use in this function) if (req->cmd_flags & (REQ_FAILFAST_DEV | REQ_RAHEAD)) ^~~~~~~~~~~~~~~~ >> drivers/nvme/host/core.c:285:43: error: 'REQ_RAHEAD' undeclared (first use >> in this function) if (req->cmd_flags & (REQ_FAILFAST_DEV | REQ_RAHEAD)) ^~~~~~~~~~ drivers/nvme/host/core.c:292:21: error: implicit declaration of function 'rq_data_dir' [-Werror=implicit-function-declaration] cmnd->rw.opcode = (rq_data_dir(req) ? nvme_cmd_write : nvme_cmd_read); ^~~~~~~~~~~ drivers/nvme/host/core.c:311:8: error: implicit declaration of function 'blk_integrity_rq' [-Werror=implicit-function-declaration] if (!blk_integrity_rq(req)) ^~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_setup_cmd': drivers/nvme/host/core.c:324:23: error: 'REQ_TYPE_DRV_PRIV' undeclared (first use in this function) if (req->cmd_type == REQ_TYPE_DRV_PRIV) ^~~~~~~~~~~~~~~~~ >> drivers/nvme/host/core.c:326:26: error: 'REQ_OP_FLUSH' undeclared (first use >> in this function) else if (req_op(req) == REQ_OP_FLUSH) ^~~~~~~~~~~~ >> drivers/nvme/host/core.c:328:26: error: 'REQ_OP_DISCARD' undeclared (first >> use in this function) else if (req_op(req) == REQ_OP_DISCARD) ^~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function '__nvme_submit_sync_cmd': drivers/nvme/host/core.c:356:9: error: implicit declaration of function 'blk_rq_map_kern' [-Werror=implicit-function-declaration] ret = blk_rq_map_kern(q, req, buffer, bufflen, GFP_KERNEL); ^~~~~~~~~~~~~~~ drivers/nvme/host/core.c:361:2: error: implicit declaration of function 'blk_execute_rq' [-Werror=implicit-function-declaration] blk_execute_rq(req->q, NULL, req, at_head); ^~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function '__nvme_submit_user_cmd': drivers/nvme/host/core.c:384:24: error: dereferencing pointer to incomplete type 'struct request_queue' struct nvme_ns *ns = q->queuedata; ^~ drivers/nvme/host/core.c:399:9: error: implicit declaration of function 'blk_rq_map_user' [-Werror=implicit-function-declaration] ret = blk_rq_map_user(q, req, NULL, ubuffer, bufflen, ^~~~~~~~~~~~~~~ drivers/nvme/host/core.c:407:6: error: dereferencing pointer to incomplete type 'struct bio' bio->bi_bdev = bdget_disk(disk, 0); ^~ drivers/nvme/host/core.c:407:18: error: implicit declaration of function 'bdget_disk' [-Werror=implicit-function-declaration] bio->bi_bdev = bdget_disk(disk, 0); ^~~~~~~~~~ drivers/nvme/host/core.c:423:9: error: implicit declaration of function 'copy_from_user' [-Werror=implicit-function-declaration] if (copy_from_user(meta, meta_buffer, ^~~~~~~~~~~~~~ drivers/nvme/host/core.c:430:10: error: implicit declaration of function 'bio_integrity_alloc' [-Werror=implicit-function-declaration] bip = bio_integrity_alloc(bio, GFP_KERNEL, 1); ^~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:430:8: warning: assignment makes pointer from integer without a cast [-Wint-conversion] bip = bio_integrity_alloc(bio, GFP_KERNEL, 1); ^ drivers/nvme/host/core.c:436:7: error: dereferencing pointer to incomplete type 'struct bio_integrity_payload' bip->bip_iter.bi_size = meta_len; ^~ drivers/nvme/host/core.c:439:10: error: implicit declaration of function 'bio_integrity_add_page' [-Werror=implicit-function-declaration] ret = bio_integrity_add_page(bio, virt_to_page(meta), ^~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:453:7: error: implicit declaration of function 'copy_to_user' [-Werror=implicit-function-declaration] if (copy_to_user(meta_buffer, meta, meta_len)) ^~~~~~~~~~~~ drivers/nvme/host/core.c:461:4: error: implicit declaration of function 'bdput' [-Werror=implicit-function-declaration] bdput(bio->bi_bdev); ^~~~~ drivers/nvme/host/core.c:462:3: error: implicit declaration of function 'blk_rq_unmap_user' [-Werror=implicit-function-declaration] blk_rq_unmap_user(bio); ^~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_keep_alive': drivers/nvme/host/core.c:508:2: error: implicit declaration of function 'blk_execute_rq_nowait' [-Werror=implicit-function-declaration] blk_execute_rq_nowait(rq->q, NULL, rq, 0, nvme_keep_alive_end_io); ^~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_user_cmd': drivers/nvme/host/core.c:771:7: error: implicit declaration of function 'put_user' [-Werror=implicit-function-declaration] if (put_user(cmd.result, &ucmd->result)) ^~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_ioctl': >> drivers/nvme/host/core.c:781:27: error: dereferencing pointer to incomplete >> type 'struct block_device' struct nvme_ns *ns = bdev->bd_disk->private_data; ^~ drivers/nvme/host/core.c: In function 'nvme_getgeo': drivers/nvme/host/core.c:836:19: error: implicit declaration of function 'get_capacity' [-Werror=implicit-function-declaration] geo->cylinders = get_capacity(bdev->bd_disk) >> 11; ^~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_config_discard': drivers/nvme/host/core.c:875:27: error: implicit declaration of function 'queue_logical_block_size' [-Werror=implicit-function-declaration] u32 logical_block_size = queue_logical_block_size(ns->queue); ^~~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:884:2: error: implicit declaration of function 'blk_queue_max_discard_sectors' [-Werror=implicit-function-declaration] blk_queue_max_discard_sectors(ns->queue, UINT_MAX); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:885:2: error: implicit declaration of function 'queue_flag_set_unlocked' [-Werror=implicit-function-declaration] queue_flag_set_unlocked(QUEUE_FLAG_DISCARD, ns->queue); ^~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:885:26: error: 'QUEUE_FLAG_DISCARD' undeclared (first use in this function) queue_flag_set_unlocked(QUEUE_FLAG_DISCARD, ns->queue); ^~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_revalidate_disk': drivers/nvme/host/core.c:897:3: error: implicit declaration of function 'set_capacity' [-Werror=implicit-function-declaration] set_capacity(disk, 0); ^~~~~~~~~~~~ drivers/nvme/host/core.c:901:12: error: implicit declaration of function 'disk_to_dev' [-Werror=implicit-function-declaration] dev_warn(disk_to_dev(ns->disk), "%s: Identify failure\n", ^~~~~~~~~~~ drivers/nvme/host/core.c:901:12: warning: passing argument 1 of 'dev_warn' makes pointer from integer without a cast [-Wint-conversion] In file included from include/linux/pci.h:30:0, from drivers/nvme/host/nvme.h:18, from drivers/nvme/host/core.c:32: include/linux/device.h:1137:6: note: expected 'const struct device *' but argument is of type 'int' void dev_warn(const struct device *dev, const char *fmt, ...); ^~~~~~~~ drivers/nvme/host/core.c:912:13: warning: passing argument 1 of 'dev_warn' makes pointer from integer without a cast [-Wint-conversion] dev_warn(disk_to_dev(ns->disk), ^~~~~~~~~~~ In file included from include/linux/pci.h:30:0, from drivers/nvme/host/nvme.h:18, from drivers/nvme/host/core.c:32: include/linux/device.h:1137:6: note: expected 'const struct device *' but argument is of type 'int' void dev_warn(const struct device *dev, const char *fmt, ...); ^~~~~~~~ drivers/nvme/host/core.c:943:6: error: implicit declaration of function 'blk_get_integrity' [-Werror=implicit-function-declaration] if (blk_get_integrity(disk) && (ns->pi_type != pi_type || ^~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:947:3: error: implicit declaration of function 'blk_integrity_unregister' [-Werror=implicit-function-declaration] blk_integrity_unregister(disk); ^~~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:950:2: error: implicit declaration of function 'blk_queue_logical_block_size' [-Werror=implicit-function-declaration] blk_queue_logical_block_size(ns->queue, bs); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: At top level: drivers/nvme/host/core.c:1059:21: error: variable 'nvme_fops' has initializer but incomplete type static const struct block_device_operations nvme_fops = { ^~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:1060:2: error: unknown field 'owner' specified in initializer .owner = THIS_MODULE, ^ In file included from include/linux/linkage.h:6:0, from include/linux/kernel.h:6, from include/linux/sched.h:17, from include/linux/blkdev.h:4, from drivers/nvme/host/core.c:15: include/linux/export.h:36:21: warning: excess elements in struct initializer #define THIS_MODULE ((struct module *)0) ^ drivers/nvme/host/core.c:1060:12: note: in expansion of macro 'THIS_MODULE' .owner = THIS_MODULE, ^~~~~~~~~~~ include/linux/export.h:36:21: note: (near initialization for 'nvme_fops') #define THIS_MODULE ((struct module *)0) ^ drivers/nvme/host/core.c:1060:12: note: in expansion of macro 'THIS_MODULE' .owner = THIS_MODULE, ^~~~~~~~~~~ drivers/nvme/host/core.c:1061:2: error: unknown field 'ioctl' specified in initializer .ioctl = nvme_ioctl, ^ drivers/nvme/host/core.c:1061:12: warning: excess elements in struct initializer .ioctl = nvme_ioctl, ^~~~~~~~~~ drivers/nvme/host/core.c:1061:12: note: (near initialization for 'nvme_fops') drivers/nvme/host/core.c:1062:2: error: unknown field 'compat_ioctl' specified in initializer .compat_ioctl = nvme_compat_ioctl, ^ In file included from include/uapi/linux/posix_types.h:4:0, from include/uapi/linux/types.h:13, from include/linux/types.h:5, from include/uapi/linux/capability.h:16, from include/linux/capability.h:15, from include/linux/sched.h:15, from include/linux/blkdev.h:4, from drivers/nvme/host/core.c:15: include/linux/stddef.h:7:14: warning: excess elements in struct initializer #define NULL ((void *)0) ^ drivers/nvme/host/core.c:815:27: note: in expansion of macro 'NULL' #define nvme_compat_ioctl NULL ^~~~ drivers/nvme/host/core.c:1062:18: note: in expansion of macro 'nvme_compat_ioctl' .compat_ioctl = nvme_compat_ioctl, ^~~~~~~~~~~~~~~~~ include/linux/stddef.h:7:14: note: (near initialization for 'nvme_fops') #define NULL ((void *)0) ^ drivers/nvme/host/core.c:815:27: note: in expansion of macro 'NULL' #define nvme_compat_ioctl NULL ^~~~ drivers/nvme/host/core.c:1062:18: note: in expansion of macro 'nvme_compat_ioctl' .compat_ioctl = nvme_compat_ioctl, ^~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:1063:2: error: unknown field 'open' specified in initializer .open = nvme_open, ^ drivers/nvme/host/core.c:1063:11: warning: excess elements in struct initializer .open = nvme_open, ^~~~~~~~~ drivers/nvme/host/core.c:1063:11: note: (near initialization for 'nvme_fops') drivers/nvme/host/core.c:1064:2: error: unknown field 'release' specified in initializer .release = nvme_release, ^ drivers/nvme/host/core.c:1064:13: warning: excess elements in struct initializer .release = nvme_release, ^~~~~~~~~~~~ drivers/nvme/host/core.c:1064:13: note: (near initialization for 'nvme_fops') drivers/nvme/host/core.c:1065:2: error: unknown field 'getgeo' specified in initializer .getgeo = nvme_getgeo, ^ drivers/nvme/host/core.c:1065:13: warning: excess elements in struct initializer .getgeo = nvme_getgeo, ^~~~~~~~~~~ drivers/nvme/host/core.c:1065:13: note: (near initialization for 'nvme_fops') drivers/nvme/host/core.c:1066:2: error: unknown field 'revalidate_disk' specified in initializer .revalidate_disk= nvme_revalidate_disk, ^ drivers/nvme/host/core.c:1066:20: warning: excess elements in struct initializer .revalidate_disk= nvme_revalidate_disk, ^~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:1066:20: note: (near initialization for 'nvme_fops') drivers/nvme/host/core.c:1067:2: error: unknown field 'pr_ops' specified in initializer .pr_ops = &nvme_pr_ops, ^ drivers/nvme/host/core.c:1067:13: warning: excess elements in struct initializer .pr_ops = &nvme_pr_ops, ^ drivers/nvme/host/core.c:1067:13: note: (near initialization for 'nvme_fops') drivers/nvme/host/core.c: In function 'nvme_set_queue_limits': drivers/nvme/host/core.c:1196:3: error: implicit declaration of function 'blk_queue_max_hw_sectors' [-Werror=implicit-function-declaration] blk_queue_max_hw_sectors(q, ctrl->max_hw_sectors); ^~~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:1197:3: error: implicit declaration of function 'blk_queue_max_segments' [-Werror=implicit-function-declaration] blk_queue_max_segments(q, min_t(u32, max_segments, USHRT_MAX)); ^~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:1200:3: error: implicit declaration of function 'blk_queue_chunk_sectors' [-Werror=implicit-function-declaration] blk_queue_chunk_sectors(q, ctrl->stripe_size >> 9); ^~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:1201:2: error: implicit declaration of function 'blk_queue_virt_boundary' [-Werror=implicit-function-declaration] blk_queue_virt_boundary(q, ctrl->page_size - 1); ^~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:1204:2: error: implicit declaration of function 'blk_queue_write_cache' [-Werror=implicit-function-declaration] blk_queue_write_cache(q, vwc, vwc); ^~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_dev_open': >> drivers/nvme/host/core.c:1303:17: error: implicit declaration of function >> 'iminor' [-Werror=implicit-function-declaration] int instance = iminor(inode); ^~~~~~ >> drivers/nvme/host/core.c:1317:7: error: dereferencing pointer to incomplete >> type 'struct file' file->private_data = ctrl; ^~ drivers/nvme/host/core.c: At top level: >> drivers/nvme/host/core.c:1389:21: error: variable 'nvme_dev_fops' has >> initializer but incomplete type static const struct file_operations nvme_dev_fops = { ^~~~~~~~~~~~~~~ drivers/nvme/host/core.c:1390:2: error: unknown field 'owner' specified in initializer .owner = THIS_MODULE, ^ In file included from include/linux/linkage.h:6:0, from include/linux/kernel.h:6, from include/linux/sched.h:17, from include/linux/blkdev.h:4, from drivers/nvme/host/core.c:15: include/linux/export.h:36:21: warning: excess elements in struct initializer #define THIS_MODULE ((struct module *)0) ^ drivers/nvme/host/core.c:1390:12: note: in expansion of macro 'THIS_MODULE' .owner = THIS_MODULE, ^~~~~~~~~~~ include/linux/export.h:36:21: note: (near initialization for 'nvme_dev_fops') #define THIS_MODULE ((struct module *)0) ^ drivers/nvme/host/core.c:1390:12: note: in expansion of macro 'THIS_MODULE' .owner = THIS_MODULE, ^~~~~~~~~~~ drivers/nvme/host/core.c:1391:2: error: unknown field 'open' specified in initializer .open = nvme_dev_open, ^ drivers/nvme/host/core.c:1391:11: warning: excess elements in struct initializer .open = nvme_dev_open, ^~~~~~~~~~~~~ drivers/nvme/host/core.c:1391:11: note: (near initialization for 'nvme_dev_fops') drivers/nvme/host/core.c:1392:2: error: unknown field 'release' specified in initializer .release = nvme_dev_release, ^ drivers/nvme/host/core.c:1392:13: warning: excess elements in struct initializer .release = nvme_dev_release, ^~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:1392:13: note: (near initialization for 'nvme_dev_fops') >> drivers/nvme/host/core.c:1393:2: error: unknown field 'unlocked_ioctl' >> specified in initializer .unlocked_ioctl = nvme_dev_ioctl, ^ drivers/nvme/host/core.c:1393:20: warning: excess elements in struct initializer .unlocked_ioctl = nvme_dev_ioctl, ^~~~~~~~~~~~~~ drivers/nvme/host/core.c:1393:20: note: (near initialization for 'nvme_dev_fops') drivers/nvme/host/core.c:1394:2: error: unknown field 'compat_ioctl' specified in initializer .compat_ioctl = nvme_dev_ioctl, ^ drivers/nvme/host/core.c:1394:18: warning: excess elements in struct initializer .compat_ioctl = nvme_dev_ioctl, ^~~~~~~~~~~~~~ drivers/nvme/host/core.c:1394:18: note: (near initialization for 'nvme_dev_fops') drivers/nvme/host/core.c: In function 'wwid_show': drivers/nvme/host/core.c:1425:23: error: implicit declaration of function 'dev_to_disk' [-Werror=implicit-function-declaration] struct nvme_ns *ns = dev_to_disk(dev)->private_data; ^~~~~~~~~~~ drivers/nvme/host/core.c:1425:39: error: invalid type argument of '->' (have 'int') struct nvme_ns *ns = dev_to_disk(dev)->private_data; ^~ drivers/nvme/host/core.c: In function 'uuid_show': drivers/nvme/host/core.c:1449:39: error: invalid type argument of '->' (have 'int') struct nvme_ns *ns = dev_to_disk(dev)->private_data; ^~ drivers/nvme/host/core.c: In function 'eui_show': drivers/nvme/host/core.c:1457:39: error: invalid type argument of '->' (have 'int') struct nvme_ns *ns = dev_to_disk(dev)->private_data; ^~ drivers/nvme/host/core.c: In function 'nsid_show': drivers/nvme/host/core.c:1465:39: error: invalid type argument of '->' (have 'int') struct nvme_ns *ns = dev_to_disk(dev)->private_data; ^~ drivers/nvme/host/core.c: In function 'nvme_ns_attrs_are_visible': drivers/nvme/host/core.c:1482:39: error: invalid type argument of '->' (have 'int') struct nvme_ns *ns = dev_to_disk(dev)->private_data; ^~ drivers/nvme/host/core.c: In function 'nvme_alloc_ns': drivers/nvme/host/core.c:1655:26: error: 'QUEUE_FLAG_NONROT' undeclared (first use in this function) queue_flag_set_unlocked(QUEUE_FLAG_NONROT, ns->queue); ^~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:1659:9: error: implicit declaration of function 'alloc_disk_node' [-Werror=implicit-function-declaration] disk = alloc_disk_node(0, node); ^~~~~~~~~~~~~~~ drivers/nvme/host/core.c:1659:7: warning: assignment makes pointer from integer without a cast [-Wint-conversion] disk = alloc_disk_node(0, node); ^ drivers/nvme/host/core.c:1675:16: error: 'GENHD_FL_EXT_DEVT' undeclared (first use in this function) disk->flags = GENHD_FL_EXT_DEVT; ^~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:1689:2: error: implicit declaration of function 'device_add_disk' [-Werror=implicit-function-declaration] device_add_disk(ctrl->device, ns->disk); ^~~~~~~~~~~~~~~ drivers/nvme/host/core.c:1690:47: error: invalid type argument of '->' (have 'int') if (sysfs_create_group(&disk_to_dev(ns->disk)->kobj, ^~ drivers/nvme/host/core.c:1698:2: error: implicit declaration of function 'blk_cleanup_queue' [-Werror=implicit-function-declaration] blk_cleanup_queue(ns->queue); ^~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_ns_remove': drivers/nvme/host/core.c:1710:24: error: 'GENHD_FL_UP' undeclared (first use in this function) if (ns->disk->flags & GENHD_FL_UP) { ^~~~~~~~~~~ drivers/nvme/host/core.c:1713:44: error: invalid type argument of '->' (have 'int') sysfs_remove_group(&disk_to_dev(ns->disk)->kobj, ^~ drivers/nvme/host/core.c:1715:3: error: implicit declaration of function 'del_gendisk' [-Werror=implicit-function-declaration] del_gendisk(ns->disk); ^~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_validate_ns': drivers/nvme/host/core.c:1733:7: error: implicit declaration of function 'revalidate_disk' [-Werror=implicit-function-declaration] if (revalidate_disk(ns->disk)) ^~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_uninit_ctrl': >> drivers/nvme/host/core.c:1948:29: error: implicit declaration of function >> 'MKDEV' [-Werror=implicit-function-declaration] device_destroy(nvme_class, MKDEV(nvme_char_major, ctrl->instance)); ^~~~~ drivers/nvme/host/core.c: In function 'nvme_kill_queues': drivers/nvme/host/core.c:2041:3: error: implicit declaration of function 'blk_set_queue_dying' [-Werror=implicit-function-declaration] blk_set_queue_dying(ns->queue); ^~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_stop_queues': drivers/nvme/host/core.c:2056:3: error: implicit declaration of function 'queue_flag_set' [-Werror=implicit-function-declaration] queue_flag_set(QUEUE_FLAG_STOPPED, ns->queue); ^~~~~~~~~~~~~~ drivers/nvme/host/core.c:2056:18: error: 'QUEUE_FLAG_STOPPED' undeclared (first use in this function) queue_flag_set(QUEUE_FLAG_STOPPED, ns->queue); ^~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_start_queues': drivers/nvme/host/core.c:2072:3: error: implicit declaration of function 'queue_flag_clear_unlocked' [-Werror=implicit-function-declaration] queue_flag_clear_unlocked(QUEUE_FLAG_STOPPED, ns->queue); ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c:2072:29: error: 'QUEUE_FLAG_STOPPED' undeclared (first use in this function) queue_flag_clear_unlocked(QUEUE_FLAG_STOPPED, ns->queue); ^~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_core_init': >> drivers/nvme/host/core.c:2084:11: error: implicit declaration of function >> '__register_chrdev' [-Werror=implicit-function-declaration] result = __register_chrdev(nvme_char_major, 0, NVME_MINORS, "nvme", ^~~~~~~~~~~~~~~~~ >> drivers/nvme/host/core.c:35:29: error: 'MINORBITS' undeclared (first use in >> this function) #define NVME_MINORS (1U << MINORBITS) ^ >> drivers/nvme/host/core.c:2084:49: note: in expansion of macro 'NVME_MINORS' result = __register_chrdev(nvme_char_major, 0, NVME_MINORS, "nvme", ^~~~~~~~~~~ >> drivers/nvme/host/core.c:2100:2: error: implicit declaration of function >> '__unregister_chrdev' [-Werror=implicit-function-declaration] __unregister_chrdev(nvme_char_major, 0, NVME_MINORS, "nvme"); ^~~~~~~~~~~~~~~~~~~ drivers/nvme/host/core.c: In function 'nvme_core_exit': >> drivers/nvme/host/core.c:35:29: error: 'MINORBITS' undeclared (first use in >> this function) #define NVME_MINORS (1U << MINORBITS) ^ drivers/nvme/host/core.c:2107:42: note: in expansion of macro 'NVME_MINORS' __unregister_chrdev(nvme_char_major, 0, NVME_MINORS, "nvme"); ^~~~~~~~~~~ drivers/nvme/host/core.c: At top level: drivers/nvme/host/core.c:1059:45: error: storage size of 'nvme_fops' isn't known static const struct block_device_operations nvme_fops = { ^~~~~~~~~ >> drivers/nvme/host/core.c:1389:37: error: storage size of 'nvme_dev_fops' >> isn't known static const struct file_operations nvme_dev_fops = { ^~~~~~~~~~~~~ cc1: some warnings being treated as errors .. vim +/REQ_OP_DISCARD +217 drivers/nvme/host/nvme.h 1c63dc66 drivers/nvme/host/nvme.h Christoph Hellwig 2015-11-26 201 } 1c63dc66 drivers/nvme/host/nvme.h Christoph Hellwig 2015-11-26 202 f3ca80fc drivers/nvme/host/nvme.h Christoph Hellwig 2015-11-28 203 static inline int nvme_reset_subsystem(struct nvme_ctrl *ctrl) f3ca80fc drivers/nvme/host/nvme.h Christoph Hellwig 2015-11-28 204 { f3ca80fc drivers/nvme/host/nvme.h Christoph Hellwig 2015-11-28 205 if (!ctrl->subsystem) f3ca80fc drivers/nvme/host/nvme.h Christoph Hellwig 2015-11-28 206 return -ENOTTY; f3ca80fc drivers/nvme/host/nvme.h Christoph Hellwig 2015-11-28 207 return ctrl->ops->reg_write32(ctrl, NVME_REG_NSSR, 0x4E564D65); f3ca80fc drivers/nvme/host/nvme.h Christoph Hellwig 2015-11-28 208 } f3ca80fc drivers/nvme/host/nvme.h Christoph Hellwig 2015-11-28 209 f11bb3e2 drivers/block/nvme.h Christoph Hellwig 2015-10-03 210 static inline u64 nvme_block_nr(struct nvme_ns *ns, sector_t sector) f11bb3e2 drivers/block/nvme.h Christoph Hellwig 2015-10-03 211 { f11bb3e2 drivers/block/nvme.h Christoph Hellwig 2015-10-03 212 return (sector >> (ns->lba_shift - 9)); f11bb3e2 drivers/block/nvme.h Christoph Hellwig 2015-10-03 213 } f11bb3e2 drivers/block/nvme.h Christoph Hellwig 2015-10-03 214 58b45602 drivers/nvme/host/nvme.h Ming Lin 2016-03-22 215 static inline unsigned nvme_map_len(struct request *rq) 58b45602 drivers/nvme/host/nvme.h Ming Lin 2016-03-22 216 { c2df40df drivers/nvme/host/nvme.h Mike Christie 2016-06-05 @217 if (req_op(rq) == REQ_OP_DISCARD) 58b45602 drivers/nvme/host/nvme.h Ming Lin 2016-03-22 218 return sizeof(struct nvme_dsm_range); 58b45602 drivers/nvme/host/nvme.h Ming Lin 2016-03-22 219 else 58b45602 drivers/nvme/host/nvme.h Ming Lin 2016-03-22 220 return blk_rq_bytes(rq); 58b45602 drivers/nvme/host/nvme.h Ming Lin 2016-03-22 221 } 58b45602 drivers/nvme/host/nvme.h Ming Lin 2016-03-22 222 6904242d drivers/nvme/host/nvme.h Ming Lin 2016-04-25 223 static inline void nvme_cleanup_cmd(struct request *req) 6904242d drivers/nvme/host/nvme.h Ming Lin 2016-04-25 224 { c2df40df drivers/nvme/host/nvme.h Mike Christie 2016-06-05 225 if (req_op(req) == REQ_OP_DISCARD) :::::: The code at line 217 was first introduced by commit :::::: c2df40dfb8c015211ec55f4b1dd0587f875c7b34 drivers: use req op accessor :::::: TO: Mike Christie <mchri...@redhat.com> :::::: CC: Jens Axboe <ax...@fb.com> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
.config.gz
Description: Binary data