diff --git a/mm/shmem.c b/mm/shmem.c index 8a41ab86152c52384dffbb942a4c8958fe96c644..54c5cc0610e6d5a749a373eb7b4eceac7625fe33 100644 --- a/mm/shmem.c +++ b/mm/shmem.c @@ -2661,7 +2661,14 @@ static ssize_t shmem_file_read_iter(struct kiocb *iocb, struct iov_iter *to) * Ok, we have the page, and it's up-to-date, so * now we can copy it to user space... */ +#ifdef CONFIG_UCE_KERNEL_RECOVERY + if (is_pagecache_reading_kernel_recovery_enable()) + ret = copy_page_to_iter_generic_read(page, offset, nr, to); + else + ret = copy_page_to_iter(page, offset, nr, to); +#else ret = copy_page_to_iter(page, offset, nr, to); +#endif retval += ret; offset += ret; index += offset >> PAGE_SHIFT;