Use __get_free_page to allocate memory, and add memory deallocation in
release method (yes, there was leak).