David Hedley ([EMAIL PROTECTED]) wrote:
> 
> 2) pppoa2 freezes under heavy load.
> 
> I use the excellent userland ppp which uses pppoa2. Under heavy load,
> the pppoa2 process which reads from the USB hangs in
> pusb_endpoint_read in pusb-bsd.c. This will normally be observed as an
> LQR timeout in the upper PPP layer (assuming you enable LQR). I'm not
> sure why this is happening. The only way I've found to unwedge it is
> to send the pppoa2 process a signal. To this end, the following patch
> uses a watchdog timer to ensure the process doesn't get wedged:

Well we are experimenting similar problems with GNU/Linux pppoa3 (well
it's posix compliant but for  an unknown reason, it still doesn't work
with BSD  systems). The daemon  hangs in a pusb_endpoint_read.  But we
have noticed  this bug occurs when  using a buggy usb  chipset. But we
are not  sure. Special sequences of  bytes seems to hang  up the pppoa
slave in a usb read ioctl, just  like you. So this is a problem in the
way we use the usb or the kernel usb implementation.

> 3) Heavy usages causes large amounts of bad data to be read from the USB. In the 
>logs this looks like:
> 
> Jul  3 13:58:35 exoserver pppoa2[6631]: Cell had wrong VPI(4068)/VCI(31234) (OAM?) 
>PTI=0x06 
> [...]
>
> Not sure why this is happening - it doesn't seem to affect throughput
> that much but is quite noisy. It seems to result from a read from
> pusb_endpoint_read which returns a non-integer number of ATM
> cells. This looks to me like a synchronisation/locking issue between
> the read syscall in pppoa2 and the USB subsystem. 

You're right, the modem is supposed to give us atm cells, so we expect
an integer number  of cells in our little  atm stack implementation. I
should have  write it again to  make it more robust,  but i'm actually
very  lazy.  But   for  sure  i'll  write  a   new  atm  stack  before
September. This  kind of things  would not occur  anymore if i  do the
code more complete  (the current code is small and  very fast, i think
it could even be fooled by wrong atm cells - DoS - Attack ?) 


> 4) Random kernel panics
> 
> This is the most disturbing bug of the lot. It looks like there's some
> memory corruption happening inside the USB subsystem that occasionally
> causes random kernel panics - the panic will typically occur as a
> fatal trap inside kernel malloc. Good luck to anyone attempting to
> track that one down.... 
 

Well as the driver is userland, the kernel panic must be caused by the
kernel code itself. And as you say...

"Good luck to anyone attempting to track that one down...."

Btw  i'll have a  look at  all your  patches (not  the kernel  one) to
update both pppoa3 and pppoa2.

-- 
Edouard Gomez


Liste de diffusion modem ALCATEL SpeedTouch USB
Pour se désinscrire : mailto:[EMAIL PROTECTED]?subject=unsubscribe

        

Reply via email to