Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial
authorLinus Torvalds <torvalds@g5.osdl.org>
Wed, 22 Mar 2006 18:58:05 +0000 (10:58 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Wed, 22 Mar 2006 18:58:05 +0000 (10:58 -0800)
* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial:
  fixed path to moved file in include/linux/device.h
  Fix spelling in E1000_DISABLE_PACKET_SPLIT Kconfig description
  Documentation/dvb/get_dvb_firmware: fix firmware URL
  Documentation: Update to BUG-HUNTING
  Remove superfluous NOTIFY_COOKIE_LEN define
  add "tags" to .gitignore
  Fix "frist", "fisrt", typos
  fix rwlock usage example
  It's UTF-8

22 files changed:
.gitignore
Documentation/BUG-HUNTING
Documentation/dvb/get_dvb_firmware
Documentation/filesystems/isofs.txt
Documentation/filesystems/jfs.txt
Documentation/filesystems/vfat.txt
Documentation/spinlocks.txt
drivers/base/platform.c
drivers/block/cciss.c
drivers/net/Kconfig
drivers/s390/net/claw.c
drivers/scsi/megaraid/megaraid_sas.c
fs/befs/linuxvfs.c
fs/cifs/CHANGES
fs/fat/dir.c
fs/fat/inode.c
fs/isofs/joliet.c
fs/nls/Kconfig
include/asm-mips/termbits.h
include/linux/device.h
include/linux/msdos_fs.h
ipc/mqueue.c

index 53e53f2791f882d2c3f2ec58ca472573eeda14f3..27fd37621255799602d74e94d670ff7a1658d40a 100644 (file)
@@ -16,6 +16,7 @@
 #
 # Top-level generic files
 #
+tags
 vmlinux*
 System.map
 Module.symvers
index ca29242dbc38d83328c2866d5413e719a3662997..65b97e1dbf70cabf7a92dee53831f191f16b4015 100644 (file)
@@ -1,3 +1,56 @@
+Table of contents
+=================
+
+Last updated: 20 December 2005
+
+Contents
+========
+
+- Introduction
+- Devices not appearing
+- Finding patch that caused a bug
+-- Finding using git-bisect
+-- Finding it the old way
+- Fixing the bug
+
+Introduction
+============
+
+Always try the latest kernel from kernel.org and build from source. If you are
+not confident in doing that please report the bug to your distribution vendor
+instead of to a kernel developer.
+
+Finding bugs is not always easy. Have a go though. If you can't find it don't
+give up. Report as much as you have found to the relevant maintainer. See
+MAINTAINERS for who that is for the subsystem you have worked on.
+
+Before you submit a bug report read REPORTING-BUGS.
+
+Devices not appearing
+=====================
+
+Often this is caused by udev. Check that first before blaming it on the
+kernel.
+
+Finding patch that caused a bug
+===============================
+
+
+
+Finding using git-bisect
+------------------------
+
+Using the provided tools with git makes finding bugs easy provided the bug is
+reproducible.
+
+Steps to do it:
+- start using git for the kernel source
+- read the man page for git-bisect
+- have fun
+
+Finding it the old way
+----------------------
+
 [Sat Mar  2 10:32:33 PST 1996 KERNEL_BUG-HOWTO lm@sgi.com (Larry McVoy)]
 
 This is how to track down a bug if you know nothing about kernel hacking.  
@@ -90,3 +143,63 @@ it does work and it lets non-hackers help fix bugs.  And it is cool
 because Linux snapshots will let you do this - something that you can't
 do with vendor supplied releases.
 
+Fixing the bug
+==============
+
+Nobody is going to tell you how to fix bugs. Seriously. You need to work it
+out. But below are some hints on how to use the tools.
+
+To debug a kernel, use objdump and look for the hex offset from the crash
+output to find the valid line of code/assembler. Without debug symbols, you
+will see the assembler code for the routine shown, but if your kernel has
+debug symbols the C code will also be available. (Debug symbols can be enabled
+in the kernel hacking menu of the menu configuration.) For example:
+
+    objdump -r -S -l --disassemble net/dccp/ipv4.o
+
+NB.: you need to be at the top level of the kernel tree for this to pick up
+your C files.
+
+If you don't have access to the code you can also debug on some crash dumps
+e.g. crash dump output as shown by Dave Miller.
+
+>    EIP is at ip_queue_xmit+0x14/0x4c0
+>     ...
+>    Code: 44 24 04 e8 6f 05 00 00 e9 e8 fe ff ff 8d 76 00 8d bc 27 00 00
+>    00 00 55 57  56 53 81 ec bc 00 00 00 8b ac 24 d0 00 00 00 8b 5d 08
+>    <8b> 83 3c 01 00 00 89 44  24 14 8b 45 28 85 c0 89 44 24 18 0f 85
+>
+>    Put the bytes into a "foo.s" file like this:
+>
+>           .text
+>           .globl foo
+>    foo:
+>           .byte  .... /* bytes from Code: part of OOPS dump */
+>
+>    Compile it with "gcc -c -o foo.o foo.s" then look at the output of
+>    "objdump --disassemble foo.o".
+>
+>    Output:
+>
+>    ip_queue_xmit:
+>        push       %ebp
+>        push       %edi
+>        push       %esi
+>        push       %ebx
+>        sub        $0xbc, %esp
+>        mov        0xd0(%esp), %ebp        ! %ebp = arg0 (skb)
+>        mov        0x8(%ebp), %ebx         ! %ebx = skb->sk
+>        mov        0x13c(%ebx), %eax       ! %eax = inet_sk(sk)->opt
+
+Another very useful option of the Kernel Hacking section in menuconfig is
+Debug memory allocations. This will help you see whether data has been
+initialised and not set before use etc. To see the values that get assigned
+with this look at mm/slab.c and search for POISON_INUSE. When using this an
+Oops will often show the poisoned data instead of zero which is the default.
+
+Once you have worked out a fix please submit it upstream. After all open
+source is about sharing what you do and don't you want to be recognised for
+your genius?
+
+Please do read Documentation/SubmittingPatches though to help your code get
+accepted.
index bb55f49f2745e6f556d6aa6e24c80e6648e67e03..15fc8fbef67e3fa48a8d68365b1852103e501115 100644 (file)
@@ -246,7 +246,7 @@ sub vp7041 {
 }
 
 sub dibusb {
-       my $url = "http://www.linuxtv.org/downloads/firmware/dvb-dibusb-5.0.0.11.fw";
+       my $url = "http://www.linuxtv.org/downloads/firmware/dvb-usb-dibusb-5.0.0.11.fw";
        my $outfile = "dvb-dibusb-5.0.0.11.fw";
        my $hash = "fa490295a527360ca16dcdf3224ca243";
 
index 424585ff6ea1c18daf7b9f47da97edd72b72dba1..758e50401c1635654fa073d9f9bcc8931ad8b9af 100644 (file)
@@ -9,9 +9,9 @@ when using discs encoded using Microsoft's Joliet extensions.
   iocharset=name Character set to use for converting from Unicode to
                ASCII.  Joliet filenames are stored in Unicode format, but
                Unix for the most part doesn't know how to deal with Unicode.
-               There is also an option of doing UTF8 translations with the
+               There is also an option of doing UTF-8 translations with the
                utf8 option.
-  utf8          Encode Unicode names in UTF8 format. Default is no.
+  utf8          Encode Unicode names in UTF-8 format. Default is no.
 
 Mount options unique to the isofs filesystem.
   block=512     Set the block size for the disk to 512 bytes
index 3e992daf99adb22e318ce3bcc63e931e14e8b68e..bae128663748ebcac0df61ab910827bfaf932f96 100644 (file)
@@ -6,7 +6,7 @@ The following mount options are supported:
 
 iocharset=name Character set to use for converting from Unicode to
                ASCII.  The default is to do no conversion.  Use
-               iocharset=utf8 for UTF8 translations.  This requires
+               iocharset=utf8 for UTF-8 translations.  This requires
                CONFIG_NLS_UTF8 to be set in the kernel .config file.
                iocharset=none specifies the default behavior explicitly.
 
index 5ead20c6c7443f4b2667f3c90ba29e45f45a63c9..2001abbc60e6f599fc53abc3b746ce2effc75187 100644 (file)
@@ -28,16 +28,16 @@ iocharset=name -- Character set to use for converting between the
                 know how to deal with Unicode.
                 By default, FAT_DEFAULT_IOCHARSET setting is used.
 
-                There is also an option of doing UTF8 translations
+                There is also an option of doing UTF-8 translations
                 with the utf8 option.
 
                 NOTE: "iocharset=utf8" is not recommended. If unsure,
                 you should consider the following option instead.
 
-utf8=<bool>   -- UTF8 is the filesystem safe version of Unicode that
+utf8=<bool>   -- UTF-8 is the filesystem safe version of Unicode that
                 is used by the console.  It can be be enabled for the
                 filesystem with this option. If 'uni_xlate' gets set,
-                UTF8 gets disabled.
+                UTF-8 gets disabled.
 
 uni_xlate=<bool> -- Translate unhandled Unicode characters to special
                 escaped sequences.  This would let you backup and
index c2122996631e4d413fffe6be3d1173f827a8649c..a661d684768e99c2cb9737b1e5f85925554f9235 100644 (file)
@@ -9,7 +9,7 @@ removed soon. So for any new code dynamic initialization should be used:
    static int __init xxx_init(void)
    {
        spin_lock_init(&xxx_lock);
-       rw_lock_init(&xxx_rw_lock);
+       rwlock_init(&xxx_rw_lock);
        ...
    }
 
index 89b268321321bf3e7695e88fe18412f24f87d0bf..83f5c5984d1a96da2aab912b3ab936e11f2854d4 100644 (file)
@@ -326,7 +326,7 @@ EXPORT_SYMBOL_GPL(platform_device_register);
  *     platform_device_unregister - unregister a platform-level device
  *     @pdev:  platform device we're unregistering
  *
- *     Unregistration is done in 2 steps. Fisrt we release all resources
+ *     Unregistration is done in 2 steps. First we release all resources
  *     and remove it from the subsystem, then we drop reference count by
  *     calling platform_device_put().
  */
index b9c786ee6fad21fee1aa32db38369cfc37bd2266..cf39cf9aac257b44fa98deaf4292a81c81eade6e 100644 (file)
@@ -2137,7 +2137,7 @@ static void start_io( ctlr_info_t *h)
                        break;
                }
 
-               /* Get the frist entry from the Request Q */ 
+               /* Get the first entry from the Request Q */ 
                removeQ(&(h->reqQ), c);
                h->Qdepth--;
        
index e0b11095b9da94656b2d8251fbecf6336236c718..00993e8ba589812995d4ad140de2b6bad4e08f02 100644 (file)
@@ -1914,7 +1914,7 @@ config E1000_DISABLE_PACKET_SPLIT
        depends on E1000
        help
          Say Y here if you want to use the legacy receive path for PCI express
-         hadware.
+         hardware.
 
          If in doubt, say N.
 
index a86436a7a606bc1ddcab90f2e3a1846598c6eb05..acd2a3f005f154290ca2acc97e085eb1217d2bd5 100644 (file)
@@ -1404,7 +1404,7 @@ add_claw_reads(struct net_device *dev, struct ccwbk* p_first,
 
         if ( privptr-> p_read_active_first ==NULL ) {
 #ifdef DEBUGMSG
-                printk(KERN_INFO "%s:%s p_read_active_frist == NULL \n",
+                printk(KERN_INFO "%s:%s p_read_active_first == NULL \n",
                        dev->name,__FUNCTION__);
                 printk(KERN_INFO "%s:%s Read active first/last changed \n",
                        dev->name,__FUNCTION__);
index 38ede24b22a65fc28d419bd2254ecd4fce24b1d8..39729460b00e243b8be2b9257d9f71e11b769895 100644 (file)
@@ -902,7 +902,7 @@ static int megasas_reset_bus_host(struct scsi_cmnd *scmd)
        int ret;
 
        /*
-        * Frist wait for all commands to complete
+        * First wait for all commands to complete
         */
        ret = megasas_generic_reset(scmd);
 
index 2d365cb8eec60948e631cf7b2d0ea33e45b94219..dd6048ce053293ec54cd6ae127f92b74cd113781 100644 (file)
@@ -561,7 +561,7 @@ befs_utf2nls(struct super_block *sb, const char *in,
  * @sb: Superblock
  * @src: Input string buffer in NLS format
  * @srclen: Length of input string in bytes
- * @dest: The output string in UTF8 format
+ * @dest: The output string in UTF-8 format
  * @destlen: Length of the output buffer
  * 
  * Converts input string @src, which is in the format of the loaded NLS map,
index d335015473a520e518171012d9a6fdb627bcee74..cb68efba35dbb82750b9e915b19177adc4e4ebf6 100644 (file)
@@ -160,7 +160,7 @@ improperly zeroed buffer in CIFS Unix extensions set times call.
 Version 1.25
 ------------
 Fix internationalization problem in cifs readdir with filenames that map to 
-longer UTF8 strings than the string on the wire was in Unicode.  Add workaround
+longer UTF-8 strings than the string on the wire was in Unicode.  Add workaround
 for readdir to netapp servers. Fix search rewind (seek into readdir to return 
 non-consecutive entries).  Do not do readdir when server negotiates 
 buffer size to small to fit filename. Add support for reading POSIX ACLs from
index db0de5c621c7db1eec05f9f2a875c0e559f8cdbc..4095bc149eb12ee182cf11a8b409a37e537d29d0 100644 (file)
@@ -114,7 +114,7 @@ static inline int fat_get_entry(struct inode *dir, loff_t *pos,
 }
 
 /*
- * Convert Unicode 16 to UTF8, translated Unicode, or ASCII.
+ * Convert Unicode 16 to UTF-8, translated Unicode, or ASCII.
  * If uni_xlate is enabled and we can't get a 1:1 conversion, use a
  * colon as an escape character since it is normally invalid on the vfat
  * filesystem. The following four characters are the hexadecimal digits
index e7f4aa7fc6864be095def4db3ac8078f7f218052..e78d7b4842cc49f60689094051373a6b4a3969b6 100644 (file)
@@ -1101,7 +1101,7 @@ static int parse_options(char *options, int is_vfat, int silent, int *debug,
                        return -EINVAL;
                }
        }
-       /* UTF8 doesn't provide FAT semantics */
+       /* UTF-8 doesn't provide FAT semantics */
        if (!strcmp(opts->iocharset, "utf8")) {
                printk(KERN_ERR "FAT: utf8 is not a recommended IO charset"
                       " for FAT filesystems, filesystem will be case sensitive!\n");
index 2931de7f1a6ac987a9a7b5c086a10f9fea951ebb..81a90e170ac36a10a8fd56e4e3d2242dfab1885d 100644 (file)
@@ -11,7 +11,7 @@
 #include "isofs.h"
 
 /*
- * Convert Unicode 16 to UTF8 or ASCII.
+ * Convert Unicode 16 to UTF-8 or ASCII.
  */
 static int
 uni16_to_x8(unsigned char *ascii, u16 *uni, int len, struct nls_table *nls)
index 0ab8f00bdbb2ad92912085c3c4eb1add252801ba..976ecccd6f5613814bdc2eaa0ceb1bcddcfd4997 100644 (file)
@@ -491,7 +491,7 @@ config NLS_KOI8_U
          (koi8-u) and Belarusian (koi8-ru) character sets.
 
 config NLS_UTF8
-       tristate "NLS UTF8"
+       tristate "NLS UTF-8"
        depends on NLS
        help
          If you want to display filenames with native language characters
index c29c65b7818e09cfae1ca48d66a09a83cd564070..fa6d04dac56bfc958273bbdde28a9e0bd4d28072 100644 (file)
@@ -77,7 +77,7 @@ struct termios {
 #define IXANY  0004000         /* Any character will restart after stop.  */
 #define IXOFF  0010000         /* Enable start/stop input control.  */
 #define IMAXBEL        0020000         /* Ring bell when input queue is full.  */
-#define IUTF8  0040000         /* Input is UTF8 */
+#define IUTF8  0040000         /* Input is UTF-8 */
 
 /* c_oflag bits */
 #define OPOST  0000001         /* Perform output processing.  */
index 6d2345d860829ff86fd5f52a304c11a6ff7a66e6..f6e72a65a3f21c1f6b8cb92b32c6542ab4537753 100644 (file)
@@ -400,7 +400,7 @@ extern struct device * get_device(struct device * dev);
 extern void put_device(struct device * dev);
 
 
-/* drivers/base/power.c */
+/* drivers/base/power/shutdown.c */
 extern void device_shutdown(void);
 
 
index e933e2a355adcea8331913ca5aec0bc6cdf9d3ce..8bcd9450d9261fdc087c0bbbf19b3ce13b2da29e 100644 (file)
@@ -199,7 +199,7 @@ struct fat_mount_options {
                 sys_immutable:1, /* set = system files are immutable */
                 dotsOK:1,        /* set = hidden and system files are named '.filename' */
                 isvfat:1,        /* 0=no vfat long filename support, 1=vfat support */
-                utf8:1,          /* Use of UTF8 character set (Default) */
+                utf8:1,          /* Use of UTF-8 character set (Default) */
                 unicode_xlate:1, /* create escape sequences for unhandled Unicode */
                 numtail:1,       /* Does first alias have a numeric '~1' type tail? */
                 atari:1,         /* Use Atari GEMDOS variation of MS-DOS fs */
index fd2e26b6f96619fa88d93ed6b4437a257971a52f..85c52fd26bff0a612fb14f4574e9fc5d8d2246cd 100644 (file)
@@ -51,7 +51,6 @@
 #define HARD_MSGMAX    (131072/sizeof(void*))
 #define DFLT_MSGSIZEMAX 8192   /* max message size */
 
-#define NOTIFY_COOKIE_LEN      32
 
 struct ext_wait_queue {                /* queue of sleeping tasks */
        struct task_struct *task;