From: kernel test robot <lkp@intel.com>
To: cros-kernel-buildreports@googlegroups.com
Cc: oe-kbuild-all@lists.linux.dev
Subject: [android-common:mirror-chromeos-5.10-arcvm 0/4] drivers/base/core.c:1542:5: warning: no previous prototype for 'fw_devlink_relax_cycle'
Date: Sat, 20 Dec 2025 01:35:07 +0800 [thread overview]
Message-ID: <202512200141.NaSBtNtx-lkp@intel.com> (raw)
Hi Saravana,
FYI, the error/warning still remains.
tree: https://android.googlesource.com/kernel/common mirror-chromeos-5.10-arcvm
head: 500d05631d89314552da084e17819640507698bf
commit: 1df699c140a778ed678d7d4b2fa8ffb2c62573e1 [0/4] UPSTREAM: driver core: Handle cycles in device links created by fw_devlink
config: i386-allmodconfig (https://download.01.org/0day-ci/archive/20251220/202512200141.NaSBtNtx-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251220/202512200141.NaSBtNtx-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/202512200141.NaSBtNtx-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/base/core.c:1542:5: warning: no previous prototype for 'fw_devlink_relax_cycle' [-Wmissing-prototypes]
1542 | int fw_devlink_relax_cycle(struct device *con, void *sup)
| ^~~~~~~~~~~~~~~~~~~~~~
vim +/fw_devlink_relax_cycle +1542 drivers/base/core.c
1527
1528 /**
1529 * fw_devlink_relax_cycle - Convert cyclic links to SYNC_STATE_ONLY links
1530 * @con: Device to check dependencies for.
1531 * @sup: Device to check against.
1532 *
1533 * Check if @sup depends on @con or any device dependent on it (its child or
1534 * its consumer etc). When such a cyclic dependency is found, convert all
1535 * device links created solely by fw_devlink into SYNC_STATE_ONLY device links.
1536 * This is the equivalent of doing fw_devlink=permissive just between the
1537 * devices in the cycle. We need to do this because, at this point, fw_devlink
1538 * can't tell which of these dependencies is not a real dependency.
1539 *
1540 * Return 1 if a cycle is found. Otherwise, return 0.
1541 */
> 1542 int fw_devlink_relax_cycle(struct device *con, void *sup)
1543 {
1544 struct device_link *link;
1545 int ret;
1546
1547 if (con == sup)
1548 return 1;
1549
1550 ret = device_for_each_child(con, sup, fw_devlink_relax_cycle);
1551 if (ret)
1552 return ret;
1553
1554 list_for_each_entry(link, &con->links.consumers, s_node) {
1555 if ((link->flags & ~DL_FLAG_INFERRED) ==
1556 (DL_FLAG_SYNC_STATE_ONLY | DL_FLAG_MANAGED))
1557 continue;
1558
1559 if (!fw_devlink_relax_cycle(link->consumer, sup))
1560 continue;
1561
1562 ret = 1;
1563
1564 if (!(link->flags & DL_FLAG_INFERRED))
1565 continue;
1566
1567 pm_runtime_drop_link(link);
1568 link->flags = DL_FLAG_MANAGED | FW_DEVLINK_FLAGS_PERMISSIVE;
1569 dev_dbg(link->consumer, "Relaxing link with %s\n",
1570 dev_name(link->supplier));
1571 }
1572 return ret;
1573 }
1574
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2025-12-19 17:36 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=202512200141.NaSBtNtx-lkp@intel.com \
--to=lkp@intel.com \
--cc=cros-kernel-buildreports@googlegroups.com \
--cc=oe-kbuild-all@lists.linux.dev \
/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.