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

Commit ada3625e authored by Alex Shi's avatar Alex Shi
Browse files

Merge tag 'v3.18.33' into linux-linaro-lsk-v3.18

 This is the 3.18.33 stable release
parents b41e65f5 6b12ebc0
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
VERSION = 3
PATCHLEVEL = 18
SUBLEVEL = 32
SUBLEVEL = 33
EXTRAVERSION =
NAME = Diseased Newt

+1 −0
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@
#define PPC_FEATURE_PSERIES_PERFMON_COMPAT \
					0x00000040

/* Reserved - do not use		0x00000004 */
#define PPC_FEATURE_TRUE_LE		0x00000002
#define PPC_FEATURE_PPC_LE		0x00000001

+16 −7
Original line number Diff line number Diff line
@@ -149,17 +149,24 @@ static struct ibm_pa_feature {
	unsigned long	cpu_features;	/* CPU_FTR_xxx bit */
	unsigned long	mmu_features;	/* MMU_FTR_xxx bit */
	unsigned int	cpu_user_ftrs;	/* PPC_FEATURE_xxx bit */
	unsigned int	cpu_user_ftrs2;	/* PPC_FEATURE2_xxx bit */
	unsigned char	pabyte;		/* byte number in ibm,pa-features */
	unsigned char	pabit;		/* bit number (big-endian) */
	unsigned char	invert;		/* if 1, pa bit set => clear feature */
} ibm_pa_features[] __initdata = {
	{0, 0, PPC_FEATURE_HAS_MMU,	0, 0, 0},
	{0, 0, PPC_FEATURE_HAS_FPU,	0, 1, 0},
	{CPU_FTR_CTRL, 0, 0,		0, 3, 0},
	{CPU_FTR_NOEXECUTE, 0, 0,	0, 6, 0},
	{CPU_FTR_NODSISRALIGN, 0, 0,	1, 1, 1},
	{0, MMU_FTR_CI_LARGE_PAGE, 0,	1, 2, 0},
	{CPU_FTR_REAL_LE, PPC_FEATURE_TRUE_LE, 5, 0, 0},
	{0, 0, PPC_FEATURE_HAS_MMU, 0,		0, 0, 0},
	{0, 0, PPC_FEATURE_HAS_FPU, 0,		0, 1, 0},
	{CPU_FTR_CTRL, 0, 0, 0,			0, 3, 0},
	{CPU_FTR_NOEXECUTE, 0, 0, 0,		0, 6, 0},
	{CPU_FTR_NODSISRALIGN, 0, 0, 0,		1, 1, 1},
	{0, MMU_FTR_CI_LARGE_PAGE, 0, 0,		1, 2, 0},
	{CPU_FTR_REAL_LE, 0, PPC_FEATURE_TRUE_LE, 0, 5, 0, 0},
	/*
	 * If the kernel doesn't support TM (ie. CONFIG_PPC_TRANSACTIONAL_MEM=n),
	 * we don't want to turn on CPU_FTR_TM here, so we use CPU_FTR_TM_COMP
	 * which is 0 if the kernel doesn't support TM.
	 */
	{CPU_FTR_TM_COMP, 0, 0, 0,		22, 0, 0},
};

static void __init scan_features(unsigned long node, const unsigned char *ftrs,
@@ -190,10 +197,12 @@ static void __init scan_features(unsigned long node, const unsigned char *ftrs,
		if (bit ^ fp->invert) {
			cur_cpu_spec->cpu_features |= fp->cpu_features;
			cur_cpu_spec->cpu_user_features |= fp->cpu_user_ftrs;
			cur_cpu_spec->cpu_user_features2 |= fp->cpu_user_ftrs2;
			cur_cpu_spec->mmu_features |= fp->mmu_features;
		} else {
			cur_cpu_spec->cpu_features &= ~fp->cpu_features;
			cur_cpu_spec->cpu_user_features &= ~fp->cpu_user_ftrs;
			cur_cpu_spec->cpu_user_features2 &= ~fp->cpu_user_ftrs2;
			cur_cpu_spec->mmu_features &= ~fp->mmu_features;
		}
	}
+1 −0
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@

#define is_hugepage_only_range(mm, addr, len)	0
#define hugetlb_free_pgd_range			free_pgd_range
#define hugepages_supported()			(MACHINE_HAS_HPAGE)

void set_huge_pte_at(struct mm_struct *mm, unsigned long addr,
		     pte_t *ptep, pte_t pte);
+2 −2
Original line number Diff line number Diff line
@@ -457,10 +457,10 @@ static int sha_complete_job(struct mcryptd_hash_request_ctx *rctx,

			req = cast_mcryptd_ctx_to_req(req_ctx);
			if (irqs_disabled())
				rctx->complete(&req->base, ret);
				req_ctx->complete(&req->base, ret);
			else {
				local_bh_disable();
				rctx->complete(&req->base, ret);
				req_ctx->complete(&req->base, ret);
				local_bh_enable();
			}
		}
Loading