]> git.ozlabs.org Git - ppp.git/blobdiff - README.linux
updated cpp defines
[ppp.git] / README.linux
index 6df8c66d197e4e3e64653efe3b7b47a995ee4a8c..94d165aa0444fef2e8cfe3d3b124faaf74bac528 100644 (file)
@@ -12,6 +12,9 @@ Al Longyear         longyear@netcom.com
     CHANGES FROM THE PREVIOUS VERSION
     FUTURE PLANS
     INSTALLATION
     CHANGES FROM THE PREVIOUS VERSION
     FUTURE PLANS
     INSTALLATION
+    PROBLEMS WHICH MAY OCCUR WHILE BUILDING THE KERNEL
+       A REFERENCE TO UNDEFINED _mod_use_count_
+       BLOCK ON FREELIST AT nnnnnn ISN'T FREE
     GENERAL NETWORK CONFIGURATION
     CONNECTING TO A PPP SERVER
     IF IT WORKS
     GENERAL NETWORK CONFIGURATION
     CONNECTING TO A PPP SERVER
     IF IT WORKS
@@ -44,7 +47,7 @@ about it.)
 
 The PPP protocol consists of two parts.  One is a scheme for framing
 and encoding packets, the other is a series of protocols called LCP,
 
 The PPP protocol consists of two parts.  One is a scheme for framing
 and encoding packets, the other is a series of protocols called LCP,
-IPCP, UPAP and CHAP, for negotiating link options and for
+IPCP, PAP and CHAP, for negotiating link options and for
 authentication.  This package similarly consists of two parts: a
 kernel module which handles PPP's low-level framing protocol, and a
 user-level program called pppd which implements PPP's negotiation
 authentication.  This package similarly consists of two parts: a
 kernel module which handles PPP's low-level framing protocol, and a
 user-level program called pppd which implements PPP's negotiation
@@ -134,18 +137,26 @@ CHANGES FROM THE PREVIOUS VERSION
 - There is no limit to the number of ppp devices which you may use. Jim Freeman
   has added code to create them upon demand and to re-use the ones which have
   been closed. There is no code, nor plans to write code, to remove (delete)
 - There is no limit to the number of ppp devices which you may use. Jim Freeman
   has added code to create them upon demand and to re-use the ones which have
   been closed. There is no code, nor plans to write code, to remove (delete)
-  the un-used devices. So, if your system goes to a spurt and uses 3000 ppp
+  the un-used devices. So, if your system goes to a spurt and uses 256 ppp
   devices, it will remain at that level until you next reload the kernel.
 
   devices, it will remain at that level until you next reload the kernel.
 
+  If you are using modules then you may use the additional setting of
+  max_dev=#
+
+  where # is the maximum number. The default is set by the define PPP_MAX_DEV
+  and this define may be altered if you are not using modules.
+
+  The BSD compressor may only be loaded as a module. Previous beta versions
+  permitted the compressor to be included into the kernel. This was removed
+  for several reasons, some technical, some less technical and more
+  political (legal).
 
 
 FUTURE PLANS
 
 
 
 FUTURE PLANS
 
-The IPX support is still minimal. There is code which will only work with
-the 1.3 version of the networking software. The pppd process will still
-require changes to support the IPXCP and a change to the driver to properly
-enable/disable the IPX frames. Jim Freeman is reportily working on the IPX
-support.
+The next version of pppd, 2.3, is designed to contain a demand dial
+function directly.
 
 
 
 
 
 
@@ -216,6 +227,7 @@ automated installation procedure be performed.
 Use the following procedure for all kernel versions. There are six steps
 numbered one through six. Please do them in order and not skip one.
 
 Use the following procedure for all kernel versions. There are six steps
 numbered one through six. Please do them in order and not skip one.
 
+
 1. Issue the command:
 
 ./configure
 1. Issue the command:
 
 ./configure
@@ -225,6 +237,7 @@ contains this README.linux file. The result of this will be to build a
 set of symbolic links to the makefiles. They should link 'Makefile' to
 'Makefile.linux' in each of the directories.
 
 set of symbolic links to the makefiles. They should link 'Makefile' to
 'Makefile.linux' in each of the directories.
 
+
 2. Issue the command:
 
 make kernel
 2. Issue the command:
 
 make kernel
@@ -274,6 +287,7 @@ You are free to run the installation script as many times as you
 wish. The additional executions will only change the files which have
 not been changed.
 
 wish. The additional executions will only change the files which have
 not been changed.
 
+
 3. Build the kernel.
 
 You must rebuild the kernel with this package. The driver is totally
 3. Build the kernel.
 
 You must rebuild the kernel with this package. The driver is totally
