1. 29 Apr, 2008 12 commits
    • Kumar Gala's avatar
      [POWERPC] Add IRQSTACKS support on ppc32 · 85218827
      Kumar Gala authored
      This makes it possible to use separate stacks for hard and soft IRQs
      on 32-bit powerpc as well as on 64-bit.  The code for 32-bit is just
      the 32-bit analog of the 64-bit code.
      
      * Added allocation and initialization of the irq stacks.  We limit the
        stacks to be in lowmem for ppc32.
      * Implemented ppc32 versions of call_do_softirq() and call_handle_irq()
        to switch the stack pointers
      * Reworked how we do stack overflow detection.  We now keep around the
        limit of the stack in the thread_struct and compare against the limit
        to see if we've overflowed.  We can now use this on ppc64 if desired.
      
      [ paulus@samba.org: Fixed bug on 6xx where we need to reload r9 with the
        thread_info pointer. ]
      Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      85218827
    • Paul Mackerras's avatar
      [POWERPC] Use __always_inline for xchg* and cmpxchg* · dd18434f
      Paul Mackerras authored
      This changes the definitions of the xchg and cmpxchg families of
      functions in include/asm-powerpc/system.h to be marked __always_inline
      rather than __inline__.  The reason for doing this is that we rely on
      the compiler inlining them in order to eliminate the references to
      __xchg_called_with_bad_pointer and __cmpxchg_called_with_bad_pointer,
      which are deliberately left undefined.  Thus this change will enable
      us to make the inline keyword be just a hint rather than a directive.
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      dd18434f
    • Paul Mackerras's avatar
      [POWERPC] Add fast little-endian switch system call · 745a14cc
      Paul Mackerras authored
      This adds a system call on 64-bit platforms for switching between
      little-endian and big-endian modes that is much faster than doing a
      prctl call.  This system call is handled as a special case right at
      the start of the system call entry code, and because it is a special
      case, it uses a system call number which is out of the range of
      normal system calls, namely 0x1ebe.
      
      Measurements with lmbench on a 4.2GHz POWER6 showed no measurable
      change in the speed of normal system calls with this patch.
      
      Switching endianness with this new system call takes around 60ns on a
      4.2GHz POWER6, compared with around 300ns to switch endian mode with a
      prctl.  This can provide a significant performance advantage for
      emulators for little-endian architectures that want to switch between
      big-endian and little-endian mode frequently, e.g. because they are
      generating instructions sequences on the fly and they want to run
      those sequences in little-endian mode.
      
      The other thing about this system call is that it doesn't clobber as
      many registers as a normal system call.  It only clobbers r12.
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      745a14cc
    • Harvey Harrison's avatar
    • Harvey Harrison's avatar
      media: fix integer as NULL pointer warnings · a6a3a17b
      Harvey Harrison authored
      drivers/media/video/v4l2-common.c:719:16: warning: Using plain integer as NULL pointer
      drivers/media/video/au0828/au0828-dvb.c:122:19: warning: Using plain integer as NULL pointer
      drivers/media/video/ivtv/ivtv-yuv.c:1101:22: warning: Using plain integer as NULL pointer
      drivers/media/video/ivtv/ivtv-yuv.c:1102:23: warning: Using plain integer as NULL pointer
      drivers/media/video/pvrusb2/pvrusb2-audio.c:78:39: warning: Using plain integer as NULL pointer
      drivers/media/video/pvrusb2/pvrusb2-video-v4l.c:84:39: warning: Using plain integer as NULL pointer
      drivers/media/video/pvrusb2/pvrusb2-v4l2.c:1264:9: warning: Using plain integer as NULL pointer
      drivers/media/video/pvrusb2/pvrusb2-context.c:197:28: warning: Using plain integer as NULL pointer
      drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.c:126:39: warning: Using plain integer as NULL pointer
      drivers/media/video/pvrusb2/pvrusb2-dvb.c:133:32: warning: Using plain integer as NULL pointer
      drivers/media/video/pvrusb2/pvrusb2-dvb.c:145:31: warning: Using plain integer as NULL pointer
      drivers/media/video/pvrusb2/pvrusb2-dvb.c:177:55: warning: Using plain integer as NULL pointer
      drivers/media/video/videobuf-core.c:100:9: warning: Using plain integer as NULL pointer
      Signed-off-by: default avatarHarvey Harrison <harvey.harrison@gmail.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a6a3a17b
    • Harvey Harrison's avatar
      scsi: fix integer as NULL pointer warnings · 172c122d
      Harvey Harrison authored
      drivers/scsi/aic7xxx/aic7770_osm.c:53:58: warning: Using plain integer as NULL pointer
      drivers/scsi/aic7xxx/aic7xxx_osm_pci.c:355:47: warning: Using plain integer as NULL pointer
      drivers/scsi/aic7xxx/aic7xxx_osm_pci.c:372:55: warning: Using plain integer as NULL pointer
      drivers/scsi/aha152x.c:997:28: warning: Using plain integer as NULL pointer
      drivers/scsi/aha152x.c:1003:28: warning: Using plain integer as NULL pointer
      drivers/scsi/aha152x.c:1165:46: warning: Using plain integer as NULL pointer
      drivers/scsi/fdomain.c:1446:40: warning: Using plain integer as NULL pointer
      drivers/scsi/sym53c8xx_2/sym_hipd.c:1650:51: warning: Using plain integer as NULL pointer
      drivers/scsi/sym53c8xx_2/sym_hipd.c:3171:42: warning: Using plain integer as NULL pointer
      drivers/scsi/sym53c8xx_2/sym_hipd.c:5732:52: warning: Using plain integer as NULL pointer
      drivers/scsi/ncr53c8xx.c:8189:31: warning: Using plain integer as NULL pointer
      drivers/scsi/ncr53c8xx.c:8225:34: warning: Using plain integer as NULL pointer
      drivers/scsi/dpt_i2o.c:156:32: warning: Using plain integer as NULL pointer
      drivers/scsi/ultrastor.c:954:42: warning: Using plain integer as NULL pointer
      drivers/scsi/ultrastor.c:1104:18: warning: Using plain integer as NULL pointer
      Signed-off-by: default avatarHarvey Harrison <harvey.harrison@gmail.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      172c122d
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 · 8ab68ab4
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (35 commits)
        siimage: coding style cleanup (take 2)
        ide-cd: clean up cdrom_analyze_sense_data()
        ide-cd: fix test unsigned var < 0
        ide: add TSSTcorp CDDVDW SH-S202H to ivb_list[]
        piix: add Asus Eee 701 controller to short cable list
        ARM: always select HAVE_IDE
        remove the broken ETRAX_IDE driver
        ide: remove ->dma_prdtable field from ide_hwif_t
        ide: remove ->dma_vendor{1,3} fields from ide_hwif_t
        scc_pata: add ->dma_host_set and ->dma_start methods
        ide: skip "VLB sync" if host uses MMIO
        ide: add ide_pad_transfer() helper
        ide: remove ->INW and ->OUTW methods
        ide: use IDE I/O helpers directly in ide_tf_{load,read}()
        ns87415: add ->tf_read method
        scc_pata: add ->tf_{load,read} methods
        ide-h8300: add ->tf_{load,read} methods
        ide-cris: add ->tf_{load,read} methods
        ide: add ->tf_load and ->tf_read methods
        ide: move ide_tf_{load,read} to ide-iops.c
        ...
      8ab68ab4
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild · f05c463b
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild:
        kconfig: add named choice group
        kconfig: fix choice dependency check
        kconifg: 'select' considered less evil
        dontdiff: ignore timeconst.h
        dontdiff: add modules.order
        kbuild: fix unportability in gen_initramfs_list.sh
        kbuild: fix help output to show correct arch
        kbuild: show defconfig subdirs in make help
        kconfig: reversed borderlines in inputbox
      f05c463b
    • Harvey Harrison's avatar
      drivers: atm, char fix integer as NULL pointer warnings · 8da56309
      Harvey Harrison authored
      drivers/atm/nicstar.c:418:25: warning: Using plain integer as NULL pointer
      drivers/char/drm/r128_cce.c:820:25: warning: Using plain integer as NULL pointer
      drivers/char/tty_io.c:1183:10: warning: Using plain integer as NULL pointer
      Signed-off-by: default avatarHarvey Harrison <harvey.harrison@gmail.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8da56309
    • Harvey Harrison's avatar
      mm: fix integer as NULL pointer warnings · 7b8ee84d
      Harvey Harrison authored
      mm/hugetlb.c:207:11: warning: Using plain integer as NULL pointer
      Signed-off-by: default avatarHarvey Harrison <harvey.harrison@gmail.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      7b8ee84d
    • Harvey Harrison's avatar
      kernel: fix integer as NULL pointer warnings · b331d259
      Harvey Harrison authored
      kernel/cpuset.c:1268:52: warning: Using plain integer as NULL pointer
      kernel/pid_namespace.c:95:24: warning: Using plain integer as NULL pointer
      Signed-off-by: default avatarHarvey Harrison <harvey.harrison@gmail.com>
      Reviewed-by: default avatarPaul Jackson <pj@sgi.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      b331d259
    • Harvey Harrison's avatar
      init: fix integer as NULL pointer warnings · d613c3e2
      Harvey Harrison authored
      init/do_mounts_rd.c:215:13: warning: Using plain integer as NULL pointer
      init/do_mounts_md.c:136:45: warning: Using plain integer as NULL pointer
      Signed-off-by: default avatarHarvey Harrison <harvey.harrison@gmail.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d613c3e2
  2. 28 Apr, 2008 28 commits