linux-acpi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Lv Zheng <lv.zheng@intel.com>
To: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>,
	Len Brown <len.brown@intel.com>
Cc: Lv Zheng <lv.zheng@intel.com>, Lv Zheng <zetalog@gmail.com>,
	linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org
Subject: [PATCH v3 0/6] ACPI: Cleanup header inclusions.
Date: Fri,  6 Dec 2013 16:51:10 +0800	[thread overview]
Message-ID: <cover.1386316208.git.lv.zheng@intel.com> (raw)
In-Reply-To: <cover.1385094640.git.lv.zheng@intel.com>

This patchset includes 2 patches already merged in linux-pm/linux-next
branch.  It is included as the following mailing list thread contains two
patchsets of the ACPICA header cleanups.
1. Cleanup header inclusions.
   http://www.spinics.net/lists/linux-acpi/msg47510.html
2. Cleanup direct ACPICA inclusions.
   http://www.spinics.net/lists/linux-acpi/msg47703.html
It is vague for the thread monitors.
This patchset collects all patches in this thread together to form a single
v3 patchset.

ACPICA header files are lacking in stub protections.  This makes all ACPICA
header files could only be included for CONFIG_ACPI=y environment.  This
infects new ACPI prototypes, if such prototypes referenced ACPICA defined
types, they must be incldued only in the CONFIG_ACPI=y environment.  The
<acpi/acpi_bus.h> and <acpi/acpi_drivers.h> are the monstrosity infants
born under this background, directly including them in the CONFIG_ACPI=n
environment is not safe.  The infection spreads to whole kernel source tree
that we can see "#ifdef CONFIG_ACPI" here and there.

This patchset tries to enforces <linux/acpi.h> inclusions instead of
<acpi/acpi.h>, <acpi/acpi_bus.h> and <acpi/acpi_drivers.h> inclusions.

For <acpi/acpi_bus.h> and <acpi/acpi_drivers.h> inclusion cleanups, as all
users are CONFIG_ACPI dependent, we don't have any issues raised.

For <acpi/acpi.h> inclusion cleanups, we have following 4 cases specially
handled:
1. "ACPI IGD OpRegion" support in i915 DRM driver.  It can be modified to
   be CONFIG_ACPI dependent.
2. "_CRS based MCFG checker" support, original configurability of this
   piece of code relies on link stage optimization.  This patchset
   corrects it by making the configurability to be dependent on compile
   stage references.
3. "iSCSI IBFT finder" support.  IBFT can only appear on ACPI platforms
   while IBFT locating mechanism doesn't rely on ACPI table constructions.
   It is currently not dependent on CONFIG_ACPI.  IMO, this behavior is
   This patchset corrects it by making it dependent on CONFIG_ACPI.  This
   patch need to be discussed, thus marked as RFC.
4. "SFI/ACPI wrapper" support.  This error is not fixed in this patchset.
   Its solution is still under discussion.  It need to be synchronized
   with SFI users.

During the fixes, <linux/acpi_io.h> is also detected as an ACPICA dependent
header, it thus be converted into <acpi/acpi_io.h> and included from
<linux/acpi.h> for CONFIG_ACPI builds.

NOTE that the first 2 commits in this series are already in the
linux-pm/linux-next branch.
 1. Commit: 91be0998578a1001db1382012676ee0a69d5cee3
    Subject: [PATCH] ACPI: Clean up incorrect inclusions of ACPICA headers
 2. Commit: 4e8fb7987f7d0390a2e74622c7c1cbb6760c6516
    Subject: [PATCH] ACPI: Clean up inclusions of ACPI header files
The reset 4 commits are rebased on top of this branch thus can be applied
to the branch directly.

Lv Zheng (6):
  ACPI: Clean up incorrect inclusions of ACPICA headers
  ACPI: Clean up inclusions of ACPI header files
  SFI: Fix warnings reported by W=1 builds.
  ACPI/i915: Fix wrong <acpi/acpi.h> inclusion in i915 opregion module.
  ACPI/SFI: Fix wrong <acpi/acpi.h> inclusion in SFI/ACPI wrapper -
    acpi_disabled linkage.
  ACPI/IBFT: Fix wrong <acpi/acpi.h> inclusion in iSCSI boot firmware
    module.

NOTE that this cover-letter is manually editted,  so file summary is
useless and thus gets deleted.

