On 05/21/15 at 04:40pm, Li, ZhenHua wrote: > Hi Baoquan, > During driver being loaded and initialized, when there is a new dma > request, the function > __get_valid_domain_for_dev > is called, and then new page is mapped. > > Please check this: > struct dma_map_ops intel_dma_ops = { > .alloc = intel_alloc_coherent, > .free = intel_free_coherent, > .map_sg = intel_map_sg, > .unmap_sg = intel_unmap_sg, > .map_page = intel_map_page, > .unmap_page = intel_unmap_page, > .mapping_error = intel_mapping_error, > }; > > You can also add dump_stack() in __get_valid_domain_for_dev to debug. Yeah, I saw that. At the beginning I am just wondering why you say a new page-table, and also mention it's a empty page-table. I think here that new page-table is an empty page-table when you said them. No confusion any more. Thanks for explanation. > > Thanks > Zhenhua > > On 05/21/2015 02:54 PM, Baoquan He wrote: > >On 05/21/15 at 09:27am, Li, ZhenHua wrote: > >>Hi Baoquan, > >> > >>In the early version of this patchset, old page tables are used by new > >>kernel. But as discussed, we need to make kernel use new pages when > >>there is a new dma request , so we need to unmap the pages which were > >>mapped in old kernel, and this is what this patch does. > > > >OK, just a new page table allocated in init_domain(), right? I thought a > >specific empty page-table is allocated for these new domains in kdump > >kernel. > > > >> > >>Thanks > >>Zhenhua > >> > >>On 05/21/2015 07:52 AM, Baoquan He wrote: > >>>On 05/11/15 at 05:52pm, Li, Zhen-Hua wrote: > >>>>When a device driver issues the first dma_map command for a device, we > >>>>assign a new and empty page-table, thus removing all mappings from the > >>>>old kernel for the device. > >>> > >>>Hi Zhenhua, > >>> > >>> From your patch I got it will remove all mappings, assign a new > >>>page-table. But I didn't got why you stress an empty page-table. Did I > >>>miss anything? > >>> > >>>Thanks > >>>Baoquan > >>> > >>>> > >>>>Signed-off-by: Li, Zhen-Hua <zhen-hual@xxxxxx> > >>>>-- -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html