lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202012012300.zpCk0eke-lkp@intel.com>
Date:   Tue, 1 Dec 2020 23:25:59 +0800
From:   kernel test robot <lkp@...el.com>
To:     Mauro Carvalho Chehab <mchehab@...nel.org>,
        Linux Doc Mailing List <linux-doc@...r.kernel.org>,
        Jonathan Corbet <corbet@....net>
Cc:     kbuild-all@...ts.01.org, linux-media@...r.kernel.org,
        Mauro Carvalho Chehab <mchehab@...nel.org>,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH v5 16/16] scripts: kernel-doc: validate kernel-doc markup
 with the actual names

Hi Mauro,

I love your patch! Perhaps something to improve:

[auto build test WARNING on next-20201201]
[cannot apply to lwn/docs-next tip/sched/core hsi/for-next linus/master v5.10-rc6 v5.10-rc5 v5.10-rc4 v5.10-rc6]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Mauro-Carvalho-Chehab/HSI-fix-a-kernel-doc-markup/20201201-210930
base:    0eedceafd3a63fd082743c914853ef4b9247dbe6
config: x86_64-randconfig-s021-20201201 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.3-170-g3bc348f6-dirty
        # https://github.com/0day-ci/linux/commit/7c52ba119279c74e6c7e968e3fa7290bd0f3b837
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Mauro-Carvalho-Chehab/HSI-fix-a-kernel-doc-markup/20201201-210930
        git checkout 7c52ba119279c74e6c7e968e3fa7290bd0f3b837
        # save the attached .config to linux build tree
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>

All warnings (new ones prefixed by >>):

>> mm/vmscan.c:1614: warning: wrong kernel-doc identifier on line:
    * Isolating page from the lruvec to fill in @dst list by nr_to_scan times.
--
>> drivers/hv/vmbus_drv.c:1536: warning: expecting prototype for __vmbus_child_driver_register(). Prototype was for __vmbus_driver_register() instead
--
   drivers/rtc/class.c:326: warning: Function parameter or member 'data' not described in 'devm_rtc_unregister_device'
>> drivers/rtc/class.c:326: warning: expecting prototype for rtc_device_unregister(). Prototype was for devm_rtc_unregister_device() instead

vim +1614 mm/vmscan.c

b4536f0c829c85 Michal Hocko            2017-01-10  1612  
f4b7e272b5c042 Andrey Ryabinin         2019-03-05  1613  /**
f46cdc387708fb Hugh Dickins            2020-11-24 @1614   * Isolating page from the lruvec to fill in @dst list by nr_to_scan times.
f46cdc387708fb Hugh Dickins            2020-11-24  1615   *
f46cdc387708fb Hugh Dickins            2020-11-24  1616   * lruvec->lru_lock is heavily contended.  Some of the functions that
^1da177e4c3f41 Linus Torvalds          2005-04-16  1617   * shrink the lists perform better by taking out a batch of pages
^1da177e4c3f41 Linus Torvalds          2005-04-16  1618   * and working on them outside the LRU lock.
^1da177e4c3f41 Linus Torvalds          2005-04-16  1619   *
^1da177e4c3f41 Linus Torvalds          2005-04-16  1620   * For pagecache intensive workloads, this function is the hottest
^1da177e4c3f41 Linus Torvalds          2005-04-16  1621   * spot in the kernel (apart from copy_*_user functions).
^1da177e4c3f41 Linus Torvalds          2005-04-16  1622   *
f46cdc387708fb Hugh Dickins            2020-11-24  1623   * Lru_lock must be held before calling this function.
^1da177e4c3f41 Linus Torvalds          2005-04-16  1624   *
791b48b642324c Minchan Kim             2017-05-12  1625   * @nr_to_scan:	The number of eligible pages to look through on the list.
5dc35979e444b5 Konstantin Khlebnikov   2012-05-29  1626   * @lruvec:	The LRU vector to pull pages from.
^1da177e4c3f41 Linus Torvalds          2005-04-16  1627   * @dst:	The temp list to put pages on to.
f626012db08b9e Hugh Dickins            2012-01-12  1628   * @nr_scanned:	The number of pages that were scanned.
fe2c2a10666313 Rik van Riel            2012-03-21  1629   * @sc:		The scan_control struct for this reclaim session
3cb9945179bd04 Konstantin Khlebnikov   2012-05-29  1630   * @lru:	LRU list id for isolating
^1da177e4c3f41 Linus Torvalds          2005-04-16  1631   *
^1da177e4c3f41 Linus Torvalds          2005-04-16  1632   * returns how many pages were moved onto *@....
^1da177e4c3f41 Linus Torvalds          2005-04-16  1633   */
69e05944af39fc Andrew Morton           2006-03-22  1634  static unsigned long isolate_lru_pages(unsigned long nr_to_scan,
5dc35979e444b5 Konstantin Khlebnikov   2012-05-29  1635  		struct lruvec *lruvec, struct list_head *dst,
fe2c2a10666313 Rik van Riel            2012-03-21  1636  		unsigned long *nr_scanned, struct scan_control *sc,
a9e7c39fa9fd90 Kirill Tkhai            2019-03-05  1637  		enum lru_list lru)
^1da177e4c3f41 Linus Torvalds          2005-04-16  1638  {
75b00af77ed5b5 Hugh Dickins            2012-05-29  1639  	struct list_head *src = &lruvec->lists[lru];
69e05944af39fc Andrew Morton           2006-03-22  1640  	unsigned long nr_taken = 0;
599d0c954f91d0 Mel Gorman              2016-07-28  1641  	unsigned long nr_zone_taken[MAX_NR_ZONES] = { 0 };
7cc30fcfd2a894 Mel Gorman              2016-07-28  1642  	unsigned long nr_skipped[MAX_NR_ZONES] = { 0, };
3db65812d68883 Johannes Weiner         2017-05-03  1643  	unsigned long skipped = 0;
791b48b642324c Minchan Kim             2017-05-12  1644  	unsigned long scan, total_scan, nr_pages;
b2e18757f2c9d1 Mel Gorman              2016-07-28  1645  	LIST_HEAD(pages_skipped);
a9e7c39fa9fd90 Kirill Tkhai            2019-03-05  1646  	isolate_mode_t mode = (sc->may_unmap ? 0 : ISOLATE_UNMAPPED);
^1da177e4c3f41 Linus Torvalds          2005-04-16  1647  
98879b3b9edc16 Yang Shi                2019-07-11  1648  	total_scan = 0;
791b48b642324c Minchan Kim             2017-05-12  1649  	scan = 0;
98879b3b9edc16 Yang Shi                2019-07-11  1650  	while (scan < nr_to_scan && !list_empty(src)) {
5ad333eb66ff1e Andy Whitcroft          2007-07-17  1651  		struct page *page;
5ad333eb66ff1e Andy Whitcroft          2007-07-17  1652  
^1da177e4c3f41 Linus Torvalds          2005-04-16  1653  		page = lru_to_page(src);
^1da177e4c3f41 Linus Torvalds          2005-04-16  1654  		prefetchw_prev_lru_page(page, src, flags);
^1da177e4c3f41 Linus Torvalds          2005-04-16  1655  
d8c6546b1aea84 Matthew Wilcox (Oracle  2019-09-23  1656) 		nr_pages = compound_nr(page);
98879b3b9edc16 Yang Shi                2019-07-11  1657  		total_scan += nr_pages;
98879b3b9edc16 Yang Shi                2019-07-11  1658  
b2e18757f2c9d1 Mel Gorman              2016-07-28  1659  		if (page_zonenum(page) > sc->reclaim_idx) {
b2e18757f2c9d1 Mel Gorman              2016-07-28  1660  			list_move(&page->lru, &pages_skipped);
98879b3b9edc16 Yang Shi                2019-07-11  1661  			nr_skipped[page_zonenum(page)] += nr_pages;
b2e18757f2c9d1 Mel Gorman              2016-07-28  1662  			continue;
b2e18757f2c9d1 Mel Gorman              2016-07-28  1663  		}
b2e18757f2c9d1 Mel Gorman              2016-07-28  1664  
791b48b642324c Minchan Kim             2017-05-12  1665  		/*
791b48b642324c Minchan Kim             2017-05-12  1666  		 * Do not count skipped pages because that makes the function
791b48b642324c Minchan Kim             2017-05-12  1667  		 * return with no isolated pages if the LRU mostly contains
791b48b642324c Minchan Kim             2017-05-12  1668  		 * ineligible pages.  This causes the VM to not reclaim any
791b48b642324c Minchan Kim             2017-05-12  1669  		 * pages, triggering a premature OOM.
98879b3b9edc16 Yang Shi                2019-07-11  1670  		 *
98879b3b9edc16 Yang Shi                2019-07-11  1671  		 * Account all tail pages of THP.  This would not cause
98879b3b9edc16 Yang Shi                2019-07-11  1672  		 * premature OOM since __isolate_lru_page() returns -EBUSY
98879b3b9edc16 Yang Shi                2019-07-11  1673  		 * only when the page is being freed somewhere else.
791b48b642324c Minchan Kim             2017-05-12  1674  		 */
98879b3b9edc16 Yang Shi                2019-07-11  1675  		scan += nr_pages;
0499e1a60797d4 Alex Shi                2020-11-24  1676  		if (!__isolate_lru_page_prepare(page, mode)) {
0499e1a60797d4 Alex Shi                2020-11-24  1677  			/* It is being freed elsewhere */
0499e1a60797d4 Alex Shi                2020-11-24  1678  			list_move(&page->lru, src);
0499e1a60797d4 Alex Shi                2020-11-24  1679  			continue;
0499e1a60797d4 Alex Shi                2020-11-24  1680  		}
ce8d4ae1c160d4 Alex Shi                2020-11-24  1681  		/*
ce8d4ae1c160d4 Alex Shi                2020-11-24  1682  		 * Be careful not to clear PageLRU until after we're
ce8d4ae1c160d4 Alex Shi                2020-11-24  1683  		 * sure the page is not being freed elsewhere -- the
ce8d4ae1c160d4 Alex Shi                2020-11-24  1684  		 * page release code relies on it.
ce8d4ae1c160d4 Alex Shi                2020-11-24  1685  		 */
0499e1a60797d4 Alex Shi                2020-11-24  1686  		if (unlikely(!get_page_unless_zero(page))) {
0499e1a60797d4 Alex Shi                2020-11-24  1687  			list_move(&page->lru, src);
0499e1a60797d4 Alex Shi                2020-11-24  1688  			continue;
0499e1a60797d4 Alex Shi                2020-11-24  1689  		}
ce8d4ae1c160d4 Alex Shi                2020-11-24  1690  
ce8d4ae1c160d4 Alex Shi                2020-11-24  1691  		if (!TestClearPageLRU(page)) {
0499e1a60797d4 Alex Shi                2020-11-24  1692  			/* Another thread is already isolating this page */
ce8d4ae1c160d4 Alex Shi                2020-11-24  1693  			put_page(page);
0499e1a60797d4 Alex Shi                2020-11-24  1694  			list_move(&page->lru, src);
0499e1a60797d4 Alex Shi                2020-11-24  1695  			continue;
ce8d4ae1c160d4 Alex Shi                2020-11-24  1696  		}
ce8d4ae1c160d4 Alex Shi                2020-11-24  1697  
599d0c954f91d0 Mel Gorman              2016-07-28  1698  		nr_taken += nr_pages;
599d0c954f91d0 Mel Gorman              2016-07-28  1699  		nr_zone_taken[page_zonenum(page)] += nr_pages;
5ad333eb66ff1e Andy Whitcroft          2007-07-17  1700  		list_move(&page->lru, dst);
^1da177e4c3f41 Linus Torvalds          2005-04-16  1701  	}
^1da177e4c3f41 Linus Torvalds          2005-04-16  1702  
b2e18757f2c9d1 Mel Gorman              2016-07-28  1703  	/*
b2e18757f2c9d1 Mel Gorman              2016-07-28  1704  	 * Splice any skipped pages to the start of the LRU list. Note that
b2e18757f2c9d1 Mel Gorman              2016-07-28  1705  	 * this disrupts the LRU order when reclaiming for lower zones but
b2e18757f2c9d1 Mel Gorman              2016-07-28  1706  	 * we cannot splice to the tail. If we did then the SWAP_CLUSTER_MAX
b2e18757f2c9d1 Mel Gorman              2016-07-28  1707  	 * scanning would soon rescan the same pages to skip and put the
b2e18757f2c9d1 Mel Gorman              2016-07-28  1708  	 * system at risk of premature OOM.
b2e18757f2c9d1 Mel Gorman              2016-07-28  1709  	 */
7cc30fcfd2a894 Mel Gorman              2016-07-28  1710  	if (!list_empty(&pages_skipped)) {
7cc30fcfd2a894 Mel Gorman              2016-07-28  1711  		int zid;
7cc30fcfd2a894 Mel Gorman              2016-07-28  1712  
3db65812d68883 Johannes Weiner         2017-05-03  1713  		list_splice(&pages_skipped, src);
7cc30fcfd2a894 Mel Gorman              2016-07-28  1714  		for (zid = 0; zid < MAX_NR_ZONES; zid++) {
7cc30fcfd2a894 Mel Gorman              2016-07-28  1715  			if (!nr_skipped[zid])
7cc30fcfd2a894 Mel Gorman              2016-07-28  1716  				continue;
7cc30fcfd2a894 Mel Gorman              2016-07-28  1717  
7cc30fcfd2a894 Mel Gorman              2016-07-28  1718  			__count_zid_vm_events(PGSCAN_SKIP, zid, nr_skipped[zid]);
1265e3a69f1ea9 Michal Hocko            2017-02-22  1719  			skipped += nr_skipped[zid];
7cc30fcfd2a894 Mel Gorman              2016-07-28  1720  		}
7cc30fcfd2a894 Mel Gorman              2016-07-28  1721  	}
791b48b642324c Minchan Kim             2017-05-12  1722  	*nr_scanned = total_scan;
1265e3a69f1ea9 Michal Hocko            2017-02-22  1723  	trace_mm_vmscan_lru_isolate(sc->reclaim_idx, sc->order, nr_to_scan,
791b48b642324c Minchan Kim             2017-05-12  1724  				    total_scan, skipped, nr_taken, mode, lru);
b4536f0c829c85 Michal Hocko            2017-01-10  1725  	update_lru_sizes(lruvec, lru, nr_zone_taken);
^1da177e4c3f41 Linus Torvalds          2005-04-16  1726  	return nr_taken;
^1da177e4c3f41 Linus Torvalds          2005-04-16  1727  }
^1da177e4c3f41 Linus Torvalds          2005-04-16  1728  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

Download attachment ".config.gz" of type "application/gzip" (33834 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