lkml.org 
[lkml]   [2018]   [Mar]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 1/1] hugetlbfs: fix bug in pgoff overflow checking
    Hi Mike,

    Thank you for the patch! Perhaps something to improve:

    [auto build test WARNING on linus/master]
    [also build test WARNING on v4.16-rc7 next-20180329]
    [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/Mike-Kravetz/hugetlbfs-fix-bug-in-pgoff-overflow-checking/20180329-231724
    config: i386-randconfig-x000-201812 (attached as .config)
    compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
    reproduce:
    # save the attached .config to linux build tree
    make ARCH=i386

    All warnings (new ones prefixed by >>):

    fs/hugetlbfs/inode.c: In function 'hugetlbfs_file_mmap':
    >> fs/hugetlbfs/inode.c:119:35: warning: left shift count >= width of type [-Wshift-count-overflow]
    (((1UL << (PAGE_SHIFT + 1)) - 1) << \
    ^
    fs/hugetlbfs/inode.c:144:38: note: in expansion of macro 'PGOFF_LOFFT_MAX'
    if ((loff_t)vma->vm_pgoff & (loff_t)PGOFF_LOFFT_MAX)
    ^~~~~~~~~~~~~~~

    vim +119 fs/hugetlbfs/inode.c

    110
    111 /*
    112 * Mask used when checking the page offset value passed in via system
    113 * calls. This value will be converted to a loff_t which is signed.
    114 * Therefore, we want to check the upper PAGE_SHIFT + 1 bits of the
    115 * value. The extra bit (- 1 in the shift value) is to take the sign
    116 * bit into account.
    117 */
    118 #define PGOFF_LOFFT_MAX \
    > 119 (((1UL << (PAGE_SHIFT + 1)) - 1) << \
    120 ((sizeof(loff_t) * BITS_PER_BYTE) - (PAGE_SHIFT + 1)))
    121

    ---
    0-DAY kernel test infrastructure Open Source Technology Center
    https://lists.01.org/pipermail/kbuild-all Intel Corporation
    [unhandled content-type:application/gzip]
    \
     
     \ /
      Last update: 2018-03-29 18:01    [W:3.111 / U:0.668 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site