On 2017/5/25 22:19, Michal Hocko wrote: > On Thu 25-05-17 21:48:56, zhong jiang wrote: >> Hi Michal >> >> by a testcase, The patch is work as I think. The testcase is as follows. >> >> int main(void) >> { >> char *map; >> int fd; >> >> fd = open("test", O_CREAT|O_RDWR); >> unlink("test"); >> ftruncate(fd, 4096); >> map = mmap(NULL, 4096, PROT_WRITE, MAP_PRIVATE, fd, 0); >> map[0] = 11; >> mlock(map, sizeof(fd)); > just a nit > you probably wanted mlock(map, 4096) > >> ftruncate(fd, 0); >> close(fd); >> munlock(map, sizeof(fd)); > similarly here > >> munmap(map, 4096); >> >> return 0; >> } >> >> before: >> unevictable_pgs_mlocked 10589 >> unevictable_pgs_munlocked 10588 >> unevictable_pgs_cleared 1 >> >> apply the patch; >> after: >> unevictable_pgs_mlocked 9497 >> unevictable_pgs_munlocked 9497 >> unevictable_pgs_cleared 1 > OK, this is definitely useful for the changelog. > >> unmap_mapping_range unmap them, page_remove_rmap will deal with >> clear_page_mlock situation. we clear page Mlock flag and successful >> isolate the page, the page will putback the evictable list. but it is not >> record the munlock event. > and this as well. I haven't checked that but it gives reviewers chance > to understand your thinking much better so it is definitely useful. > Mlock code is everything but straightforward. > HI, Michal I will add the above info the chanelog. and resent it in v2. Thanks zhongjiang -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>