Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2bf79551 authored by Alex Shi's avatar Alex Shi
Browse files

Merge tag 'v4.4.8' into linux-linaro-lsk-v4.4

 This is the 4.4.8 stable release
parents ad592b70 8c9aef03
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -134,12 +134,12 @@ mfio80 ddr_debug, mips_trace_data, mips_debug
mfio81		dreq0, mips_trace_data, eth_debug
mfio82		dreq1, mips_trace_data, eth_debug
mfio83		mips_pll_lock, mips_trace_data, usb_debug
mfio84		sys_pll_lock, mips_trace_data, usb_debug
mfio85		wifi_pll_lock, mips_trace_data, sdhost_debug
mfio86		bt_pll_lock, mips_trace_data, sdhost_debug
mfio87		rpu_v_pll_lock, dreq2, socif_debug
mfio88		rpu_l_pll_lock, dreq3, socif_debug
mfio89		audio_pll_lock, dreq4, dreq5
mfio84		audio_pll_lock, mips_trace_data, usb_debug
mfio85		rpu_v_pll_lock, mips_trace_data, sdhost_debug
mfio86		rpu_l_pll_lock, mips_trace_data, sdhost_debug
mfio87		sys_pll_lock, dreq2, socif_debug
mfio88		wifi_pll_lock, dreq3, socif_debug
mfio89		bt_pll_lock, dreq4, dreq5
tck
trstn
tdi
+2 −0
Original line number Diff line number Diff line
@@ -3932,6 +3932,8 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
					sector if the number is odd);
				i = IGNORE_DEVICE (don't bind to this
					device);
				j = NO_REPORT_LUNS (don't use report luns
					command, uas only);
				l = NOT_LOCKABLE (don't try to lock and
					unlock ejectable media);
				m = MAX_SECTORS_64 (don't transfer more
+1 −1
Original line number Diff line number Diff line
VERSION = 4
PATCHLEVEL = 4
SUBLEVEL = 7
SUBLEVEL = 8
EXTRAVERSION =
NAME = Blurry Fish Butt

+4 −0
Original line number Diff line number Diff line
#ifdef CONFIG_CPU_BIG_ENDIAN
#define CONFIG_CPU_ENDIAN_BE8 CONFIG_CPU_BIG_ENDIAN
#endif

#include <../../arm/include/asm/opcodes.h>
+11 −10
Original line number Diff line number Diff line
@@ -186,20 +186,21 @@ static void clear_regs_spsr_ss(struct pt_regs *regs)

/* EL1 Single Step Handler hooks */
static LIST_HEAD(step_hook);
static DEFINE_RWLOCK(step_hook_lock);
static DEFINE_SPINLOCK(step_hook_lock);

void register_step_hook(struct step_hook *hook)
{
	write_lock(&step_hook_lock);
	list_add(&hook->node, &step_hook);
	write_unlock(&step_hook_lock);
	spin_lock(&step_hook_lock);
	list_add_rcu(&hook->node, &step_hook);
	spin_unlock(&step_hook_lock);
}

void unregister_step_hook(struct step_hook *hook)
{
	write_lock(&step_hook_lock);
	list_del(&hook->node);
	write_unlock(&step_hook_lock);
	spin_lock(&step_hook_lock);
	list_del_rcu(&hook->node);
	spin_unlock(&step_hook_lock);
	synchronize_rcu();
}

/*
@@ -213,15 +214,15 @@ static int call_step_hook(struct pt_regs *regs, unsigned int esr)
	struct step_hook *hook;
	int retval = DBG_HOOK_ERROR;

	read_lock(&step_hook_lock);
	rcu_read_lock();

	list_for_each_entry(hook, &step_hook, node)	{
	list_for_each_entry_rcu(hook, &step_hook, node)	{
		retval = hook->fn(regs, esr);
		if (retval == DBG_HOOK_HANDLED)
			break;
	}

	read_unlock(&step_hook_lock);
	rcu_read_unlock();

	return retval;
}
Loading