]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
* README.modules: Mention problems with preempt kernels later than
authorRuss Allbery <rra@debian.org>
Fri, 13 May 2005 01:28:08 +0000 (01:28 +0000)
committerRuss Allbery <rra@debian.org>
Fri, 13 May 2005 01:28:08 +0000 (01:28 +0000)
    2.6.8.  Add documentation for module-assistant and recommend it when
    using Debian kernels.  Mention divergences from upstream in module
    naming.  (Closes: #253168)  Emphasize that the kernel source tree used
    for make-kpkg must be identically configured to the kernel the module
    will be used with.

debian/README.modules
debian/changelog

index d2c8e0168c7e5f13bea770ae4716ec223fe03902..6515bbcbd14b5364958460fc9a45e37a37905bfa 100644 (file)
-                      Building Kernel Modules
-----------------------------------------
+                         Building Kernel Modules
+                         -----------------------
 
+This version of AFS has known problems with 2.6 kernels later than 2.6.8
+built with preempt enabled.  Symptoms include kernel panics when loading
+the module or inability to unload the module and unmount the AFS file
+system on shutdown.  It should work correctly with 2.4 kernels and with
+the 2.6.8 kernel included in Debian sarge (Debian 3.1), but if you are
+using a later 2.6 kernel you may want to use later OpenAFS source to build
+the kernel module.
 
- The easiest way to get AFS modules is to install prebuilt modules.
-Fore example if you are running kernel 2.2.18 you might try
 
-apt-get install openafs-modules-2.2.18
+The easiest way to get AFS modules is to install prebuilt modules.  For
+example, if you are running kernel 2.4.27-2-686-smp, you might try:
 
-If this doesn't work, then you will need to build your own modules.
-This means having kernel sources available.  You should install a
-kernel sources package and untar it in /usr/src.  Then, install
+    apt-get install openafs-modules-2.4.27-2-686-smp
+
+Pre-built modules are not provided with Debian, but many organizations
+that use OpenAFS build their own and provide them locally.
+
+If this doesn't work, you will need to build your own modules.  There are
+two methods for doing this.
+
+When following either method, be aware that the Debian package creates a
+module named openafs, not libafs as is used by upstream.  It also prefers
+not to add the .mp extension for modules built for SMP kernels; the
+indication of whether the module is for an SMP kernel should go into the
+package name via something like --append_to_version, not into the file
+name of the module.
+
+module-assistant
+----------------
+
+This method is the best one to use when using the kernels that come with
+Debian, since module-assistant knows how to get the right header files to
+build modules for your currently running kernel.
+
+First, install module-assistant and then prepare the kernel headers and
+install openafs-modules-source:
+
+    apt-get install module-assistant
+    module-assistant prepare openafs-modules
+
+(If you want to build modules for a different kernel than your currently
+running one, pass the -l flag to module-assistant.  See the man page.)
+module-assistant may be able to find the right packages itself or it may
+tell you to install particular packages.  Once you've finished with that,
+build the module with:
+
+    module-assistant auto-build openafs-modules
+
+You may prefer to pass module-assistant the -t flag to get more
+conventional output.  If everything works correctly, the openafs-modules
+deb should be created in /usr/src.  You can use dpkg -i to install it.
+
+module-assistant will take care of naming the openafs-modules package
+correctly so that it matches the name of the kernel-image package and
+installs its modules into the correct directory.
+
+make-kpkg
+---------
+
+This method works well when you're also building your own kernel, rather
+than using the pre-packaged Debian one.
+
+Install a kernel source package and untar it in /usr/src.  Then, install
 openafs-modules-source.
 
-apt-get install openafs-modules-source
+    apt-get install openafs-modules-source
 
-Next, unpack openafs-modules-source
+Next, unpack openafs-modules-source:
 
-cd /usr/src
-tar xzf openafs.tar.gz
+    cd /usr/src
+    tar xzf openafs.tar.gz
 
 Now, change into your kernel source tree.  You should then create a
-.config file; the easiest way to do this is to run make menuconfig or
-to copy in a kernel configuration from the same version of the kernel.
+.config file; the easiest way to do this is to run make menuconfig or to
+copy in a kernel configuration from the same version of the kernel.
 Debian kernel packages store a copy of their kernel configuration in
-/boot/config.version_number.  Finally build the modules
+/boot/config.version_number.
+
+The kernel configuration needs to be identical to the configuration that
+produced the kernel that you're using.  Ideally, you would build the
+kernel image you're going to use with make-kpkg kernel_image and install
+that along with the module image, although as long as the configuration is
+identical, you may be able to get away with using a pre-built kernel.  (A
+better approach, if you're using pre-built kernels, may be to use
+module-assistant as described above.)
+
+Finally, build the modules:
 
-make-kpkg configure
-make-kpkg modules_image
+    make-kpkg modules_image
 
 You may need to use the --append_to_version switch to add version suffixes
-like -686 if your modules install into /lib/modules/version-686.
-Ignore any errors about genchanges.sh failing.  An openafs-modules deb
-should be created.  Use dpkg -i to install this version.
+like -686 or -smp to match your kernel and install the OpenAFS module into
+a directory like /lib/modules/version-686.  Be aware that the Debian
+OpenAFS packages build either a regular module or an SMP module, not both,
+so the generated package will only work with a kernel with the same SMP
+configuration.
 
+An openafs-modules deb should be created in /usr/src.  Use dpkg -i to
+install this version.
index 0fc8657ed92f2895e61820a33700497483a86ca8..6a78a7404dbf523a3817e135ae48b1f5865093a3 100644 (file)
@@ -8,6 +8,12 @@ openafs (1.3.81-3sarge1) unstable; urgency=low
     or ext3 and that XFS and ReiserFS will not work.  upserver and
     upclient are now provided.  Provide some information about why
     kaserver is not provided.  (Closes: #249315)
+  * README.modules: Mention problems with preempt kernels later than
+    2.6.8.  Add documentation for module-assistant and recommend it when
+    using Debian kernels.  Mention divergences from upstream in module
+    naming.  (Closes: #253168)  Emphasize that the kernel source tree used
+    for make-kpkg must be identically configured to the kernel the module
+    will be used with.
 
  --