All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wu Fengguang <fengguang.wu@intel.com>
To: Andi Kleen <andi@firstfloor.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	Hugh Dickins <hugh.dickins@tiscali.co.uk>,
	Nick Piggin <npiggin@suse.de>,
	"linux-mm@kvack.org" <linux-mm@kvack.org>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [RFC][PATCH] HWPOISON: remove the unsafe __set_page_locked()
Date: Sat, 26 Sep 2009 19:31:56 +0800	[thread overview]
Message-ID: <20090926113156.GA12240@localhost> (raw)
In-Reply-To: <20090926105259.GA5496@localhost>

On Sat, Sep 26, 2009 at 06:52:59PM +0800, Wu Fengguang wrote:
> On Sat, Sep 26, 2009 at 11:49:36AM +0800, Andi Kleen wrote:
> > On Sat, Sep 26, 2009 at 11:15:37AM +0800, Wu Fengguang wrote:
> > > The swap cache and page cache code assume that they 'own' the newly
> > > allocated page and therefore can disregard the locking rules. However
> > > now hwpoison can hit any time on any page.
> > > 
> > > So use the safer lock_page()/trylock_page(). The main intention is not
> > > to close such a small time window of memory corruption. But to avoid
> > > kernel oops that may result from such races, and also avoid raising
> > > false alerts in hwpoison stress tests.
> > > 
> > > This in theory will slightly increase page cache/swap cache overheads,
> > > however it seems to be too small to be measurable in benchmark.
> > 
> > Thanks. Can you please describe what benchmarks you used?
> 
> Good question. The test case is to copy 1GB sparse file over NFS.
> 
> I ran it 100 times (2 hours total wall time) and the overheads are ~0.008%.

And standard deviation is 0.04%, much larger than the difference 0.008% ..

Thanks,
Fengguang

