On 03/02/2017 12:06, Cao, Lei wrote: > +struct page *kvm_gfn_ring_get_page(struct kvm_gfn_ring *ring, u32 i) > +{ > + return vmalloc_to_page((void *)ring->dirty_list+i*PAGE_SIZE); > + > +} Oops, you need range checking here. Otherwise you have a gaping kernel memory leak! :) Paolo