Re: [PATCH uprobe, thp 2/4] uprobe: use original page when all uprobes are removed

From: Kirill A. Shutemov
Date: Thu May 30 2019 - 07:21:19 EST


On Wed, May 29, 2019 at 02:20:47PM -0700, Song Liu wrote:
> @@ -501,6 +512,20 @@ int uprobe_write_opcode(struct arch_uprobe *auprobe, struct mm_struct *mm,
> copy_highpage(new_page, old_page);
> copy_to_page(new_page, vaddr, &opcode, UPROBE_SWBP_INSN_SIZE);
>
> + index = vaddr_to_offset(vma, vaddr & PAGE_MASK) >> PAGE_SHIFT;
> + orig_page = find_get_page(vma->vm_file->f_inode->i_mapping, index);
> + if (orig_page) {
> + if (memcmp(page_address(orig_page),
> + page_address(new_page), PAGE_SIZE) == 0) {

Does it work for highmem?


--
Kirill A. Shutemov