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

Commit da6f99c3 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

Merge 3.18.86 into android-3.18



Changes in 3.18.86
	netlink: add a start callback for starting a netlink dump
	ipsec: Fix aborted xfrm policy dump crash
	mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d()
	mm/madvise.c: fix madvise() infinite loop under special circumstances
	btrfs: clear space cache inode generation always
	KVM: x86: Exit to user-mode on #UD intercept when emulator requires
	KVM: x86: inject exceptions produced by x86_decode_insn
	eeprom: at24: check at24_read/write arguments
	drm/panel: simple: Add missing panel_simple_unprepare() calls
	NFS: revalidate "." etc correctly on "open".
	drm/i915: Don't try indexed reads to alternate slave addresses
	drm/i915: Prevent zero length "index" write
	Linux 3.18.86

Change-Id: I82ae1a739684c8aba9fe1864d4632cb0a25e26e5
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
parents 731a2636 1d2acf22
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
VERSION = 3
PATCHLEVEL = 18
SUBLEVEL = 85
SUBLEVEL = 86
EXTRAVERSION =
NAME = Diseased Newt

+2 −0
Original line number Diff line number Diff line
@@ -1785,6 +1785,8 @@ static int ud_interception(struct vcpu_svm *svm)
	int er;

	er = emulate_instruction(&svm->vcpu, EMULTYPE_TRAP_UD);
	if (er == EMULATE_USER_EXIT)
		return 0;
	if (er != EMULATE_DONE)
		kvm_queue_exception(&svm->vcpu, UD_VECTOR);
	return 1;
+2 −0
Original line number Diff line number Diff line
@@ -4899,6 +4899,8 @@ static int handle_exception(struct kvm_vcpu *vcpu)

	if (is_invalid_opcode(intr_info)) {
		er = emulate_instruction(vcpu, EMULTYPE_TRAP_UD);
		if (er == EMULATE_USER_EXIT)
			return 0;
		if (er != EMULATE_DONE)
			kvm_queue_exception(vcpu, UD_VECTOR);
		return 1;
+2 −0
Original line number Diff line number Diff line
@@ -5372,6 +5372,8 @@ int x86_emulate_instruction(struct kvm_vcpu *vcpu,
			if (reexecute_instruction(vcpu, cr2, write_fault_to_spt,
						emulation_type))
				return EMULATE_DONE;
			if (ctxt->have_exception && inject_emulated_exception(vcpu))
				return EMULATE_DONE;
			if (emulation_type & EMULTYPE_SKIP)
				return EMULATE_FAIL;
			return handle_emulation_failure(vcpu);
+3 −1
Original line number Diff line number Diff line
@@ -394,7 +394,9 @@ static bool
gmbus_is_index_read(struct i2c_msg *msgs, int i, int num)
{
	return (i + 1 < num &&
		!(msgs[i].flags & I2C_M_RD) && msgs[i].len <= 2 &&
		msgs[i].addr == msgs[i + 1].addr &&
		!(msgs[i].flags & I2C_M_RD) &&
		(msgs[i].len == 1 || msgs[i].len == 2) &&
		(msgs[i + 1].flags & I2C_M_RD));
}

Loading