Hi Noralf, I love your patch! Perhaps something to improve: [auto build test WARNING on linus/master] [also build test WARNING on v4.19-rc1 next-20180829] [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/Noralf-Tr-nnes/drm-Add-shmem-GEM-library/20180828-222625 reproduce: # apt-get install sparse make ARCH=x86_64 allmodconfig make C=1 CF=-D__CHECK_ENDIAN__ sparse warnings: (new ones prefixed by >>) >> drivers/gpu/drm/drm_gem_shmem_helper.c:347:31: sparse: expression using sizeof(void) >> drivers/gpu/drm/drm_gem_shmem_helper.c:347:31: sparse: expression using sizeof(void) drivers/gpu/drm/drm_gem_shmem_helper.c:349:30: sparse: expression using sizeof(void) drivers/gpu/drm/drm_gem_shmem_helper.c:349:30: sparse: expression using sizeof(void) include/linux/mm.h:592:13: sparse: undefined identifier '__builtin_mul_overflow' include/linux/mm.h:592:13: sparse: call with no type! vim +347 drivers/gpu/drm/drm_gem_shmem_helper.c b37139d4 Noralf Trønnes 2018-08-28 319 b37139d4 Noralf Trønnes 2018-08-28 320 /** b37139d4 Noralf Trønnes 2018-08-28 321 * drm_gem_shmem_dumb_create - Create a dumb shmem buffer object b37139d4 Noralf Trønnes 2018-08-28 322 * @file: DRM file structure to create the dumb buffer for b37139d4 Noralf Trønnes 2018-08-28 323 * @dev: DRM device b37139d4 Noralf Trønnes 2018-08-28 324 * @args: IOCTL data b37139d4 Noralf Trønnes 2018-08-28 325 * b37139d4 Noralf Trønnes 2018-08-28 326 * This function computes the pitch of the dumb buffer and rounds it up to an b37139d4 Noralf Trønnes 2018-08-28 327 * integer number of bytes per pixel. Drivers for hardware that doesn't have b37139d4 Noralf Trønnes 2018-08-28 328 * any additional restrictions on the pitch can directly use this function as b37139d4 Noralf Trønnes 2018-08-28 329 * their &drm_driver.dumb_create callback. b37139d4 Noralf Trønnes 2018-08-28 330 * b37139d4 Noralf Trønnes 2018-08-28 331 * For hardware with additional restrictions, drivers can adjust the fields b37139d4 Noralf Trønnes 2018-08-28 332 * set up by userspace before calling into this function. b37139d4 Noralf Trønnes 2018-08-28 333 * b37139d4 Noralf Trønnes 2018-08-28 334 * Returns: b37139d4 Noralf Trønnes 2018-08-28 335 * 0 on success or a negative error code on failure. b37139d4 Noralf Trønnes 2018-08-28 336 */ b37139d4 Noralf Trønnes 2018-08-28 337 int drm_gem_shmem_dumb_create(struct drm_file *file, struct drm_device *dev, b37139d4 Noralf Trønnes 2018-08-28 338 struct drm_mode_create_dumb *args) b37139d4 Noralf Trønnes 2018-08-28 339 { b37139d4 Noralf Trønnes 2018-08-28 340 struct drm_gem_shmem_object *shmem; b37139d4 Noralf Trønnes 2018-08-28 341 b37139d4 Noralf Trønnes 2018-08-28 342 if (!args->pitch || !args->size) { b37139d4 Noralf Trønnes 2018-08-28 343 args->pitch = DIV_ROUND_UP(args->width * args->bpp, 8); b37139d4 Noralf Trønnes 2018-08-28 344 args->size = args->pitch * args->height; b37139d4 Noralf Trønnes 2018-08-28 345 } else { b37139d4 Noralf Trønnes 2018-08-28 346 /* ensure sane minimum values */ b37139d4 Noralf Trønnes 2018-08-28 @347 args->pitch = max(args->pitch, b37139d4 Noralf Trønnes 2018-08-28 348 DIV_ROUND_UP(args->width * args->bpp, 8)); b37139d4 Noralf Trønnes 2018-08-28 349 args->size = max_t(typeof(args->size), args->size, b37139d4 Noralf Trønnes 2018-08-28 350 args->pitch * args->height); b37139d4 Noralf Trønnes 2018-08-28 351 } b37139d4 Noralf Trønnes 2018-08-28 352 b37139d4 Noralf Trønnes 2018-08-28 353 shmem = drm_gem_shmem_create_with_handle(file, dev, args->size, &args->handle); b37139d4 Noralf Trønnes 2018-08-28 354 b37139d4 Noralf Trønnes 2018-08-28 355 return PTR_ERR_OR_ZERO(shmem); b37139d4 Noralf Trønnes 2018-08-28 356 } b37139d4 Noralf Trønnes 2018-08-28 357 EXPORT_SYMBOL_GPL(drm_gem_shmem_dumb_create); b37139d4 Noralf Trønnes 2018-08-28 358 :::::: The code at line 347 was first introduced by commit :::::: b37139d441f27615aee2a9ef35bb450086d8cf78 drm: Add library for shmem backed GEM objects :::::: TO: Noralf Trønnes <noralf@xxxxxxxxxxx> :::::: CC: 0day robot <lkp@xxxxxxxxx> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel