It's running the 2.2.18 kernel.



On Tue, 10 Apr 2001 [EMAIL PROTECTED] wrote:

> If you are using a Linux 2.4.x kernel, you must use the vmalloc
> patch.
>
> On Tue, Apr 10, 2001 at 03:59:50PM -0500, Ken Teh wrote:
> > It appears that I cannot page when running my rt code.  RTLinux is version
> > 3.0
> >
> > I have a statically defined buffer that is partitioned into n+2 buffers, each
> > 2048 bytes long and a function that fills these buffers with multiple
> > blocks of "event" data.  The function writes arbitrary length event data and
> > I allow the function to overrun a buffer boundary.  The calling function
> > actually catches the overrun and translates (shifts) the "last" event into
> > the next buffer so that the completed buffer does not contain partial event
> > data.
> >
> > The system does an oops when the function overflows from buffer 1 (first
> > buffer is buffer 0) into buffer 2.  At times it's worse -- it resets the
> > computer and goes into the reboot cycle.  If I fix the function so it never
> > overruns a buffer boundary, then the code runs without any problems.
> >
> > The n buffers are actually made into a circular buffer queue.  The n+1
> > buffer is used for the overflow of buffer n, and the n+2 buffer is the
> > temporary buffer which I use to translate an event data block that has
> > overrun a buffer boundary.  I've checked that with my modified function
> > (that does not overrun a buffer boundary), that the buffers "circulate"
> > without any problems.
> >
> > My inference is that my logically contiguous buffer that is partitioned into
> > n+2 buffers is not really physically contiguous and that when my function
> > overflows buffer 1, ie, crosses a page boundary, the system does a hard
> > crash.  I have the same behaviour with the mbuff device.  The function is
> > called by a thread that is dispatched by an interrupt handler.
> >
> > Can anyone shed light on this?
> >
> > The oops message repeats, but I don't know how to read an oops and I've seen
> > 2 varieties of oops messages - one says kernel cannot deference NULL virtual
> > pointer, process is init, the second variety says something about trying to
> > kill an interrupt handler, aiee killing idle task.  I'm not sure I believe
> > either one.
> >
> > Ken
> >
> > -- [rtl] ---
> > To unsubscribe:
> > echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
> > echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
> > --
> > For more information on Real-Time Linux see:
> > http://www.rtlinux.org/rtlinux/
>
>

-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
--
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/

Reply via email to