From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [android-common:android12-5.10-lts 5161/13543] drivers/base/core.c:1542:5: warning: no previous prototype for 'fw_devlink_relax_cycle'
Date: Wed, 29 Sep 2021 06:05:16 +0800 [thread overview]
Message-ID: <202109290609.vqyBjp9G-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 3231 bytes --]
tree: https://android.googlesource.com/kernel/common android12-5.10-lts
head: 1b6d7b3a2162f55441d3d0774c41a4fc6378798f
commit: 1df699c140a778ed678d7d4b2fa8ffb2c62573e1 [5161/13543] UPSTREAM: driver core: Handle cycles in device links created by fw_devlink
config: arm-randconfig-r036-20210928 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 11.2.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 remote add android-common https://android.googlesource.com/kernel/common
git fetch --no-tags android-common android12-5.10-lts
git checkout 1df699c140a778ed678d7d4b2fa8ffb2c62573e1
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <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, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 33476 bytes --]
reply other threads:[~2021-09-28 22:05 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=202109290609.vqyBjp9G-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild-all@lists.01.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 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.