> The average time reported by the function profiler:
> 
>                 total time      add_to_page_cache_lru   percent
>         before  1940083424.361  4841664.805             0.242%
>         after   1914258447.188  4889044.435             0.250%
> 
> The script used is:
> 
>         for i in `seq 1 100`
>         do      
>                 # copy 1GB sparse file over NFS
>                 echo 1 > /debug/tracing/function_profile_enabled
>                 cp /tmp/sparse/1G /dev/null
>                 echo 0 > /debug/tracing/function_profile_enabled
> 
>                 fadvise /tmp/sparse/1G 0 0 dontneed
>                 cat /debug/tracing/trace_stat/function0 > function0.$i
>                 cat /debug/tracing/trace_stat/function1 > function1.$i
>         done
> 
> 
> File function0.1 after patch:
> 
>   Function                               Hit    Time            Avg
>   --------                               ---    ----            ---
>   schedule                             32492    474358128 us     14599.22 us 
>   schedule_timeout                        26    99994288 us     3845934 us 
>   poll_schedule_timeout                    8    52914376 us     6614297 us 
>   sys_poll                                 6    52914373 us     8819062 us 
>   schedule_hrtimeout_range                 8    52914373 us     6614296 us 
>   do_sys_poll                              6    52914355 us     8819059 us 
>   sys_read                             86997    40703194 us     467.868 us  
>   vfs_read                             87002    40550651 us     466.088 us  
>   do_sync_read                         86987    40011054 us     459.965 us  
>   nfs_file_read                        86985    39945631 us     459.224 us  
>   generic_file_aio_read                86985    39785858 us     457.387 us  
>   page_cache_async_readahead            2886    34379069 us     11912.35 us 
>   ondemand_readahead                    2889    34371850 us     11897.49 us 
>   ra_submit                             2891    34368378 us     11888.05 us 
>   __do_page_cache_readahead             2891    34360744 us     11885.41 us 
>   nfs_readpages                         2876    33198107 us     11543.15 us 
>   read_cache_pages                      2876    31617284 us     10993.49 us 
>   __rpc_execute                        84468    25404441 us     300.758 us  
>   readpage_async_filler               174071    24947004 us     143.315 us  
>   do_softirq                           44822    24829675 us     553.961 us  
>   __do_softirq                         44822    24803408 us     553.375 us  
>   net_rx_action                        38424    24357207 us     633.906 us  
>   e1000_clean                          39042    24253141 us     621.206 us  
>   nfs_pageio_doio                      43534    22993433 us     528.171 us  
>   nfs_pagein_one                       43520    22939752 us     527.108 us  
>   nfs_read_rpcsetup                    43513    22533176 us     517.849 us  
>   e1000_clean_rx_irq                   39042    22047306 us     564.707 us  
>   rpc_run_task                         43528    22042766 us     506.404 us  
>   call_transmit                        45873    21842655 us     476.154 us  
>   nfs_pageio_add_request              174091    21583666 us     123.979 us  
>   rpc_execute                          43528    21254402 us     488.292 us  
>   cpuidle_idle_call                    18073    19445493 us     1075.941 us 
>   acpi_idle_enter_c1                   17999    19396945 us     1077.667 us 
>   e1000_receive_skb                   436279    18818686 us     43.134 us   
>   tcp_v4_do_rcv                       513521    18681598 us     36.379 us   
>   xprt_transmit                        43346    18532249 us     427.542 us  
>   tcp_rcv_established                 513521    18384627 us     35.801 us   
>   napi_gro_receive                    436279    18114586 us     41.520 us   
>   napi_skb_finish                     436279    17130261 us     39.264 us   
>   netif_receive_skb                   436279    16886046 us     38.704 us   
>   ip_rcv                              436279    16500338 us     37.820 us   
>   xs_tcp_send_request                  43346    16418581 us     378.779 us  
>   xs_sendpages                         43346    16367619 us     377.603 us  
>   xs_send_kvec                         43347    16310325 us     376.273 us  
>   kernel_sendmsg                       43347    16254698 us     374.990 us  
>   sock_sendmsg                         43347    16177184 us     373.201 us  
>   tcp_sendmsg                          43347    16127746 us     372.061 us  
>   do_IRQ                               45271    15968995 us     352.742 us  
>   ip_local_deliver                    436279    15816133 us     36.252 us   
>   irq_exit                             53709    15421475 us     287.130 us  
>   acpi_processor_ffh_cstate_ente       17999    15394735 us     855.310 us  
>   mwait_idle_with_hints                17999    15386089 us     854.830 us  
>   tcp_v4_rcv                          436217    15173852 us     34.785 us   
>   release_sock                         43364    13536313 us     312.155 us  
>   xs_tcp_data_ready                   512045    10092920 us     19.711 us   
>   _spin_unlock_bh                     518900    9851221 us     18.984 us   
>   local_bh_enable_ip                  511352    9403704 us     18.389 us   
>   tcp_read_sock                      1024090    8832051 us     8.624 us    
>   __tcp_ack_snd_check                 512045    6644838 us     12.977 us   
>   add_to_page_cache_lru               174072    6287717 us     36.121 us   
>   tcp_transmit_skb                    296572    5962431 us     20.104 us   
>   tcp_send_ack                        253210    5775135 us     22.807 us   
>   __kfree_skb                         802932    5216451 us     6.496 us    
>   add_to_page_cache_locked            174072    4716425 us     27.094 us   
> [...]
> 
> Detailed time before patch (100 runs * 2 CPU):
> 
> Total          add_to_page_cache_lru    percent
> 1927694859.404 6703561                  0.34775011030908648%
> 1994166534.446 7311783                  0.36665859514242066%
> 2132812997.930 6249683                  0.29302536162643533%
> 1972582396.980 7908593                  0.40092586307715006%
> 2415371209.622 7670327                  0.31756307144194151%
> 2163473353.153 7406991                  0.34236571433640306%
> 1833544521.635 7952113                  0.43370165851816772%
> 2087748556.683 7995535                  0.38297404035585819%
> 2185868844.795 7117368                  0.32560819085499598%
> 1980423680.193 6514699                  0.32895481230385598%
> 1958021484.352 6745228                  0.34449203207963308%
> 2008592063.702 7398967                  0.36836583862444905%
> 2448117568.931 6224454                  0.25425470079519025%
> 2213021186.789 6938228                  0.31351837214297412%
> 1828902235.789 7479842                  0.40897987074596959%
> 1866644864.837 7720792                  0.41361868802366963%
> 2054526163.572 8475856                  0.41254553727677401%
> 1902862587.026 8334661                  0.43800645705196778%
> 2148449373.925 8672498                  0.40366313050031155%
> 2104880443.231 7741619                  0.36779376353160392%
> 2270646549.540 6486688                  0.2856758134071597%
> 2250814274.826 7512331                  0.33376058984612328%
> 2214008898.106 6391259                  0.28867359139646992%
> 2446226035.589 7738434                  0.31634173978271579%
> 1920377000.358 6464992                  0.33665223020244384%
> 2030446733.714 6022617                  0.2966153654759367%
> 2157128575.464 7375670                  0.34192074055731642%
> 2185670134.683 7943199                  0.36342167438509865%
> 2224381465.969 8492920                  0.38181041021667828%
> 2479045291.455 8161934                  0.32923698603382928%
> 1971641972.432 8114434                  0.41155717485517562%
> 2208169216.013 8138519                  0.36856410011433138%
> 1971312194.985 8122576                  0.41203904793283169%
> 2279129743.345 7365286                  0.3231622079219687%
> 2360162707.877 7412468                  0.3140659741491984%
> 1885022652.013 8252339                  0.43778460652382062%
> 2065345722.062 7985361                  0.3866355600759942%
> 1975982196.916 7925371                  0.4010851419799969%
> 2169738273.075 7203856                  0.33201497569522709%
> 2034570957.887 7396992                  0.36356520136717829%
> 1789538123.758 7380292                  0.41241323121418116%
> 1912812047.546 8697404                  0.45469203370807615%
> 2221047646.893 7451321                  0.33548676951723994%
> 2163981380.559 7982481                  0.36887937538251664%
> 1969189605.396 7353112                  0.37340802428831149%
> 2278909389.270 7088803                  0.31106120468750831%
> 2104996788.904 7342692                  0.34882200479854836%
> 2374705789.293 7327329                  0.30855733931492624%
> 2137944282.456 8112283                  0.3794431438915179%
> 2268117031.230 6889022                  0.30373309247909852%
> 1899091967.945 8173918                  0.43041190937398177%
> 2098779842.987 7858621                  0.37443760603377763%
> 2124662819.215 8156209                  0.38388251190904155%
> 2317714239.959 7048899                  0.30413149638864423%
> 2218944220.453 6659501                  0.30012025262358577%
> 1945126557.801 7704643                  0.3960998305791596%
> 2092060468.851 7616315                  0.36405807161888715%
> 1933379809.531 7300893                  0.37762331870896354%
> 1903832170.769 7508856                  0.39440745435912067%
> 2435478683.656 6790800                  0.27882814354203433%
> 2126189870.763 7104836                  0.33415811530747125%
> 2161363441.772 7011298                  0.32439236569356278%
> 2064449342.765 6822211                  0.33046153561039859%
> 2116816508.947 8156178                  0.38530396779913867%
> 1982774633.856 7131335                  0.35966442571092105%
> 2323253766.182 7275361                  0.3131539526978242%
> 1905927501.820 7477458                  0.39232646534874271%
> 2252162684.001 8064426                  0.35807475442552977%
> 2027146552.281 7875866                  0.38851981328818402%
> 1845397260.011 7598767                  0.41176862915439172%
> 2177206310.501 7366288                  0.33833670077434846%
> 2041629016.560 6600368                  0.32328929234759562%
> 2189308825.112 8348863                  0.38134697600613249%
> 1930990433.231 7344038                  0.38032492930126544%
> 2102320863.469 7299411                  0.34720727586536809%
> 1895798071.683 8051595                  0.42470741585110772%
> 2019648719.623 7992832                  0.39575357448754711%
> 1961118039.267 7837733                  0.39965636147681766%
> 2142238585.905 8084509                  0.37738602288244455%
> 2263212432.641 7757018                  0.34274369865263332%
> 2200111036.549 7069702                  0.32133387281622078%
> 1941699880.568 7786856                  0.4010329339734075%
> 1939777157.562 7729686                  0.39848319534368681%
> 1983015138.927 8136252                  0.41029701893261827%
> 2040218650.019 7968023                  0.39054750332400873%
> 1850721920.862 7835912                  0.42339758943095634%
> 2167986192.252 8656589                  0.39929170356052646%
> 2128868496.040 8248906                  0.38747841942065214%
> 1984840247.084 7754853                  0.39070413910605312%
> 2130780080.168 7053725                  0.33103955990821227%
> 2062729676.752 7968701                  0.38631824081513272%
> 1995756518.448 7903687                  0.39602461156666058%
> 1921150053.008 8307746                  0.43243608103345821%
> 2253731991.230 8033382                  0.35644797301810893%
> 2143807312.838 6755593                  0.31512127790332323%
> 1948787937.040 7152297                  0.36701258582622248%
> 2276500726.783 7277806                  0.31969267193182554%
> 2282733838.581 6336839                  0.27759867983291148%
> 2003104438.909 7092547                  0.35407774363791977%
> 2239684291.880 6982252                  0.3117516171950766%
> 1801833773.742 2645976                  0.14684906224756283%
> 2016683111.150 2261656                  0.11214731692329717%
> 1962727948.601 2767184                  0.14098663046870061%
> 1845203884.375 2266317                  0.1228220371304734%
> 1516914718.568 1975612                  0.13023883121557553%
> 1557730294.184 2109274                  0.13540688063108641%
> 2171303320.533 1865384                  0.085910797554627022%
> 1617322895.641 2073254                  0.12819048104666192%
> 1867107731.934 1901409                  0.10183713384500154%
> 1772588329.145 2045529                  0.11539786008783279%
> 2030802387.562 2161163                  0.10641916777508319%
> 1853583237.019 1803299                  0.097287187539531861%
> 1453728764.040 3231016                  0.22225714176699726%
> 1989811798.738 2418414                  0.1215398361560542%
> 1956758511.567 2254818                  0.11523230826241863%
> 2001579398.410 1952360                  0.097540971971978793%
> 1636515132.388 1532408                  0.093638486419854422%
> 1926271619.408 1918912                  0.09961793449408439%
> 1642519133.238 1384193                  0.084272564744573439%
> 1677033195.955 1340416                  0.07992781557533149%
> 1693983317.244 3135804                  0.18511421972571418%
> 1487434932.071 2467493                  0.1658891388656871%
> 1720442169.343 3034092                  0.17635536108479918%
> 1640362983.552 1944463                  0.11853858075908964%
> 1821382248.526 2659828                  0.1460334864991977%
> 1947322513.836 3540608                  0.18181929160904178%
> 1673422299.278 2769832                  0.16551900863249205%
> 1836039325.613 2175872                  0.11850900847526999%
> 1582929718.539 2072026                  0.13089816785500888%
> 1476014468.174 1996943                  0.13529291501257767%
> 1847131237.607 2120975                  0.11482535495137695%
> 1734796451.802 1842211                  0.10619176665287874%
> 1804827020.363 1988047                  0.11015166426310204%
> 1647250758.752 2634152                  0.15991202225917941%
> 1506833507.228 2271966                  0.15077750720977479%
> 1919459367.994 1608374                  0.083793073550751385%
> 1913364635.281 2126200                  0.11112361756846952%
> 1733934046.047 2031440                  0.11715785872197679%
> 1762796865.803 2285487                  0.12965118354456009%
> 1711072016.023 2270996                  0.13272357789349024%
> 2082560830.257 2273483                  0.10916766353083858%
> 1857948273.729 1266725                  0.06817870109255604%
> 1738287034.188 2404600                  0.1383315846409251%
> 1618942973.292 2016207                  0.12453848179100423%
> 1820789056.854 2369799                  0.13015230902664757%
> 1561747605.669 2487149                  0.15925422206327566%
> 1884502059.843 2512148                  0.13330566485076115%
> 1352203145.315 2618029                  0.19361210695824271%
> 1911003204.592 1648292                  0.086252707271200574%
> 1525244016.511 2555354                  0.16753738892517536%
> 2190575134.148 1939935                  0.088558249829422828%
> 1643983673.168 1747429                  0.10629235730989092%
> 1781900292.843 1686195                  0.094629032094141294%
> 1566821289.746 2291057                  0.14622324926229507%
> 1777199439.264 2456866                  0.13824368530171682%
> 1633063412.403 1953080                  0.11959609070698031%
> 1913601422.874 1821650                  0.095194849785599556%
> 2094732749.709 2322465                  0.11087166132876074%
> 1951529182.943 2270128                  0.11632559839953495%
> 1450396654.276 2867633                  0.19771370759479912%
> 1643954213.946 2460211                  0.14965203891504558%
> 1845971802.604 2593942                  0.14051904781757141%
> 1671974226.831 2552423                  0.15265923116756236%
> 1792483105.554 1547320                  0.086322710390164162%
> 1774273751.516 2101959                  0.1184686973024323%
> 1797523443.598 1781759                  0.099122990932099045%
> 1877038808.523 2131598                  0.11356174365288201%
> 1485614991.186 1796722                  0.12094129439052281%
> 2008042349.453 1972441                  0.09822706182154485%
> 2178564679.489 1948988                  0.089462021410222761%
> 1462911389.586 2076158                  0.14191960051575969%
> 1976013519.965 2692701                  0.13626936115536772%
> 1473561005.083 1369873                  0.092963439944099252%
> 2190713955.687 2450228                  0.11184609444967988%
> 1648795783.114 2557892                  0.15513698095279177%
> 2116292380.702 1948901                  0.092090347145394241%
> 1704227210.803 1980402                  0.11620527987385389%
> 1984573918.515 2325530                  0.11718031655581404%
> 1856414008.018 1798348                  0.096872141248277158%
> 1401593348.875 2285205                  0.16304336788086488%
> 1832475317.969 2373585                  0.12952889333487622%
> 1840826298.949 2112188                  0.11474129857911804%
> 2014475390.352 2104652                  0.10447643143618861%
> 1730176303.748 1975645                  0.11418749613667999%
> 2016553863.650 2009045                  0.099627638825555156%
> 1891795883.646 2160557                  0.11420666567029553%
> 1881160108.475 1492908                  0.079361027978115894%
> 1562754135.542 1978972                  0.12663361145505117%
> 2061996559.038 2071212                  0.10044691834821971%
> 1519528906.706 2460493                  0.16192472477103448%
> 1796244525.568 2099254                  0.1168690548596764%
> 1998463642.677 1988093                  0.099481069234609226%
> 1872169708.204 1762657                  0.094150492462082555%
> 1664425938.102 1710870                  0.10279039522485223%
> 1791543540.761 1992110                  0.11119517637588673%
> 1883913354.514 1770358                  0.093972368514618113%
> 1813806740.237 1877185                  0.10349421238531283%
> 1547586337.236 2702003                  0.17459465329900728%
> 2020313568.921 2100334                  0.10396079263684484%
> 1727289498.314 2059429                  0.1192289423405978%
> 
> Detailed time after patch:
> 
> Total          add_to_page_cache_lru    percent
> 2151489401.227 6287717                  0.29224949918015392%
> 1919030541.464 6872841                  0.3581413037208262%
> 2277104485.950 8538296                  0.37496285535785828%
> 2142847301.255 7992466                  0.37298345968558083%
> 1909650847.324 6960671                  0.36449966808089612%
> 2109123648.836 6825371                  0.32361170497361974%
> 2128503623.032 7728883                  0.36311345286743746%
> 1925232499.136 7526064                  0.39091714914315673%
> 1935780958.829 7499162                  0.38739723964101919%
> 1722848267.832 7353451                  0.42681942091473007%
> 1855159456.452 7600681                  0.40970499724785564%
> 1862769335.900 8607712                  0.46209221045831578%
> 2272365556.764 6895008                  0.30342864419310028%
> 2049429274.204 7252089                  0.35385895435775488%
> 2001218334.232 8155639                  0.4075336938750293%
> 1947131845.644 7229822                  0.37130623774523025%
> 1982915408.746 7513518                  0.37891268416495716%
> 2038654062.353 7531559                  0.36943781385386831%
> 2134879530.359 6738727                  0.31564905205057731%
> 2029761134.284 7472398                  0.36814174208907074%
> 1956557094.935 7280443                  0.37210480690019776%
> 1740007857.373 6663035                  0.38293131676196024%
> 2054278081.418 7765213                  0.37800203732105886%
> 2367585922.353 7629987                  0.32226864199365651%
> 2023763123.141 7730698                  0.38199618876350999%
> 1826074987.177 7579606                  0.41507638258150648%
> 2077873224.783 7414675                  0.35683962387909118%
> 2103719398.720 7093390                  0.33718327664402131%
> 2164758918.301 7181094                  0.33172719323572736%
> 1953199921.042 7750654                  0.39681826302067191%
> 2179298642.359 6395109                  0.29344803303679207%
> 1971922836.328 7215479                  0.36591081897688477%
> 2225552712.785 8153246                  0.36634701812105075%
> 2124780733.448 7080842                  0.33325048032177529%
> 2139511762.563 8708060                  0.40701155059639843%
> 1934365642.348 6842114                  0.35371358186939283%
> 1950765025.910 6818753                  0.34954250816646476%
> 2013188877.577 6495929                  0.32266863146086228%
> 1921391492.273 6536576                  0.34020011154870117%
> 2164698840.945 6712421                  0.31008567441509277%
> 1992440404.239 7467130                  0.3747730664422067%
> 2073623249.374 7113197                  0.34303227465005426%
> 1938481781.041 6902169                  0.35606055561138211%
> 1963963682.421 7776006                  0.39593430721765843%
> 1807704433.895 7206899                  0.39867684477995868%
> 1902413226.299 7687850                  0.40411041585093088%
> 1718395340.661 7096452                  0.41296969516166576%
> 2014139552.830 7653595                  0.37999328245384933%
> 1976902280.499 7781174                  0.3936043818026207%
> 1920129734.441 6808420                  0.3545812492707483%
> 1786139514.638 7179970                  0.4019825966089316%
> 2011990483.317 6739406                  0.33496212113733792%
> 2186643920.919 7830962                  0.35812698743876015%
> 1822975832.465 8627042                  0.47323951565143058%
> 1872249428.425 7264440                  0.38800599373722838%
> 1971668701.573 6818269                  0.34581210294408871%
> 2054585589.388 7261214                  0.35341501651254642%
> 2252858576.565 7228902                  0.32087686618225808%
> 2196771348.820 6634658                  0.30201859668116204%
> 2224872312.502 6948714                  0.31231967609798522%
> 1924947573.139 6935037                  0.360271474235066%
> 2070207954.999 7564561                  0.36540102078796494%
> 2070702822.858 6994172                  0.33776802362912656%
> 2099826181.510 7199665                  0.34286957003377627%
> 2369037401.585 7009501                  0.29587971027009985%
> 2109093017.803 7056062                  0.33455432929886414%
> 2141046841.968 7831694                  0.36578807368835009%
> 2284785719.942 7358167                  0.3220506385249462%
> 2088247084.213 6857813                  0.32840045853982414%
> 1880913709.753 6697468                  0.35607523967059107%
> 1984586172.943 7361786                  0.37094816543455983%
> 2130320004.839 7840067                  0.36802297223850727%
> 2314059227.236 6669054                  0.28819720435443524%
> 1935408704.712 8309322                  0.42933164348025787%
> 2239440115.241 7040432                  0.31438357972087749%
> 2387500130.769 6555638                  0.27458168129559291%
> 2497500671.323 6969731                  0.27906823329532587%
> 2229438175.095 6759889                  0.30321042653322067%
> 1979317661.013 7870099                  0.39761677243723181%
> 2228213884.202 5883791                  0.26405862748257614%
> 2264526373.743 6563122                  0.28982316461838858%
> 2256376049.198 6670128                  0.29561242694323103%
> 2085817937.654 6878115                  0.32975624937505721%
> 2177225113.484 7421724                  0.34087995559282069%
> 1843473456.551 7156295                  0.38819625932607071%
> 2403022978.094 6958096                  0.28955594946157931%
> 1935191866.634 6872608                  0.35513832599730566%
> 1917810458.850 7816937                  0.40759695328220108%
> 2016838266.381 7257719                  0.35985627211562177%
> 1904575178.166 7484129                  0.39295529448235278%
> 2087232238.930 7372521                  0.35321996577532039%
> 1976631116.176 6438233                  0.32571747693901715%
> 2004191806.805 6735567                  0.33607397141980955%
> 2110550986.328 7174599                  0.33993961986592813%
> 2152621184.889 7337361                  0.34085704681840484%
> 2059135774.936 6363510                  0.30903790208772336%
> 2353978555.486 7265456                  0.30864580236160993%
> 1945677192.325 5927833                  0.30466682877217138%
> 2255676557.335 6379740                  0.28283044301074045%
> 2034627875.756 7319043                  0.35972391252530572%
> 1712556465.847 3079747                  0.17983331127577226%
> 1837380343.831 3111263                  0.1693314620702272%
> 1680363376.083 1611968                  0.095929727042585719%
> 1769978476.954 2017096                  0.11396161175198416%
> 1829700109.543 2612874                  0.14280340184559598%
> 1783959966.875 3184558                  0.17851062014460206%
> 1772032973.967 2133741                  0.12041203698502599%
> 1667688494.152 1985120                  0.11903422053705601%
> 2001252356.720 2633874                  0.13161128785961057%
> 2077009766.270 2858188                  0.13761071548223289%
> 2076612330.379 2340135                  0.11269002720276176%
> 1834812072.536 1713713                  0.093399919569494547%
> 1787949752.795 2522212                  0.14106727529994451%
> 1907464219.876 2476303                  0.12982172741153589%
> 1609254879.065 1903707                  0.11829741980375917%
> 2069557067.911 2484547                  0.12005211349440528%
> 1725151836.363 2491288                  0.1444097816486799%
> 2077004221.561 2508662                  0.12078271069254648%
> 1650748196.246 3195100                  0.19355465644403197%
> 1843881436.725 2731880                  0.14815920078094685%
> 1677080490.297 2752567                  0.16412849686853959%
> 2103777441.563 3252694                  0.15461207710181613%
> 1598451912.768 2345538                  0.1467381021139566%
> 1825835416.807 2381575                  0.13043755083713246%
> 1969692431.120 2198750                  0.11162910336969484%
> 1867823718.088 1813348                  0.097083465770326324%
> 1929972836.031 2140104                  0.11088777831718792%
> 1627140530.277 2519227                  0.15482541016731566%
> 1779407314.725 2828755                  0.15897175293095681%
> 1724839045.836 1937500                  0.11232932166496305%
> 1780135194.997 2889504                  0.16231935687361485%
> 1758590417.053 2193512                  0.12473126082853507%
> 1729351400.188 1523643                  0.088104881392778986%
> 1484255938.207 2153531                  0.14509162096406991%
> 1504352024.282 1910774                  0.12701641432044322%
> 1916441202.247 2423510                  0.12645887581411155%
> 1651813655.113 2892863                  0.1751325272705837%
> 1772411947.023 2693122                  0.15194673024651262%
> 1738795901.180 3064160                  0.17622309771495132%
> 1717902110.376 3266140                  0.19012375503078779%
> 1858583685.387 2246750                  0.12088505982619635%
> 1641867344.242 2901893                  0.17674345069209688%
> 2037933222.333 3290649                  0.16146991294606342%
> 1713754879.753 2136278                  0.1246548164640615%
> 2265307843.106 2195967                  0.096939010151886218%
> 2066343912.900 2117667                  0.10248376307446183%
> 2033259596.459 2652081                  0.13043494321230309%
> 2029016228.457 2447926                  0.12064595470789147%
> 1649943910.454 2243384                  0.13596728869302646%
> 2064977308.315 2517573                  0.12191770775700743%
> 1962826877.902 2403546                  0.12245328546596376%
> 1991037543.226 3214700                  0.16145853255942866%
> 1469646744.644 1960481                  0.133398111290676%
> 2195532272.023 1693642                  0.077140382839349028%
> 1902754342.931 2542547                  0.13362455376575119%
> 1922726134.774 2726990                  0.14182935108023245%
> 1629134454.130 2814497                  0.17276026499009955%
> 1442857977.322 2886065                  0.2000241912483062%
> 1782430811.270 2884583                  0.16183421997427802%
> 1574026949.337 2873023                  0.18252692568003068%
> 2064769936.712 2717133                  0.13159495165484839%
> 1621381781.294 2143854                  0.13222388611576869%
> 1783777994.311 2515565                  0.14102455619605617%
> 1561198792.593 2402227                  0.15387066729728466%
> 1658682002.165 2924639                  0.17632306832669586%
> 1675144757.604 2216513                  0.13231769910860314%
> 1712859849.041 2274046                  0.13276310967725691%
> 1448178253.374 2507727                  0.17316424923226392%
> 1621787692.726 2822681                  0.17404750403892047%
> 1924315582.555 2275728                  0.11826168330344308%
> 2044659318.750 2606738                  0.12749008972280165%
> 1559320878.499 2049522                  0.13143683434629996%
> 1641314354.590 2786145                  0.16975084585158451%
> 1769603624.855 2008994                  0.11352790940200608%
> 1707747444.550 2813289                  0.16473682973311757%
> 1366611645.499 2930513                  0.21443641356721807%
> 1435165128.768 3161655                  0.22029903992400404%
> 1440555681.860 2831258                  0.19653929630435177%
> 1627011278.312 1956565                  0.12025515901954331%
> 1668464384.654 3863649                  0.23156916237089648%
> 1589045506.115 2743558                  0.17265446391825656%
> 1766150748.153 3207045                  0.18158387687765917%
> 1668645748.936 2997211                  0.17961937109246526%
> 1808149919.182 2420007                  0.13383884678626659%
> 1831096162.185 2226869                  0.12161398434382248%
> 1473136553.216 2774496                  0.18833936296964501%
> 1873520917.567 2427200                  0.12955286366121929%
> 1971938578.205 2207736                  0.11195764535473715%
> 1670588149.850 2437810                  0.14592525394238479%
> 1912140400.200 2407058                  0.12588291109524352%
> 1925513187.452 2415130                  0.12542786077699639%
> 1658671061.956 3111210                  0.18757245311382492%
> 1917423750.996 2888924                  0.15066695603928745%
> 1553962205.772 3386946                  0.21795549386076499%
> 1834101490.364 2367281                  0.12907033838842713%
> 1626846627.678 3362957                  0.20671629044711806%
> 1519340210.104 2320735                  0.15274623712098975%
> 1725615314.262 3813557                  0.22099693764197714%
> 1725823077.103 3137784                  0.1818137699993643%
> 1633124107.941 2007344                  0.12291435722731486%
> 
> Thanks,
> Fengguang

WARNING: multiple messages have this Message-ID (diff)
From: Wu Fengguang <fengguang.wu@intel.com>
To: Andi Kleen <andi@firstfloor.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	Hugh Dickins <hugh.dickins@tiscali.co.uk>,
	Nick Piggin <npiggin@suse.de>,
	"linux-mm@kvack.org" <linux-mm@kvack.org>,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [RFC][PATCH] HWPOISON: remove the unsafe __set_page_locked()
Date: Sat, 26 Sep 2009 19:31:56 +0800	[thread overview]
Message-ID: <20090926113156.GA12240@localhost> (raw)
In-Reply-To: <20090926105259.GA5496@localhost>

On Sat, Sep 26, 2009 at 06:52:59PM +0800, Wu Fengguang wrote:
> On Sat, Sep 26, 2009 at 11:49:36AM +0800, Andi Kleen wrote:
> > On Sat, Sep 26, 2009 at 11:15:37AM +0800, Wu Fengguang wrote:
> > > The swap cache and page cache code assume that they 'own' the newly
> > > allocated page and therefore can disregard the locking rules. However
> > > now hwpoison can hit any time on any page.
> > > 
> > > So use the safer lock_page()/trylock_page(). The main intention is not
> > > to close such a small time window of memory corruption. But to avoid
> > > kernel oops that may result from such races, and also avoid raising
> > > false alerts in hwpoison stress tests.
> > > 
> > > This in theory will slightly increase page cache/swap cache overheads,
> > > however it seems to be too small to be measurable in benchmark.
> > 
> > Thanks. Can you please describe what benchmarks you used?
> 
> Good question. The test case is to copy 1GB sparse file over NFS.
> 
> I ran it 100 times (2 hours total wall time) and the overheads are ~0.008%.

