aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* Fix userspace export of <linux/net.h>David Woodhouse2008-08-26
| | | | | | | | | | Including <linux/fcntl.h> in the user-visible part of this header has caused build regressions with headers from 2.6.27-rc. Move it down to the #ifdef __KERNEL__ part, which is the only place it's needed. Move some other kernel-only things down there too, while we're at it. Signed-off-by: David Woodhouse <David.Woodhouse@intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6Linus Torvalds2008-08-26
|\ | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: [CIFS] check version in spnego upcall response [CIFS] Kerberos support not considered experimental anymore [CIFS] distinguish between Kerberos and MSKerberos in upcall cifs: add local server pointer to cifs_setup_session [CIFS] reindent misindented statement
| * Merge branch 'master' of /pub/scm/linux/kernel/git/torvalds/linux-2.6Steve French2008-08-26
| |\
| * | [CIFS] check version in spnego upcall responseSteve French2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, we don't check the version in the SPNEGO upcall response even though one is provided. Jeff and Q have made the corresponding change to the Samba client (cifs.upcall). Acked-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * | [CIFS] Kerberos support not considered experimental anymoreSteve French2008-08-19
| | | | | | | | | | | | | | | Acked-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * | [CIFS] distinguish between Kerberos and MSKerberos in upcallSteve French2008-08-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Properly handle MSKRB5 by passing sec=mskrb5 to the upcall so that the spengo blob can be generated appropriately. Also, make decode_negTokenInit prefer whichever mechanism is first in the list. Needed for some NetApp servers, and possibly some older versions of Windows which treat the two KRB5 mechanisms differently. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * | cifs: add local server pointer to cifs_setup_sessionJeff Layton2008-08-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cifs_setup_session references pSesInfo->server several times. That pointer shouldn't change during the life of the function so grab it once and store it in a local var. This makes the code look a little cleaner too. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
| * | [CIFS] reindent misindented statementIlpo Järvinen2008-08-19
| | | | | | | | | | | | | | | Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi> Signed-off-by: Steve French <sfrench@us.ibm.com>
* | | Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linusLinus Torvalds2008-08-26
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [MIPS] Ignore vmlinux.lds generated files [MIPS] kgdb: Do not call fixup_exception [MIPS] RB532: Do not define registers that are already defined [MIPS] IP27: Export symbol pcibus_to_node to modules. [MIPS] kgdb: s/(void *)0)/NULL/ [MIPS] kgdb: smp_call_function's 3rd argument is a pointer. [MIPS] TXx9: Fix mips_hpt_frequency initialization [MIPS] emma2rh: Fix build error by header file inclusion weeding. [MIPS] Jazz: Fix build error by header file inclusion weeding. [MIPS] Wire up new syscalls. [MIPS] Convert printk statements during kernel setup to use severity levels
| * | | [MIPS] Ignore vmlinux.lds generated filesFlorian Fainelli2008-08-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds the proper .gitignore file to ignore vmlinux.lds generated in arch/mips/kernel/. Signed-off-by: Florian Fainelli <florian.fainelli@telecomint.eu> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * | | [MIPS] kgdb: Do not call fixup_exceptionAtsushi Nemoto2008-08-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | kgdb_mips_notify is called on IBE/DBE/FPE/BP/TRAP/RI exception. None of them need fixup. And doing fixup for a breakpoint exception will confuse gdb. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * | | [MIPS] RB532: Do not define registers that are already definedFlorian Fainelli2008-08-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the register definitions of the MPMC controller from mach-rc32434/rb.h instead of redefining them. Signed-off-by: Florian Fainelli <florian.fainelli@telecomint.eu> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * | | [MIPS] IP27: Export symbol pcibus_to_node to modules.Ralf Baechle2008-08-26
| | | | | | | | | | | | | | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * | | [MIPS] kgdb: s/(void *)0)/NULL/Ralf Baechle2008-08-26
| | | | | | | | | | | | | | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * | | [MIPS] kgdb: smp_call_function's 3rd argument is a pointer.Ralf Baechle2008-08-26
| | | | | | | | | | | | | | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * | | [MIPS] TXx9: Fix mips_hpt_frequency initializationAtsushi Nemoto2008-08-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The mips_hpt_frequency initialization code was lost in commit 94a4c32939dede9328c6e4face335eb8441fc18d (linux-mips.org) / 94a4c32939dede9328c6e4face335eb8441fc18d (kernel.org) "TXx9: Add 64-bit support". Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * | | [MIPS] emma2rh: Fix build error by header file inclusion weeding.Ralf Baechle2008-08-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CC arch/mips/emma2rh/markeins/setup.o In file included from arch/mips/emma2rh/markeins/setup.c:30: include/linux/ide.h:645: error: ‘CONFIG_IDE_MAX_HWIFS’ undeclared here (not in a function) make[1]: *** [arch/mips/emma2rh/markeins/setup.o] Error 1 Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * | | [MIPS] Jazz: Fix build error by header file inclusion weeding.Ralf Baechle2008-08-26
| | | | | | | | | | | | | | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * | | [MIPS] Wire up new syscalls.Ralf Baechle2008-08-26
| | | | | | | | | | | | | | | | | | | | | | | | signalfd4, eventfd2, epoll_create1, dup3, pipe2 and inotify_init1. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * | | [MIPS] Convert printk statements during kernel setup to use severity levelsMike Crowe2008-08-26
| | |/ | |/| | | | | | | | | | Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | | Merge branch 'merge' of ↵Linus Torvalds2008-08-26
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: powerpc: Update defconfigs for most non-embedded platforms powerpc: Export CMO_PageSize powerpc/ps3: Fix ioremap of spu shadow regs powerpc/ps3: Rework htab code to remove ioremap powerpc/ps3: Update ps3_defconfig powerpc/cell/oprofile: Avoid double vfree of profile buffer powerpc: Update defconfigs for FSL PPC boards powerpc: Add cuImage.mpc866ads to the bootwrapper as a cuboot-8xx target cpm2: Fix race condition in CPM2 GPIO library. powerpc: fix memory leaks in QE library powerpc/85xx: TQM8548: DTS file fixes and cleanup powerpc: Fix whitespace merge in mpc8641 hpcn device tree
| * | powerpc: Update defconfigs for most non-embedded platformsPaul Mackerras2008-08-25
| | | | | | | | | | | | Signed-off-by: Paul Mackerras <paulus@samba.org>
| * | powerpc: Export CMO_PageSizeAndrew Morton2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes an error building powerpc allmodconfig: ERROR: "CMO_PageSize" [arch/powerpc/platforms/pseries/cmm.ko] undefined! Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * | powerpc/ps3: Fix ioremap of spu shadow regsMasakazu Mokuno2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the ioremap of the spu shadow regs on the PS3. The current PS3 hypervisor requires the spu shadow regs to be mapped with the PTE page protection bits set as read-only (PP=3). This implementation uses the low level __ioremap() to bypass the page protection settings inforced by ioremap_flags() to get the needed PTE bits set for the shadow regs. This fixes a runtime failure on the PS3 introduced by the powerpc ioremap_prot rework of commit a1f242ff460e4b50a045fa237c3c56cce9eabf83 ("powerpc ioremap_prot"). Signed-off-by: Masakazu Mokuno <mokuno@sm.sony.co.jp> CC: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * | powerpc/ps3: Rework htab code to remove ioremapMasakazu Mokuno2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rework the PS3 MMU hash table code to remove the need to ioremap the hash table by using the HV calls lv1_insert_htab_entry() and lv1_read_htab_entries(). This fixes a runtime failure on the PS3 introduced by the powerpc ioremap_prot rework of commit a1f242ff460e4b50a045fa237c3c56cce9eabf83 ("powerpc ioremap_prot"). Signed-off-by: Masakazu Mokuno <mokuno@sm.sony.co.jp> CC: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * | powerpc/ps3: Update ps3_defconfigGeoff Levand2008-08-25
| | | | | | | | | | | | | | | | | | | | | Update ps3_defconfig. Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * | powerpc/cell/oprofile: Avoid double vfree of profile bufferCarl Love2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If an error occurs on opcontrol start, the event and per cpu buffers are released. If later opcontrol shutdown is called then the free function will be called again to free buffers that no longer exist. This results in a kernel oops. The following changes prevent the call to delete buffers that don't exist. Signed-off-by: Carl Love <carll@us.ibm.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Robert Richter <robert.richter@amd.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
| * | powerpc: Update defconfigs for FSL PPC boardsKumar Gala2008-08-21
| | | | | | | | | | | | | | | | | | | | | | | | Since we are updated defconfigs I went ahead and moved the asp8347_defconfig under 83xx/ and the mpc8536_ds_defconfig under 85xx/ as that is where they should have been to start with. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
| * | powerpc: Add cuImage.mpc866ads to the bootwrapper as a cuboot-8xx targetScott Wood2008-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes the following build error with mpc866_ads_defconfig: <-- snip --> ... WRAP arch/powerpc/boot/cuImage.mpc866ads powerpc64-linux-ld: arch/powerpc/boot/cuboot-mpc866ads.o: No such file: No such file or directory make[2]: *** [arch/powerpc/boot/cuImage.mpc866ads] Error 1 <-- snip --> Reported-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Scott Wood <scottwood@freescale.com> Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
| * | cpm2: Fix race condition in CPM2 GPIO library.Laurent Pinchart2008-08-21
| | | | | | | | | | | | | | | | | | | | | | | | The CPM2 GPIO library code uses the non thread-safe clrbits32/setbits32 macros. This patch protects them with a spinlock. Signed-off-by: Laurent Pinchart <laurentp@cse-semaphore.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
| * | powerpc: fix memory leaks in QE libraryTimur Tabi2008-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix two memory leaks in the Freescale QE library: add a missing kfree() in ucc_fast_init() and ucc_slow_init() if the ioremap() fails, and update ucc_fast_free() and ucc_slow_free() to call iounmap() if necessary. Based on a patch from Tony Breeds <tony@bakeyournoodle.com>. Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
| * | powerpc/85xx: TQM8548: DTS file fixes and cleanupWolfgang Grandegger2008-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | Due to the missing compatible property for the SOC, the MPC I2C buses are not found any more. This patch fixes this issue. Furthermore it corrects the name of the SOC node and adds the missing I2C node for the RTC. Signed-off-by: Wolfgang Grandegger <wg@grandegger.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
| * | powerpc: Fix whitespace merge in mpc8641 hpcn device treeKumar Gala2008-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we coverted the .dts to v1 we lost a space between the irq and its polarity/sense information. This causes a bit of chaos as the reset of the blob is off by one cell. This was noticed by booting and getting errors w/ATA due to lock of interrupts. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* | | Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6Linus Torvalds2008-08-25
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: bnx2x: Version update bnx2x: Multi Queue bnx2x: NAPI and interrupts enable/disable bnx2x: NIC load failure cleanup bnx2x: Initialization structure bnx2x: HW lock timeout bnx2x: Minimize lock time bnx2x: Fan failure mechanism on additional design bnx2x: Rx work check ipv6: sysctl fixes ipv4: sysctl fixes sctp: add verification checks to SCTP_AUTH_KEY option
| * | | bnx2x: Version updateEilon Greenstein2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Version update Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | bnx2x: Multi QueueYitchak Gertner2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The multi queue support is still disabled by default for the bnx2x (needs some more testing and validation), but there are 2 obvious bug in it which are fixed in this patch Signed-off-by: Yitchak Gertner <gertner@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | bnx2x: NAPI and interrupts enable/disableYitchak Gertner2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixing the order of enabling and disabling NAPI and the interrupts Signed-off-by: Yitchak Gertner <gertner@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | bnx2x: NIC load failure cleanupYitchak Gertner2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Load failures were not handled correctly Signed-off-by: Yitchak Gertner <gertner@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | bnx2x: Initialization structureYitchak Gertner2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The TPA initialization is part of the FW internal memory initialization and so it is moved to the appropriate function Signed-off-by: Yitchak Gertner <gertner@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | bnx2x: HW lock timeoutEilon Greenstein2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Increasing the lock timeout to 5 seconds instead of 1 second to minimize the chance of failures due to timeout Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | bnx2x: Minimize lock timeEilon Greenstein2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After iSCSI boot, the HW lock should only protect the flag so only the first function will reset the chip and not then entire chip reset process Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | bnx2x: Fan failure mechanism on additional designEilon Greenstein2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The A1021G board is also using the fan failure mechanism in the same way the A1022G board does Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | bnx2x: Rx work checkEilon Greenstein2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The has Rx work check was wrong: when the FW was at the end of the page, the driver was already at the beginning of the next page. Since the check only validated that both driver and FW are pointing to the same place, it concluded that there is still work to be done. This caused some serious issues including long latency results on ping-pong test and lockups while unloading the driver in that condition. Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | ipv6: sysctl fixesAl Viro2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Braino: net.ipv6 in ipv6 skeleton has no business in rotable class Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | ipv4: sysctl fixesAl Viro2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | net.ipv4.neigh should be a part of skeleton to avoid ordering problems Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | sctp: add verification checks to SCTP_AUTH_KEY optionVlad Yasevich2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The structure used for SCTP_AUTH_KEY option contains a length that needs to be verfied to prevent buffer overflow conditions. Spoted by Eugene Teo <eteo@redhat.com>. Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | | | ALSA: fix for CA0106 on MSI K8N Diamond PLUS MotherboardStephen Rothwell2008-08-25
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | | [x86] Clean up MAXSMP Kconfig, and limit NR_CPUS to 512Linus Torvalds2008-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a regression that was indirectly caused by commit 1184dc2ffe2c8fb9afb766d870850f2c3165ef25 ("x86: modify Kconfig to allow up to 4096 cpus"). Allowing 4k CPU's is not practical at this time, because we still have a number of places that have several 'cpumask_t's on the stack, and a 4k-bit cpumask is 512 bytes of stack-space for each such variable. This literally caused functions like 'smp_call_function_mask' to have a 2.5kB stack frame, and several functions to have 2kB stackframes. With an 8kB stack total, smashing the stack was simply much too likely. At least bugzilla entry http://bugzilla.kernel.org/show_bug.cgi?id=11342 was due to this. The earlier commit to not inline load_module() into sys_init_module() fixed the particular symptoms of this that Alan Brunelle saw in that bugzilla entry, but the huge stack waste by cpumask_t's was the more direct cause. Some day we'll have allocation helpers that allocate large CPU masks dynamically, but in the meantime we simply cannot allow cpumasks this large. Cc: Alan D. Brunelle <Alan.Brunelle@hp.com> Cc: Mike Travis <travis@sgi.com> Cc: Ingo Molnar <mingo@elte.hu> Cc: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | | Merge branch 'timers-fixes-for-linus' of ↵Linus Torvalds2008-08-25
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: rtc: fix deadlock
| * | | | rtc: fix deadlockIngo Molnar2008-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | if get_rtc_time() is _ever_ called with IRQs off, we deadlock badly in it, waiting for jiffies to increment. So make the code more robust by doing an explicit mdelay(20). This solves a very hard to reproduce/debug hard lockup reported by Mikael Pettersson. Reported-by: Mikael Pettersson <mikpe@it.uu.se> Signed-off-by: Ingo Molnar <mingo@elte.hu>