diff -ur --new-file old/atm/.kernel new/atm/.kernel --- old/atm/.kernel Thu Jun 3 02:19:54 1999 +++ new/atm/.kernel Fri Aug 27 21:31:06 1999 @@ -1,2 +1,2 @@ # this file is used to control automated generation of differences -2.3.3 +2.3.15 diff -ur --new-file old/atm/CHANGES new/atm/CHANGES --- old/atm/CHANGES Fri Jun 11 22:48:24 1999 +++ new/atm/CHANGES Fri Aug 27 23:25:27 1999 @@ -1,3 +1,56 @@ +Version 0.61 to 0.62 (27-AUG-1999) +==================== + +Bug fixes +--------- + + - lib/diag.c:set_logfile didn't set log_to_initialized (reported by Lars + Burgstahler) + - sch_atm did not use classifiers attached to the x:0 class (reported by Lars + Burgstahler) + - net/atm/atm_misc.c EXPORT'ed atm_return, which is an inline function (fixed + by Mitchell Blank) + - work-around for SO_LEVEL range problems (by Mitchell Blank) + - nicstar oops fix (by Rui Prior and John Brosnan) + - nicstar should now work also as non-module (by Rui Prior) + - nicstar fix for chip bug showing up on 64-bit CPCI bus systems (by Jay + Talbott) + - cleared confusion about inclusion of suni.o when building both nicstar and + ENI + - suni.c now always exports suni_init + - various fixes and cleanups in the Madge drivers (by Giuliano Procida) + - fixed new set of atm_pdu2truesize problems by introducing atm_alloc_charge + which handles the allocation too (problem report and work-around by Alexey + Kuznetsov) + - getsockname on unbound PVC socket caused an oops + - LANE: Token Ring source route bridge support fix (by Heikki Vatiainen) + +New features +------------ + + - upgraded to kernel version 2.3.15 (mainly by Alexey Kuznetsov and Mitchell + Blank) + - new socket option SO_ATMPVC to retrieve the "PVC" address (PVC & SVC) (based + on a patch by Jay Talbott) + - zeppelin -l now also accepts only the selector byte (by Robert Slaski) + +Other changes +------------- + + - removed obsolete drivers/atm/nicstar.c.old_skb + - removed all references to Arequipa (obsolete) + - SO_BCTXOPT/SO_BCRXOPT are now obsolete, given that the final verdict on page + flipping has been spoken in linux-kernel + - interface statistics are now counted in struct net_device_stats instead of + struct enet_statistics (by Mitchell Blank) + - added pointer to mailing list to Documentation/atm.txt + - Documentation/Configure.help now points to Documentation/atm.txt instead of + directly to the Web page. + - usage.tex: clarified the consequences of interrupting atmtcp + - changed the highly misleading "atmarpd:ITF: no such interface" message to + DIAG_DEBUG + + Version 0.60 to 0.61 (11-JUN-1999) ==================== @@ -6,7 +59,7 @@ - nicstar: driver sometimes crashed when starting for 25 Mbps cards (Rui Prior) - - Zeitnet driver: uPD98402.c wasn't compiled with -DEXPORT_SYMTAB with + - Zeitnet driver: uPD98402.c wasn't compiled with -DEXPORT_SYMTAB when building as a module - net/atm/raw.c didn't export atm_init_aal5, so ATMTCP didn't load as a module - atmtcp could still be accessed after loading and then unloading, yielding an diff -ur --new-file old/atm/Makefile new/atm/Makefile --- old/atm/Makefile Wed Jun 2 23:37:20 1999 +++ new/atm/Makefile Tue Aug 24 00:01:22 1999 @@ -2,7 +2,7 @@ # "lib" must appear before anything else # "maint" must appear after "qgen" -DIRS=lib test debug qgen saal sigd maint arpd ilmid aqd man led lane \ +DIRS=lib test debug qgen saal sigd maint arpd ilmid man led lane \ mpoad switch # extra all: diff -ur --new-file old/atm/README new/atm/README --- old/atm/README Fri Jun 11 21:42:48 1999 +++ new/atm/README Fri Aug 27 22:35:25 1999 @@ -1,4 +1,4 @@ -ATM on Linux, release 0.61 (alpha) by Werner Almesberger, EPFL ICA +ATM on Linux, release 0.62 (beta) by Werner Almesberger, EPFL ICA ============================================== Werner.Almesberger@epfl.ch This is experimental software. There are known bugs and certainly even @@ -9,7 +9,7 @@ device drivers, source for demons, management and test tools, and some documentation. -The kernel patch is relative to the "standard" 2.3.3 kernel. +The kernel patch is relative to the 2.3.15 kernel. Please see http://icawww1.epfl.ch/linux-atm/info.html for a list of features supported by ATM on Linux. diff -ur --new-file old/atm/Rules.make new/atm/Rules.make --- old/atm/Rules.make Thu Apr 22 17:19:45 1999 +++ new/atm/Rules.make Tue Aug 24 00:00:00 1999 @@ -61,8 +61,8 @@ CFLAGS_LEX=$(CFLAGS_NOWARN) $(CFLAGS_OPT) CFLAGS_YACC=$(CFLAGS_NOWARN) $(CFLAGS_OPT) -DYY_USE_CONST LDFLAGS= -LDLIBS += -L$(TOPDIR)/lib -latm -larequipa -LIBDEPS += $(TOPDIR)/lib/libatm.a $(TOPDIR)/lib/libarequipa.a +LDLIBS += -L$(TOPDIR)/lib -latm +LIBDEPS += $(TOPDIR)/lib/libatm.a YACC=bison -y -d #-v INSTROOT= INSTPREFIX=$(INSTROOT)/usr/local diff -ur --new-file old/atm/USAGE new/atm/USAGE --- old/atm/USAGE Fri Jun 11 22:49:02 1999 +++ new/atm/USAGE Fri Aug 27 23:25:42 1999 @@ -1,4 +1,4 @@ -%:Usage instructions - ATM on Linux, release 0.61 +%:Usage instructions - ATM on Linux, release 0.62 %:------------------------------------------------- %: %: @@ -20,9 +20,9 @@ In order to install this package, you need - the package itself - ftp://lrcftp.epfl.ch/pub/linux/atm/dist/atm-0.61.tar.gz - - the Linux kernel, version 2.3.3, e.g. from - ftp://ftp.kernel.org/pub/linux/kernel/v2.3/linux-2.3.3.tar.gz + ftp://lrcftp.epfl.ch/pub/linux/atm/dist/atm-0.62.tar.gz + - the Linux kernel, version 2.3.15, e.g. from + ftp://ftp.kernel.org/pub/linux/kernel/v2.3/linux-2.3.15.tar.gz - Perl, version 4 or 5 - if you want memory debugging: MPR version 1.6, e.g. from ftp://sunsite.unc.edu/pub/Linux/devel/lang/c/mpr-1.6.tar.gz @@ -36,11 +36,11 @@ all the files listed above there. Then extract the ATM on Linux distribution: -tar xfz atm-0.61.tar.gz +tar xfz atm-0.62.tar.gz and the kernel source: -tar xfz linux-2.3.3.tar.gz +tar xfz linux-2.3.15.tar.gz Finally, you can extract the ATM-related patches: @@ -63,9 +63,8 @@ atm/led/ LAN Emulation demon: zeppelin atm/lane/ LAN Emulation servers: bus, lecs, les atm/mpoad/ Multi-Protocol Over ATM demon: mpcd - atm/aqd/ Arequipa demon: aqpvc, arequipad - atm/debug/ Debugging tools: aqtest, delay, ed, encopy, endump, svctor, - zndump, and znth + atm/debug/ Debugging tools: delay, ed, encopy, endump, svctor, zndump, + and znth atm/lib/ Libraries for applications and demons atm/doc/ Documentation in LaTeX and conversion tools atm/man/ Miscellaneous man pages @@ -247,8 +246,8 @@ atmtcp (itf 1): ready -on each system. Note that atmtcp keeps running and that it must not be -interrupted. +on each system. Note that atmtcp keeps running and that interrupting it +breaks the virtual wire. Multiple "wires" can be attached to the same machine by specifying a port number (default is 8401). Note that no AAL processing is performed. It is @@ -427,9 +426,6 @@ -P use a CBR connection with a peak cell rate of cells per second. Default is to use UBR. -C disable (UDP) checksums - -Q establish an Arequipa connection to the specified ATM - destination. On the receiver, -Q enables acceptance of - incoming Arequipa connections. Example: @@ -660,8 +656,8 @@ atmaddr -a nestor-atm on nestor. Now start atmarpd on both machines in the normal way. Now you -(should) have a working ATM set-up. To get IP over ATM and Arequipa -working, just follow the instructions in section "IP over ATM". +(should) have a working ATM set-up. To get IP over ATM working, just follow +the instructions in section "IP over ATM". Q.2931 message dumper diff -ur --new-file old/atm/VERSION new/atm/VERSION --- old/atm/VERSION Fri Jun 11 21:41:33 1999 +++ new/atm/VERSION Fri Aug 27 21:30:59 1999 @@ -1 +1 @@ -0.61 +0.62 diff -ur --new-file old/atm/aqd/Makefile new/atm/aqd/Makefile --- old/atm/aqd/Makefile Wed Mar 19 20:35:53 1997 +++ new/atm/aqd/Makefile Thu Jan 1 01:00:00 1970 @@ -1,12 +0,0 @@ -LIBS=-latmd -#LIBS=-lfl # lex may want -ll here -#INCLUDES= -OBJS=arequipad.o io.o -BOOTPGMS=arequipad -SYSPGMS=aqpvc -MAN8=arequipad.8 - -include ../Rules.make - -arequipad: $(OBJS) - $(CC) $(LDFLAGS) -o arequipad $(OBJS) $(LIBS) $(LDLIBS) diff -ur --new-file old/atm/aqd/aqpvc.8 new/atm/aqd/aqpvc.8 --- old/atm/aqd/aqpvc.8 Thu Mar 20 14:24:12 1997 +++ new/atm/aqd/aqpvc.8 Thu Jan 1 01:00:00 1970 @@ -1,19 +0,0 @@ -.TH AREQUIPAD 8 "Mar 20, 1997" "Linux" "Maintenance Commands" -.SH NAME -aqpvc \- set up a PVC and await Arequipa traffic on it -.SH SYNOPSIS -.B aqpvc -.RB [\fIitf\fP.]\fIvpi\fP.\fIvci\fP -.RB [ \fIqos\fP ] -.SH DESCRIPTION -\fBaqpvc\fP opens a local PVC socket and registers it in the kernel as an -incoming Arequipa connection. After that, the socket is "owned" by the -kernel and can be attached to a INET socket according to the rules of -Arequipa. -.P -Such a PVC socket can only be closed if it has been attached to an INET socket -and if the latter is closed. There is \fIno\fP way to explicitly close the -PVC socket. -.SH AUTHOR -Werner Almesberger, EPFL LRC -.\"{{{}}} diff -ur --new-file old/atm/aqd/aqpvc.c new/atm/aqd/aqpvc.c --- old/atm/aqd/aqpvc.c Sat Jun 6 02:24:19 1998 +++ new/atm/aqd/aqpvc.c Thu Jan 1 01:00:00 1970 @@ -1,66 +0,0 @@ -/* aqpvc.c - Sets up a PVC and awaits Arequipa traffic on it */ - -/* Hacked 1997,1998 by Werner Almesberger, EPFL-LRC/ICA */ - -/* - * Features: - * - if there's no traffic on that PVC, no INET socket will ever pick it up - * - if no socket picks it up, it won't go away by itself - * - you guessed right; there's no other way to get rid of it (short of - * rebooting) - */ - - -#include -#include -#include -#include -#include -#include -#include -#include - - -static void usage(const char *name) -{ - fprintf(stderr,"usage: %s [itf.]vpi.vci [qos]\n",name); - exit(1); -} - - -int main(int argc,const char **argv) -{ - struct sockaddr_atmpvc addr; - struct atm_qos qos; - int s; - - if (argc != 2 && argc != 3) usage(*argv); - if (text2atm(argv[1],(struct sockaddr *) &addr,sizeof(addr),T2A_PVC | - T2A_NAME) < 0) usage(*argv); - if (argc == 2) { - memset(&qos,0,sizeof(qos)); - qos.aal = ATM_AAL5; - qos.txtp.traffic_class = qos.rxtp.traffic_class = ATM_UBR; - qos.txtp.max_sdu = qos.rxtp.max_sdu = RFC1626_MTU+RFC1483LLC_LEN; - } - else { - if (text2qos(argv[2],&qos,0) < 0) usage(*argv); - } - if ((s = socket(PF_ATMPVC,SOCK_DGRAM,0)) < 0) { - perror("socket"); - return 1; - } - if (setsockopt(s,SOL_ATM,SO_ATMQOS,&qos,sizeof(qos)) < 0) { - perror("setsockopt SO_ATMQOS"); - return 1; - } - if (bind(s,(struct sockaddr *) &addr,sizeof(addr)) < 0) { - perror("bind"); - return 1; - } - if (ioctl(s,AREQUIPA_INCOMING,0) < 0) { - perror("ioctl AREQUIPA_INCOMING"); - return 1; - } - return 0; -} diff -ur --new-file old/atm/aqd/arequipad.8 new/atm/aqd/arequipad.8 --- old/atm/aqd/arequipad.8 Wed Sep 4 19:58:01 1996 +++ new/atm/aqd/arequipad.8 Thu Jan 1 01:00:00 1970 @@ -1,36 +0,0 @@ -.TH AREQUIPAD 8 "Sep 4, 1996" "Linux" "Maintenance Commands" -.SH NAME -arequipad \- Arequipa demon -.SH SYNOPSIS -.B atmsigd -.RB [ \-b ] -.RB [ \-d ] -.RB [ \-l\ \fIlogfile\fP ] -.RB [ \-n ] -.SH DESCRIPTION -\fBarequipad\fP assists the kernel in managing Arequipa connections. It -is required for any use of Arequipa. \fBarequipad\fP expects signaling -to be available (i.e. \fBatmsigd\fP to run) at start time. -.P -\fBarequipad\fP establishes a service access point (SAP) for incoming Arequipa -connections, accepts them, and registers them with the Arequipa entity in the -kernel. It also performs delayed close operations when Arequipa connections -are detached from within an interrupt. -.SH OPTIONS -.IP \fB\-b\fP -Run in background (i.e. in a forked child process) after initializing. -.IP \fB\-d\fP -Enables (lots of) debugging output. By default, \fBarequipad\fP is very -quiet. -.IP \fB\-l\ \fIlogfile\fP -Write diagnostic messages to the specified file instead of to standard -error. The special name \fBsyslog\fP is used to send diagnostics to the -system logger. -.IP \fB\-n\fP -Prints addresses in numeric format only, i.e. no address to name translation -is attempted. -.SH AUTHOR -Werner Almesberger, EPFL LRC -.SH "SEE ALSO" -atmsigd(8) -.\"{{{}}} diff -ur --new-file old/atm/aqd/arequipad.c new/atm/aqd/arequipad.c --- old/atm/aqd/arequipad.c Thu Oct 1 19:51:36 1998 +++ new/atm/aqd/arequipad.c Thu Jan 1 01:00:00 1970 @@ -1,78 +0,0 @@ -/* arequipad.c - AREQUIPA demon */ - -/* Written 1996,1997 by Werner Almesberger, EPFL-LRC */ - - -#include -#include -#include -#include -#include - -#include "atm.h" -#include "atmd.h" - -#include "io.h" - - -#ifndef NULL -#define NULL ((void *) 0) -#endif - - -#define COMPONENT "AQD" - - -int debug; -int pretty = A2T_PRETTY | A2T_NAME | A2T_LOCAL; - - -static void usage(const char *name) -{ - fprintf(stderr,"usage: %s [ -b ] [ -d ] [ -l logfile ] [ -n ] \n",name); - exit(1); -} - - -int main(int argc,char **argv) -{ - int c,background; - - set_application("arequipad"); - set_verbosity(NULL,DIAG_INFO); - background = 0; - while ((c = getopt(argc,argv,"bdl:n")) != EOF) - switch (c) { - case 'b': - background = 1; - break; - case 'd': - set_verbosity(NULL,DIAG_DEBUG); - debug = 1; - break; - case 'l': - set_logfile(optarg); - break; - case 'n': - pretty = A2T_PRETTY; - break; - default: - usage(argv[0]); - } - if (argc != optind) usage(argv[0]); - diag(COMPONENT,DIAG_INFO,"Linux Arequipa, version " VERSION); - open_all(); - if (background) { - pid_t pid; - - pid = fork(); - if (pid < 0) diag(COMPONENT,DIAG_FATAL,"fork: %s",strerror(errno)); - if (pid) { - diag(COMPONENT,DIAG_DEBUG,"Backgrounding (PID %d)",pid); - exit(0); - } - } - poll_loop(); - close_all(); - return 0; -} diff -ur --new-file old/atm/aqd/io.c new/atm/aqd/io.c --- old/atm/aqd/io.c Sat Jun 6 02:21:51 1998 +++ new/atm/aqd/io.c Thu Jan 1 01:00:00 1970 @@ -1,126 +0,0 @@ -/* io.c - I/O operations */ - -/* Written 1996-1997 by Werner Almesberger, EPFL-LRC */ - - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "atm.h" -#include "atmd.h" -#include "atmsap.h" - -#include "io.h" - - -#define COMPONENT "IO" - - -extern int pretty; - -static int kernel,incoming; - - -void open_all(void) -{ - struct atm_sap sap; - struct atm_qos qos; - - if ((kernel = socket(PF_ATMSVC,SOCK_DGRAM,0)) < 0) - diag(COMPONENT,DIAG_FATAL,"socket: %s",strerror(errno)); - if (ioctl(kernel,AREQUIPA_CTRL,0) < 0) - diag(COMPONENT,DIAG_FATAL,"ioctl AREQUIPA_CTRL: %s",strerror(errno)); - if ((incoming = socket(PF_ATMSVC,SOCK_DGRAM,0)) < 0) - diag(COMPONENT,DIAG_FATAL,"socket: %s",strerror(errno)); - memset(&qos,0,sizeof(qos)); - qos.txtp.traffic_class = qos.rxtp.traffic_class = ATM_ANYCLASS; - /* compatible with everything else */ - qos.aal = ATM_AAL5; - if (setsockopt(incoming,SOL_ATM,SO_ATMQOS,&qos,sizeof(qos)) < 0) - diag(COMPONENT,DIAG_FATAL,"setsockopt SO_ATMQOS: %s",strerror(errno)); - memset(&sap,0,sizeof(sap)); - sap.bhli.hl_type = ATM_HL_VENDOR; - sap.bhli.hl_length = 7; - memcpy(sap.bhli.hl_info,AREQUIPA_HLT_VS_ID,7); - sap.blli[0].l2_proto = ATM_L2_ISO8802; - sap.blli[0].l3_proto = ATM_L3_NONE; - if (setsockopt(incoming,SOL_ATM,SO_ATMSAP,&sap,sizeof(sap)) < 0) - diag(COMPONENT,DIAG_FATAL,"setsockopt SO_ATMSAP: %s",strerror(errno)); - if (listen(incoming,5) < 0) - diag(COMPONENT,DIAG_FATAL,"listen: %s",strerror(errno)); -} - - -void close_all(void) -{ - (void) close(kernel); - (void) close(incoming); -} - - -static void recv_kernel(void) -{ - if (ioctl(kernel,AREQUIPA_WORK,0) < 0) { - diag(COMPONENT,DIAG_DEBUG,"Working"); - diag(COMPONENT,DIAG_ERROR,"ioctl AREQUIPA_WORK: %s",strerror(errno)); - } -} - - -static void accept_new(void) -{ - char buffer[MAX_ATM_ADDR_LEN+1]; - struct sockaddr_atmsvc addr; - int fd,len; - - len = sizeof(addr); - if ((fd = accept(incoming,(struct sockaddr *) &addr,&len)) < 0) { - diag(COMPONENT,errno == EUNATCH ? DIAG_FATAL : DIAG_ERROR, - "accept: %s",strerror(errno)); - return; - } - if (atm2text(buffer,MAX_ATM_ADDR_LEN+1,(struct sockaddr *) &addr,pretty) < - 0) strcpy(buffer,""); - diag(COMPONENT,DIAG_DEBUG,"Incoming call from %s",buffer); - - /* - * Connection acceptance policy functions go here. - */ - - if (ioctl(fd,AREQUIPA_INCOMING,0) < 0) - diag(COMPONENT,DIAG_ERROR,"ioctl AREQUIPA_INCOMING: %s", - strerror(errno)); - (void) close(fd); /* socket is now owned by the kernel */ -} - - -void poll_loop(void) -{ - fd_set fds; - int ret; - - while (1) { - FD_ZERO(&fds); - FD_SET(kernel,&fds); - FD_SET(incoming,&fds); - ret = select((kernel > incoming ? kernel : incoming)+1,&fds,NULL,NULL, - NULL); - if (ret < 0) { - if (errno != EINTR) perror("select"); - continue; - } - if (FD_ISSET(kernel,&fds)) recv_kernel(); - if (FD_ISSET(incoming,&fds)) accept_new(); - - } -} diff -ur --new-file old/atm/aqd/io.h new/atm/aqd/io.h --- old/atm/aqd/io.h Tue Jun 9 14:43:01 1998 +++ new/atm/aqd/io.h Thu Jan 1 01:00:00 1970 @@ -1,17 +0,0 @@ -/* io.h - I/O operations */ - -/* Written 1996,1998 by Werner Almesberger, EPFL-LRC/ICA */ - - -#ifndef IO_H -#define IO_H - -#include /* for struct sockaddr */ -#include /* for struct sockaddr_atmsvc */ - - -void open_all(void); -void close_all(void); -void poll_loop(void); - -#endif diff -ur --new-file old/atm/arpd/itf.c new/atm/arpd/itf.c --- old/atm/arpd/itf.c Fri Apr 23 12:11:36 1999 +++ new/atm/arpd/itf.c Fri Aug 27 23:23:11 1999 @@ -111,7 +111,7 @@ diag(COMPONENT,DIAG_DEBUG,"ITF CHANGE %d",number); itf = lookup_itf(number); if (!itf) { - diag(COMPONENT,DIAG_ERROR,"no such interface (%d)",number); + diag(COMPONENT,DIAG_DEBUG,"no interface to change (%d)",number); return; } if (ip_itf_info(number,&local_ip,&netmask,&mtu) < 0) { diff -ur --new-file old/atm/atm.patch new/atm/atm.patch --- old/atm/atm.patch Fri Jun 11 22:48:49 1999 +++ new/atm/atm.patch Fri Aug 27 23:18:13 1999 @@ -1,34423 +1,5498 @@ ---- ref/Makefile Sat May 15 01:04:47 1999 -+++ work/Makefile Thu Jun 3 02:29:44 1999 -@@ -122,6 +122,10 @@ +--- ref/Documentation/Configure.help Mon Aug 23 20:15:27 1999 ++++ work/Documentation/Configure.help Fri Aug 27 23:54:03 1999 +@@ -3562,8 +3562,8 @@ + Asynchronous Transfer Mode (ATM) + CONFIG_ATM + Kernel support for ATM. Note that you need a set of user-space programs +- to actually make use of ATM. See http://lrcwww.epfl.ch/linux-atm/ for +- further details. ++ to actually make use of ATM. See Documentation/atm.txt for further ++ details. - DRIVERS := $(DRIVERS) drivers/net/net.a + Classical IP over ATM + CONFIG_ATM_CLIP +@@ -3592,12 +3592,6 @@ + bridges and ATM attached hosts establish direct ATM VCs across + subnetwork boundaries. These shortcut connections bypass routers + enhancing overall network performance. +- +- +-Application REQUested IP over ATM +-CONFIG_AREQUIPA +- Arequipa is a mechanism to create ATM connections under application +- control for IP traffic. See RFC2170 for details. -+ifdef CONFIG_ATM -+DRIVERS := $(DRIVERS) drivers/atm/atm.a -+endif -+ - ifeq ($(CONFIG_SCSI),y) - DRIVERS := $(DRIVERS) drivers/scsi/scsi.a - endif -@@ -313,6 +317,7 @@ - if [ -f NET_MODULES ]; then inst_mod NET_MODULES net; fi; \ - if [ -f IPV4_MODULES ]; then inst_mod IPV4_MODULES ipv4; fi; \ - if [ -f IPV6_MODULES ]; then inst_mod IPV6_MODULES ipv6; fi; \ -+ if [ -f ATM_MODULES ]; then inst_mod ATM_MODULES atm; fi; \ - if [ -f SCSI_MODULES ]; then inst_mod SCSI_MODULES scsi; fi; \ - if [ -f FS_MODULES ]; then inst_mod FS_MODULES fs; fi; \ - if [ -f NLS_MODULES ]; then inst_mod NLS_MODULES fs; fi; \ ---- ref/Documentation/Configure.help Sun May 16 19:26:44 1999 -+++ work/Documentation/Configure.help Thu Jun 3 02:29:44 1999 -@@ -3696,6 +3696,217 @@ - This is a backward compatibility option, choose Y for now. - This option will be removed soon. - -+Asynchronous Transfer Mode (ATM) -+CONFIG_ATM -+ Kernel support for ATM. Note that you need a set of user-space programs -+ to actually make use of ATM. See http://lrcwww.epfl.ch/linux-atm/ for -+ further details. -+ -+Use "new" skb structure -+CONFIG_ATM_SKB -+ Store ATM-specific data in a "more compatible" way in socket buffers. -+ Use this options only with updated drivers. -+ -+Enable single-copy -+CONFIG_MMU_HACKS -+ Single-copy avoids intermediate buffering of AAL5 PDUs when using the -+ native ATM API. Enabling single-copy may lead to some throughput -+ improvements. Note that single-copy probably still has bugs, so -+ enabling it may seriously de-stabilize the system. -+ -+Extended debugging for single-copy -+CONFIG_MMU_HACKS_DEBUG -+ Extended debugging records various events and displays that list when -+ an inconsistency is detected. This mechanism is faster than generally -+ using printks, but still has some impact on performance. Enable this -+ if you suspect problems with single-copy. -+ -+Classical IP over ATM -+CONFIG_ATM_CLIP -+ Classical IP over ATM for PVCs and SVCs, supporting InARP and ATMARP. -+ Typically you will either use LAN Emulation (LANE) or Classical IP to -+ communicate with other IP hosts on your ATM network. -+ -+Do NOT send ICMP if no neighbour -+CONFIG_ATM_CLIP_NO_ICMP -+ Normally, an ICMP host unreachable message is sent if a neighbour cannot -+ be reached because there is no VC to it in the kernel's ATMARP table. -+ This may cause problems when ATMARP table entries are briefly removed -+ during revalidation. If this configuration option is set to "yes", -+ packets to such neighbours are silently discarded instead. -+ -+LAN Emulation (LANE) support -+CONFIG_ATM_LANE -+ LAN Emulation emulates services of existing LANs across an ATM network. -+ Besides operating as a normal ATM end station client, Linux LANE client -+ can also act as an proxy client bridging packets between ELAN and -+ Ethernet segments. You need LANE if you want to try MPOA. -+ -+Multi-Protocol Over ATM (MPOA) support -+CONFIG_ATM_MPOA -+ Multi-Protocol Over ATM allows ATM edge devices such as routers, -+ bridges and ATM attached hosts establish direct ATM VCs across -+ subnetwork boundaries. These shortcut connections bypass routers -+ enhancing overall network performance. -+ -+ -+Application REQUested IP over ATM -+CONFIG_AREQUIPA -+ Arequipa is a mechanism to create ATM connections under application -+ control for IP traffic. See RFC2170 for details. -+ -+ATM over TCP -+CONFIG_ATM_TCP -+ ATM over TCP driver. Useful mainly for development and for experiments. -+ -+Efficient Networks ENI155P -+CONFIG_ATM_ENI -+ Driver for the Efficient Networks ENI155p series and SMC ATM Power155 -+ 155 Mbps ATM adapters. Both, the versions with 512kB and 2MB on-board -+ RAM (Efficient calls them "C" and "S", respectively), and the FPGA and -+ the ASIC Tonga versions of the board are supported. The driver works -+ with MMF (-MF or ...F) and UTP-5 (-U5 or ...D) adapters. -+ -+Enable extended debugging -+CONFIG_ATM_ENI_DEBUG -+ Extended debugging records various events and displays that list when -+ an inconsistency is detected. This mechanism is faster than generally -+ using printks, but still has some impact on performance. Note that -+ extended debugging may create certain race conditions itself. Enable -+ this ONLY if you suspect problems with the driver. -+ -+Fine-tune burst settings -+CONFIG_ATM_ENI_TUNE_BURST -+ In order to obtain good throughput, the ENI NIC can transfer multiple -+ words of data per PCI bus access cycle. Such a multi-word transfer is -+ called a burst. -+ -+ The default settings for the burst sizes are suitable for most PCI -+ chipsets. However, in some cases, large bursts may overrun buffers in -+ the PCI chipset and cause data corruption. In such cases, large bursts -+ must be disabled and only (slower) small bursts can be used. The burst -+ sizes can be set independently in the send (TX) and receive (RX) -+ direction. -+ -+ Note that enabling many different burst sizes in the same direction -+ may increase the cost of setting up a transfer such that the resulting -+ throughput is lower than when using only the largest available burst -+ size. -+ -+ Also, sometimes larger bursts lead to lower throughput, e.g. on an -+ Intel 440FX board, a drop from 135 Mbps to 103 Mbps was observed when -+ going from 8W to 16W bursts. -+ -+Enable 16W TX bursts (discouraged) -+CONFIG_ATM_ENI_BURST_TX_16W -+ Burst sixteed words at once in the send direction. This may work with -+ recent PCI chipsets, but is known to fail with older chipsets. -+ -+Enable 8W TX bursts (recommended) -+CONFIG_ATM_ENI_BURST_TX_8W -+ Burst eight words at once in the send direction. This is the default -+ setting. -+ -+Enable 4W TX bursts (optional) -+CONFIG_ATM_ENI_BURST_TX_4W -+ Burst four words at once in the send direction. You may want to try this -+ if you have disabled 8W bursts. Enabling 4W if 8W is also set may or may -+ not improve throughput. -+ -+Enable 2W TX bursts (optional) -+CONFIG_ATM_ENI_BURST_TX_2W -+ Burst two words at once in the send direction. You may want to try this -+ if you have disabled 4W and 8W bursts. Enabling 2W if 4W or 8W are also -+ set may or may not improve throughput. -+ -+Enable 16W RX bursts (discouraged) -+CONFIG_ATM_ENI_BURST_RX_16W -+ Burst sixteen words at once in the receive direction. This may work with -+ recent PCI chipsets, but is known to fail with older chipsets. -+ -+Enable 8W RX bursts (discouraged) -+CONFIG_ATM_ENI_BURST_RX_8W -+ Burst eight words at once in the receive direction. This may work with -+ recent PCI chipsets, but is known to fail with older chipsets, such as -+ the Intel Neptune series. -+ -+Enable 4W RX bursts (recommended) -+CONFIG_ATM_ENI_BURST_RX_4W -+ Burst four words at once in the receive direction. This is the default -+ setting. Enabling 4W if 8W is also set may or may not improve throughput. -+ -+Enable 2W RX bursts (optional) -+CONFIG_ATM_ENI_BURST_RX_2W -+ Burst two words at once in the receive direction. You may want to try -+ this if you have disabled 4W and 8W bursts. Enabling 2W if 4W or 8W are -+ also set may or may not improve throughput. -+ -+ZeitNet ZN1221/ZN1225 -+CONFIG_ATM_ZATM -+ Driver for the ZeitNet ZN1221 (MMF) and ZN1225 (UTP-5) 155 Mbps ATM -+ adapters. -+ -+Enable extended debugging -+CONFIG_ATM_ZATM_DEBUG -+ Extended debugging records various events and displays that list when -+ an inconsistency is detected. This mechanism is faster than generally -+ using printks, but still has some impact on performance. Note that -+ extended debugging may create certain race conditions itself. Enable -+ this ONLY if you suspect problems with the driver. -+ -+Enable usec resolution timestamps -+CONFIG_ATM_ZATM_EXACT_TS -+ The uPD98401 SAR chip supports a high-resolution timer (approx. 30 MHz) -+ that is used for very accurate reception timestamps. Because that timer -+ overflows after 140 seconds, and also to avoid timer drift, time -+ measurements need to be periodically synchronized with the normal -+ system time. Enabling this feature will add some general overhead for -+ timer synchronization and also per-packet overhead for time conversion. -+ -+IDT 77201 (NICStAR) -+CONFIG_ATM_NICSTAR -+ The NICStAR chipset family is used in a large number of ATM NICs for -+ 25 and for 155 Mbps, including IDT cards and the Fore ForeRunnerLE -+ series. -+ -+Madge Ambassador (Collage PCI 155 Server) -+CONFIG_ATM_AMBASSADOR -+ This is a driver for ATMizer based ATM card produced by Madge -+ Networks Ltd. Say Y (or M to compile as a module named ambassador.o) -+ here if you have one of these cards. -+ -+Enable debugging messages -+CONFIG_ATM_AMBASSADOR_DEBUG -+ Somewhat useful debugging messages are available. The choice of -+ messages is controlled by a bitmap. This may be specified as a -+ module argument (kernel command line argument as well?), changed -+ dynamically using an ioctl (not yet) or changed by sending the -+ string "Dxxxx" to VCI 1023 (where x is a hex digit). See the file -+ drivers/atm/ambassador.h for the meanings of the bits in the mask. -+ -+ When active, these messages can have a significant impact on the -+ speed of the driver, and the size of your syslog files! When -+ inactive, they will have only a modest impact on performance. -+ -+Madge Horizon [Ultra] (Collage PCI 25 and Collage PCI 155 Client) -+CONFIG_ATM_HORIZON -+ This is a driver for the Horizon chipset ATM adapter cards once -+ produced by Madge Networks Ltd. Say Y (or M to compile as a module -+ named horizon.o) here if you have one of these cards. -+ -+Enable debugging messages -+CONFIG_ATM_HORIZON_DEBUG -+ Somewhat useful debugging messages are available. The choice of -+ messages is controlled by a bitmap. This may be specified as a -+ module argument (kernel command line argument as well?), changed -+ dynamically using an ioctl (not yet) or changed by sending the -+ string "Dxxxx" to VCI 1023 (where x is a hex digit). See the file -+ drivers/atm/horizon.h for the meanings of the bits in the mask. -+ -+ When active, these messages can have a significant impact on the -+ speed of the driver, and the size of your syslog files! When -+ inactive, they will have only a modest impact on performance. -+ - SCSI support? - CONFIG_SCSI - If you want to use a SCSI hard disk, SCSI tape drive, SCSI CDROM or ---- /dev/null Tue Jan 1 05:00:00 1980 -+++ work/Documentation/atm.txt Thu Jun 3 02:29:44 1999 -@@ -0,0 +1,4 @@ -+In order to use anything but the most primitive functions of ATM, -+several user-mode programs are required to assist the kernel. These -+programs and related material can be found via the ATM on Linux Web -+page at http://icawww1.epfl.ch/linux-atm/ ---- ref/arch/i386/config.in Thu May 13 23:11:52 1999 -+++ work/arch/i386/config.in Thu Jun 3 02:29:44 1999 -@@ -139,6 +139,9 @@ - bool 'Network device support' CONFIG_NETDEVICES - if [ "$CONFIG_NETDEVICES" = "y" ]; then - source drivers/net/Config.in -+ if [ "$CONFIG_ATM" = "y" ]; then -+ source drivers/atm/Config.in -+ fi - fi - endmenu - fi ---- ref/arch/alpha/config.in Mon May 10 18:55:21 1999 -+++ work/arch/alpha/config.in Thu Jun 3 02:29:44 1999 -@@ -220,6 +220,9 @@ - bool 'Network device support' CONFIG_NETDEVICES - if [ "$CONFIG_NETDEVICES" = "y" ]; then - source drivers/net/Config.in -+ if [ "$CONFIG_ATM" = "y" ]; then -+ source drivers/atm/Config.in -+ fi - fi - endmenu - fi ---- ref/arch/ppc/config.in Tue May 11 17:24:32 1999 -+++ work/arch/ppc/config.in Mon Jun 7 20:49:05 1999 -@@ -141,6 +141,9 @@ - bool 'Network device support' CONFIG_NETDEVICES - if [ "$CONFIG_NETDEVICES" = "y" ]; then - source drivers/net/Config.in -+ if [ "$CONFIG_ATM" = "y" ]; then -+ source drivers/atm/Config.in -+ fi + ATM over TCP + CONFIG_ATM_TCP +--- ref/Documentation/atm.txt Mon Aug 23 18:56:31 1999 ++++ work/Documentation/atm.txt Fri Aug 27 23:54:03 1999 + .