And standard deviation is 0.04%, much larger than the difference 0.008% ..

Thanks,
Fengguang

> The average time reported by the function profiler:
> 
>                 total time      add_to_page_cache_lru   percent
>         before  1940083424.361  4841664.805             0.242%
>         after   1914258447.188  4889044.435             0.250%
> 
> The script used is:
> 
>         for i in `seq 1 100`
>         do      
>                 # copy 1GB sparse file over NFS
>                 echo 1 > /debug/tracing/function_profile_enabled
>                 cp /tmp/sparse/1G /dev/null
>                 echo 0 > /debug/tracing/function_profile_enabled
> 
>                 fadvise /tmp/sparse/1G 0 0 dontneed
>                 cat /debug/tracing/trace_stat/function0 > function0.$i
>                 cat /debug/tracing/trace_stat/function1 > function1.$i
>         done
> 
> 
> File function0.1 after patch:
> 
>   Function                               Hit    Time            Avg
>   --------                               ---    ----            ---
>   schedule                             32492    474358128 us     14599.22 us 
>   schedule_timeout                        26    99994288 us     3845934 us 
>   poll_schedule_timeout                    8    52914376 us     6614297 us 
>   sys_poll                                 6    52914373 us     8819062 us 
>   schedule_hrtimeout_range                 8    52914373 us     6614296 us 
>   do_sys_poll                              6    52914355 us     8819059 us 
>   sys_read                             86997    40703194 us     467.868 us  
>   vfs_read                             87002    40550651 us     466.088 us  
>   do_sync_read                         86987    40011054 us     459.965 us  
>   nfs_file_read                        86985    39945631 us     459.224 us  
>   generic_file_aio_read                86985    39785858 us     457.387 us  
>   page_cache_async_readahead            2886    34379069 us     11912.35 us 
>   ondemand_readahead                    2889    34371850 us     11897.49 us 
>   ra_submit                             2891    34368378 us     11888.05 us 
>   __do_page_cache_readahead             2891    34360744 us     11885.41 us 
>   nfs_readpages                         2876    33198107 us     11543.15 us 
>   read_cache_pages                      2876    31617284 us     10993.49 us 
>   __rpc_execute                        84468    25404441 us     300.758 us  
>   readpage_async_filler               174071    24947004 us     143.315 us  
>   do_softirq                           44822    24829675 us     553.961 us  
>   __do_softirq                         44822    24803408 us     553.375 us  
>   net_rx_action                        38424    24357207 us     633.906 us  
>   e1000_clean                          39042    24253141 us     621.206 us  
>   nfs_pageio_doio                      43534    22993433 us     528.171 us  
>   nfs_pagein_one                       43520    22939752 us     527.108 us  
>   nfs_read_rpcsetup                    43513    22533176 us     517.849 us  
>   e1000_clean_rx_irq                   39042    22047306 us     564.707 us  
>   rpc_run_task                         43528    22042766 us     506.404 us  
>   call_transmit                        45873    21842655 us     476.154 us  
>   nfs_pageio_add_request              174091    21583666 us     123.979 us  
>   rpc_execute                          43528    21254402 us     488.292 us  
>   cpuidle_idle_call                    18073    19445493 us     1075.941 us 
>   acpi_idle_enter_c1                   17999    19396945 us     1077.667 us 
>   e1000_receive_skb                   436279    18818686 us     43.134 us   
>   tcp_v4_do_rcv                       513521    18681598 us     36.379 us   
>   xprt_transmit                        43346    18532249 us     427.542 us  
>   tcp_rcv_established                 513521    18384627 us     35.801 us   
>   napi_gro_receive                    436279    18114586 us     41.520 us   
>   napi_skb_finish                     436279    17130261 us     39.264 us   
>   netif_receive_skb                   436279    16886046 us     38.704 us   
>   ip_rcv                              436279    16500338 us     37.820 us   
>   xs_tcp_send_request                  43346    16418581 us     378.779 us  
>   xs_sendpages                         43346    16367619 us     377.603 us  
>   xs_send_kvec                         43347    16310325 us     376.273 us  
>   kernel_sendmsg                       43347    16254698 us     374.990 us  
>   sock_sendmsg                         43347    16177184 us     373.201 us  
>   tcp_sendmsg                          43347    16127746 us     372.061 us  
>   do_IRQ                               45271    15968995 us     352.742 us  
>   ip_local_deliver                    436279    15816133 us     36.252 us   
>   irq_exit                             53709    15421475 us     287.130 us  
>   acpi_processor_ffh_cstate_ente       17999    15394735 us     855.310 us  
>   mwait_idle_with_hints                17999    15386089 us     854.830 us  
>   tcp_v4_rcv                          436217    15173852 us     34.785 us   
>   release_sock                         43364    13536313 us     312.155 us  
>   xs_tcp_data_ready                   512045    10092920 us     19.711 us   
>   _spin_unlock_bh                     518900    9851221 us     18.984 us   
>   local_bh_enable_ip                  511352    9403704 us     18.389 us   
>   tcp_read_sock                      1024090    8832051 us     8.624 us    
>   __tcp_ack_snd_check                 512045    6644838 us     12.977 us   
>   add_to_page_cache_lru               174072    6287717 us     36.121 us   
>   tcp_transmit_skb                    296572    5962431 us     20.104 us   
>   tcp_send_ack                        253210    5775135 us     22.807 us   
>   __kfree_skb                         802932    5216451 us     6.496 us    
>   add_to_page_cache_locked            174072    4716425 us     27.094 us   
> [...]
> 
> Detailed time before patch (100 runs * 2 CPU):
> 
> Total          add_to_page_cache_lru    percent
> 1927694859.404 6703561                  0.34775011030908648%
> 1994166534.446 7311783                  0.36665859514242066%
> 2132812997.930 6249683                  0.29302536162643533%
> 1972582396.980 7908593                  0.40092586307715006%
> 2415371209.622 7670327                  0.31756307144194151%
> 2163473353.153 7406991                  0.34236571433640306%
> 1833544521.635 7952113                  0.43370165851816772%
> 2087748556.683 7995535                  0.38297404035585819%
> 2185868844.795 7117368                  0.32560819085499598%
> 1980423680.193 6514699                  0.32895481230385598%
> 1958021484.352 6745228                  0.34449203207963308%
> 2008592063.702 7398967                  0.36836583862444905%
> 2448117568.931 6224454                  0.25425470079519025%
> 2213021186.789 6938228                  0.31351837214297412%
> 1828902235.789 7479842                  0.40897987074596959%
> 1866644864.837 7720792                  0.41361868802366963%
> 2054526163.572 8475856                  0.41254553727677401%
> 1902862587.026 8334661                  0.43800645705196778%
> 2148449373.925 8672498                  0.40366313050031155%
> 2104880443.231 7741619                  0.36779376353160392%
> 2270646549.540 6486688                  0.2856758134071597%
> 2250814274.826 7512331                  0.33376058984612328%
> 2214008898.106 6391259                  0.28867359139646992%
> 2446226035.589 7738434                  0.31634173978271579%
> 1920377000.358 6464992                  0.33665223020244384%
> 2030446733.714 6022617                  0.2966153654759367%
> 2157128575.464 7375670                  0.34192074055731642%
> 2185670134.683 7943199                  0.36342167438509865%
> 2224381465.969 8492920                  0.38181041021667828%
> 2479045291.455 8161934                  0.32923698603382928%
> 1971641972.432 8114434                  0.41155717485517562%
> 2208169216.013 8138519                  0.36856410011433138%
> 1971312194.985 8122576                  0.41203904793283169%
> 2279129743.345 7365286                  0.3231622079219687%
> 2360162707.877 7412468                  0.3140659741491984%
> 1885022652.013 8252339                  0.43778460652382062%
> 2065345722.062 7985361                  0.3866355600759942%
> 1975982196.916 7925371                  0.4010851419799969%
> 2169738273.075 7203856                  0.33201497569522709%
> 2034570957.887 7396992                  0.36356520136717829%
> 1789538123.758 7380292                  0.41241323121418116%
> 1912812047.546 8697404                  0.45469203370807615%
> 2221047646.893 7451321                  0.33548676951723994%
> 2163981380.559 7982481                  0.36887937538251664%
> 1969189605.396 7353112                  0.37340802428831149%
> 2278909389.270 7088803                  0.31106120468750831%
> 2104996788.904 7342692                  0.34882200479854836%
> 2374705789.293 7327329                  0.30855733931492624%
> 2137944282.456 8112283                  0.3794431438915179%
> 2268117031.230 6889022                  0.30373309247909852%
> 1899091967.945 8173918                  0.43041190937398177%
> 2098779842.987 7858621                  0.37443760603377763%
> 2124662819.215 8156209                  0.38388251190904155%
> 2317714239.959 7048899                  0.30413149638864423%
> 2218944220.453 6659501                  0.30012025262358577%
> 1945126557.801 7704643                  0.3960998305791596%
> 2092060468.851 7616315                  0.36405807161888715%
> 1933379809.531 7300893                  0.37762331870896354%
> 1903832170.769 7508856                  0.39440745435912067%
> 2435478683.656 6790800                  0.27882814354203433%
> 2126189870.763 7104836                  0.33415811530747125%
> 2161363441.772 7011298                  0.32439236569356278%
> 2064449342.765 6822211                  0.33046153561039859%
> 2116816508.947 8156178                  0.38530396779913867%
> 1982774633.856 7131335                  0.35966442571092105%
> 2323253766.182 7275361                  0.3131539526978242%
> 1905927501.820 7477458                  0.39232646534874271%
> 2252162684.001 8064426                  0.35807475442552977%
> 2027146552.281 7875866                  0.38851981328818402%
> 1845397260.011 7598767                  0.41176862915439172%
> 2177206310.501 7366288                  0.33833670077434846%
> 2041629016.560 6600368                  0.32328929234759562%
> 2189308825.112 8348863                  0.38134697600613249%
> 1930990433.231 7344038                  0.38032492930126544%
> 2102320863.469 7299411                  0.34720727586536809%
> 1895798071.683 8051595                  0.42470741585110772%
> 2019648719.623 7992832                  0.39575357448754711%
> 1961118039.267 7837733                  0.39965636147681766%
> 2142238585.905 8084509                  0.37738602288244455%
> 2263212432.641 7757018                  0.34274369865263332%
> 2200111036.549 7069702                  0.32133387281622078%
> 1941699880.568 7786856                  0.4010329339734075%
> 1939777157.562 7729686                  0.39848319534368681%
> 1983015138.927 8136252                  0.41029701893261827%
> 2040218650.019 7968023                  0.39054750332400873%
> 1850721920.862 7835912                  0.42339758943095634%
> 2167986192.252 8656589                  0.39929170356052646%
> 2128868496.040 8248906                  0.38747841942065214%
> 1984840247.084 7754853                  0.39070413910605312%
> 2130780080.168 7053725                  0.33103955990821227%
> 2062729676.752 7968701                  0.38631824081513272%
> 1995756518.448 7903687                  0.39602461156666058%
> 1921150053.008 8307746                  0.43243608103345821%
> 2253731991.230 8033382                  0.35644797301810893%
> 2143807312.838 6755593                  0.31512127790332323%
> 1948787937.040 7152297                  0.36701258582622248%
> 2276500726.783 7277806                  0.31969267193182554%
> 2282733838.581 6336839                  0.27759867983291148%
> 2003104438.909 7092547                  0.35407774363791977%
> 2239684291.880 6982252                  0.3117516171950766%
> 1801833773.742 2645976                  0.14684906224756283%
> 2016683111.150 2261656                  0.11214731692329717%
> 1962727948.601 2767184                  0.14098663046870061%
> 1845203884.375 2266317                  0.1228220371304734%
> 1516914718.568 1975612                  0.13023883121557553%
> 1557730294.184 2109274                  0.13540688063108641%
> 2171303320.533 1865384                  0.085910797554627022%
> 1617322895.641 2073254                  0.12819048104666192%
> 1867107731.934 1901409                  0.10183713384500154%
> 1772588329.145 2045529                  0.11539786008783279%
> 2030802387.562 2161163                  0.10641916777508319%
> 1853583237.019 1803299                  0.097287187539531861%
> 1453728764.040 3231016                  0.22225714176699726%
> 1989811798.738 2418414                  0.1215398361560542%
> 1956758511.567 2254818                  0.11523230826241863%
> 2001579398.410 1952360                  0.097540971971978793%
> 1636515132.388 1532408                  0.093638486419854422%
> 1926271619.408 1918912                  0.09961793449408439%
> 1642519133.238 1384193                  0.084272564744573439%
> 1677033195.955 1340416                  0.07992781557533149%
> 1693983317.244 3135804                  0.18511421972571418%
> 1487434932.071 2467493                  0.1658891388656871%
> 1720442169.343 3034092                  0.17635536108479918%
> 1640362983.552 1944463                  0.11853858075908964%
> 1821382248.526 2659828                  0.1460334864991977%
> 1947322513.836 3540608                  0.18181929160904178%
> 1673422299.278 2769832                  0.16551900863249205%
> 1836039325.613 2175872                  0.11850900847526999%
> 1582929718.539 2072026                  0.13089816785500888%
> 1476014468.174 1996943                  0.13529291501257767%
> 1847131237.607 2120975                  0.11482535495137695%
> 1734796451.802 1842211                  0.10619176665287874%
> 1804827020.363 1988047                  0.11015166426310204%
> 1647250758.752 2634152                  0.15991202225917941%
> 1506833507.228 2271966                  0.15077750720977479%
> 1919459367.994 1608374                  0.083793073550751385%
> 1913364635.281 2126200                  0.11112361756846952%
> 1733934046.047 2031440                  0.11715785872197679%
> 1762796865.803 2285487                  0.12965118354456009%
> 1711072016.023 2270996                  0.13272357789349024%
> 2082560830.257 2273483                  0.10916766353083858%
> 1857948273.729 1266725                  0.06817870109255604%
> 1738287034.188 2404600                  0.1383315846409251%
> 1618942973.292 2016207                  0.12453848179100423%
> 1820789056.854 2369799                  0.13015230902664757%
> 1561747605.669 2487149                  0.15925422206327566%
> 1884502059.843 2512148                  0.13330566485076115%
> 1352203145.315 2618029                  0.19361210695824271%
> 1911003204.592 1648292                  0.086252707271200574%
> 1525244016.511 2555354                  0.16753738892517536%
> 2190575134.148 1939935                  0.088558249829422828%
> 1643983673.168 1747429                  0.10629235730989092%
> 1781900292.843 1686195                  0.094629032094141294%
> 1566821289.746 2291057                  0.14622324926229507%
> 1777199439.264 2456866                  0.13824368530171682%
> 1633063412.403 1953080                  0.11959609070698031%
> 1913601422.874 1821650                  0.095194849785599556%
> 2094732749.709 2322465                  0.11087166132876074%
> 1951529182.943 2270128                  0.11632559839953495%
> 1450396654.276 2867633                  0.19771370759479912%
> 1643954213.946 2460211                  0.14965203891504558%
> 1845971802.604 2593942                  0.14051904781757141%
> 1671974226.831 2552423                  0.15265923116756236%
> 1792483105.554 1547320                  0.086322710390164162%
> 1774273751.516 2101959                  0.1184686973024323%
> 1797523443.598 1781759                  0.099122990932099045%
> 1877038808.523 2131598                  0.11356174365288201%
> 1485614991.186 1796722                  0.12094129439052281%
> 2008042349.453 1972441                  0.09822706182154485%
> 2178564679.489 1948988                  0.089462021410222761%
> 1462911389.586 2076158                  0.14191960051575969%
> 1976013519.965 2692701                  0.13626936115536772%
> 1473561005.083 1369873                  0.092963439944099252%
> 2190713955.687 2450228                  0.11184609444967988%
> 1648795783.114 2557892                  0.15513698095279177%
> 2116292380.702 1948901                  0.092090347145394241%
> 1704227210.803 1980402                  0.11620527987385389%
> 1984573918.515 2325530                  0.11718031655581404%
> 1856414008.018 1798348                  0.096872141248277158%
> 1401593348.875 2285205                  0.16304336788086488%
> 1832475317.969 2373585                  0.12952889333487622%
> 1840826298.949 2112188                  0.11474129857911804%
> 2014475390.352 2104652                  0.10447643143618861%
> 1730176303.748 1975645                  0.11418749613667999%
> 2016553863.650 2009045                  0.099627638825555156%
> 1891795883.646 2160557                  0.11420666567029553%
> 1881160108.475 1492908                  0.079361027978115894%
> 1562754135.542 1978972                  0.12663361145505117%
> 2061996559.038 2071212                  0.10044691834821971%
> 1519528906.706 2460493                  0.16192472477103448%
> 1796244525.568 2099254                  0.1168690548596764%
> 1998463642.677 1988093                  0.099481069234609226%
> 1872169708.204 1762657                  0.094150492462082555%
> 1664425938.102 1710870                  0.10279039522485223%
> 1791543540.761 1992110                  0.11119517637588673%
> 1883913354.514 1770358                  0.093972368514618113%
> 1813806740.237 1877185                  0.10349421238531283%
> 1547586337.236 2702003                  0.17459465329900728%
> 2020313568.921 2100334                  0.10396079263684484%
> 1727289498.314 2059429                  0.1192289423405978%
> 
> Detailed time after patch:
> 
> Total          add_to_page_cache_lru    percent
> 2151489401.227 6287717                  0.29224949918015392%
> 1919030541.464 6872841                  0.3581413037208262%
> 2277104485.950 8538296                  0.37496285535785828%
> 2142847301.255 7992466                  0.37298345968558083%
> 1909650847.324 6960671                  0.36449966808089612%
> 2109123648.836 6825371                  0.32361170497361974%
> 2128503623.032 7728883                  0.36311345286743746%
> 1925232499.136 7526064                  0.39091714914315673%
> 1935780958.829 7499162                  0.38739723964101919%
> 1722848267.832 7353451                  0.42681942091473007%
> 1855159456.452 7600681                  0.40970499724785564%
> 1862769335.900 8607712                  0.46209221045831578%
> 2272365556.764 6895008                  0.30342864419310028%
> 2049429274.204 7252089                  0.35385895435775488%
> 2001218334.232 8155639                  0.4075336938750293%
> 1947131845.644 7229822                  0.37130623774523025%
> 1982915408.746 7513518                  0.37891268416495716%
> 2038654062.353 7531559                  0.36943781385386831%
> 2134879530.359 6738727                  0.31564905205057731%
> 2029761134.284 7472398                  0.36814174208907074%
> 1956557094.935 7280443                  0.37210480690019776%
> 1740007857.373 6663035                  0.38293131676196024%
> 2054278081.418 7765213                  0.37800203732105886%
> 2367585922.353 7629987                  0.32226864199365651%
> 2023763123.141 7730698                  0.38199618876350999%
> 1826074987.177 7579606                  0.41507638258150648%
> 2077873224.783 7414675                  0.35683962387909118%
> 2103719398.720 7093390                  0.33718327664402131%
> 2164758918.301 7181094                  0.33172719323572736%
> 1953199921.042 7750654                  0.39681826302067191%
> 2179298642.359 6395109                  0.29344803303679207%
> 1971922836.328 7215479                  0.36591081897688477%
> 2225552712.785 8153246                  0.36634701812105075%
> 2124780733.448 7080842                  0.33325048032177529%
> 2139511762.563 8708060                  0.40701155059639843%
> 1934365642.348 6842114                  0.35371358186939283%
> 1950765025.910 6818753                  0.34954250816646476%
> 2013188877.577 6495929                  0.32266863146086228%
> 1921391492.273 6536576                  0.34020011154870117%
> 2164698840.945 6712421                  0.31008567441509277%
> 1992440404.239 7467130                  0.3747730664422067%
> 2073623249.374 7113197                  0.34303227465005426%
> 1938481781.041 6902169                  0.35606055561138211%
> 1963963682.421 7776006                  0.39593430721765843%
> 1807704433.895 7206899                  0.39867684477995868%
> 1902413226.299 7687850                  0.40411041585093088%
> 1718395340.661 7096452                  0.41296969516166576%
> 2014139552.830 7653595                  0.37999328245384933%
> 1976902280.499 7781174                  0.3936043818026207%
> 1920129734.441 6808420                  0.3545812492707483%
> 1786139514.638 7179970                  0.4019825966089316%
> 2011990483.317 6739406                  0.33496212113733792%
> 2186643920.919 7830962                  0.35812698743876015%
> 1822975832.465 8627042                  0.47323951565143058%
> 1872249428.425 7264440                  0.38800599373722838%
> 1971668701.573 6818269                  0.34581210294408871%
> 2054585589.388 7261214                  0.35341501651254642%
> 2252858576.565 7228902                  0.32087686618225808%
> 2196771348.820 6634658                  0.30201859668116204%
> 2224872312.502 6948714                  0.31231967609798522%
> 1924947573.139 6935037                  0.360271474235066%
> 2070207954.999 7564561                  0.36540102078796494%
> 2070702822.858 6994172                  0.33776802362912656%
> 2099826181.510 7199665                  0.34286957003377627%
> 2369037401.585 7009501                  0.29587971027009985%
> 2109093017.803 7056062                  0.33455432929886414%
> 2141046841.968 7831694                  0.36578807368835009%
> 2284785719.942 7358167                  0.3220506385249462%
> 2088247084.213 6857813                  0.32840045853982414%
> 1880913709.753 6697468                  0.35607523967059107%
> 1984586172.943 7361786                  0.37094816543455983%
> 2130320004.839 7840067                  0.36802297223850727%
> 2314059227.236 6669054                  0.28819720435443524%
> 1935408704.712 8309322                  0.42933164348025787%
> 2239440115.241 7040432                  0.31438357972087749%
> 2387500130.769 6555638                  0.27458168129559291%
> 2497500671.323 6969731                  0.27906823329532587%
> 2229438175.095 6759889                  0.30321042653322067%
> 1979317661.013 7870099                  0.39761677243723181%
> 2228213884.202 5883791                  0.26405862748257614%
> 2264526373.743 6563122                  0.28982316461838858%
> 2256376049.198 6670128                  0.29561242694323103%
> 2085817937.654 6878115                  0.32975624937505721%
> 2177225113.484 7421724                  0.34087995559282069%
> 1843473456.551 7156295                  0.38819625932607071%
> 2403022978.094 6958096                  0.28955594946157931%
> 1935191866.634 6872608                  0.35513832599730566%
> 1917810458.850 7816937                  0.40759695328220108%
> 2016838266.381 7257719                  0.35985627211562177%
> 1904575178.166 7484129                  0.39295529448235278%
> 2087232238.930 7372521                  0.35321996577532039%
> 1976631116.176 6438233                  0.32571747693901715%
> 2004191806.805 6735567                  0.33607397141980955%
> 2110550986.328 7174599                  0.33993961986592813%
> 2152621184.889 7337361                  0.34085704681840484%
> 2059135774.936 6363510                  0.30903790208772336%
> 2353978555.486 7265456                  0.30864580236160993%
> 1945677192.325 5927833                  0.30466682877217138%
> 2255676557.335 6379740                  0.28283044301074045%
> 2034627875.756 7319043                  0.35972391252530572%
> 1712556465.847 3079747                  0.17983331127577226%
> 1837380343.831 3111263                  0.1693314620702272%
> 1680363376.083 1611968                  0.095929727042585719%
> 1769978476.954 2017096                  0.11396161175198416%
> 1829700109.543 2612874                  0.14280340184559598%
> 1783959966.875 3184558                  0.17851062014460206%
> 1772032973.967 2133741                  0.12041203698502599%
> 1667688494.152 1985120                  0.11903422053705601%
> 2001252356.720 2633874                  0.13161128785961057%
> 2077009766.270 2858188                  0.13761071548223289%
> 2076612330.379 2340135                  0.11269002720276176%
> 1834812072.536 1713713                  0.093399919569494547%
> 1787949752.795 2522212                  0.14106727529994451%
> 1907464219.876 2476303                  0.12982172741153589%
> 1609254879.065 1903707                  0.11829741980375917%
> 2069557067.911 2484547                  0.12005211349440528%
> 1725151836.363 2491288                  0.1444097816486799%
> 2077004221.561 2508662                  0.12078271069254648%
> 1650748196.246 3195100                  0.19355465644403197%
> 1843881436.725 2731880                  0.14815920078094685%
> 1677080490.297 2752567                  0.16412849686853959%
> 2103777441.563 3252694                  0.15461207710181613%
> 1598451912.768 2345538                  0.1467381021139566%
> 1825835416.807 2381575                  0.13043755083713246%
> 1969692431.120 2198750                  0.11162910336969484%
> 1867823718.088 1813348                  0.097083465770326324%
> 1929972836.031 2140104                  0.11088777831718792%
> 1627140530.277 2519227                  0.15482541016731566%
> 1779407314.725 2828755                  0.15897175293095681%
> 1724839045.836 1937500                  0.11232932166496305%
> 1780135194.997 2889504                  0.16231935687361485%
> 1758590417.053 2193512                  0.12473126082853507%
> 1729351400.188 1523643                  0.088104881392778986%
> 1484255938.207 2153531                  0.14509162096406991%
> 1504352024.282 1910774                  0.12701641432044322%
> 1916441202.247 2423510                  0.12645887581411155%
> 1651813655.113 2892863                  0.1751325272705837%
> 1772411947.023 2693122                  0.15194673024651262%
> 1738795901.180 3064160                  0.17622309771495132%
> 1717902110.376 3266140                  0.19012375503078779%
> 1858583685.387 2246750                  0.12088505982619635%
> 1641867344.242 2901893                  0.17674345069209688%
> 2037933222.333 3290649                  0.16146991294606342%
> 1713754879.753 2136278                  0.1246548164640615%
> 2265307843.106 2195967                  0.096939010151886218%
> 2066343912.900 2117667                  0.10248376307446183%
> 2033259596.459 2652081                  0.13043494321230309%
> 2029016228.457 2447926                  0.12064595470789147%
> 1649943910.454 2243384                  0.13596728869302646%
> 2064977308.315 2517573                  0.12191770775700743%
> 1962826877.902 2403546                  0.12245328546596376%
> 1991037543.226 3214700                  0.16145853255942866%
> 1469646744.644 1960481                  0.133398111290676%
> 2195532272.023 1693642                  0.077140382839349028%
> 1902754342.931 2542547                  0.13362455376575119%
> 1922726134.774 2726990                  0.14182935108023245%
> 1629134454.130 2814497                  0.17276026499009955%
> 1442857977.322 2886065                  0.2000241912483062%
> 1782430811.270 2884583                  0.16183421997427802%
> 1574026949.337 2873023                  0.18252692568003068%
> 2064769936.712 2717133                  0.13159495165484839%
> 1621381781.294 2143854                  0.13222388611576869%
> 1783777994.311 2515565                  0.14102455619605617%
> 1561198792.593 2402227                  0.15387066729728466%
> 1658682002.165 2924639                  0.17632306832669586%
> 1675144757.604 2216513                  0.13231769910860314%
> 1712859849.041 2274046                  0.13276310967725691%
> 1448178253.374 2507727                  0.17316424923226392%
> 1621787692.726 2822681                  0.17404750403892047%
> 1924315582.555 2275728                  0.11826168330344308%
> 2044659318.750 2606738                  0.12749008972280165%
> 1559320878.499 2049522                  0.13143683434629996%
> 1641314354.590 2786145                  0.16975084585158451%
> 1769603624.855 2008994                  0.11352790940200608%
> 1707747444.550 2813289                  0.16473682973311757%
> 1366611645.499 2930513                  0.21443641356721807%
> 1435165128.768 3161655                  0.22029903992400404%
> 1440555681.860 2831258                  0.19653929630435177%
> 1627011278.312 1956565                  0.12025515901954331%
> 1668464384.654 3863649                  0.23156916237089648%
> 1589045506.115 2743558                  0.17265446391825656%
> 1766150748.153 3207045                  0.18158387687765917%
> 1668645748.936 2997211                  0.17961937109246526%
> 1808149919.182 2420007                  0.13383884678626659%
> 1831096162.185 2226869                  0.12161398434382248%
> 1473136553.216 2774496                  0.18833936296964501%
> 1873520917.567 2427200                  0.12955286366121929%
> 1971938578.205 2207736                  0.11195764535473715%
> 1670588149.850 2437810                  0.14592525394238479%
> 1912140400.200 2407058                  0.12588291109524352%
> 1925513187.452 2415130                  0.12542786077699639%
> 1658671061.956 3111210                  0.18757245311382492%
> 1917423750.996 2888924                  0.15066695603928745%
> 1553962205.772 3386946                  0.21795549386076499%
> 1834101490.364 2367281                  0.12907033838842713%
> 1626846627.678 3362957                  0.20671629044711806%
> 1519340210.104 2320735                  0.15274623712098975%
> 1725615314.262 3813557                  0.22099693764197714%
> 1725823077.103 3137784                  0.1818137699993643%
> 1633124107.941 2007344                  0.12291435722731486%
> 
> Thanks,
> Fengguang

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2009-09-26 11:32 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-26  3:15 [RFC][PATCH] HWPOISON: remove the unsafe __set_page_locked() Wu Fengguang
2009-09-26  3:15 ` Wu Fengguang
2009-09-26  3:49 ` Andi Kleen
2009-09-26  3:49   ` Andi Kleen
2009-09-26 10:52   ` Wu Fengguang
2009-09-26 10:52     ` Wu Fengguang
2009-09-26 11:31     ` Wu Fengguang [this message]
2009-09-26 11:31       ` Wu Fengguang
2009-09-27 10:47       ` Wu Fengguang
2009-09-27 10:47         ` Wu Fengguang
2009-09-27 19:20         ` Nick Piggin
2009-09-27 19:20           ` Nick Piggin
2009-09-28  8:44           ` Wu Fengguang
2009-09-28  8:44             ` Wu Fengguang
2009-09-29  5:16             ` Wu Fengguang
2009-09-29  5:16               ` Wu Fengguang
2009-10-01  2:02             ` Nick Piggin
2009-10-01  2:02               ` Nick Piggin
2009-10-02 10:54               ` Wu Fengguang
2009-10-02 10:54                 ` Wu Fengguang
2009-09-26 11:09 ` Hugh Dickins
2009-09-26 11:09   ` Hugh Dickins
2009-09-26 11:48   ` Wu Fengguang
2009-09-26 11:48     ` Wu Fengguang
2009-09-26 11:58     ` Hugh Dickins
2009-09-26 11:58       ` Hugh Dickins
2009-09-26 15:05     ` Andi Kleen
2009-09-26 15:05       ` Andi Kleen
2009-09-26 19:12       ` Nick Piggin
2009-09-26 19:12         ` Nick Piggin
2009-09-26 19:14     ` Nick Piggin
2009-09-26 19:14       ` Nick Piggin
2009-09-26 19:06   ` Nick Piggin
2009-09-26 19:06     ` Nick Piggin
2009-09-26 21:32     ` Andi Kleen
2009-09-26 21:32       ` Andi Kleen
2009-09-27 16:26       ` Hugh Dickins
2009-09-27 16:26         ` Hugh Dickins
2009-09-27 19:22         ` Nick Piggin
2009-09-27 19:22           ` Nick Piggin
2009-09-27 21:57           ` Hugh Dickins
2009-09-27 21:57             ` Hugh Dickins
2009-09-27 23:01             ` Nick Piggin
2009-09-27 23:01               ` Nick Piggin
2009-09-28  1:19               ` Andi Kleen
2009-09-28  1:19                 ` Andi Kleen
2009-09-28  1:52                 ` Wu Fengguang
2009-09-28  1:52                   ` Wu Fengguang
2009-09-28  2:57                 ` Nick Piggin
2009-09-28  2:57                   ` Nick Piggin
2009-09-28  4:11                   ` Andi Kleen
2009-09-28  4:11                     ` Andi Kleen
2009-09-28  4:29                     ` Nick Piggin
2009-09-28  4:29                       ` Nick Piggin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090926113156.GA12240@localhost \
    --to=fengguang.wu@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=andi@firstfloor.org \
    --cc=hugh.dickins@tiscali.co.uk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=npiggin@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.