Hi Christian, [auto build test WARNING on drm/drm-next] [also build test WARNING on v4.12 next-20170713] [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/Christian-K-nig/drm-ttm-add-support-for-different-pool-sizes/20170714-075329 base: git://people.freedesktop.org/~airlied/linux.git drm-next config: i386-randconfig-x013-201728 (attached as .config) compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 reproduce: # save the attached .config to linux build tree make ARCH=i386 All warnings (new ones prefixed by >>): drivers/gpu//drm/ttm/ttm_page_alloc_dma.c: In function 'ttm_dma_pool_init': >> drivers/gpu//drm/ttm/ttm_page_alloc_dma.c:636:5: warning: "CONFIG_TRANSPARENT_HUGEPAGE" is not defined [-Wundef] #if CONFIG_TRANSPARENT_HUGEPAGE ^~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu//drm/ttm/ttm_page_alloc_dma.c: In function 'ttm_dma_populate': drivers/gpu//drm/ttm/ttm_page_alloc_dma.c:943:5: warning: "CONFIG_TRANSPARENT_HUGEPAGE" is not defined [-Wundef] #if CONFIG_TRANSPARENT_HUGEPAGE ^~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu//drm/ttm/ttm_page_alloc_dma.c: In function 'ttm_dma_unpopulate': drivers/gpu//drm/ttm/ttm_page_alloc_dma.c:1036:5: warning: "CONFIG_TRANSPARENT_HUGEPAGE" is not defined [-Wundef] #if CONFIG_TRANSPARENT_HUGEPAGE ^~~~~~~~~~~~~~~~~~~~~~~~~~~ vim +/CONFIG_TRANSPARENT_HUGEPAGE +636 drivers/gpu//drm/ttm/ttm_page_alloc_dma.c 593 594 static struct dma_pool *ttm_dma_pool_init(struct device *dev, gfp_t flags, 595 enum pool_type type) 596 { 597 const char *n[] = {"wc", "uc", "cached", " dma32", "huge"}; 598 enum pool_type t[] = {IS_WC, IS_UC, IS_CACHED, IS_DMA32, IS_HUGE}; 599 struct device_pools *sec_pool = NULL; 600 struct dma_pool *pool = NULL, **ptr; 601 unsigned i; 602 int ret = -ENODEV; 603 char *p; 604 605 if (!dev) 606 return NULL; 607 608 ptr = devres_alloc(ttm_dma_pool_release, sizeof(*ptr), GFP_KERNEL); 609 if (!ptr) 610 return NULL; 611 612 ret = -ENOMEM; 613 614 pool = kmalloc_node(sizeof(struct dma_pool), GFP_KERNEL, 615 dev_to_node(dev)); 616 if (!pool) 617 goto err_mem; 618 619 sec_pool = kmalloc_node(sizeof(struct device_pools), GFP_KERNEL, 620 dev_to_node(dev)); 621 if (!sec_pool) 622 goto err_mem; 623 624 INIT_LIST_HEAD(&sec_pool->pools); 625 sec_pool->dev = dev; 626 sec_pool->pool = pool; 627 628 INIT_LIST_HEAD(&pool->free_list); 629 INIT_LIST_HEAD(&pool->pools); 630 spin_lock_init(&pool->lock); 631 pool->dev = dev; 632 pool->npages_free = pool->npages_in_use = 0; 633 pool->nfrees = 0; 634 pool->gfp_flags = flags; 635 if (type & IS_HUGE) > 636 #if CONFIG_TRANSPARENT_HUGEPAGE 637 pool->size = HPAGE_PMD_SIZE; 638 #else 639 BUG(); 640 #endif 641 else 642 pool->size = PAGE_SIZE; 643 pool->type = type; 644 pool->nrefills = 0; 645 p = pool->name; 646 for (i = 0; i < ARRAY_SIZE(t); i++) { 647 if (type & t[i]) { 648 p += snprintf(p, sizeof(pool->name) - (p - pool->name), 649 "%s", n[i]); 650 } 651 } 652 *p = 0; 653 /* We copy the name for pr_ calls b/c when dma_pool_destroy is called 654 * - the kobj->name has already been deallocated.*/ 655 snprintf(pool->dev_name, sizeof(pool->dev_name), "%s %s", 656 dev_driver_string(dev), dev_name(dev)); 657 mutex_lock(&_manager->lock); 658 /* You can get the dma_pool from either the global: */ 659 list_add(&sec_pool->pools, &_manager->pools); 660 _manager->npools++; 661 /* or from 'struct device': */ 662 list_add(&pool->pools, &dev->dma_pools); 663 mutex_unlock(&_manager->lock); 664 665 *ptr = pool; 666 devres_add(dev, ptr); 667 668 return pool; 669 err_mem: 670 devres_free(ptr); 671 kfree(sec_pool); 672 kfree(pool); 673 return ERR_PTR(ret); 674 } 675 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel