From: kbuild test robot <lkp@intel.com>
To: Linus Walleij <linus.walleij@linaro.org>
Cc: kbuild-all@01.org, linux-mmc@vger.kernel.org,
Ulf Hansson <ulf.hansson@linaro.org>,
Adrian Hunter <adrian.hunter@intel.com>,
Paolo Valente <paolo.valente@linaro.org>,
linux-block@vger.kernel.org, Jens Axboe <axboe@kernel.dk>,
Christoph Hellwig <hch@lst.de>, Arnd Bergmann <arnd@arndb.de>,
Linus Walleij <linus.walleij@linaro.org>
Subject: Re: [PATCH] mmc: core: make block layer non-optional
Date: Wed, 15 Feb 2017 20:19:29 +0800 [thread overview]
Message-ID: <201702152014.pxIi5Oze%fengguang.wu@intel.com> (raw)
In-Reply-To: <20170215095353.23888-1-linus.walleij@linaro.org>
[-- Attachment #1: Type: text/plain, Size: 22905 bytes --]
Hi Linus,
[auto build test ERROR on linus/master]
[also build test ERROR on v4.10-rc8 next-20170215]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Linus-Walleij/mmc-core-make-block-layer-non-optional/20170215-181952
config: i386-randconfig-h1-02151737 (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
All errors (new ones prefixed by >>):
In file included from drivers/mmc/core/block.c:48:0:
drivers/mmc/core/queue.h: In function 'mmc_req_is_special':
drivers/mmc/core/queue.h:7:4: error: implicit declaration of function 'req_op' [-Werror=implicit-function-declaration]
(req_op(req) == REQ_OP_FLUSH ||
^~~~~~
drivers/mmc/core/queue.h:7:19: error: 'REQ_OP_FLUSH' undeclared (first use in this function)
(req_op(req) == REQ_OP_FLUSH ||
^~~~~~~~~~~~
drivers/mmc/core/queue.h:7:19: note: each undeclared identifier is reported only once for each function it appears in
drivers/mmc/core/queue.h:8:19: error: 'REQ_OP_DISCARD' undeclared (first use in this function)
req_op(req) == REQ_OP_DISCARD ||
^~~~~~~~~~~~~~
drivers/mmc/core/queue.h:9:19: error: 'REQ_OP_SECURE_ERASE' undeclared (first use in this function)
req_op(req) == REQ_OP_SECURE_ERASE);
^~~~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_blk_get':
>> drivers/mmc/core/block.c:137:11: error: dereferencing pointer to incomplete type 'struct gendisk'
md = disk->private_data;
^~
drivers/mmc/core/block.c: In function 'mmc_blk_put':
drivers/mmc/core/block.c:159:3: error: implicit declaration of function 'blk_cleanup_queue' [-Werror=implicit-function-declaration]
blk_cleanup_queue(md->queue.queue);
^~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c:165:3: error: implicit declaration of function 'put_disk' [-Werror=implicit-function-declaration]
put_disk(md->disk);
^~~~~~~~
drivers/mmc/core/block.c: In function 'power_ro_lock_show':
drivers/mmc/core/block.c:175:40: error: implicit declaration of function 'dev_to_disk' [-Werror=implicit-function-declaration]
struct mmc_blk_data *md = mmc_blk_get(dev_to_disk(dev));
^~~~~~~~~~~
drivers/mmc/core/block.c:175:40: warning: passing argument 1 of 'mmc_blk_get' makes pointer from integer without a cast [-Wint-conversion]
drivers/mmc/core/block.c:132:29: note: expected 'struct gendisk *' but argument is of type 'int'
static struct mmc_blk_data *mmc_blk_get(struct gendisk *disk)
^~~~~~~~~~~
drivers/mmc/core/block.c: In function 'power_ro_lock_store':
drivers/mmc/core/block.c:205:19: warning: passing argument 1 of 'mmc_blk_get' makes pointer from integer without a cast [-Wint-conversion]
md = mmc_blk_get(dev_to_disk(dev));
^~~~~~~~~~~
drivers/mmc/core/block.c:132:29: note: expected 'struct gendisk *' but argument is of type 'int'
static struct mmc_blk_data *mmc_blk_get(struct gendisk *disk)
^~~~~~~~~~~
drivers/mmc/core/block.c:224:3: error: implicit declaration of function 'set_disk_ro' [-Werror=implicit-function-declaration]
set_disk_ro(md->disk, 1);
^~~~~~~~~~~
drivers/mmc/core/block.c: In function 'force_ro_show':
drivers/mmc/core/block.c:241:40: warning: passing argument 1 of 'mmc_blk_get' makes pointer from integer without a cast [-Wint-conversion]
struct mmc_blk_data *md = mmc_blk_get(dev_to_disk(dev));
^~~~~~~~~~~
drivers/mmc/core/block.c:132:29: note: expected 'struct gendisk *' but argument is of type 'int'
static struct mmc_blk_data *mmc_blk_get(struct gendisk *disk)
^~~~~~~~~~~
drivers/mmc/core/block.c:244:10: error: implicit declaration of function 'get_disk_ro' [-Werror=implicit-function-declaration]
get_disk_ro(dev_to_disk(dev)) ^
^~~~~~~~~~~
drivers/mmc/core/block.c: In function 'force_ro_store':
drivers/mmc/core/block.c:255:40: warning: passing argument 1 of 'mmc_blk_get' makes pointer from integer without a cast [-Wint-conversion]
struct mmc_blk_data *md = mmc_blk_get(dev_to_disk(dev));
^~~~~~~~~~~
drivers/mmc/core/block.c:132:29: note: expected 'struct gendisk *' but argument is of type 'int'
static struct mmc_blk_data *mmc_blk_get(struct gendisk *disk)
^~~~~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_blk_open':
drivers/mmc/core/block.c:277:4: error: implicit declaration of function 'check_disk_change' [-Werror=implicit-function-declaration]
check_disk_change(bdev);
^~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_blk_getgeo':
drivers/mmc/core/block.c:302:19: error: implicit declaration of function 'get_capacity' [-Werror=implicit-function-declaration]
geo->cylinders = get_capacity(bdev->bd_disk) / (4 * 16);
^~~~~~~~~~~~
In file included from include/asm-generic/ioctl.h:4:0,
from arch/x86/include/uapi/asm/ioctl.h:1,
from include/uapi/linux/ioctl.h:4,
from arch/x86/include/uapi/asm/msr.h:7,
from arch/x86/include/asm/msr.h:11,
from arch/x86/include/asm/processor.h:20,
from arch/x86/include/asm/cpufeature.h:4,
from arch/x86/include/asm/thread_info.h:52,
from include/linux/thread_info.h:25,
from arch/x86/include/asm/preempt.h:6,
from include/linux/preempt.h:59,
from include/linux/spinlock.h:50,
from include/linux/seqlock.h:35,
from include/linux/time.h:5,
from include/linux/stat.h:18,
from include/linux/module.h:10,
from drivers/mmc/core/block.c:21:
drivers/mmc/core/block.c: In function 'mmc_blk_ioctl':
include/uapi/linux/mmc/ioctl.h:59:27: error: 'MMC_BLOCK_MAJOR' undeclared (first use in this function)
#define MMC_IOC_CMD _IOWR(MMC_BLOCK_MAJOR, 0, struct mmc_ioc_cmd)
^
include/uapi/asm-generic/ioctl.h:67:5: note: in definition of macro '_IOC'
((type) << _IOC_TYPESHIFT) | \
^~~~
include/uapi/linux/mmc/ioctl.h:59:21: note: in expansion of macro '_IOWR'
#define MMC_IOC_CMD _IOWR(MMC_BLOCK_MAJOR, 0, struct mmc_ioc_cmd)
^~~~~
drivers/mmc/core/block.c:698:7: note: in expansion of macro 'MMC_IOC_CMD'
case MMC_IOC_CMD:
^~~~~~~~~~~
drivers/mmc/core/block.c: At top level:
drivers/mmc/core/block.c:717:21: error: variable 'mmc_bdops' has initializer but incomplete type
static const struct block_device_operations mmc_bdops = {
^~~~~~~~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c:718:2: error: unknown field 'open' specified in initializer
.open = mmc_blk_open,
^
drivers/mmc/core/block.c:718:12: warning: excess elements in struct initializer
.open = mmc_blk_open,
^~~~~~~~~~~~
drivers/mmc/core/block.c:718:12: note: (near initialization for 'mmc_bdops')
drivers/mmc/core/block.c:719:2: error: unknown field 'release' specified in initializer
.release = mmc_blk_release,
^
drivers/mmc/core/block.c:719:14: warning: excess elements in struct initializer
.release = mmc_blk_release,
^~~~~~~~~~~~~~~
drivers/mmc/core/block.c:719:14: note: (near initialization for 'mmc_bdops')
drivers/mmc/core/block.c:720:2: error: unknown field 'getgeo' specified in initializer
.getgeo = mmc_blk_getgeo,
^
drivers/mmc/core/block.c:720:14: warning: excess elements in struct initializer
.getgeo = mmc_blk_getgeo,
^~~~~~~~~~~~~~
drivers/mmc/core/block.c:720:14: note: (near initialization for 'mmc_bdops')
drivers/mmc/core/block.c:721: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/moduleparam.h:6,
from drivers/mmc/core/block.c:20:
include/linux/export.h:37:21: warning: excess elements in struct initializer
#define THIS_MODULE ((struct module *)0)
^
drivers/mmc/core/block.c:721:13: note: in expansion of macro 'THIS_MODULE'
.owner = THIS_MODULE,
^~~~~~~~~~~
include/linux/export.h:37:21: note: (near initialization for 'mmc_bdops')
#define THIS_MODULE ((struct module *)0)
^
drivers/mmc/core/block.c:721:13: note: in expansion of macro 'THIS_MODULE'
.owner = THIS_MODULE,
^~~~~~~~~~~
drivers/mmc/core/block.c:722:2: error: unknown field 'ioctl' specified in initializer
.ioctl = mmc_blk_ioctl,
^
drivers/mmc/core/block.c:722:13: warning: excess elements in struct initializer
.ioctl = mmc_blk_ioctl,
^~~~~~~~~~~~~
drivers/mmc/core/block.c:722:13: note: (near initialization for 'mmc_bdops')
In file included from include/linux/kernel.h:13:0,
from include/linux/moduleparam.h:6,
from drivers/mmc/core/block.c:20:
drivers/mmc/core/block.c: In function 'card_busy_detect':
>> drivers/mmc/core/block.c:846:14: error: dereferencing pointer to incomplete type 'struct request'
req->rq_disk->disk_name, err);
^
include/linux/printk.h:292:33: note: in definition of macro 'pr_err'
printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
^~~~~~~~~~~
drivers/mmc/core/block.c: In function 'send_stop':
drivers/mmc/core/block.c:889:22: error: implicit declaration of function 'rq_data_dir' [-Werror=implicit-function-declaration]
bool use_r1b_resp = rq_data_dir(req) == WRITE;
^~~~~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_blk_issue_discard_rq':
drivers/mmc/core/block.c:1158:9: error: implicit declaration of function 'blk_rq_pos' [-Werror=implicit-function-declaration]
from = blk_rq_pos(req);
^~~~~~~~~~
drivers/mmc/core/block.c:1159:7: error: implicit declaration of function 'blk_rq_sectors' [-Werror=implicit-function-declaration]
nr = blk_rq_sectors(req);
^~~~~~~~~~~~~~
drivers/mmc/core/block.c:1184:2: error: implicit declaration of function 'blk_end_request' [-Werror=implicit-function-declaration]
blk_end_request(req, err, blk_rq_bytes(req));
^~~~~~~~~~~~~~~
drivers/mmc/core/block.c:1184:28: error: implicit declaration of function 'blk_rq_bytes' [-Werror=implicit-function-declaration]
blk_end_request(req, err, blk_rq_bytes(req));
^~~~~~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_blk_issue_flush':
drivers/mmc/core/block.c:1266:2: error: implicit declaration of function 'blk_end_request_all' [-Werror=implicit-function-declaration]
blk_end_request_all(req, ret);
^~~~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_blk_rw_rq_prep':
drivers/mmc/core/block.c:1423:37: error: 'REQ_FUA' undeclared (first use in this function)
bool do_rel_wr = (req->cmd_flags & REQ_FUA) &&
^~~~~~~
drivers/mmc/core/block.c:1504:21: error: 'REQ_META' undeclared (first use in this function)
(req->cmd_flags & REQ_META) &&
^~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_blk_issue_rw_rq':
drivers/mmc/core/block.c:1736:20: error: 'RQF_QUIET' undeclared (first use in this function)
req->rq_flags |= RQF_QUIET;
^~~~~~~~~
drivers/mmc/core/block.c:1739:5: error: implicit declaration of function 'blk_rq_cur_bytes' [-Werror=implicit-function-declaration]
blk_rq_cur_bytes(req));
^~~~~~~~~~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_blk_issue_rq':
drivers/mmc/core/block.c:1777:28: error: 'REQ_OP_DISCARD' undeclared (first use in this function)
if (req && req_op(req) == REQ_OP_DISCARD) {
^~~~~~~~~~~~~~
drivers/mmc/core/block.c:1782:35: error: 'REQ_OP_SECURE_ERASE' undeclared (first use in this function)
} else if (req && req_op(req) == REQ_OP_SECURE_ERASE) {
^~~~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c:1787:35: error: 'REQ_OP_FLUSH' undeclared (first use in this function)
} else if (req && req_op(req) == REQ_OP_FLUSH) {
^~~~~~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_blk_alloc_req':
drivers/mmc/core/block.c:1856:13: error: implicit declaration of function 'alloc_disk' [-Werror=implicit-function-declaration]
md->disk = alloc_disk(perdev_minors);
^~~~~~~~~~
drivers/mmc/core/block.c:1856:11: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
md->disk = alloc_disk(perdev_minors);
^
drivers/mmc/core/block.c:1872:20: error: 'MMC_BLOCK_MAJOR' undeclared (first use in this function)
md->disk->major = MMC_BLOCK_MAJOR;
^~~~~~~~~~~~~~~
drivers/mmc/core/block.c:1879:20: error: 'GENHD_FL_EXT_DEVT' undeclared (first use in this function)
md->disk->flags = GENHD_FL_EXT_DEVT;
^~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c:1881:22: error: 'GENHD_FL_NO_PART_SCAN' undeclared (first use in this function)
md->disk->flags |= GENHD_FL_NO_PART_SCAN;
^~~~~~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c:1899:3: error: implicit declaration of function 'blk_queue_logical_block_size' [-Werror=implicit-function-declaration]
blk_queue_logical_block_size(md->queue.queue,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c:1904:2: error: implicit declaration of function 'set_capacity' [-Werror=implicit-function-declaration]
set_capacity(md->disk, size);
^~~~~~~~~~~~
drivers/mmc/core/block.c:1919:3: error: implicit declaration of function 'blk_queue_write_cache' [-Werror=implicit-function-declaration]
blk_queue_write_cache(md->queue.queue, true, true);
^~~~~~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_blk_alloc_part':
drivers/mmc/core/block.c:1969:36: error: implicit declaration of function 'disk_to_dev' [-Werror=implicit-function-declaration]
part_md = mmc_blk_alloc_req(card, disk_to_dev(md->disk), size, default_ro,
^~~~~~~~~~~
drivers/mmc/core/block.c:1969:36: warning: passing argument 2 of 'mmc_blk_alloc_req' makes pointer from integer without a cast [-Wint-conversion]
drivers/mmc/core/block.c:1814:29: note: expected 'struct device *' but argument is of type 'int'
static struct mmc_blk_data *mmc_blk_alloc_req(struct mmc_card *card,
^~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_blk_remove_req':
drivers/mmc/core/block.c:2025:25: error: 'GENHD_FL_UP' undeclared (first use in this function)
if (md->disk->flags & GENHD_FL_UP) {
^~~~~~~~~~~
drivers/mmc/core/block.c:2026:23: warning: passing argument 1 of 'device_remove_file' makes pointer from integer without a cast [-Wint-conversion]
device_remove_file(disk_to_dev(md->disk), &md->force_ro);
^~~~~~~~~~~
In file included from include/linux/pm_runtime.h:12:0,
from drivers/mmc/core/block.c:37:
include/linux/device.h:602:13: note: expected 'struct device *' but argument is of type 'int'
extern void device_remove_file(struct device *dev,
^~~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c:2029:24: warning: passing argument 1 of 'device_remove_file' makes pointer from integer without a cast [-Wint-conversion]
device_remove_file(disk_to_dev(md->disk),
^~~~~~~~~~~
In file included from include/linux/pm_runtime.h:12:0,
from drivers/mmc/core/block.c:37:
include/linux/device.h:602:13: note: expected 'struct device *' but argument is of type 'int'
extern void device_remove_file(struct device *dev,
^~~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c:2032:4: error: implicit declaration of function 'del_gendisk' [-Werror=implicit-function-declaration]
del_gendisk(md->disk);
^~~~~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_add_disk':
drivers/mmc/core/block.c:2056:2: error: implicit declaration of function 'device_add_disk' [-Werror=implicit-function-declaration]
device_add_disk(md->parent, md->disk);
^~~~~~~~~~~~~~~
drivers/mmc/core/block.c:2062:27: warning: passing argument 1 of 'device_create_file' makes pointer from integer without a cast [-Wint-conversion]
ret = device_create_file(disk_to_dev(md->disk), &md->force_ro);
^~~~~~~~~~~
In file included from include/linux/pm_runtime.h:12:0,
from drivers/mmc/core/block.c:37:
include/linux/device.h:600:12: note: expected 'struct device *' but argument is of type 'int'
extern int device_create_file(struct device *device,
^~~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c:2081:28: warning: passing argument 1 of 'device_create_file' makes pointer from integer without a cast [-Wint-conversion]
ret = device_create_file(disk_to_dev(md->disk),
^~~~~~~~~~~
In file included from include/linux/pm_runtime.h:12:0,
from drivers/mmc/core/block.c:37:
include/linux/device.h:600:12: note: expected 'struct device *' but argument is of type 'int'
extern int device_create_file(struct device *device,
^~~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c:2089:21: warning: passing argument 1 of 'device_remove_file' makes pointer from integer without a cast [-Wint-conversion]
device_remove_file(disk_to_dev(md->disk), &md->force_ro);
^~~~~~~~~~~
In file included from include/linux/pm_runtime.h:12:0,
from drivers/mmc/core/block.c:37:
include/linux/device.h:602:13: note: expected 'struct device *' but argument is of type 'int'
extern void device_remove_file(struct device *dev,
^~~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_blk_init':
drivers/mmc/core/block.c:2310:8: error: implicit declaration of function 'register_blkdev' [-Werror=implicit-function-declaration]
res = register_blkdev(MMC_BLOCK_MAJOR, "mmc");
^~~~~~~~~~~~~~~
drivers/mmc/core/block.c:2310:24: error: 'MMC_BLOCK_MAJOR' undeclared (first use in this function)
res = register_blkdev(MMC_BLOCK_MAJOR, "mmc");
^~~~~~~~~~~~~~~
drivers/mmc/core/block.c:2320:2: error: implicit declaration of function 'unregister_blkdev' [-Werror=implicit-function-declaration]
unregister_blkdev(MMC_BLOCK_MAJOR, "mmc");
^~~~~~~~~~~~~~~~~
drivers/mmc/core/block.c: In function 'mmc_blk_exit':
drivers/mmc/core/block.c:2328:20: error: 'MMC_BLOCK_MAJOR' undeclared (first use in this function)
unregister_blkdev(MMC_BLOCK_MAJOR, "mmc");
^~~~~~~~~~~~~~~
drivers/mmc/core/block.c: At top level:
>> drivers/mmc/core/block.c:717:45: error: storage size of 'mmc_bdops' isn't known
static const struct block_device_operations mmc_bdops = {
^~~~~~~~~
In file included from drivers/mmc/core/block.c:48:0:
drivers/mmc/core/queue.h: In function 'mmc_req_is_special':
drivers/mmc/core/queue.h:10:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
cc1: some warnings being treated as errors
..
vim +137 drivers/mmc/core/block.c
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 121 };
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 122
a621aaed drivers/mmc/mmc_block.c Arjan van de Ven 2006-01-12 123 static DEFINE_MUTEX(open_lock);
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 124
5e71b7a6 drivers/mmc/card/block.c Olof Johansson 2010-09-17 125 module_param(perdev_minors, int, 0444);
5e71b7a6 drivers/mmc/card/block.c Olof Johansson 2010-09-17 126 MODULE_PARM_DESC(perdev_minors, "Minors numbers to allocate per device");
5e71b7a6 drivers/mmc/card/block.c Olof Johansson 2010-09-17 127
8d1e977d drivers/mmc/card/block.c Loic Pallardy 2012-08-06 128 static inline int mmc_blk_part_switch(struct mmc_card *card,
8d1e977d drivers/mmc/card/block.c Loic Pallardy 2012-08-06 129 struct mmc_blk_data *md);
8d1e977d drivers/mmc/card/block.c Loic Pallardy 2012-08-06 130 static int get_card_status(struct mmc_card *card, u32 *status, int retries);
8d1e977d drivers/mmc/card/block.c Loic Pallardy 2012-08-06 131
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 132 static struct mmc_blk_data *mmc_blk_get(struct gendisk *disk)
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 133 {
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 134 struct mmc_blk_data *md;
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 135
a621aaed drivers/mmc/mmc_block.c Arjan van de Ven 2006-01-12 136 mutex_lock(&open_lock);
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 @137 md = disk->private_data;
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 138 if (md && md->usage == 0)
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 139 md = NULL;
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 140 if (md)
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 141 md->usage++;
a621aaed drivers/mmc/mmc_block.c Arjan van de Ven 2006-01-12 142 mutex_unlock(&open_lock);
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 143
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 144 return md;
^1da177e drivers/mmc/mmc_block.c Linus Torvalds 2005-04-16 145 }
:::::: The code at line 137 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2
:::::: TO: Linus Torvalds <torvalds@ppc970.osdl.org>
:::::: CC: Linus Torvalds <torvalds@ppc970.osdl.org>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 23601 bytes --]
prev parent reply other threads:[~2017-02-15 12:19 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-15 9:53 [PATCH] mmc: core: make block layer non-optional Linus Walleij
2017-02-15 10:00 ` Johannes Thumshirn
2017-02-15 10:13 ` Arnd Bergmann
2017-02-15 12:03 ` kbuild test robot
2017-02-15 12:19 ` kbuild test robot [this message]
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=201702152014.pxIi5Oze%fengguang.wu@intel.com \
--to=lkp@intel.com \
--cc=adrian.hunter@intel.com \
--cc=arnd@arndb.de \
--cc=axboe@kernel.dk \
--cc=hch@lst.de \
--cc=kbuild-all@01.org \
--cc=linus.walleij@linaro.org \
--cc=linux-block@vger.kernel.org \
--cc=linux-mmc@vger.kernel.org \
--cc=paolo.valente@linaro.org \
--cc=ulf.hansson@linaro.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox