1. 14 Dec, 2009 40 commits
    • Christoph Hellwig's avatar
      xfs: event tracing support · 0b1b213f
      Christoph Hellwig authored
      Convert the old xfs tracing support that could only be used with the
      out of tree kdb and xfsidbg patches to use the generic event tracer.
      
      To use it make sure CONFIG_EVENT_TRACING is enabled and then enable
      all xfs trace channels by:
      
         echo 1 > /sys/kernel/debug/tracing/events/xfs/enable
      
      or alternatively enable single events by just doing the same in one
      event subdirectory, e.g.
      
         echo 1 > /sys/kernel/debug/tracing/events/xfs/xfs_ihold/enable
      
      or set more complex filters, etc. In Documentation/trace/events.txt
      all this is desctribed in more detail.  To reads the events do a
      
         cat /sys/kernel/debug/tracing/trace
      
      Compared to the last posting this patch converts the tracing mostly to
      the one tracepoint per callsite model that other users of the new
      tracing facility also employ.  This allows a very fine-grained control
      of the tracing, a cleaner output of the traces and also enables the
      perf tool to use each tracepoint as a virtual performance counter,
           allowing us to e.g. count how often certain workloads git various
           spots in XFS.  Take a look at
      
          http://lwn.net/Articles/346470/
      
      
      
      for some examples.
      
      Also the btree tracing isn't included at all yet, as it will require
      additional core tracing features not in mainline yet, I plan to
      deliver it later.
      
      And the really nice thing about this patch is that it actually removes
      many lines of code while adding this nice functionality:
      
       fs/xfs/Makefile                |    8
       fs/xfs/linux-2.6/xfs_acl.c     |    1
       fs/xfs/linux-2.6/xfs_aops.c    |   52 -
       fs/xfs/linux-2.6/xfs_aops.h    |    2
       fs/xfs/linux-2.6/xfs_buf.c     |  117 +--
       fs/xfs/linux-2.6/xfs_buf.h     |   33
       fs/xfs/linux-2.6/xfs_fs_subr.c |    3
       fs/xfs/linux-2.6/xfs_ioctl.c   |    1
       fs/xfs/linux-2.6/xfs_ioctl32.c |    1
       fs/xfs/linux-2.6/xfs_iops.c    |    1
       fs/xfs/linux-2.6/xfs_linux.h   |    1
       fs/xfs/linux-2.6/xfs_lrw.c     |   87 --
       fs/xfs/linux-2.6/xfs_lrw.h     |   45 -
       fs/xfs/linux-2.6/xfs_super.c   |  104 ---
       fs/xfs/linux-2.6/xfs_super.h   |    7
       fs/xfs/linux-2.6/xfs_sync.c    |    1
       fs/xfs/linux-2.6/xfs_trace.c   |   75 ++
       fs/xfs/linux-2.6/xfs_trace.h   | 1369 +++++++++++++++++++++++++++++++++++++++++
       fs/xfs/linux-2.6/xfs_vnode.h   |    4
       fs/xfs/quota/xfs_dquot.c       |  110 ---
       fs/xfs/quota/xfs_dquot.h       |   21
       fs/xfs/quota/xfs_qm.c          |   40 -
       fs/xfs/quota/xfs_qm_syscalls.c |    4
       fs/xfs/support/ktrace.c        |  323 ---------
       fs/xfs/support/ktrace.h        |   85 --
       fs/xfs/xfs.h                   |   16
       fs/xfs/xfs_ag.h                |   14
       fs/xfs/xfs_alloc.c             |  230 +-----
       fs/xfs/xfs_alloc.h             |   27
       fs/xfs/xfs_alloc_btree.c       |    1
       fs/xfs/xfs_attr.c              |  107 ---
       fs/xfs/xfs_attr.h              |   10
       fs/xfs/xfs_attr_leaf.c         |   14
       fs/xfs/xfs_attr_sf.h           |   40 -
       fs/xfs/xfs_bmap.c              |  507 +++------------
       fs/xfs/xfs_bmap.h              |   49 -
       fs/xfs/xfs_bmap_btree.c        |    6
       fs/xfs/xfs_btree.c             |    5
       fs/xfs/xfs_btree_trace.h       |   17
       fs/xfs/xfs_buf_item.c          |   87 --
       fs/xfs/xfs_buf_item.h          |   20
       fs/xfs/xfs_da_btree.c          |    3
       fs/xfs/xfs_da_btree.h          |    7
       fs/xfs/xfs_dfrag.c             |    2
       fs/xfs/xfs_dir2.c              |    8
       fs/xfs/xfs_dir2_block.c        |   20
       fs/xfs/xfs_dir2_leaf.c         |   21
       fs/xfs/xfs_dir2_node.c         |   27
       fs/xfs/xfs_dir2_sf.c           |   26
       fs/xfs/xfs_dir2_trace.c        |  216 ------
       fs/xfs/xfs_dir2_trace.h        |   72 --
       fs/xfs/xfs_filestream.c        |    8
       fs/xfs/xfs_fsops.c             |    2
       fs/xfs/xfs_iget.c              |  111 ---
       fs/xfs/xfs_inode.c             |   67 --
       fs/xfs/xfs_inode.h             |   76 --
       fs/xfs/xfs_inode_item.c        |    5
       fs/xfs/xfs_iomap.c             |   85 --
       fs/xfs/xfs_iomap.h             |    8
       fs/xfs/xfs_log.c               |  181 +----
       fs/xfs/xfs_log_priv.h          |   20
       fs/xfs/xfs_log_recover.c       |    1
       fs/xfs/xfs_mount.c             |    2
       fs/xfs/xfs_quota.h             |    8
       fs/xfs/xfs_rename.c            |    1
       fs/xfs/xfs_rtalloc.c           |    1
       fs/xfs/xfs_rw.c                |    3
       fs/xfs/xfs_trans.h             |   47 +
       fs/xfs/xfs_trans_buf.c         |   62 -
       fs/xfs/xfs_vnodeops.c          |    8
       70 files changed, 2151 insertions(+), 2592 deletions(-)
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarAlex Elder <aelder@sgi.com>
      0b1b213f
    • Christoph Hellwig's avatar
      xfs: change the xfs_iext_insert / xfs_iext_remove · 6ef35544
      Christoph Hellwig authored
      
      
      Change the xfs_iext_insert / xfs_iext_remove prototypes to pass more
      information which will allow pushing the trace points from the callers
      into those functions.  This includes folding the whichfork information
      into the state variable to minimize the addition stack footprint.
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarAlex Elder <aelder@sgi.com>
      6ef35544
    • Christoph Hellwig's avatar
      xfs: cleanup bmap extent state macros · 7574aa92
      Christoph Hellwig authored
      
      
      Cleanup the extent state macros in the bmap code to use one common set of
      flags that we can pass to the tracing code later and remove a lot of the
      macro obsfucation.
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarAlex Elder <aelder@sgi.com>
      7574aa92
    • Linus Torvalds's avatar
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6 · 3ea6b3d0
      Linus Torvalds authored
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6:
        udf: Avoid IO in udf_clear_inode
        udf: Try harder when looking for VAT inode
        udf: Fix compilation with UDFFS_DEBUG enabled
      3ea6b3d0
    • Jan Kara's avatar
      udf: Avoid IO in udf_clear_inode · 2c948b3f
      Jan Kara authored
      
      
      It is not very good to do IO in udf_clear_inode. First, VFS does not really
      expect inode to become dirty there and thus we have to write it ourselves,
      second, memory reclaim gets blocked waiting for IO when it does not really
      expect it, third, the IO pattern (e.g. on umount) resulting from writes in
      udf_clear_inode is bad and it slows down writing a lot.
      
      The reason why UDF needed to do IO in udf_clear_inode is that UDF standard
      mandates extent length to exactly match inode size. But when we allocate
      extents to a file or directory, we don't really know what exactly the final
      file size will be and thus temporarily set it to block boundary and later
      truncate it to exact length in udf_clear_inode. Now, this is changed to
      truncate to final file size in udf_release_file for regular files. For
      directories and symlinks, we do the truncation at the moment when learn
      what the final file size will be.
      Signed-off-by: default avatarJan Kara <jack@suse.cz>
      2c948b3f
    • Jan Kara's avatar
      udf: Try harder when looking for VAT inode · e971b0b9
      Jan Kara authored
      
      
      Some disks do not contain VAT inode in the last recorded block as required
      by the standard but a few blocks earlier (or the number of recorded blocks
      is wrong). So look for the VAT inode a bit before the end of the media.
      Signed-off-by: default avatarJan Kara <jack@suse.cz>
      e971b0b9
    • Jan Kara's avatar
      udf: Fix compilation with UDFFS_DEBUG enabled · 1fefd086
      Jan Kara authored
      
      Signed-off-by: default avatarJan Kara <jack@suse.cz>
      1fefd086
    • Linus Torvalds's avatar
      Merge branch 'x86-fixes-for-linus' of... · 75b08038
      Linus Torvalds authored
      Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        x86, mce: Clean up thermal init by introducing intel_thermal_supported()
        x86, mce: Thermal monitoring depends on APIC being enabled
        x86: Gart: fix breakage due to IOMMU initialization cleanup
        x86: Move swiotlb initialization before dma32_free_bootmem
        x86: Fix build warning in arch/x86/mm/mmio-mod.c
        x86: Remove usedac in feature-removal-schedule.txt
        x86: Fix duplicated UV BAU interrupt vector
        nvram: Fix write beyond end condition; prove to gcc copy is safe
        mm: Adjust do_pages_stat() so gcc can see copy_from_user() is safe
        x86: Limit the number of processor bootup messages
        x86: Remove enabling x2apic message for every CPU
        doc: Add documentation for bootloader_{type,version}
        x86, msr: Add support for non-contiguous cpumasks
        x86: Use find_e820() instead of hard coded trampoline address
        x86, AMD: Fix stale cpuid4_info shared_map data in shared_cpu_map cpumasks
      
      Trivial percpu-naming-introduced conflicts in arch/x86/kernel/cpu/intel_cacheinfo.c
      75b08038
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 · fb1beb29
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6:
        pcmcia: CodingStyle fixes
        pcmcia: remove unused IRQ_FIRST_SHARED
      fb1beb29
    • Linus Torvalds's avatar
      Merge branch 'next-spi' of git://git.secretlab.ca/git/linux-2.6 · 478e4e9d
      Linus Torvalds authored
      * 'next-spi' of git://git.secretlab.ca/git/linux-2.6: (23 commits)
        spi: fix probe/remove section markings
        Add OMAP spi100k driver
        spi-imx: don't access struct device directly but use dev_get_platdata
        spi-imx: Add mx25 support
        spi-imx: use positive logic to distinguish cpu variants
        spi-imx: correct check for platform_get_irq failing
        ARM: NUC900: Add spi driver support for nuc900
        spi: SuperH MSIOF SPI Master driver V2
        spi: fix spidev compilation failure when VERBOSE is defined
        spi/au1550_spi: fix setupxfer not to override cfg with zeros
        spi/mpc8xxx: don't use __exit_p to wrap plat_mpc8xxx_spi_remove
        spi/i.MX: fix broken error handling for gpio_request
        spi/i.mx: drain MXC SPI transfer buffer when probing device
        MAINTAINERS: add SPI co-maintainer.
        spi/xilinx_spi: fix incorrect casting
        spi/mpc52xx-spi: minor cleanups
        xilinx_spi: add a platform driver using the xilinx_spi common module.
        xilinx_spi: add support for the DS570 IP.
        xilinx_spi: Switch to iomem functions and support little endian.
        xilinx_spi: Split into of driver and generic part.
        ...
      478e4e9d
    • Linus Torvalds's avatar
      Merge branch 'perf-fixes-for-linus' of... · 2205afa7
      Linus Torvalds authored
      Merge branch 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        perf sched: Fix build failure on sparc
        perf bench: Add "all" pseudo subsystem and "all" pseudo suite
        perf tools: Introduce perf_session class
        perf symbols: Ditch dso->find_symbol
        perf symbols: Allow lookups by symbol name too
        perf symbols: Add missing "Variables" entry to map_type__name
        perf symbols: Add support for 'variable' symtabs
        perf symbols: Introduce ELF counterparts to symbol_type__is_a
        perf symbols: Introduce symbol_type__is_a
        perf symbols: Rename kthreads to kmaps, using another abstraction for it
        perf tools: Allow building for ARM
        hw-breakpoints: Handle bad modify_user_hw_breakpoint off-case return value
        perf tools: Allow cross compiling
        tracing, slab: Fix no callsite ifndef CONFIG_KMEMTRACE
        tracing, slab: Define kmem_cache_alloc_notrace ifdef CONFIG_TRACING
      
      Trivial conflict due to different fixes to modify_user_hw_breakpoint()
      in include/linux/hw_breakpoint.h
      2205afa7
    • David Howells's avatar
      PCI: Global variable decls must match the defs in section attributes · 491424c0
      David Howells authored
      
      
      Global variable declarations must match the definitions in section attributes
      as the compiler is at liberty to vary the method it uses to access a variable,
      depending on the section it is in.
      
      When building the FRV arch, I now see:
      
        drivers/built-in.o: In function `pci_apply_final_quirks':
        drivers/pci/quirks.c:2606: relocation truncated to fit: R_FRV_GPREL12 against symbol `pci_dfl_cache_line_size' defined in .devinit.data section in drivers/built-in.o
        drivers/pci/quirks.c:2623: relocation truncated to fit: R_FRV_GPREL12 against symbol `pci_dfl_cache_line_size' defined in .devinit.data section in drivers/built-in.o
        drivers/pci/quirks.c:2630: relocation truncated to fit: R_FRV_GPREL12 against symbol `pci_dfl_cache_line_size' defined in .devinit.data section in drivers/built-in.o
      
      because the declaration of pci_dfl_cache_line_size in linux/pci.h does not
      match the definition in drivers/pci/pci.c.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      491424c0
    • David Howells's avatar
      FRV: Fix no-hardware-breakpoint case · 5185fb06
      David Howells authored
      
      
      If there is no hardware breakpoint support, modify_user_hw_breakpoint()
      tries to return a NULL pointer through as an 'int' return value:
      
        In file included from kernel/exit.c:53:
        include/linux/hw_breakpoint.h: In function 'modify_user_hw_breakpoint':
        include/linux/hw_breakpoint.h:96: warning: return makes integer from pointer without a cast
      
      Return 0 instead.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      5185fb06
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze · 464480f7
      Linus Torvalds authored
      * 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze: (46 commits)
        microblaze: Remove rt_sigsuspend wrapper
        microblaze: nommu: Don't clobber R11 on syscalls
        microblaze: Remove show_tmem function
        microblaze: Support for WB cache
        microblaze: Add PVR for Microblaze v7.30.a
        microblaze: Remove ancient and fake microblaze version from cpu_ver table
        microblaze: Remove panic_timeout init value
        microblaze: Do not count system calls in default
        microblaze: Enable DTC compilation
        microblaze: Core oprofile configs and hooks
        microblaze: Fix level interrupt ACKing
        microblaze: Enable futimesat syscall
        microblaze: Checking DTS against PVR for write-back cache
        microblaze: Remove duplicity from pgalloc.h
        microblaze: Futex support
        microblaze: Adding dev_arch_data functions
        microblaze: Fix the heartbeat gpio to be more robust
        microblaze: Simple __copy_tofrom_user for noMMU
        microblaze: Export memory_start for modules
        microblaze: Use lowest-common-denominator default CPU settings
        ...
      464480f7
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://neil.brown.name/md · 37222e1c
      Linus Torvalds authored
      * 'for-linus' of git://neil.brown.name/md: (27 commits)
        md: add 'recovery_start' per-device sysfs attribute
        md: rcu_read_lock() walk of mddev->disks in md_do_sync()
        md: integrate spares into array at earliest opportunity.
        md: move compat_ioctl handling into md.c
        md: revise Kconfig help for MD_MULTIPATH
        md: add MODULE_DESCRIPTION for all md related modules.
        raid: improve MD/raid10 handling of correctable read errors.
        md/raid10: print more useful messages on device failure.
        md/bitmap: update dirty flag when bitmap bits are explicitly set.
        md: Support write-intent bitmaps with externally managed metadata.
        md/bitmap: move setting of daemon_lastrun out of bitmap_read_sb
        md: support updating bitmap parameters via sysfs.
        md: factor out parsing of fixed-point numbers
        md: support bitmap offset appropriate for external-metadata arrays.
        md: remove needless setting of thread->timeout in raid10_quiesce
        md: change daemon_sleep to be in 'jiffies' rather than 'seconds'.
        md: move offset, daemon_sleep and chunksize out of bitmap structure
        md: collect bitmap-specific fields into one structure.
        md/raid1: add takeover support for raid5->raid1
        md: add honouring of suspend_{lo,hi} to raid1.
        ...
      37222e1c
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 · 76b8f82c
      Linus Torvalds authored
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (58 commits)
        mfd: Add twl6030 regulator subdevices
        regulator: Add support for twl6030 regulators
        rtc: Add twl6030 RTC support
        mfd: Add support for twl6030 irq framework
        mfd: Rename twl4030_ routines in twl-regulator.c
        mfd: Rename twl4030_ routines in rtc-twl.c
        mfd: Rename all twl4030_i2c*
        mfd: Rename twl4030* driver files to enable re-use
        mfd: Clarify twl4030 return value for read and write
        mfd: Add all twl4030 regulators to the twl4030 mfd driver
        mfd: Don't set mc13783 ADREFMODE for touch conversions
        mfd: Remove ezx-pcap defines for custom led gpio encoding
        mfd: Near complete mc13783 rewrite
        mfd: Remove build time warning for WM835x register default tables
        mfd: Force I2C to be built in when building WM831x
        mfd: Don't allow wm831x to be built as a module
        mfd: Fix incorrect error check for wm8350-core
        mfd: Fix twl4030 warning
        gpiolib: Implement gpio_to_irq() for wm831x
        mfd: Remove default selection of AB4500
        ...
      76b8f82c
    • Linus Torvalds's avatar
      Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm · af853e63
      Linus Torvalds authored
      * 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm:
        ARM: fix lh7a40x build
        ARM: fix sa1100 build
        ARM: fix clps711x, footbridge, integrator, ixp2000, ixp2300 and s3c build bug
        ARM: VFP: fix vfp thread init bug and document vfp notifier entry conditions
        ARM: pxa: fix now incorrect reference of skt->irq by using skt->socket.pci_irq
        [ARM] pxa/zeus: default configuration for Arcom Zeus SBC.
        [ARM] pxa/zeus: make Viper pcmcia support more generic to support Zeus
        [ARM] pxa/zeus: basic support for Arcom Zeus SBC
        [ARM] pxa/em-x270: fix usb hub power up/reset sequence
        PCMCIA: fix pxa2xx_lubbock modular build error
        ARM: RealView: Fix typo in the RealView/PBX Kconfig entry
        ARM: Do not allow the probing of the local timer
        ARM: Add an earlyprintk debug console
      af853e63
    • Linus Torvalds's avatar
      Merge git://git.linux-nfs.org/projects/trondmy/nfs-2.6 · 3f86ce72
      Linus Torvalds authored
      * git://git.linux-nfs.org/projects/trondmy/nfs-2.6: (75 commits)
        NFS: Fix nfs_migrate_page()
        rpc: remove unneeded function parameter in gss_add_msg()
        nfs41: Invoke RECLAIM_COMPLETE on all new client ids
        SUNRPC: IS_ERR/PTR_ERR confusion
        NFSv41: Fix a potential state leakage when restarting nfs4_close_prepare
        nfs41: Handle NFSv4.1 session errors in the delegation recall code
        nfs41: Retry delegation return if it failed with session error
        nfs41: Handle session errors during delegation return
        nfs41: Mark stateids in need of reclaim if state manager gets stale clientid
        NFS: Fix up the declaration of nfs4_restart_rpc when NFSv4 not configured
        nfs41: Don't clear DRAINING flag on NFS4ERR_STALE_CLIENTID
        nfs41: nfs41_setup_state_renewal
        NFSv41: More cleanups
        NFSv41: Fix up some bugs in the NFS4CLNT_SESSION_DRAINING code
        NFSv41: Clean up slot table management
        NFSv41: Fix nfs4_proc_create_session
        nfs41: Invoke RECLAIM_COMPLETE
        nfs41: RECLAIM_COMPLETE functionality
        nfs41: RECLAIM_COMPLETE XDR functionality
        Cleanup some NFSv4 XDR decode comments
        ...
      3f86ce72
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu · d0316554
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (34 commits)
        m68k: rename global variable vmalloc_end to m68k_vmalloc_end
        percpu: add missing per_cpu_ptr_to_phys() definition for UP
        percpu: Fix kdump failure if booted with percpu_alloc=page
        percpu: make misc percpu symbols unique
        percpu: make percpu symbols in ia64 unique
        percpu: make percpu symbols in powerpc unique
        percpu: make percpu symbols in x86 unique
        percpu: make percpu symbols in xen unique
        percpu: make percpu symbols in cpufreq unique
        percpu: make percpu symbols in oprofile unique
        percpu: make percpu symbols in tracer unique
        percpu: make percpu symbols under kernel/ and mm/ unique
        percpu: remove some sparse warnings
        percpu: make alloc_percpu() handle array types
        vmalloc: fix use of non-existent percpu variable in put_cpu_var()
        this_cpu: Use this_cpu_xx in trace_functions_graph.c
        this_cpu: Use this_cpu_xx for ftrace
        this_cpu: Use this_cpu_xx in nmi handling
        this_cpu: Use this_cpu operations in RCU
        this_cpu: Use this_cpu ops for VM statistics
        ...
      
      Fix up trivial (famous last words) global per-cpu naming conflicts in
      	arch/x86/kvm/svm.c
      	mm/slab.c
      d0316554
    • William Allen Simpson's avatar
      Documentation: rw_lock lessons learned · fb0bbb92
      William Allen Simpson authored
      
      
      In recent months, two different network projects erroneously
      strayed down the rw_lock path.  Update the Documentation
      based upon comments by Eric Dumazet and Paul E. McKenney in
      those threads.
      
      Further updates await somebody else with more expertise.
      
      Changes:
        - Merged with extensive content by Stephen Hemminger.
        - Fix one of the comments by Linus Torvalds.
      
      Signed-off-by: William.Allen.Simpson@gmail.com
      Acked-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      fb0bbb92
    • Hidetoshi Seto's avatar
      x86, mce: Clean up thermal init by introducing intel_thermal_supported() · 70fe4407
      Hidetoshi Seto authored
      
      
      It looks better to have a common function. No change in functionality.
      Signed-off-by: default avatarHidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
      Cc: Cyrill Gorcunov <gorcunov@openvz.org>
      LKML-Reference: <4B25FDDC.407@jp.fujitsu.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      Cc: Cyrill Gorcunov <gorcunov@openvz.org>
      70fe4407
    • Cyrill Gorcunov's avatar
      x86, mce: Thermal monitoring depends on APIC being enabled · 485a2e19
      Cyrill Gorcunov authored
      
      
      Add check if APIC is not disabled since thermal
      monitoring depends on it. As only apic gets disabled
      we should not try to install "thermal monitor" vector,
      print out that thermal monitoring is enabled and etc...
      
      Note that "Intel Correct Machine Check Interrupts" already
      has such a check.
      
      Also I decided to not add cpu_has_apic check into
      mcheck_intel_therm_init since even if it'll call apic_read on
      disabled apic -- it's safe here and allow us to save a few code
      bytes.
      Reported-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: default avatarCyrill Gorcunov <gorcunov@openvz.org>
      Signed-off-by: default avatarHidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
      LKML-Reference: <4B25FDC2.3020401@jp.fujitsu.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      485a2e19
    • David Miller's avatar
      perf sched: Fix build failure on sparc · 2cd9046c
      David Miller authored
      
      
      Here, tvec->tv_usec is "unsigned int" not "unsigned long".
      
      Since the type is different on every platform, it's probably
      best to just use long printf formats and cast.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Mike Galbraith <efault@gmx.de>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      LKML-Reference: <20091213.235622.53363059.davem@davemloft.net>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      2cd9046c
    • Yinghai Lu's avatar
      x86: Gart: fix breakage due to IOMMU initialization cleanup · f3eee542
      Yinghai Lu authored
      This fixes the following breakage of the commit
      75f1cdf1
      
      :
      
      - GART systems that don't AGP with broken BIOS and more than 4GB
        memory are forced to use swiotlb. They can allocate aperture by
        hand and use GART.
      
      - GART systems without GAP must disable GART on shutdown.
      
      - swiotlb usage is forced by the boot option,
        gart_iommu_hole_init() is not called, so we disable GART
        early_gart_iommu_check().
      Signed-off-by: default avatarYinghai Lu <yinghai@kernel.org>
      Signed-off-by: default avatarFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
      LKML-Reference: <1260759135-6450-3-git-send-email-fujita.tomonori@lab.ntt.co.jp>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      f3eee542
    • FUJITA Tomonori's avatar
      x86: Move swiotlb initialization before dma32_free_bootmem · f4780ca0
      FUJITA Tomonori authored
      The commit 75f1cdf1
      
       introduced a
      bug that we initialize SWIOTLB right after dma32_free_bootmem so
      we wrongly steal memory area allocated for GART with broken BIOS
      earlier.
      
      This moves swiotlb initialization before dma32_free_bootmem().
      Signed-off-by: default avatarFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
      Cc: yinghai@kernel.org
      LKML-Reference: <1260759135-6450-2-git-send-email-fujita.tomonori@lab.ntt.co.jp>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      f4780ca0
    • Joe Perches's avatar
      x86: Fix build warning in arch/x86/mm/mmio-mod.c · eba11d6d
      Joe Perches authored
      
      
      Stephen Rothwell reported these warnings:
      
       arch/x86/mm/mmio-mod.c: In function 'print_pte':
       arch/x86/mm/mmio-mod.c:100: warning: too many arguments for format
       arch/x86/mm/mmio-mod.c:106: warning: too many arguments for format
      
      The 'fmt' was left out accidentally.
      Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: default avatarJoe Perches <joe@perches.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Linus <torvalds@linux-foundation.org>
      LKML-Reference: <1260775443.18538.16.camel@Joe-Laptop.home>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      eba11d6d
    • FUJITA Tomonori's avatar
      x86: Remove usedac in feature-removal-schedule.txt · 06f8bda8
      FUJITA Tomonori authored
      
      
      The reason of removal, "replaced by allowdac and no dac
      combination" is incorrect. There is no way to do the same thing
      with "allowdac" and "nodac" combination.
      
      The usedac option enables us to stop via_no_dac() setting
      forbid_dac to 1. That is, someone who uses VIA bridges can use
      DAC with this option even if some of VIA bridges seem to be
      broken about DAC.
      Signed-off-by: default avatarFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
      Acked-by: default avatarWANG Cong <amwang@redhat.com>
      Cc: gcosta@redhat.com
      LKML-Reference: <20091214104423X.fujita.tomonori@lab.ntt.co.jp>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      06f8bda8
    • Hitoshi Mitake's avatar
      perf bench: Add "all" pseudo subsystem and "all" pseudo suite · 2044279d
      Hitoshi Mitake authored
      
      
      This patch adds a new "all" pseudo subsystem and an "all" pseudo
      suite. These are for testing all subsystem and its all suite, or
      all suite of one subsystem.
      
      (This patch also contains a few trivial comment fixes for
      bench/* and output style fixes. I judged that there are no
      necessity to make them into individual patch.)
      
      Example of use:
      
      | % ./perf bench sched all                      # Test all suites of sched subsystem
      | # Running sched/messaging benchmark...
      | # 20 sender and receiver processes per group
      | # 10 groups == 400 processes run
      |
      |      Total time: 0.414 [sec]
      |
      | # Running sched/pipe benchmark...
      | # Extecuted 1000000 pipe operations between two tasks
      |
      |      Total time: 10.999 [sec]
      |
      |       10.999317 usecs/op
      |           90914 ops/sec
      |
      | % ./perf bench all                            # Test all suites of all subsystems
      | # Running sched/messaging benchmark...
      | # 20 sender and receiver processes per group
      | # 10 groups == 400 processes run
      |
      |      Total time: 0.420 [sec]
      |
      | # Running sched/pipe benchmark...
      | # Extecuted 1000000 pipe operations between two tasks
      |
      |      Total time: 11.741 [sec]
      |
      |       11.741346 usecs/op
      |           85169 ops/sec
      |
      | # Running mem/memcpy benchmark...
      | # Copying 1MB Bytes from 0x7ff33e920010 to 0x7ff3401ae010 ...
      |
      |      808.407437 MB/Sec
      Signed-off-by: default avatarHitoshi Mitake <mitake@dcl.info.waseda.ac.jp>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      LKML-Reference: <1260691319-4683-1-git-send-email-mitake@dcl.info.waseda.ac.jp>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      2044279d
    • Michal Simek's avatar
      microblaze: Remove rt_sigsuspend wrapper · 571202f5
      Michal Simek authored
      
      
      Generic rt_sigsuspend syscalls doesn't need any asm wrapper.
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      571202f5
    • steve@digidescorp.com's avatar
      microblaze: nommu: Don't clobber R11 on syscalls · 825c9a35
      steve@digidescorp.com authored
      
      
      The noMMU syscall trap has a bug that causes R11 to be zero on return to
      userland. Remove the extra "save" of R11 responsible for the bug.
      
      Remove reloading of mode indicator because r11 already contains it.
      Signed-off-by: default avatarSteven J. Magnani <steve@digidescorp.com>
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      825c9a35
    • Michal Simek's avatar
      microblaze: Remove show_tmem function · 233eb921
      Michal Simek authored
      
      
      show_tmem function do nothing that's why I removed it.
      There is also cleaning of commented ancient code.
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      233eb921
    • Michal Simek's avatar
      microblaze: Support for WB cache · 2ee2ff87
      Michal Simek authored
      
      
      Microblaze version 7.20.d is the first MB version which can be run
      on MMU linux. Please do not used previous version because they contain
      HW bug.
      Based on WB support was necessary to redesign whole cache design.
      Microblaze versions from 7.20.a don't need to disable IRQ and cache
      before working with them that's why there are special structures for it.
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      2ee2ff87
    • Michal Simek's avatar
      microblaze: Add PVR for Microblaze v7.30.a · c8983a5c
      Michal Simek authored
      
      
      Microblaze v7.30.a will have 0x10 version string.
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      c8983a5c
    • Michal Simek's avatar
      microblaze: Remove ancient and fake microblaze version from cpu_ver table · 81ab0dfd
      Michal Simek authored
      
      
      We need to continue with next microblaze PVR version that's why
      I have to remove that ancient version. These version strings not match
      any versions. From Microblaze v5.00.a is possible to use this style.
      I believe that none use ancients versions. If yes they will be just
      labeled as unknown version.
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      81ab0dfd
    • Michal Simek's avatar
      microblaze: Remove panic_timeout init value · 5de23446
      Michal Simek authored
      
      
      panic_timeout is in BSS section and it is cleared with BSS section.
      This means that value is setup to 0.
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      5de23446
    • Michal Simek's avatar
      microblaze: Do not count system calls in default · 11d51360
      Michal Simek authored
      
      
      There is not necessary to count system calls that's why
      I added DEBUG macro
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      11d51360
    • Michal Simek's avatar
      microblaze: Enable DTC compilation · 3c5e5672
      Michal Simek authored
      
      
      For simpleImage format we need to compile DTC. There is still possibility
      to compile only Linux kernel without DTB compiled-in.
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      3c5e5672
    • John Williams's avatar
      microblaze: Core oprofile configs and hooks · 3540ce82
      John Williams authored
      
      
      Microblaze uses timer interrupt mode. Microblaze don't have
      any performance counter that's why we use just simple implementation.
      Signed-off-by: default avatarJohn Williams <john.williams@petalogix.com>
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      3540ce82
    • steve@digidescorp.com's avatar
      microblaze: Fix level interrupt ACKing · 33d9ff59
      steve@digidescorp.com authored
      
      
      Level interrupts need to be ack'd in the unmask handler, as in powerpc.
      Among other issues, this bug causes the system clock to appear to run at
      double-speed.
      Signed-off-by: default avatarSteven J. Magnani <steve@digidescorp.com>
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      33d9ff59
    • Michal Simek's avatar
      microblaze: Enable futimesat syscall · 833d0d8d
      Michal Simek authored
      
      
      Futimesat was disabled. LTP testing shows that MB has no
      problem with this syscall.
      Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
      833d0d8d