public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Frame Relay stack on Linux
@ 2002-04-02 12:05 Madhavan N.S.
  2002-04-02 15:16 ` Arnaldo Carvalho de Melo
  2002-04-03 19:14 ` Krzysztof Halasa
  0 siblings, 2 replies; 3+ messages in thread
From: Madhavan N.S. @ 2002-04-02 12:05 UTC (permalink / raw)
  To: linux-kernel

[-- Attachment #1: Type: text/plain, Size: 2422 bytes --]

Hi,

We are developing  Frame Relay stack on Linux 2.4 kernel.
It's implemented as a dynamically loadable software module and it is
registered
as a network driver.  Frame Relay module uses the services of lower
layer
hardware driver module for transmission & reception of data packets.

Working of Frame Relay stack:

FR task is initiated after loading the module using socket
ioctl interface. Once initiated FR task goes to sleep waiting
for events. It uses interruptible_sleep_on kernel function.

There can be 3 different events which can wake up the FR task.

1. When the Frame Relay NIC gets packet from network ,lower driver
    process it as part of interrupt processing and wake up the FR task
using        wake_up_interruptible kernel function.  FR task will
process the packet and call netif_rx function to give the packet to IP
layer.

2. When IP layer sends packet through FR stack it invokes Frame Relay
   transmit function which will wake up the FR task
using                    wake_up_interruptible kernel function. FR task
will process it and
   send it using lower hardware driver.

3. After transmitting the packet FR NIC card interrupts the lower driver
which  will again wake up the FR task using  wake_up_interruptible
kernel function. This indicates transmit  completion to the FR task and
it schedules next packet to be  transmitted.

   After processing the event FR task again go back to the main loop
   again waiting for events.



Problem Description :

FR stack is crashing when TELNET/FTP application is run.
It's crashing on the server side i.e., machine which accepts the
connection.

It panics when FR task goes to sleep (by calling interruptible_sleep_on
function ) after calling netif_rx fuction. This kernel function in turn
calls schedule() and while executing schdule() function  do_page_fault()
is getting invoked and system panics.


But PING through FR stack is working absolutely fine. We have written
socket application program for data transfer through FR stack. For UDP
socket (SOCK_DGRAM) data transfer goes fine , but when data transfer
goes through TCP socket (SOCK_STREAM) it panics at the same place as
when we run telnet/ftp application i.e.,  in schedule function.

For testing the stack Uniprocessor machine is used.
Can anyone help me to solve this problem?

Please do CC to madhavan.nair@wipro.com as I have not registered in the
Mailing List.


Madhavan











[-- Attachment #2: InterScan_Disclaimer.txt --]
[-- Type: text/plain, Size: 481 bytes --]

**************************Disclaimer************************************

Information contained in this E-MAIL being proprietary to Wipro Limited
is 'privileged' and 'confidential' and intended for use only by the
individual or entity to which it is addressed. You are notified that any
use, copying or dissemination of the information contained in the E-MAIL
in any manner whatsoever is strictly prohibited.


 ********************************************************************

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Frame Relay stack on Linux
  2002-04-02 12:05 Frame Relay stack on Linux Madhavan N.S.
@ 2002-04-02 15:16 ` Arnaldo Carvalho de Melo
  2002-04-03 19:14 ` Krzysztof Halasa
  1 sibling, 0 replies; 3+ messages in thread
From: Arnaldo Carvalho de Melo @ 2002-04-02 15:16 UTC (permalink / raw)
  To: Madhavan N.S.; +Cc: linux-kernel

Em Tue, Apr 02, 2002 at 05:35:52PM +0530, Madhavan N.S. escreveu:
> We are developing  Frame Relay stack on Linux 2.4 kernel.
> It's implemented as a dynamically loadable software module and it is
> registered
> as a network driver.  Frame Relay module uses the services of lower
> layer
> hardware driver module for transmission & reception of data packets.

Have you looked at the wanrouter framework? Look at net/wanrouter and
driver/net/wan, specifically for the cycx_*.c, sdla_*.c files and see
if this fits your needs... From what I've read here, yes, its what you
need.

- Arnaldo

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Frame Relay stack on Linux
  2002-04-02 12:05 Frame Relay stack on Linux Madhavan N.S.
  2002-04-02 15:16 ` Arnaldo Carvalho de Melo
@ 2002-04-03 19:14 ` Krzysztof Halasa
  1 sibling, 0 replies; 3+ messages in thread
From: Krzysztof Halasa @ 2002-04-03 19:14 UTC (permalink / raw)
  To: linux-kernel

"Madhavan N.S." <madhavan.nair@wipro.com> writes:

> We are developing  Frame Relay stack on Linux 2.4 kernel.

Have you looked at existing implementations: drivers/net/wan/hdlc_fr.c
(and other files) and comx-proto-fr.c in the same dir?

I'm also told "Tulika Pradhan" <tulikapradhan@hotmail.com> is going to
start working on SVC support.
-- 
Krzysztof Halasa
Network Administrator

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2002-04-04  6:05 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-04-02 12:05 Frame Relay stack on Linux Madhavan N.S.
2002-04-02 15:16 ` Arnaldo Carvalho de Melo
2002-04-03 19:14 ` Krzysztof Halasa

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox