Subject: Re: Kernel threads
To: Bill Studenmund <wrstuden@zembu.com>
From: Bharani Chadalavada <bharani.chadalavada@nexsi.com>
List: tech-kern
Date: 02/05/2001 10:55:41
Sorry!!

I put a break-point at the wrong place. It is getting awakened. And I am so stupid. I
tried to print a message and found that it gets awakened.

Thanks to everyone, anyway and sorry to waste your time.

Bharani.

Bill Studenmund wrote:

> On Sat, 3 Feb 2001, Bharani Chadalavada wrote:
>
> > OK. I started playing with this and I wrote a small kernel thread which is
> > awakened periodically by the interrupt service routine. Basically I have something
> > like this.
> >
> > device_monitor()
> > {
> >     while(1)
> >     {
> >         tsleep(&do_monitor, PWCHAN, "bharani", 0); /* PWCHAN = 12 */
> >         Do_read_device_registers();
> >     }
> > }
> >
> > and I have my interrupt service routine coded like this :
> >
> > service_interr()
> > {
> >     ...
> >     ...
> >     wakeup(&do_monitor);
> > }
> >
> > (I am running NetBSD on our hardware simulator and I put break points on the
> > kernel thread routine)
> >
> >
> > I can see the thread being created (when I do ps, I see "bharani"). But it does
> > not seem to be getting scheduled at all. Obviously I am missing something. I think
> > I am giving it a wrong priority or something. Could you please figure out what I
> > am doing wrong??
>
> Does anything ever wake it up once?
>
> Take care,
>
> Bill