adding proc to allproc

Julian Elischer julian at elischer.org
Fri Dec 19 21:39:10 PST 2008


Ferner Cilloniz wrote:
> When i run the code from a KLD it hangs the system. No reboot occurs
> however, it just hangs there.

well, firstly you have no locking though that would probably let you 
get away with it most times.

Where does the process come from in the first place?

It sounds like you are making a circular list somewhere or somehow...

have you tried going into ddb?




> 
> 
> On Fri, 2008-12-19 at 21:27 -0800, Julian Elischer wrote:
>> Ferner Cilloniz wrote:
>>> Hello everyone.
>>>
>>> I am playing with freebsd and just learning some things about the
>>> FreeBSD kernel. 
>>>
>>> So for my first quest i am placing random processes from the allproc
>>> list into a list of my own and trying to add them back into allproc
>>>
>>> I have pasted the code below.
>>>
>>> -----------------------------------------------------------------------
>>> struct proc *p = a process from my own list;
>>> if( p != NULL && (p->p_state == PRS_NEW || p->p_state == PRS_NORMAL) ){
>>>        LIST_INSERT_HEAD(&allproc, p, p_list);
>>> }
>>> -----------------------------------------------------------------------

>>
>>> _______________________________________________
>>> freebsd-hackers at freebsd.org mailing list
>>> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
>>> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe at freebsd.org"



More information about the freebsd-hackers mailing list