Nick Piggin wrote:

Haven't yet pulled out a pre-4-level kernel to see how 3-level compares
I guess I'll do that now.


Close. Before 4level: 119.5us, after folded walkers: 132.8us

I think most of this is now coming from clear_page_range, rather
than the actual traversing of the page tables (because they should
be completely folded by now):

before:
  4089 total                                      0.0017
   753 kmap_atomic                                4.7358
   682 do_wp_page                                 0.6713
   680 do_page_fault                              0.4561
   261 zap_pte_range                              0.3625
   176 copy_page_range                            0.2133
   159 pte_alloc_one                              1.5743
   145 clear_page_tables                          0.4866

after:
  4307 total                                      0.0018
   676 kmap_atomic                                4.2516
   665 do_page_fault                              0.4472
   615 do_wp_page                                 0.6225
   550 clear_page_range                           0.9982
   262 zap_pte_range                              0.4870

I think the additional work done by clear_page_range (versus
clear_page_tables) justifies the extra cost, even for 3-level
architectures.


- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

Reply via email to