Hello Matthew Wilcox, The patch 87345c6b1aa8: "page cache: Convert filemap_range_has_page to XArray" from Jan 16, 2018, leads to the following static checker warning: mm/filemap.c:469 filemap_range_has_page() warn: continue to end of do { ... } while(0); loop mm/filemap.c 455 bool filemap_range_has_page(struct address_space *mapping, 456 loff_t start_byte, loff_t end_byte) 457 { 458 struct page *page; 459 XA_STATE(xas, &mapping->i_pages, start_byte >> PAGE_SHIFT); 460 pgoff_t max = end_byte >> PAGE_SHIFT; 461 462 if (end_byte < start_byte) 463 return false; 464 465 rcu_read_lock(); 466 do { 467 page = xas_find(&xas, max); 468 if (xas_retry(&xas, page)) 469 continue; ^^^^^^^^ 470 /* Shadow entries don't count */ 471 if (xa_is_value(page)) 472 continue; ^^^^^^^^ This is the same as a break because it's a while(0) loop. 473 /* 474 * We don't need to try to pin this page; we're about to 475 * release the RCU lock anyway. It is enough to know that 476 * there was a page here recently. 477 */ 478 } while (0); 479 rcu_read_unlock(); 480 481 return page != NULL; 482 } regards, dan carpenter