linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/13] USBATM: summary
@ 2006-01-12 16:29 Duncan Sands
  2006-01-12 16:43 ` [PATCH 01/13] USBATM: trivial modifications Duncan Sands
                   ` (13 more replies)
  0 siblings, 14 replies; 20+ messages in thread
From: Duncan Sands @ 2006-01-12 16:29 UTC (permalink / raw)
  To: Greg KH; +Cc: linux-usb-devel, linux-kernel, usbatm

Hi Greg, here are some fixes and improvements to the USB ATM
modem drivers, in thirteen patches:

01: trivial modifications (formatting, changes to variable names,
comments, log level changes, printk rate limiting).

02: have minidrivers tell the core about special requirements
using a flags field.

03: remove the unused .owner field in struct usbatm_driver.

04: use kzalloc rather than kmalloc + memset.

05: make xusbatm useable.

06: sternly tell open connections that the game is up when the
modem is disconnected.

07: return the correct error code when out of memory.

08: use dev_kfree_skb_any rather than dev_kfree_skb.

09: specify buffer sizes in bytes, rather than in ATM cells.

10: add mechanism for turning on isochronous urb support.

11: remove the assumption that incoming urbs contain
complete ATM cells.

12: bump some version numbers.

13: EILSEQ hack needed by the ueagle.

All the best,

Duncan.

^ permalink raw reply	[flat|nested] 20+ messages in thread
* R: [PATCH 06/13] USBATM: shutdown open connections when disconnected
@ 2006-08-18 22:40 Giampaolo Tomassoni
  0 siblings, 0 replies; 20+ messages in thread
From: Giampaolo Tomassoni @ 2006-08-18 22:40 UTC (permalink / raw)
  To: linux-kernel

> -----Messaggio originale-----
> Da: usbatm-bounces@lists.infradead.org
> [mailto:usbatm-bounces@lists.infradead.org]Per conto di Duncan Sands
> Inviato: venerdì 13 gennaio 2006 10.05
> A: Greg KH
> Cc: linux-kernel@vger.kernel.org;
> linux-atm-general@lists.sourceforge.net; usbatm@lists.infradead.org;
> linux-usb-devel@lists.sourceforge.net
> Oggetto: [PATCH 06/13] USBATM: shutdown open connections when
> disconnected
> 
> 
> This patch causes vcc_release_async to be applied to any open
> vcc's when the modem is disconnected.  This signals a socket
> shutdown, letting the socket user know that the game is up.
> I wrote this patch because of reports that pppd would keep
> connections open forever when the modem is disconnected.
> This patch does not fix that problem, but it's a step in the
> right direction.  It doesn't help because the pppoatm module
> doesn't yet monitor state changes on the ATM socket, so simply
> never realises that the ATM connection has gone down (meaning
> it doesn't tell the ppp layer).  But at least there is a socket
> state change now.

> Unfortunately this patch may create problems
> for those rare users like me who use routed IP or some other
> non-ppp connection method that goes via the ATM ARP daemon: the
> daemon is buggy, and with this patch will crash when the modem
> is disconnected.  Users with a buggy atmarpd can simply restart
> it after disconnecting the modem.

The problem is not only atmarpd, but also atmarp: it fails when establishing a PVC on a 'disconnected' VC, ie: a VC on and ADSL modem which didn't yet reach showtime.

CLIP and other protocols-over-ATM are designed to be connectionless. Thereby, you setup a CLIP connection, probably at systems startup, and forget about it: if a carrier is available, cells are exchanged, otherwise both parties discard outgoing cells. The connectionless design is one of the pros of CLIP with respect to, in example, PPPoA. It is not a con.

With this patch, the CLIP protocol becomes susceptible to connection status: it fails during setup if the ADSL modem is not yet at showtime (and who knows how long it will take to get it) and may discard the VC when the carrier happens to get lost after CLIP is started.

To my knowledge, no other ATM interface driver under Linux does reject a vcc open or a send due to the state of the physical carrier. Also note that there is not a per-interface instance of atmarpd and friends: they are scheduled systemwide and they may work at once on more interfaces. Making them die causes troubles not only to the outstanding network activity of the disconnected ADSL, but also to the one on other ATM interfaces.

pppd is designed to work both with connectionless (a cross-wire cable or an ATM VC) and connection-oriented carriers (a voice or ISDN modem): enabling its lcp echo feature usually is enough in order to detect a lost carrier. Out-of-sync peers state should be also detected. If it doesn't, it's pppd failure.

In summary, I'm not shure that the new USBATM behaviour is compatible with the (at least de-facto) actual standard of the Linux ATM stack. I'm not even shure that's compatible with ATM blueprints.

I'm however pretty shure that, when there is a patch that may impair and/or be incompatible with current software, the Linux end-user had always been provided with an option to disable the new feature and continue working the way it was used to.

I need that option.

Regards,

	giampaolo

> 
> Signed-off-by: Duncan Sands <baldrick@free.fr>
> 


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

end of thread, other threads:[~2006-08-18 22:40 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-01-12 16:29 [PATCH 00/13] USBATM: summary Duncan Sands
2006-01-12 16:43 ` [PATCH 01/13] USBATM: trivial modifications Duncan Sands
2006-01-12 17:40   ` Duncan Sands
2006-01-12 17:48 ` [PATCH 02/13] USBATM: add flags field Duncan Sands
2006-01-12 18:30 ` [PATCH 00/13] USBATM: summary Greg KH
2006-01-12 19:15   ` Duncan Sands
2006-01-13 10:30   ` [linux-usb-devel] " Duncan Sands
2006-01-13  8:36 ` [PATCH 03/13] USBATM: remove .owner Duncan Sands
2006-01-13  8:38 ` [PATCH 04/13] USBATM: kzalloc conversion Duncan Sands
2006-01-13  8:48 ` [PATCH 05/13] USBATM: xusbatm rewrite Duncan Sands
2006-01-13  9:05 ` [PATCH 06/13] USBATM: shutdown open connections when disconnected Duncan Sands
2006-08-18 19:40   ` R: " Giampaolo Tomassoni
2006-01-13  9:07 ` [PATCH 07/13] USBATM: return correct error code when out of memory Duncan Sands
2006-01-13  9:13 ` [PATCH 08/13] USBATM: use dev_kfree_skb_any rather than dev_kfree_skb Duncan Sands
2006-01-13  9:52 ` [PATCH 09/13] USBATM: measure buffer size in bytes; force valid sizes Duncan Sands
2006-01-13  9:59 ` [PATCH 10/13] USBATM: allow isochronous transfer Duncan Sands
2006-01-13 10:06 ` [PATCH 11/13] USBATM: handle urbs containing partial cells Duncan Sands
2006-01-13 10:08 ` [PATCH 12/13] USBATM: bump version numbers Duncan Sands
2006-01-13 10:12 ` [PATCH 13/13] USBATM: -EILSEQ workaround Duncan Sands
2006-08-18 22:40 R: [PATCH 06/13] USBATM: shutdown open connections when disconnected Giampaolo Tomassoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).