Message ID | 20240530034104.338561-1-lingshan.zhu@amd.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/ttm: increase ttm pre-fault value to PMD size | expand |
On Thu, May 30, 2024 at 11:41:04AM +0800, Zhu, Lingshan wrote: > ttm page fault handler ttm_bo_vm_fault_reserved() maps > TTM_BO_VM_NUM_PREFAULT more pages beforehand > due to the principle of locality. > > However, on some platform the page faults are more costly, this > patch intends to increase the number of ttm pre-fault to relieve > the number of page faults. > > When multiple levels of page table is supported, the new default > value would be the PMD size, similar to huge page. > > Signed-off-by: Zhu Lingshan <lingshan.zhu@amd.com> Thanks Lingshan. I suggested to add reported-by from Jiangxiang like that: Reported-by: Jingxiang Li <jingxiang.li@ecarxgroup.com> Jingxiang, could you please test this patch? We expect to have a Tested-by. :-) Thanks, Ray > --- > include/drm/ttm/ttm_bo.h | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/include/drm/ttm/ttm_bo.h b/include/drm/ttm/ttm_bo.h > index 6ccf96c91f3a..c20ef44002da 100644 > --- a/include/drm/ttm/ttm_bo.h > +++ b/include/drm/ttm/ttm_bo.h > @@ -39,7 +39,11 @@ > #include "ttm_device.h" > > /* Default number of pre-faulted pages in the TTM fault handler */ > -#define TTM_BO_VM_NUM_PREFAULT 16 > +#ifdef CONFIG_PGTABLE_HAS_HUGE_LEAVES > +#define TTM_BO_VM_NUM_PREFAULT (1 << (PMD_SHIFT - PAGE_SHIFT)) > +#else > + #define TTM_BO_VM_NUM_PREFAULT 16 > +#endif > > struct iosys_map; > > -- > 2.45.1 >
Please ignore this patch, V2 will be send out soon Thanks Zhu Lingshan On 5/30/2024 12:02 PM, Huang Rui wrote: > On Thu, May 30, 2024 at 11:41:04AM +0800, Zhu, Lingshan wrote: >> ttm page fault handler ttm_bo_vm_fault_reserved() maps >> TTM_BO_VM_NUM_PREFAULT more pages beforehand >> due to the principle of locality. >> >> However, on some platform the page faults are more costly, this >> patch intends to increase the number of ttm pre-fault to relieve >> the number of page faults. >> >> When multiple levels of page table is supported, the new default >> value would be the PMD size, similar to huge page. >> >> Signed-off-by: Zhu Lingshan <lingshan.zhu@amd.com> > Thanks Lingshan. > > I suggested to add reported-by from Jiangxiang like that: > > Reported-by: Jingxiang Li <jingxiang.li@ecarxgroup.com> > > Jingxiang, could you please test this patch? We expect to have a Tested-by. :-) > > Thanks, > Ray > >> --- >> include/drm/ttm/ttm_bo.h | 6 +++++- >> 1 file changed, 5 insertions(+), 1 deletion(-) >> >> diff --git a/include/drm/ttm/ttm_bo.h b/include/drm/ttm/ttm_bo.h >> index 6ccf96c91f3a..c20ef44002da 100644 >> --- a/include/drm/ttm/ttm_bo.h >> +++ b/include/drm/ttm/ttm_bo.h >> @@ -39,7 +39,11 @@ >> #include "ttm_device.h" >> >> /* Default number of pre-faulted pages in the TTM fault handler */ >> -#define TTM_BO_VM_NUM_PREFAULT 16 >> +#ifdef CONFIG_PGTABLE_HAS_HUGE_LEAVES >> +#define TTM_BO_VM_NUM_PREFAULT (1 << (PMD_SHIFT - PAGE_SHIFT)) >> +#else >> + #define TTM_BO_VM_NUM_PREFAULT 16 >> +#endif >> >> struct iosys_map; >> >> -- >> 2.45.1 >>
diff --git a/include/drm/ttm/ttm_bo.h b/include/drm/ttm/ttm_bo.h index 6ccf96c91f3a..c20ef44002da 100644 --- a/include/drm/ttm/ttm_bo.h +++ b/include/drm/ttm/ttm_bo.h @@ -39,7 +39,11 @@ #include "ttm_device.h" /* Default number of pre-faulted pages in the TTM fault handler */ -#define TTM_BO_VM_NUM_PREFAULT 16 +#ifdef CONFIG_PGTABLE_HAS_HUGE_LEAVES +#define TTM_BO_VM_NUM_PREFAULT (1 << (PMD_SHIFT - PAGE_SHIFT)) +#else + #define TTM_BO_VM_NUM_PREFAULT 16 +#endif struct iosys_map;
ttm page fault handler ttm_bo_vm_fault_reserved() maps TTM_BO_VM_NUM_PREFAULT more pages beforehand due to the principle of locality. However, on some platform the page faults are more costly, this patch intends to increase the number of ttm pre-fault to relieve the number of page faults. When multiple levels of page table is supported, the new default value would be the PMD size, similar to huge page. Signed-off-by: Zhu Lingshan <lingshan.zhu@amd.com> --- include/drm/ttm/ttm_bo.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)