@@ -286,10 +300,26 @@ If you wish module support then you need to have the 'modules-1.1.87'
 package installed as the minimum version. Earlier versions of the module
 support will not work properly.
 
 package installed as the minimum version. Earlier versions of the module
 support will not work properly.
 
+As of this time, the current version for the modules package is
+1.2.0. Even 1.1.87 is old. However, if you only have 1.1.87 then it
+will do as it permits the symbol table references. Please consider
+upgrading the module package however.
+
 Instructions on building the kernel with modules are given in the
 README.modules in the kernel source directory.
 
 Instructions on building the kernel with modules are given in the
 README.modules in the kernel source directory.
 
-4. Build the programs.
+
+4. Install the kernel
+
+If you are using the Yggdrasil distribution then you need to 'install'
+the kernel at this point. Refer to their documentation on the procedures
+to install the kernel.
+
+Distributions other than the Yggdrasil will normally install the
+kernel when you build it.
+
+
+5. Build the programs.
 
 The programs are built next. The command to build the programs is fairly
 simple. Just issue the command:
 
 The programs are built next. The command to build the programs is fairly
 simple. Just issue the command:
@@ -298,7 +328,8 @@ make
 
 from the top level directory where this README.linux file is located.
 
 
 from the top level directory where this README.linux file is located.
 
-5. Install the programs.
+
+6. Install the programs.
 
 You may use the command
 
 
 You may use the command
 
@@ -309,22 +340,27 @@ to install the various programs. They will be installed into the
 executables. The directory name is called BINDIR and is set in the
 file 'linux/Makefile.linux'.
 
 executables. The directory name is called BINDIR and is set in the
 file 'linux/Makefile.linux'.
 
-6. Reboot to the new kernel.
+
+7. Reboot to the new kernel.
 
 After building the new kernel, you will need to actually use it. Reboot
 the Linux system and you may then use the new pppd program.
 
 
 After building the new kernel, you will need to actually use it. Reboot
 the Linux system and you may then use the new pppd program.
 
-7. Load optional modules.
 
 
-If you are using loadable modules for the ppp or bsd compression then
-you must load them after the kernel has been started. The following
-relative order must be maintained.
+8. Load optional modules.
+
+If you are using loadable modules for the ppp then you must load them
+after the kernel has been started. The following relative order must
+be maintained.
 
 Sequence    Module      Description
    1        slhc.o      VJ header compression
    2        ppp.o       PPP driver
    3        bsd_comp.o  BSD compression for PPP's compression protocol.
 
 
 Sequence    Module      Description
    1        slhc.o      VJ header compression
    2        ppp.o       PPP driver
    3        bsd_comp.o  BSD compression for PPP's compression protocol.
 
+If you only have the bsd comprssor as a module then you may load it without
+regard to any order.
+
 You may elect not to load the BSD compression module if you desire. There
 is a controversy regarding a Motorola software patent and while it is
 believed that this code does not infringe upon the patent, it is however
 You may elect not to load the BSD compression module if you desire. There
 is a controversy regarding a Motorola software patent and while it is
 believed that this code does not infringe upon the patent, it is however
@@ -338,6 +374,33 @@ Without the BSD compression module, the PPP driver will not accept PPP's
 compression control protocol for BSD compression.
 
 
 compression control protocol for BSD compression.
 
 
+PROBLEMS WHICH MAY OCCUR WHILE BUILDING THE KERNEL
+
+A REFERENCE TO UNDEFINED _mod_use_count_
+
+If you experience an error message that the variable "mod_use_count_" is
+undefined then apply the patches in the linux/Other.Patches directory. There
+is a version for the 1.2.13 kernel and a differnt one for the early 1.3
+kernels.
+
+The current 1.3 series kernels should not experience this problem as the
+patch has already been incorporated.
+
+
+BLOCK ON FREELIST AT nnnnnn ISN'T FREE
+(where nnnnnn are a sequence of hexadecimal digits.)
+
+While this is not really an error when the kernel is built, it is an error
+which may occur when you actually run the system. The solution is a patch
+in the linux/Other.Patches directory. (That is why I mention it here.)
+
+The problem is in the VJ header compression module. It allocated a block
+of memory and then used the wrong variable to determine the amount of memory
+which should be reset. The patch is present in the 1.3.46 kernel and later
+ones. However, versions prior to that may POSSIBLY have the problem depending
+upon the number of slots which are allocated for the header compression logic.
+
+
 
 GENERAL NETWORK CONFIGURATION
 
 
 GENERAL NETWORK CONFIGURATION