-- 
1.7.10


  parent reply	other threads:[~2013-12-06  8:51 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-22 23:26 [PATCH 0/4] ACPI: Cleanup header inclusions Lv Zheng
2013-11-22 23:27 ` [PATCH 1/4] ACPICA: Linux: Cleanup wrong ACPICA inclusions Lv Zheng
2013-11-25 23:54   ` Rafael J. Wysocki
2013-11-22 23:29 ` [PATCH 2/4] ACPI: Cleanup <acpi/acpi_bus.h> and <acpi/acpi_drivers.h> inclusions Lv Zheng
2013-11-26  0:06   ` Rafael J. Wysocki
2013-11-26  0:29     ` Zheng, Lv
2013-11-22 23:32 ` [PATCH 3/4] ACPICA: Cleanup <acpi/acpi.h> inclusions Lv Zheng
2013-11-22 23:37 ` [PATCH 4/4] ACPI: Add support to force header inclusion rules for <linux/acpi.h> Lv Zheng
2013-11-26  0:09   ` [UPDATE PATCH " Rafael J. Wysocki
2013-11-26  0:32     ` Zheng, Lv
2013-11-26  5:21 ` [PATCH v2] ACPI: Cleanup <acpi/acpi.h>, <acpi/acpi_bus.h> and <acpi/acpi_drivers.h> inclusions Lv Zheng
2013-11-26 20:29   ` Rafael J. Wysocki
2013-11-26 20:27     ` Matthew Garrett
2013-11-26 20:29     ` Konrad Rzeszutek Wilk
2013-11-27  0:29       ` Rafael J. Wysocki
2013-11-28  1:12         ` Zheng, Lv
2013-11-28  2:34       ` Zheng, Lv
2013-11-26 20:54     ` Greg Kroah-Hartman
2013-11-28  0:54     ` Zheng, Lv
2013-11-28 14:18     ` Rafael J. Wysocki
2013-12-03 23:57       ` Rafael J. Wysocki
2013-12-04  3:31         ` Zheng, Lv
2013-11-26 21:07   ` Bjorn Helgaas
2013-12-04  0:41 ` [UPDTE PATCH 0/3] ACPI: Cleanup direct ACPICA inclusions Lv Zheng
2013-12-04  0:38   ` [PATCH 1/3] ACPI/i915: Fix wrong <acpi/acpi.h> inclusion in i915 opregion module Lv Zheng
2013-12-04  8:16     ` [Intel-gfx] " Daniel Vetter
2013-12-05 13:04     ` Jani Nikula
2013-12-04  0:38   ` [PATCH 2/3] ACPI/SFI: Fix wrong <acpi/acpi.h> inclusion in SFI/ACPI wrapper - acpi_disabled linkage Lv Zheng
2013-12-04  0:38   ` [RFC PATCH 3/3] ACPI/IBFT: Fix wrong <acpi/acpi.h> inclusion in iSCSI boot firmware module Lv Zheng
2013-12-05 14:25 ` [PATCH v2] ACPI/i915: Fix wrong <acpi/acpi.h> inclusion in i915 opregion module Lv Zheng
2013-12-06  8:51 ` Lv Zheng [this message]
2013-12-06  8:51   ` [PATCH v3 1/6] ACPI: Clean up incorrect inclusions of ACPICA headers Lv Zheng
2013-12-06  8:51   ` [PATCH v3 2/6] ACPI: Clean up inclusions of ACPI header files Lv Zheng
2013-12-06 14:31     ` Konrad Rzeszutek Wilk
2013-12-06  8:51   ` [PATCH v3 3/6] SFI: Fix warnings reported by W=1 builds Lv Zheng
2013-12-06  8:52   ` [PATCH v3 4/6] ACPI/i915: Fix wrong <acpi/acpi.h> inclusion in i915 opregion module Lv Zheng
2013-12-06  8:52   ` [PATCH v3 5/6] ACPI/SFI: Fix wrong <acpi/acpi.h> inclusion in SFI/ACPI wrapper - acpi_disabled linkage Lv Zheng
2013-12-06 14:53     ` Zheng, Lv
2013-12-09 23:15       ` Bjorn Helgaas
2013-12-12  1:38         ` Rafael J. Wysocki
2013-12-06  8:52   ` [PATCH v3 6/6] ACPI/IBFT: Fix wrong <acpi/acpi.h> inclusion in iSCSI boot firmware module Lv Zheng
2013-12-06 15:01     ` Zheng, Lv

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1386316208.git.lv.zheng@intel.com \
    --to=lv.zheng@intel.com \
    --cc=len.brown@intel.com \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rafael.j.wysocki@intel.com \
    --cc=zetalog@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).