An argument could be made to require that the ->kill() operation be set in the @pgmap arg rather than passed in separately. However, it helps code readability, tracking the lifetime of a given instance, to be able to grep the kill routine directly at the devm_memremap_pages() call site.
I generally do not like passing redundant argument, and I don't really see why this case is different. Or in other ways I'd like to make your above argument..
Except for that the patch looks good to me.