Hi Alex,
Please consider following linaro-android pull request for
"linux-linaro-lsk-v4.4-android" LSK branch.
KernelCI link is down for linaro-android trees and didn't do much of
local build testing either. Shamelessly relying on KernelCI build bot
results for linux-linaro-lsk-v4.4-android tree for any breakage
reporting.
Boot tested on Qemu(vexpress defconfig + android config fragments) +
Android M userspace.
Regards,
Amit Pundir
The following changes since commit be74fd2af86d551009c7a47d4884f29349d59193:
Merge branch 'linux-linaro-lsk-v4.4' into
linux-linaro-lsk-v4.4-android (2017-06-08 12:11:52 +0800)
are available in the git repository at:
git://android.git.linaro.org/kernel/linaro-android lsk-v4.4-android
for you to fetch changes up to cb41d236c7cdb4f91a1699a14a3600ec5bf4759d:
ANDROID: sdcardfs: remove dead function open_flags_to_access_mode()
(2017-06-21 16:40:18 +0530)
----------------------------------------------------------------
Andres Oportus (1):
sched/core: Fix PELT jump to max OPP upon util increase
Baolin Wang (1):
usb: gadget: f_fs: Fix possibe deadlock
Chris Redpath (8):
trace:sched: Make util_avg in load_avg trace reflect PELT/WALT as used
sched/fair: remove task util from own cpu when placing waking task
sched/fair: ensure utilization signals are synchronized before use
cpufreq/schedutil: use boosted_cpu_util for PELT to match WALT
sched/tune: increase group count to 5
sched/tune: fix sched_energy_diff tracepoint
sched/tune: don't use schedtune before it is ready
schedstats/eas: guard properly to avoid breaking non-smp schedstats users
Daniel Rosenberg (2):
ANDROID: mnt: Fix next_descendent
ANDROID: sdcardfs: d_splice_alias can return error values
Dietmar Eggemann (16):
Revert "WIP: sched: Consider spare cpu capacity at task wake-up"
Partial Revert: "WIP: sched: Add cpu capacity awareness to
wakeup balancing"
arm64: Set SD_ASYM_CPUCAPACITY sched_domain flag on DIE level
sched/fair: Do not force want_affine eq. true if EAS is enabled
sched/fair: Decommission energy_aware_wake_cpu()
Fixup!: sched/fair.c: Set SchedTune specific struct energy_env.task
EAS: sched/fair: Re-integrate 'honor sync wakeups' into wakeup path
sched/fair: Code !is_big_little path into select_energy_cpu_brute()
sched: Remove sysctl_sched_is_big_little
sched/core: Remove remnants of commit fd5c98da1a42
sched/core: Add first cpu w/ max/min orig capacity to root domain
sched/fair: Change cpu iteration order in find_best_target()
sched/fair: refactor find_best_target() for simplicity
sched/fair: Simplify idle_idx handling in select_idle_sibling()
sched: EAS & 'single cpu per cluster'/cpu hotplug interoperability
sched/fair: Add eas (& cas) specific rq, sd and task stats
Dmitry Torokhov (1):
ANDROID: hid: uhid: implement refcount for open and close
Eric Biggers (1):
Revert "ext4: require encryption feature for
EXT4_IOC_SET_ENCRYPTION_POLICY"
Ganesh Mahendran (2):
ANDROID: Kconfig: add depends for UID_SYS_STATS
ANDROID: uid_sys_stats: check previous uid_entry before call
find_or_register_uid
Greg Hackmann (1):
ANDROID: sdcardfs: remove dead function open_flags_to_access_mode()
Jin Qian (2):
FROMLIST: f2fs: sanity check checkpoint segno and blkoff
BACKPORT: f2fs: sanity check size of nat and sit cache
Juri Lelli (2):
sched/cpufreq: make schedutil use WALT signal
trace/sched: add rq utilization signal for WALT
Morten Rasmussen (16):
UPSTREAM: sched/core: Fix power to capacity renaming in comment
BACKPORT: sched/fair: Make the use of prev_cpu consistent in the
wakeup path
UPSTREAM: sched/fair: Optimize find_idlest_cpu() when there is no choice
UPSTREAM: sched/core: Remove unnecessary NULL-pointer check
UPSTREAM: sched/core: Introduce SD_ASYM_CPUCAPACITY sched_domain
topology flag
UPSTREAM: sched/core: Pass child domain into sd_init()
UPSTREAM: sched/core: Enable SD_BALANCE_WAKE for asymmetric
capacity systems
UPSTREAM: sched/fair: Let asymmetric CPU configurations balance at wake-up
UPSTREAM: sched/fair: Compute task/cpu utilization at wake-up correctly
UPSTREAM: sched/fair: Consider spare capacity in find_idlest_group()
UPSTREAM: sched/fair: Add per-CPU min capacity to sched_group_capacity
UPSTREAM: sched/fair: Avoid pulling tasks from non-overloaded
higher capacity groups
UPSTREAM: sched/fair: Fix incorrect comment for capacity_margin
sched/fair: Add energy_diff dead-zone margin
sched/fair: Energy-aware wake-up task placement
sched/fair: Fix sched_group_energy() to support per-cpu capacity states
Patrick Bellasi (3):
sched/tune: report when SchedTune has not been initialized
sched/{fair,tune}: use reciprocal_value to compute boost margin
sched/fair: use SCHED_CAPACITY_SCALE for energy normalization
Peter Zijlstra (5):
UPSTREAM: sched/fair: Fix post_init_entity_util_avg() serialization
UPSTREAM: sched/fair: Apply more PELT fixes
UPSTREAM: sched/fair: Improve PELT stuff some more
UPSTREAM: sched/fair: Fix effective_load() to consistently use
smoothed load
UPSTREAM: sched/fair: Fix calc_cfs_shares() fixed point
arithmetics width confusion
Petr Mladek (1):
BACKPORT: kthread: allow to cancel kthread work
Roberto Pereira (1):
android: base-cfg: disable CONFIG_NFS_FS and CONFIG_NFSD
Srinath Sridharan (1):
sched/tune: Initialize raw_spin_lock in boosted_groups
Steve Muckle (6):
sched: backport cpufreq hooks from 4.9-rc4
BACKPORT: cpufreq: schedutil: New governor based on scheduler
utilization data
sched/cpufreq: fix tunables for schedfreq governor
sched: cpufreq: use rt_avg as estimate of required RT CPU capacity
cpufreq: schedutil: add up/down frequency transition rate limits
ANDROID: android-base.cfg: split out arm64-specific configs
Valentin Schneider (1):
sched/fair: discount task contribution to find CPU with lowest utilization
Vincent Guittot (7):
UPSTREAM: sched/fair: Factorize attach/detach entity
BACKPORT: sched/fair: Factorize PELT update
UPSTREAM: sched/fair: Fix hierarchical order in rq->leaf_cfs_rq_list
UPSTREAM: sched/fair: Propagate load during synchronous attach/detach
UPSTREAM: sched/fair: Propagate asynchrous detach
UPSTREAM: sched/fair: Fix incorrect task group ->load_avg
UPSTREAM: sched/core: Fix group_entity's share update
Viresh Kumar (2):
cpufreq: schedutil: move slow path from workqueue to SCHED_FIFO task
FROM-LIST: cpufreq: schedutil: Redefine the rate_limit_us tunable
Yuyang Du (1):
BACKPORT: sched/fair: Initiate a new task's util avg to a bounded value
android/configs/android-base-arm64.cfg | 5 +
android/configs/android-base.cfg | 6 +-
arch/arm64/kernel/topology.c | 7 +-
drivers/cpufreq/Kconfig | 26 +++
drivers/cpufreq/Makefile | 2 +-
drivers/cpufreq/cpufreq.c | 32 +++
drivers/cpufreq/cpufreq_governor_attr_set.c | 84 +++++++
drivers/hid/uhid.c | 17 +-
drivers/misc/Kconfig | 2 +-
drivers/misc/uid_sys_stats.c | 10 +-
drivers/usb/gadget/function/f_fs.c | 8 +-
fs/ext4/ioctl.c | 3 -
fs/f2fs/segment.c | 9 +
fs/f2fs/super.c | 18 ++
fs/pnode.c | 11 +-
fs/sdcardfs/lookup.c | 3 +-
fs/sdcardfs/packagelist.c | 13 --
fs/sdcardfs/sdcardfs.h | 1 -
include/linux/cpufreq.h | 52 +++++
include/linux/kthread.h | 4 +
include/linux/sched.h | 80 ++++++-
include/linux/sched/sysctl.h | 1 -
include/trace/events/sched.h | 58 ++++-
kernel/kthread.c | 96 +++++++-
kernel/sched/Makefile | 2 +
kernel/sched/core.c | 79 +++++--
kernel/sched/cpufreq.c | 63 +++++
kernel/sched/cpufreq_sched.c | 220 ++++++++++--------
kernel/sched/cpufreq_schedutil.c | 770
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
kernel/sched/deadline.c | 3 +
kernel/sched/debug.c | 26 +++
kernel/sched/fair.c | 1458
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------
kernel/sched/rt.c | 3 +
kernel/sched/sched.h | 62 +++++
kernel/sched/stats.c | 26 +++
kernel/sched/tune.c | 15 +-
kernel/sysctl.c | 11 +-
37 files changed, 2683 insertions(+), 603 deletions(-)
create mode 100644 android/configs/android-base-arm64.cfg
create mode 100644 drivers/cpufreq/cpufreq_governor_attr_set.c
create mode 100644 kernel/sched/cpufreq.c
create mode 100644 kernel/sched/cpufreq_schedutil.c
On 20/06/2017 at 22:15:36 +0100, Russell King - ARM Linux wrote:
> On Tue, Jun 20, 2017 at 05:07:46PM +0200, Benjamin Gaignard wrote:
> > 2017-06-20 15:48 GMT+02:00 Alexandre Belloni
> > <alexandre.belloni(a)free-electrons.com>:
> > >> Yes, that's argument against changing rtc _drivers_ for hardware that
> > >> can not do better than 32bit. For generic code (such as 44/51 sysfs,
> > >> 51/51 suspend test), the change still makes sense.
> >
> > What I had in mind when writing those patches was to remove the limitations
> > coming from those functions usage, even more since they been marked has
> > deprecated.
>
> I'd say that they should not be marked as deprecated. They're entirely
> appropriate for use with hardware that only supports a 32-bit
> representation of time.
>
> It's entirely reasonable to fix the ones that use other representations
> that exceed that, but for those which do not, we need to keep using the
> 32-bit versions. Doing so actually gives us _more_ flexibility in the
> future.
>
> Consider that at the moment, we define the 32-bit RTC representation to
> start at a well known epoch. We _could_ decide that when it wraps to
> 0x80000000 seconds, we'll define the lower 0x40000000 seconds to mean
> dates in the future - and keep rolling that forward each time we cross
> another 0x40000000 seconds. Unless someone invents a real time machine,
> we shouldn't need to set a modern RTC back to 1970.
>
I agree with that but not the android guys. They seem to mandate an RTC
that can store time from 01/01/1970. I don't know much more than that
because they never cared to explain why that was actually necessary
(apart from a laconic "this will result in a bad user experience")
I think tglx had a plan for offsetting the time at some point so 32-bit
platform can pass 2038 properly.
My opinion is that as long as userspace is not ready to handle those
dates, it doesn't really matter because it is quite unlikely that
anything will be able to continue running anyway.
--
Alexandre Belloni, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
On 32bits platforms "struct timeval" or "time_t" are using u32 to code the
date, this cause tools like "date" or "hwclock" failed even before setting
the RTC device if the date is superior to year 2038 (or 2106).
To avoid this problem I add two RTC tests files which directly use RTC ioctl
to set and read RTC time and alarm values.
rtctest_setdate allow to set any date/time given in the command line.
rtctest-2038 perform a basic test by writing 1-1-2200 in RTC time and alarm
and checking that the read back values are correct.
Finally that had allowed me to test and fix rtc-st-lpc driver.
Benjamin Gaignard (3):
tools: timer: add rtctest_setdate
tools: timer: add test to check y2038/2106 bug
rtc: st-lpc: make it robust against y2038/2106 bug
drivers/rtc/rtc-st-lpc.c | 19 ++--
tools/testing/selftests/timers/Makefile | 4 +-
tools/testing/selftests/timers/rtctest-2038.c | 135 +++++++++++++++++++++++
tools/testing/selftests/timers/rtctest_setdate.c | 86 +++++++++++++++
4 files changed, 232 insertions(+), 12 deletions(-)
create mode 100644 tools/testing/selftests/timers/rtctest-2038.c
create mode 100644 tools/testing/selftests/timers/rtctest_setdate.c
--
1.9.1
Hi,
Here is the 7th version of the series and it looks very different from
whatever is sent until now. Almost a rewrite.
Here is a brief summary of the problem I am trying to solve.
Some platforms have the capability to configure the performance state of
their power domains. The process of configuring the performance state is
pretty much platform dependent and we may need to work with a wide range
of configurables. For some platforms, like Qcom, it can be a positive
integer value alone, while in other cases it can be voltage levels, etc.
The power-domain framework until now was only designed for the idle
state management of the device and this needs to change in order to
reuse the power-domain framework for active state management of the
devices.
Solution:
Kevin suggested in V6 that we should wait for a while before introducing
any new binding (power-domain-opp) to the OPP table for this stuff and
translate the device requirements into a performance index from within
the power domain driver as it already knows which devices it supports.
If we do that, then there is also no need to represent the performance
states of the power domains in the DT. Keep that as well in the driver
for now.
This simplified things a lot and we can make things work with just two
patches. The first one updates the genpd framework to supply new APIs
and the second patch uses them from the OPP core. Its quite straight
forward and simple.
The ideal way is still to get the relation between device and domain
states via the DT instead of platform code, but that can be done
incrementally later once we have some users for it. It would be much
simpler to get these two patches merged. The code never got any real
reviews in the last 6 versions as we were stuck with bindings :)
This is tested currently by hacking the kernel a bit with virtual
power-domains for the dual A15 exynos platform.
Driver code:
------------
Here is some sample power-domain driver code that I have. It only
supports a single device for now, CPU.
int pd_get_performance(struct device *dev, unsigned long rate)
{
struct device *cpu_dev = get_cpu_device(0);
if (cpu_dev != dev)
return -EINVAL;
if (rate <= 500000000)
return 1;
else if (rate <= 700000000)
return 2;
else if (rate <= 900000000)
return 3;
else if (rate <= 1200000000)
return 4;
else if (rate <= 1600000000)
return 5;
else
return 6;
}
static int pd_set_performance(struct generic_pm_domain *domain, unsigned int state)
{
/* Set performance of the domain in platform dependent way */
return 0;
}
static const struct of_device_id pm_domain_of_match[] __initconst = {
{ .compatible = "foo,genpd", },
{ },
};
static int __init genpd_test_init(void)
{
struct device *dev = get_cpu_device(0);
struct device_node *np;
const struct of_device_id *match;
int n;
int ret;
for_each_matching_node_and_match(np, pm_domain_of_match, &match) {
pd.name = kstrdup_const(strrchr(np->full_name, '/') + 1,
GFP_KERNEL);
if (!pd.name) {
of_node_put(np);
return -ENOMEM;
}
pd.get_performance_state = pd_get_performance;
pd.set_performance_state = pd_set_performance;
pm_genpd_init(&pd, NULL, false);
of_genpd_add_provider_simple(np, &pd);
}
ret = dev_pm_domain_attach(dev, false);
return ret;
}
Pushed here as well:
https://git.linaro.org/people/viresh.kumar/linux.git/log/?h=opp/genpd-perfo…
Rebased on: pm/linux-next + some OPP cleanups (https://marc.info/?l=linux-kernel&m=149499607030364&w=2)
V6->V7:
- Almost a rewrite, only two patches against 9 in earlier version.
- No bindings updated now and domain's performance state aren't passed
via DT for now (until we know how users are going to use it).
- We also skipped the QoS framework completely and new APIs are provided
directly by genpd.
V5->V6:
- Use freq/voltage in OPP table as it is for power domain and don't
create "domain-performance-level" property
- Create new "power-domain-opp" property for the devices.
- Take care of domain providers that provide multiple domains and extend
"operating-points-v2" property to contain a list of phandles
- Update code according to those bindings.
V4->V5:
- Only 3 patches were resent and 2 of them are Acked from Ulf.
V3->V4:
- Use OPP table for genpd devices as well.
- Add struct device to genpd, in order to reuse OPP infrastructure.
- Based over: https://marc.info/?l=linux-kernel&m=148972988002317&w=2
- Fixed examples in DT document to have voltage in target,min,max order.
V2->V3:
- Based over latest pm/linux-next
- Bindings and code are merged together
- Lots of updates in bindings
- the performance-states node is present within the power-domain now,
instead of its phandle.
- performance-level property is replaced by "reg".
- domain-performance-state property of the consumers contain an
integer value now instead of phandle.
- Lots of updates to the code as well
- Patch "PM / QOS: Add default case to the switch" is merged with
other patches and the code is changed a bit as well.
- Don't pass 'type' to dev_pm_qos_add_notifier(), rather handle all
notifiers with a single list. A new patch is added for that.
- The OPP framework patch can be applied now and has proper SoB from
me.
- Dropped "PM / domain: Save/restore performance state at runtime
suspend/resume".
- Drop all WARN().
- Tested-by Rajendra nayak.
V1->V2:
- Based over latest pm/linux-next
- It is mostly a resend of what is sent earlier as this series hasn't
got any reviews so far and Rafael suggested that its better I resend
it.
- Only the 4/6 patch got an update, which was shared earlier as reply to
V1 as well. It has got several fixes for taking care of power domain
hierarchy, etc.
--
viresh
Viresh Kumar (2):
PM / Domains: Add support to select performance-state of domains
PM / OPP: Support updating performance state of device's power domains
drivers/base/power/domain.c | 172 ++++++++++++++++++++++++++++++++++++++++++
drivers/base/power/opp/core.c | 48 +++++++++++-
drivers/base/power/opp/opp.h | 2 +
include/linux/pm_domain.h | 19 +++++
4 files changed, 240 insertions(+), 1 deletion(-)
--
2.13.0.303.g4ebf3021692d
Hi Rafael,
I have identified some regressions with the schedutil governor which
happen due to one of your patches that got merged in 4.12-rc1.
This series fixes all the drivers which provide a ->target_index()
callback but doesn't fix the drivers which provide ->target() callback.
Such platforms need to implement the ->resolve_freq() callback in order
to get this fixed and I only had hardware for testing intel_pstate,
which I fixed in this series.
I am wondering if there is another way to fix this issue (than what I
tried) or if we should revert the offending commit (39b64aa1c007) and
look for other solutions.
Anyway, this series has the necessary patches to fix it.
Viresh Kumar (3):
cpufreq: schedutil: Restore cached_raw_freq behavior
cpufreq: schedutil: Fix selection algorithm while reducing frequency
cpufreq: intel_pstate: Provide resolve_freq() to fix regression
drivers/cpufreq/intel_pstate.c | 14 +++++++++++++
kernel/sched/cpufreq_schedutil.c | 45 +++++++++++++++++++++++++++++++++-------
2 files changed, 52 insertions(+), 7 deletions(-)
--
2.13.0.70.g6367777092d9
Those patches aim to complete stm32 timer features support.
The last missing part is to be able to chain to timer blocks
which mean that one of timerX's trigger could be used as clock for timerY.
Since this operating is neither event or buffer triggered mode I would
like to introduce a hardware triggered mode in IIO core.
Benjamin Gaignard (2):
iio: add hardware triggered operating mode
iio: make stm32 trigger driver use INDIO_HARDWARE_TRIGGERED mode
.../ABI/testing/sysfs-bus-iio-timer-stm32 | 15 ++++++
drivers/iio/industrialio-core.c | 4 +-
drivers/iio/trigger/stm32-timer-trigger.c | 61 ++++++++++++++++++++++
include/linux/iio/iio.h | 6 +++
4 files changed, 84 insertions(+), 2 deletions(-)
--
1.9.1
Hi Daniel & Vincent,
The latest RT kernel linux-4.9.y-rt-rebase failed on booting on arm
board while works on ARM v8 qemu and x86. This bug caused by a read_lock
in arm64 cpu idle chain. RT turn the read_lock into mutex, that may
sleep during idle. Then it breaks 2 rules in kernel:
1, BUG: scheduling while atomic:
2, bad: scheduling from the idle thread!
The idle chain of arm64 is problematic in RT, trying to figure a way to
fix or work around with it.
The RT boot bug call chain:
bug call chain:
cpu_startup_entry
#kernel/sched/idle.c:
cpu_idle_loop
local_irq_disable()
cpuidle_idle_call
call_cpuidle
cpuidle_enter
cpuidle_enter
cpuidle_enter_state
->enter :arm_enter_idle_state
cpu_pm_enter/exit
CPU_PM_CPU_IDLE_ENTER
read_lock(&cpu_pm_notifier_lock); <-- # bug:
__rt_spin_lock();
schedule();
#define CPU_PM_CPU_IDLE_ENTER(low_level_idle_enter, idx) \
({ \
int __ret; \
\
if (!idx) { \
cpu_do_idle(); \
return idx; \
} \
\
__ret = cpu_pm_enter(); \
if (!__ret) { \
__ret = low_level_idle_enter(idx); \
cpu_pm_exit(); \
} \
\
__ret ? -1 : idx; \
})
Hi Vincent & Daniel,
Q1, The cpu_pm_enter is just a cpu_pm_notifier, is this good to stay
wake if the notification failed?
Q2, If possible to use per cpu notify, since it's the per cpu action to
idle.
Q3, To have a rwlock in deep idle chain doesn't looks good. Could we
remove them?
Regards
Alex
Tree/Branch: v3.2.89-rt127
Git describe: v3.2.89-rt127
Commit: 228f2abc27 Linux 3.2.89-rt127
Build Time: 0 min 1 sec
Passed: 0 / 4 ( 0.00 %)
Failed: 4 / 4 (100.00 %)
Errors: 6
Warnings: 20
Section Mismatches: 0
Failed defconfigs:
x86_64-allnoconfig
arm-allmodconfig
arm-allnoconfig
x86_64-defconfig
Errors:
x86_64-allnoconfig
/home/broonie/build/linux-stable-rt/scripts/mod/empty.c:1:0: error: code model kernel does not support PIC mode
/home/broonie/build/linux-stable-rt/kernel/bounds.c:1:0: error: code model kernel does not support PIC mode
arm-allnoconfig
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/div64.h:77:7: error: '__LINUX_ARM_ARCH__' undeclared (first use in this function)
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/glue-cache.h:129:2: error: #error Unknown cache maintenance model
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/glue-df.h:107:2: error: #error Unknown data abort handler type
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/glue-pf.h:54:2: error: #error Unknown prefetch abort handler type
x86_64-defconfig
/home/broonie/build/linux-stable-rt/scripts/mod/empty.c:1:0: error: code model kernel does not support PIC mode
/home/broonie/build/linux-stable-rt/kernel/bounds.c:1:0: error: code model kernel does not support PIC mode
-------------------------------------------------------------------------------
defconfigs with issues (other than build errors):
2 warnings 0 mismatches : arm-allmodconfig
19 warnings 0 mismatches : arm-allnoconfig
-------------------------------------------------------------------------------
Errors summary: 6
2 /home/broonie/build/linux-stable-rt/scripts/mod/empty.c:1:0: error: code model kernel does not support PIC mode
2 /home/broonie/build/linux-stable-rt/kernel/bounds.c:1:0: error: code model kernel does not support PIC mode
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/glue-pf.h:54:2: error: #error Unknown prefetch abort handler type
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/glue-df.h:107:2: error: #error Unknown data abort handler type
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/glue-cache.h:129:2: error: #error Unknown cache maintenance model
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/div64.h:77:7: error: '__LINUX_ARM_ARCH__' undeclared (first use in this function)
Warnings Summary: 20
2 .config:27:warning: symbol value '' invalid for PHYS_OFFSET
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:342:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:272:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:265:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:131:35: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:127:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:121:3: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:120:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:114:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/swab.h:25:28: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/processor.h:82:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/processor.h:102:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/irqflags.h:11:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/fpstate.h:32:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/cachetype.h:33:7: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/cachetype.h:28:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/cacheflush.h:196:7: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/cacheflush.h:194:7: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/bitops.h:217:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
1 /home/broonie/build/linux-stable-rt/arch/arm/include/asm/atomic.h:30:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
===============================================================================
Detailed per-defconfig build reports below:
-------------------------------------------------------------------------------
x86_64-allnoconfig : FAIL, 2 errors, 0 warnings, 0 section mismatches
Errors:
/home/broonie/build/linux-stable-rt/scripts/mod/empty.c:1:0: error: code model kernel does not support PIC mode
/home/broonie/build/linux-stable-rt/kernel/bounds.c:1:0: error: code model kernel does not support PIC mode
-------------------------------------------------------------------------------
arm-allmodconfig : FAIL, 0 errors, 2 warnings, 0 section mismatches
Warnings:
.config:27:warning: symbol value '' invalid for PHYS_OFFSET
.config:27:warning: symbol value '' invalid for PHYS_OFFSET
-------------------------------------------------------------------------------
arm-allnoconfig : FAIL, 4 errors, 19 warnings, 0 section mismatches
Errors:
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/div64.h:77:7: error: '__LINUX_ARM_ARCH__' undeclared (first use in this function)
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/glue-cache.h:129:2: error: #error Unknown cache maintenance model
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/glue-df.h:107:2: error: #error Unknown data abort handler type
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/glue-pf.h:54:2: error: #error Unknown prefetch abort handler type
Warnings:
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/irqflags.h:11:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:114:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:120:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:121:3: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:127:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:131:35: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:265:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:272:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/system.h:342:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/bitops.h:217:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/swab.h:25:28: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/fpstate.h:32:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/processor.h:82:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/processor.h:102:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/atomic.h:30:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/cachetype.h:28:5: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/cachetype.h:33:7: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/cacheflush.h:194:7: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
/home/broonie/build/linux-stable-rt/arch/arm/include/asm/cacheflush.h:196:7: warning: "__LINUX_ARM_ARCH__" is not defined [-Wundef]
-------------------------------------------------------------------------------
x86_64-defconfig : FAIL, 2 errors, 0 warnings, 0 section mismatches
Errors:
/home/broonie/build/linux-stable-rt/scripts/mod/empty.c:1:0: error: code model kernel does not support PIC mode
/home/broonie/build/linux-stable-rt/kernel/bounds.c:1:0: error: code model kernel does not support PIC mode
-------------------------------------------------------------------------------
Passed with no errors, warnings or mismatches: