On 19 August 2010 04:04, Rick Macklem <rmacklem_at_uoguelph.ca> 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. >> > >> > I'm away from home, so I can only do email and haven't looked at the > patch, but I think you might want to consider avoiding the malloc() > failure by calling malloc(... M_WAITOK); before grabbing the mutex. > Then, set the pointer to NULL if you use it and free it at the end > (I tend to test for non-NULL before calling free(), but others have > pointed out that this isn't necessary.) > > I believe this is called "Dykstra's technique", although I used it > a lot before I found out it had been published. > > I think handling the case where malloc() fails correctly could > be difficult which is why I suggested the above. > > Good luck with the patch, rick Nice :) I need to step back and get a timeout to re-think how to use this technique. -- wbr, pluknetReceived on Thu Aug 19 2010 - 07:32:16 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:06 UTC