On Wed, Aug 18, 2010 at 02:43:19PM +0400, pluknet wrote: > On 18 August 2010 12:07, pluknet <pluknet_at_gmail.com> wrote: > > On 17 August 2010 20:04, Kostik Belousov <kostikbel_at_gmail.com> wrote: > > > >> > >> Also please take a note of the John' suggestion to use the taskqueue. > > > > I decided to go this road. Thank you both. > > Now I do nfs buildkernel survive and prepare some benchmark results. > > > > So, I modified the patch to defer proc_create() with taskqueue(9). > Below is `time make -j5 buildkernel WITHOUT_MODULES=yes` perf. evaluation. > Done on 4-way CPU on clean /usr/obj with /usr/src & /usr/obj both > nfs-mounted over 1Gbit LAN. > > clean old > 1137.985u 239.411s 7:42.15 298.0% 6538+2133k 87+43388io 226pf+0w > > clean new > 1134.755u 240.032s 7:41.25 298.0% 6553+2133k 87+43367io 224pf+0w > > Patch needs polishing, though it generally works. > Not sure if shep_chan (or whatever name it will get) needs locking. As I said yesterday, if several requests to create nfsiod coming one after another, you would loose all but the last. You should put the requests into the list, probably protected by nfs_iod_mtx.
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:06 UTC