[openib-general] Re: [kDAPL]questions about the LMR creation of different types of memory
James Lentini
jlentini at netapp.com
Thu Dec 8 08:05:48 PST 2005
ian> Hi James,
ian> As is known to all, there several memory types uesed for memory
ian> register in kDAPL. I have some questions about the types
ian> DAT_MEM_TYPE_PHYSICAL and DAT_MEM_TYPE_IA:
ian> 1) Could memory allocated by kmem_cache_create() be OK?
ian> AFAIK, memory allocated by kmalloc() is OK and that by vmalloc()
ian> is not.
Correct, assuming you pass kmalloc the GFP_DMA flag.
ian> What about that allocated by kmem_cache_create()? Is it
ian> OK in the condition that the SLAB_CACHE_DMA flag is used?
Yes.
ian> 2) What is the difference between DAT_MEM_TYPE_PHYSICAL and
ian> DAT_MEM_TYPE_IA when a continuous range of physical memory is to
ian> be registered?
ian> In my opinion, the continuous range should be tranlated into a
ian> serious of page addresses before registered as the
ian> DAT_MEM_TYPE_PHYSICAL type,
correct
ian> and it's not necessary for the DAT_MEM_TYPE_IA type. Is the
ian> translation is done in the dat_lmr_kcreate() for the
ian> DAT_MEM_TYPE_IA type?
No translation is done in dat_lmr_kcreate for DAT_MEM_TYPE_IA. A
DAT_MEM_TYPE_IA address is supposed to be an I/O address that the
adapter can use.
More information about the general
mailing list