Date: Tue, 26 Aug 2003 12:04:13 +0800 From: David Xu <davidxu@viatech.com.cn> To: Jeff Roberson <jroberson@chesapeake.net> Cc: "freebsd-java@freebsd.org" <freebsd-java@freebsd.org> Subject: Re: vmark hangs with libthr and libkse Message-ID: <3F4ADC3D.1080908@viatech.com.cn> In-Reply-To: <20030825234011.F12093-100000@mail.chesapeake.net> References: <20030825234011.F12093-100000@mail.chesapeake.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Jeff Roberson wrote: >On Mon, 25 Aug 2003, David Xu wrote: > > > >>Sheldon Hearn wrote: >> >> >> >>>On (2003/08/25 15:47), David Xu wrote: >>> >>> >>> >>> >>> >>>>>I heartily endorse your patch. :-) >>>>> >>>>> >>>>> >>>>> >>>>> >>>>Thanks, I am pleased to see libkse works. :-) >>>>However don't expect I will commit it, kernel scheduler interface is a >>>>bit weird, so >>>>I won't try to add another weird code. >>>> >>>> >>>> >>>> >>>Does Jeff know about your patch? Perhaps he'd be willing to review and >>>commit, since he's the original author of SCHED_ULE. >>> >>> >>> >>> >>No, I think he does not know the patch. >>Please don't commit it, there is a performance problem, after each time >>a thread is exited, >>I must exit a kse and then let scheduler reinitialized it. In general, I >>needn't manage a struct kse, >>it should be a scheduler internal data. >> >> >> > >Why do you need to do adjustrunqueue() in sched_prio? I also don't >understand the case in sched_switchout(). Can you please explain that? > > adjustrunqueue maintains kg_last_assigned and related things, when a thread's priority is changed, the thread might no longer can be in scheduler's run queue, instead it will be in ksegrp's runqueue, because there is higher priority thread, and a KSE it attached should be detached now, and the KSE will attach to another higher priority thread, ULE ignores this requirement, as I can understand, ULE is only aware of 1:1 between KSE and thread. It would be nice if scheduler interface is thread aware but not kse aware. >Other than that this patch seems fine. KSE is technically missing the >proper sched api calls which is why ULE doesn't work with it. > >Cheers, >Jeff > >_______________________________________________ >freebsd-threads@freebsd.org mailing list >http://lists.freebsd.org/mailman/listinfo/freebsd-threads >To unsubscribe, send any mail to "freebsd-threads-unsubscribe@freebsd.org" > > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3F4ADC3D.1080908>