On Wed, Jul 10, 2019 at 10:47:34AM -0300, Jason Gunthorpe wrote: > On Tue, Jul 09, 2019 at 01:55:28PM -0500, janani wrote: > > > > +int kvmppc_hmm_init(void) > > > +{ > > > + int ret = 0; > > > + unsigned long size; > > > + > > > + size = kvmppc_get_secmem_size(); > > > + if (!size) { > > > + ret = -ENODEV; > > > + goto out; > > > + } > > > + > > > + kvmppc_hmm.device = hmm_device_new(NULL); > > > + if (IS_ERR(kvmppc_hmm.device)) { > > > + ret = PTR_ERR(kvmppc_hmm.device); > > > + goto out; > > > + } > > > + > > > + kvmppc_hmm.devmem = hmm_devmem_add(&kvmppc_hmm_devmem_ops, > > > + &kvmppc_hmm.device->device, size); > > > + if (IS_ERR(kvmppc_hmm.devmem)) { > > > + ret = PTR_ERR(kvmppc_hmm.devmem); > > > + goto out_device; > > > + } > > This 'hmm_device' API family was recently deleted from hmm: Hmmm... I still find it in upstream, guess it will be removed soon? I find the below commit in mmotm. > > commit 07ec38917e68f0114b9c8aeeb1c584b5e73e4dd6 > Author: Christoph Hellwig <hch@xxxxxx> > Date: Wed Jun 26 14:27:01 2019 +0200 > > mm: remove the struct hmm_device infrastructure > > This code is a trivial wrapper around device model helpers, which > should have been integrated into the driver device model usage from > the start. Assuming it actually had users, which it never had since > the code was added more than 1 1/2 years ago. > > This patch should use the driver core directly instead. > > Regards, > Jason