CC: [email protected]
TO: [email protected]

tree:   https://android.googlesource.com/kernel/common android-4.19
head:   a2038b4794fe99dd786877b89c98b84d78650f69
commit: dfc0e46bcf54404b2614e007efc6848c3727a537 [7/14] ANDROID: GKI: common: 
dma-mapping: make dma_common_contiguous_remap more robust
:::::: branch date: 12 months ago
:::::: commit date: 12 months ago
config: i386-randconfig-m021-20210430 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>
Reported-by: Dan Carpenter <[email protected]>

smatch warnings:
kernel/dma/mapping.c:298 dma_common_contiguous_remap() error: kvmalloc() only 
makes sense with GFP_KERNEL

vim +298 kernel/dma/mapping.c

513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  284  
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  285  /*
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  286   * 
remaps an allocated contiguous region into another vm_area.
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  287   * 
Cannot be used in non-sleeping contexts
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  288   */
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  289  
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  290  void 
*dma_common_contiguous_remap(struct page *page, size_t size,
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  291       
                unsigned long vm_flags,
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  292       
                pgprot_t prot, const void *caller)
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  293  {
dfc0e46bcf5440 kernel/dma/mapping.c       Liam Mark       2015-08-11  294       
unsigned long i;
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  295       
struct page **pages;
1a3389ffc538a3 drivers/base/dma-mapping.c Catalin Marinas 2017-05-25  296       
struct vm_struct *area;
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  297  
dfc0e46bcf5440 kernel/dma/mapping.c       Liam Mark       2015-08-11 @298       
pages = kvmalloc(sizeof(struct page *) << get_order(size), GFP_KERNEL);
dfc0e46bcf5440 kernel/dma/mapping.c       Liam Mark       2015-08-11  299  
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  300       
if (!pages)
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  301       
        return NULL;
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  302  
0dd89119614ba7 drivers/base/dma-mapping.c Geliang Tang    2017-03-24  303       
for (i = 0; i < (size >> PAGE_SHIFT); i++)
0dd89119614ba7 drivers/base/dma-mapping.c Geliang Tang    2017-03-24  304       
        pages[i] = nth_page(page, i);
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  305  
1a3389ffc538a3 drivers/base/dma-mapping.c Catalin Marinas 2017-05-25  306       
area = __dma_common_pages_remap(pages, size, vm_flags, prot, caller);
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  307  
dfc0e46bcf5440 kernel/dma/mapping.c       Liam Mark       2015-08-11  308       
kvfree(pages);
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  309  
1a3389ffc538a3 drivers/base/dma-mapping.c Catalin Marinas 2017-05-25  310       
if (!area)
1a3389ffc538a3 drivers/base/dma-mapping.c Catalin Marinas 2017-05-25  311       
        return NULL;
1a3389ffc538a3 drivers/base/dma-mapping.c Catalin Marinas 2017-05-25  312       
return area->addr;
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  313  }
513510ddba9650 drivers/base/dma-mapping.c Laura Abbott    2014-10-09  314  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]

Attachment: .config.gz
Description: application/gzip

_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to