From: kernel test robot <lkp@intel.com>
To: Daniel Wagner <wagi@kernel.org>, Christoph Hellwig <hch@lst.de>,
Keith Busch <kbusch@kernel.org>, Jens Axboe <axboe@kernel.dk>,
Ming Lei <ming.lei@redhat.com>
Cc: oe-kbuild-all@lists.linux.dev,
Guangwu Zhang <guazhang@redhat.com>,
Chengming Zhou <zhouchengming@bytedance.com>,
Thomas Gleixner <tglx@kernel.org>,
linux-nvme@lists.infradead.org, linux-kernel@vger.kernel.org,
linux-block@vger.kernel.org, Daniel Wagner <wagi@kernel.org>
Subject: Re: [PATCH 1/3] nvme: failover requests for inactive hctx
Date: Fri, 27 Feb 2026 07:55:49 +0800 [thread overview]
Message-ID: <202602270720.cugNS3m1-lkp@intel.com> (raw)
In-Reply-To: <20260226-revert-cpu-read-lock-v1-1-eb005072566e@kernel.org>
Hi Daniel,
kernel test robot noticed the following build errors:
[auto build test ERROR on 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f]
url: https://github.com/intel-lab-lkp/linux/commits/Daniel-Wagner/nvme-failover-requests-for-inactive-hctx/20260226-224213
base: 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f
patch link: https://lore.kernel.org/r/20260226-revert-cpu-read-lock-v1-1-eb005072566e%40kernel.org
patch subject: [PATCH 1/3] nvme: failover requests for inactive hctx
config: x86_64-randconfig-r071-20260227 (https://download.01.org/0day-ci/archive/20260227/202602270720.cugNS3m1-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
smatch version: v0.5.0-8994-gd50c5a4c
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260227/202602270720.cugNS3m1-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/202602270720.cugNS3m1-lkp@intel.com/
All errors (new ones prefixed by >>):
>> drivers/nvme/host/core.c:457:13: error: redefinition of 'nvme_failover_req'
457 | static void nvme_failover_req(struct request *req)
| ^~~~~~~~~~~~~~~~~
In file included from drivers/nvme/host/core.c:27:
drivers/nvme/host/nvme.h:1020:20: note: previous definition of 'nvme_failover_req' with type 'void(struct request *)'
1020 | static inline void nvme_failover_req(struct request *req)
| ^~~~~~~~~~~~~~~~~
drivers/nvme/host/core.c: In function 'nvme_failover_req':
>> drivers/nvme/host/core.c:472:50: error: 'struct nvme_ctrl' has no member named 'ana_log_buf'
472 | if (nvme_is_ana_error(status) && ns->ctrl->ana_log_buf) {
| ^~
>> drivers/nvme/host/core.c:474:48: error: 'struct nvme_ctrl' has no member named 'ana_work'; did you mean 'ka_work'?
474 | queue_work(nvme_wq, &ns->ctrl->ana_work);
| ^~~~~~~~
| ka_work
In file included from include/linux/sched.h:37,
from include/linux/ratelimit.h:6,
from include/linux/dev_printk.h:16,
from include/linux/device.h:15,
from include/linux/async.h:14,
from drivers/nvme/host/core.c:7:
>> drivers/nvme/host/core.c:477:36: error: 'struct nvme_ns_head' has no member named 'requeue_lock'
477 | spin_lock_irqsave(&ns->head->requeue_lock, flags);
| ^~
include/linux/spinlock.h:244:48: note: in definition of macro 'raw_spin_lock_irqsave'
244 | flags = _raw_spin_lock_irqsave(lock); \
| ^~~~
drivers/nvme/host/core.c:477:9: note: in expansion of macro 'spin_lock_irqsave'
477 | spin_lock_irqsave(&ns->head->requeue_lock, flags);
| ^~~~~~~~~~~~~~~~~
>> drivers/nvme/host/core.c:494:33: error: 'struct nvme_ns_head' has no member named 'requeue_list'
494 | blk_steal_bios(&ns->head->requeue_list, req);
| ^~
drivers/nvme/host/core.c:495:41: error: 'struct nvme_ns_head' has no member named 'requeue_lock'
495 | spin_unlock_irqrestore(&ns->head->requeue_lock, flags);
| ^~
>> drivers/nvme/host/core.c:499:40: error: 'struct nvme_ns_head' has no member named 'requeue_work'
499 | kblockd_schedule_work(&ns->head->requeue_work);
| ^~
vim +/nvme_failover_req +457 drivers/nvme/host/core.c
456
> 457 static void nvme_failover_req(struct request *req)
458 {
459 struct nvme_ns *ns = req->q->queuedata;
460 u16 status = nvme_req(req)->status & NVME_SCT_SC_MASK;
461 unsigned long flags;
462 struct bio *bio;
463
464 if (nvme_ns_head_multipath(ns->head))
465 nvme_mpath_clear_current_path(ns);
466
467 /*
468 * If we got back an ANA error, we know the controller is alive but not
469 * ready to serve this namespace. Kick of a re-read of the ANA
470 * information page, and just try any other available path for now.
471 */
> 472 if (nvme_is_ana_error(status) && ns->ctrl->ana_log_buf) {
473 set_bit(NVME_NS_ANA_PENDING, &ns->flags);
> 474 queue_work(nvme_wq, &ns->ctrl->ana_work);
475 }
476
> 477 spin_lock_irqsave(&ns->head->requeue_lock, flags);
478 for (bio = req->bio; bio; bio = bio->bi_next) {
479 if (nvme_ns_head_multipath(ns->head))
480 bio_set_dev(bio, ns->head->disk->part0);
481 if (bio->bi_opf & REQ_POLLED) {
482 bio->bi_opf &= ~REQ_POLLED;
483 bio->bi_cookie = BLK_QC_T_NONE;
484 }
485 /*
486 * The alternate request queue that we may end up submitting
487 * the bio to may be frozen temporarily, in this case REQ_NOWAIT
488 * will fail the I/O immediately with EAGAIN to the issuer.
489 * We are not in the issuer context which cannot block. Clear
490 * the flag to avoid spurious EAGAIN I/O failures.
491 */
492 bio->bi_opf &= ~REQ_NOWAIT;
493 }
> 494 blk_steal_bios(&ns->head->requeue_list, req);
495 spin_unlock_irqrestore(&ns->head->requeue_lock, flags);
496
497 nvme_req(req)->status = 0;
498 nvme_end_req(req);
> 499 kblockd_schedule_work(&ns->head->requeue_work);
500 }
501
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2026-02-26 23:56 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-26 13:40 [PATCH 0/3] block: revert avoid acquiring cpu hotplug lock in group_cpus_evenly Daniel Wagner
2026-02-26 13:40 ` [PATCH 1/3] nvme: failover requests for inactive hctx Daniel Wagner
2026-02-26 19:09 ` kernel test robot
2026-02-26 23:55 ` kernel test robot [this message]
2026-02-26 13:40 ` [PATCH 2/3] blk-mq: add handshake for offlinig hw queues Daniel Wagner
2026-02-26 13:40 ` [PATCH 3/3] Revert "lib/group_cpus.c: avoid acquiring cpu hotplug lock in group_cpus_evenly" Daniel Wagner
2026-02-26 14:04 ` Ming Lei
2026-03-02 14:04 ` Daniel Wagner
2026-03-02 14:12 ` Ming Lei
2026-03-02 14:27 ` Daniel Wagner
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=202602270720.cugNS3m1-lkp@intel.com \
--to=lkp@intel.com \
--cc=axboe@kernel.dk \
--cc=guazhang@redhat.com \
--cc=hch@lst.de \
--cc=kbusch@kernel.org \
--cc=linux-block@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=ming.lei@redhat.com \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=tglx@kernel.org \
--cc=wagi@kernel.org \
--cc=zhouchengming@bytedance.com \
/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.