1. 31 Oct, 2013 10 commits
    • Bob Moore's avatar
      ACPICA: Update version to 20130927. · affffae3
      Bob Moore authored
      Version 20130927.
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarLv Zheng <lv.zheng@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      affffae3
    • Lv Zheng's avatar
      ACPICA: Update aclinux.h for new OSL override mechanism. · 93220587
      Lv Zheng authored
      The new ACPICA OSL override mechanism is used to solve these issues
      for the Linux OSL:
       1. Linux can implement OSL using a macro.
       2. Linux can implement OSL using an inlined function.
       3. Linux can leave OSL not implemented for __KERNEL__ undefined code
          fragments.
       4. Linux can add sparse declarators (__iomem) to OSL.
       5. Linux can add memory tuning declarators (__init/__exit) to OSL.
      This patch also moves Linux specific OSL to aclinux.h which has not been
      maintained in the ACPICA code base.  Lv Zheng.
      
      Known issue:
      
       From ACPICA's perspective, actypes.h should be included after inclusion
       of acenv.h.  But currently in Linux, aclinux.h included by acenv.h has
       included actypes.h to find ACPICA types for inline functions.  This is a
       known and existing issue and currently there is no real problem caused
       by this issue for Linux kernel build.  Thus this issue is not covered by
       this cleanup commit.
      Signed-off-by: default avatarLv Zheng <lv.zheng@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      93220587
    • Lv Zheng's avatar
      ACPICA: Add support to allow host OS to redefine individual OSL prototypes. · 7e94632f
      Lv Zheng authored
      This change enables the host OS to redefine OSL prototypes found in the
      acpiosxf.h file. This allows the host OS to implement OSL interfaces with
      a macro or inlined function. Further, it allows the host OS to add any
      additional required modifiers such as __iomem, __init, __exit, etc.,
      as necessary on a per-interface basis. Enables maximum flexibility
      for the OSL interfaces. Lv Zheng.
      Signed-off-by: default avatarLv Zheng <lv.zheng@intel.com>
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      7e94632f
    • Bob Moore's avatar
      ACPICA: Simplify configuration of global ACPI_REDUCED_HARDWARE macro. · c0144dc0
      Bob Moore authored
      Surround definition of this with a #ifndef so that the kernel
      can define it elsewhere if desired.
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarLv Zheng <lv.zheng@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      c0144dc0
    • Lv Zheng's avatar
      ACPICA: Fix indentation issues for macro invocations. · cd27d79f
      Lv Zheng authored
      During the automatic translation of the upstream ACPICA source code
      into Linux kernel source code some extra white spaces are added by
      the "indent" program at the beginning of each line which is an
      invocation of a macro and there is no ";" at the end of the line.
      
      For this reason, a new mode has been added to the translation scripts
      to remove the extra spaces inserted before invoking such macros and add
      an empty line between the invocations of such macros (like the other
      function declarations).  This new mode is executed after executing
      "indent" during the Linux release process.  Consequently, some
      existing ACPICA source code in the Linux kernel tree needs to be
      adjusted to allow the new scripts to work correctly.
      
      The affected macros and files are:
       1. ACPI_HW_DEPENDENT_RETURN (acpixf.h/acdebug.h/acevents.h):
          This macro is used as a wrapper for hardware dependent APIs to offer
          a stub when the reduced hardware is configured during compilation.
       2. ACPI_EXPORT_SYMBOL (utglobal.c):
          This macro is used by Linux to export symbols to be found by Linux
          modules.  All such invocations are well formatted except those
          exported as global variables.
      
      This can help to reduce the source code differences between Linux
      and upstream ACPICA, and also help to automate the release process.
      No functional or binary generation changes should result from it.
      Lv Zheng.
      
      [rjw: Changelog]
      Signed-off-by: default avatarLv Zheng <lv.zheng@intel.com>
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      cd27d79f
    • Lv Zheng's avatar
      ACPICA: Prevent possible build issues for use of ACPI_PRINTF_LIKE macro · 4506bf23
      Lv Zheng authored
      The following build error:
       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         CC      arch/x86/kernel/setup.o
       In file included from include/acpi/acpi.h:64:0,
                        from include/linux/iscsi_ibft.h:24,
                        from arch/x86/kernel/setup.c:43:
       include/acpi/acpixf.h:543:1: error: expected ',' or ';' before '{' token
       include/acpi/acpixf.h:540:1: warning: 'acpi_error' declared 'static' but never defined [-Wunused-function]
       make[2]: *** [arch/x86/kernel/setup.o] Error 1
       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      can be triggerred by the following stub function (if implemented):
       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       static inline void ACPI_INTERNAL_VAR_XFACE
       acpi_error(const char *module_name,
       	   u32 line_number, const char *format, ...) ACPI_PRINTF_LIKE(3)
       {
       }
       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      
      This patch changes the position of ACPI_PRINTF_LIKE(x) to follow the
      style of __printf(x, x+1) used in Linux to prevent such issues from
      happening.  Lv Zheng.
      Signed-off-by: default avatarLv Zheng <lv.zheng@intel.com>
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      4506bf23
    • Lv Zheng's avatar
      ACPICA: Deploy ACPI_EXPORT_SYMBOL_INIT for main ACPICA initialization interfaces. · d21f600b
      Lv Zheng authored
      This changes can reduce source code differences between Linux and ACPICA
      upstream to help improving the release automation.
      
      The side effect of applying this patch in Linux is:
      1. Some ACPICA initialization/termination APIs are no longer exported in
         Linux, these include:
          acpi_load_tables
          acpi_initialize_subsystem
          acpi_enable_subsystem
          acpi_initialize_objects
          acpi_terminate
      2. This patch does not affect the following APIs as they are currently not
         marked with ACPI_EXPORT_SYMBOL in Linux:
          acpi_reallocate_root_table
          acpi_initialize_tables
      Such functions should not be exported as they are internal to ACPI
      subsystem in Linux, and will only be invoked inside of ACPI subsystem's
      initialization routines marked with __init and termination routines marked
      with __exit.  While on other OSPMs, such functions may still need to be
      exported.
      
      Thus this patch adds the configurability for ACPICA, so that it leaves
      OSPMs to determine if the __init/__exit marked functions should be exported
      or not.  Lv Zheng.
      Signed-off-by: default avatarLv Zheng <lv.zheng@intel.com>
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      d21f600b
    • Lv Zheng's avatar
      ACPICA: Linuxize: Change indentation of C labels. · 10622bf8
      Lv Zheng authored
      It is reported by kernel build test systems that all ACPICA source
      files in the kernel tree have incorrect label indentation.  This
      patch changes default indent option used in the release process to
      fix this bug.  Lv Zheng.
      Signed-off-by: default avatarLv Zheng <lv.zheng@intel.com>
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      10622bf8
    • Bob Moore's avatar
      ACPICA: Clarify ACPI_FREE_BUFFER usage. · bb1cab3d
      Bob Moore authored
      Add a comment to clarify reason for using ACPI_FREE_BUFFER directly
      instead of ACPI_FREE.
      
      In addition to that, change one instance in which ACPI_FREE_BUFFER()
      should be used instead of ACPI_FREE().
      
      [rjw: Subject and changelog]
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarLv Zheng <lv.zheng@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      bb1cab3d
    • Lv Zheng's avatar
      ACPICA: Add EXPORT_ACPI_INTERFACES macro to external interface modules. · 839e928f
      Lv Zheng authored
      For Linux, there are no functional changes/binary generation differences
      introduced by this patch.
      
      This change adds a new macro to all files that contain external ACPICA
      interfaces. It can be detected and used by the host (via the host-specific
      header) for any special processing required for such modules. Lv Zheng.
      Signed-off-by: default avatarLv Zheng <lv.zheng@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      839e928f
  2. 30 Oct, 2013 10 commits
  3. 15 Oct, 2013 1 commit
    • Rafael J. Wysocki's avatar
      MAINTAINERS / ACPICA: Add ACPICA information to MAINTAINERS · 3774929d
      Rafael J. Wysocki authored
      ACPICA (ACPI Component Architecture) is an external project that
      some ACPI kernel code, including the AML interpreter, is derived
      from.  That kernel code is generated automatically out of the
      original upstream ACPICA sources and therefore, as a general rule,
      all changes to it have to go through the ACPICA upstream.
      
      Add ACPICA information to MAINTAINERS to provide the upstream
      ACPICA maintainers contact information and pointers to the original
      ACPICA Web site and source code.
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      3774929d
  4. 23 Sep, 2013 18 commits
  5. 22 Sep, 2013 1 commit
    • Linus Torvalds's avatar
      Merge branch 'for-3.12/core' of git://git.kernel.dk/linux-block · 68cf8d0c
      Linus Torvalds authored
      Pull block IO fixes from Jens Axboe:
       "After merge window, no new stuff this time only a collection of neatly
        confined and simple fixes"
      
      * 'for-3.12/core' of git://git.kernel.dk/linux-block:
        cfq: explicitly use 64bit divide operation for 64bit arguments
        block: Add nr_bios to block_rq_remap tracepoint
        If the queue is dying then we only call the rq->end_io callout. This leaves bios setup on the request, because the caller assumes when the blk_execute_rq_nowait/blk_execute_rq call has completed that the rq->bios have been cleaned up.
        bio-integrity: Fix use of bs->bio_integrity_pool after free
        blkcg: relocate root_blkg setting and clearing
        block: Convert kmalloc_node(...GFP_ZERO...) to kzalloc_node(...)
        block: trace all devices plug operation
      68cf8d0c