aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmit Pundir <amit.pundir@linaro.org>2014-12-05 15:39:25 +0530
committerAmit Pundir <amit.pundir@linaro.org>2014-12-05 15:39:25 +0530
commitf3767ab8aafde7d687271ead9d1e021e8f6b0f19 (patch)
tree66bcdc9259fb9c14db6362d0da60840fa17078fc
parenta35c861db52bf9ebc83546c183f82768edb4d8a9 (diff)
parent54d6df91aea686c8c46095256d8c27d3db26c4e8 (diff)
downloadjuno-linaro-armv8-14.12.tar.gz
Merge branch 'linaro-android-3.10-lsk' into linaro-armv8linaro-armv8-14.12
Signed-off-by: Amit Pundir <amit.pundir@linaro.org> Conflicts: arch/arm64/Makefile
-rw-r--r--arch/arm64/Makefile1
-rw-r--r--drivers/cpufreq/cpufreq_interactive.c3
-rw-r--r--drivers/staging/android/binder.c7
-rw-r--r--kernel/power/process.c4
-rw-r--r--net/ipv4/ping.c2
5 files changed, 13 insertions, 4 deletions
diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile
index b1ca918f0f4..5a4a073745a 100644
--- a/arch/arm64/Makefile
+++ b/arch/arm64/Makefile
@@ -20,6 +20,7 @@ LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
KBUILD_DEFCONFIG := defconfig
KBUILD_CFLAGS += -mgeneral-regs-only
+KBUILD_CFLAGS += -fno-pic
ifeq ($(CONFIG_CPU_BIG_ENDIAN), y)
KBUILD_CPPFLAGS += -mbig-endian
AS += -EB
diff --git a/drivers/cpufreq/cpufreq_interactive.c b/drivers/cpufreq/cpufreq_interactive.c
index 3425fbbb173..8233a5d631c 100644
--- a/drivers/cpufreq/cpufreq_interactive.c
+++ b/drivers/cpufreq/cpufreq_interactive.c
@@ -433,7 +433,8 @@ static void cpufreq_interactive_timer(unsigned long data)
pcpu->floor_validate_time = now;
}
- if (pcpu->target_freq == new_freq) {
+ if (pcpu->target_freq == new_freq &&
+ pcpu->target_freq <= pcpu->policy->cur) {
trace_cpufreq_interactive_already(
data, cpu_load, pcpu->target_freq,
pcpu->policy->cur, new_freq);
diff --git a/drivers/staging/android/binder.c b/drivers/staging/android/binder.c
index d4e52900193..9c821f398ca 100644
--- a/drivers/staging/android/binder.c
+++ b/drivers/staging/android/binder.c
@@ -26,6 +26,7 @@
#include <linux/miscdevice.h>
#include <linux/mm.h>
#include <linux/module.h>
+#include <linux/rtmutex.h>
#include <linux/mutex.h>
#include <linux/nsproxy.h>
#include <linux/poll.h>
@@ -42,7 +43,7 @@
#include "binder.h"
#include "binder_trace.h"
-static DEFINE_MUTEX(binder_main_lock);
+static DEFINE_RT_MUTEX(binder_main_lock);
static DEFINE_MUTEX(binder_deferred_lock);
static DEFINE_MUTEX(binder_mmap_lock);
@@ -420,14 +421,14 @@ static long task_close_fd(struct binder_proc *proc, unsigned int fd)
static inline void binder_lock(const char *tag)
{
trace_binder_lock(tag);
- mutex_lock(&binder_main_lock);
+ rt_mutex_lock(&binder_main_lock);
trace_binder_locked(tag);
}
static inline void binder_unlock(const char *tag)
{
trace_binder_unlock(tag);
- mutex_unlock(&binder_main_lock);
+ rt_mutex_unlock(&binder_main_lock);
}
static void binder_set_nice(long nice)
diff --git a/kernel/power/process.c b/kernel/power/process.c
index a7e8a3f1737..b61b14d99a3 100644
--- a/kernel/power/process.c
+++ b/kernel/power/process.c
@@ -34,7 +34,9 @@ static int try_to_freeze_tasks(bool user_only)
unsigned int elapsed_msecs;
bool wakeup = false;
int sleep_usecs = USEC_PER_MSEC;
+#ifdef CONFIG_PM_SLEEP
char suspend_abort[MAX_SUSPEND_ABORT_LEN];
+#endif
do_gettimeofday(&start);
@@ -64,9 +66,11 @@ static int try_to_freeze_tasks(bool user_only)
break;
if (pm_wakeup_pending()) {
+#ifdef CONFIG_PM_SLEEP
pm_get_active_wakeup_sources(suspend_abort,
MAX_SUSPEND_ABORT_LEN);
log_suspend_abort_reason(suspend_abort);
+#endif
wakeup = true;
break;
}
diff --git a/net/ipv4/ping.c b/net/ipv4/ping.c
index 64d9d4345cb..b1d680f27e3 100644
--- a/net/ipv4/ping.c
+++ b/net/ipv4/ping.c
@@ -214,6 +214,8 @@ static struct sock *ping_lookup(struct net *net, struct sk_buff *skb, u16 ident)
&ipv6_hdr(skb)->daddr))
continue;
#endif
+ } else {
+ continue;
}
if (sk->sk_bound_dev_if && sk->sk_bound_dev_if != dif)