Re: [PATCH v5 1/4] resource: Move reparent_resources() to kernel/resource.c and make it public

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Baoquan,

I love your patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v4.17 next-20180608]
[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/Baoquan-He/resource-Use-list_head-to-link-sibling-resource/20180612-113600
config: i386-tinyconfig (attached as .config)
compiler: gcc-7 (Debian 7.3.0-16) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

Note: the linux-review/Baoquan-He/resource-Use-list_head-to-link-sibling-resource/20180612-113600 HEAD 5545e79eef6387857faf41cdffa7be6b1f5d4efe builds fine.
      It only hurts bisectibility.

All errors (new ones prefixed by >>):

>> kernel/resource.c:990:12: error: static declaration of 'reparent_resources' follows non-static declaration
    static int reparent_resources(struct resource *parent,
               ^~~~~~~~~~~~~~~~~~
   In file included from kernel/resource.c:14:0:
   include/linux/ioport.h:195:5: note: previous declaration of 'reparent_resources' was here
    int reparent_resources(struct resource *parent, struct resource *res);
        ^~~~~~~~~~~~~~~~~~
   kernel/resource.c:990:12: warning: 'reparent_resources' defined but not used [-Wunused-function]
    static int reparent_resources(struct resource *parent,
               ^~~~~~~~~~~~~~~~~~

vim +/reparent_resources +990 kernel/resource.c

   985	
   986	/*
   987	 * Reparent resource children of pr that conflict with res
   988	 * under res, and make res replace those children.
   989	 */
 > 990	static int reparent_resources(struct resource *parent,
   991					     struct resource *res)
   992	{
   993		struct resource *p, **pp;
   994		struct resource **firstpp = NULL;
   995	
   996		for (pp = &parent->child; (p = *pp) != NULL; pp = &p->sibling) {
   997			if (p->end < res->start)
   998				continue;
   999			if (res->end < p->start)
  1000				break;
  1001			if (p->start < res->start || p->end > res->end)
  1002				return -1;	/* not completely contained */
  1003			if (firstpp == NULL)
  1004				firstpp = pp;
  1005		}
  1006		if (firstpp == NULL)
  1007			return -1;	/* didn't find any conflicting entries? */
  1008		res->parent = parent;
  1009		res->child = *firstpp;
  1010		res->sibling = *pp;
  1011		*firstpp = res;
  1012		*pp = NULL;
  1013		for (p = res->child; p != NULL; p = p->sibling) {
  1014			p->parent = res;
  1015			pr_debug("PCI: Reparented %s %pR under %s\n",
  1016				 p->name, p, res->name);
  1017		}
  1018		return 0;
  1019	}
  1020	EXPORT_SYMBOL(reparent_resources);
  1021	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux