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

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

Merge 4.19.237 into android-4.19-stable



Changes in 4.19.237
	nfc: st21nfca: Fix potential buffer overflows in EVT_TRANSACTION
	net: ipv6: fix skb_over_panic in __ip6_append_data
	esp: Fix possible buffer overflow in ESP transformation
	staging: fbtft: fb_st7789v: reset display before initialization
	thermal: int340x: fix memory leak in int3400_notify()
	llc: fix netdevice reference leaks in llc_ui_bind()
	ASoC: sti: Fix deadlock via snd_pcm_stop_xrun() call
	ALSA: oss: Fix PCM OSS buffer allocation overflow
	ALSA: pcm: Add stream lock during PCM reset ioctl operations
	ALSA: usb-audio: Add mute TLV for playback volumes on RODE NT-USB
	ALSA: cmipci: Restore aux vol on suspend/resume
	ALSA: pci: fix reading of swapped values from pcmreg in AC97 codec
	drivers: net: xgene: Fix regression in CRC stripping
	netfilter: nf_tables: initialize registers in nft_do_chain()
	ACPI / x86: Work around broken XSDT on Advantech DAC-BJ01 board
	ACPI: battery: Add device HID and quirk for Microsoft Surface Go 3
	ACPI: video: Force backlight native for Clevo NL5xRU and NL5xNU
	crypto: qat - disable registration of algorithms
	mac80211: fix potential double free on mesh join
	nds32: fix access_ok() checks in get/put_user
	llc: only change llc->dev when bind() succeeds
	Linux 4.19.237

Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
Change-Id: Ic8cb5a3a624036debba60d8032d3227bf8738fe1
parents 086155f9 a6e4a181
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
VERSION = 4
PATCHLEVEL = 19
SUBLEVEL = 236
SUBLEVEL = 237
EXTRAVERSION =
NAME = "People's Front"

+17 −5
Original line number Diff line number Diff line
@@ -75,9 +75,7 @@ static inline void set_fs(mm_segment_t fs)
 * versions are void (ie, don't return a value as such).
 */

#define get_user	__get_user					\

#define __get_user(x, ptr)						\
#define get_user(x, ptr)						\
({									\
	long __gu_err = 0;						\
	__get_user_check((x), (ptr), __gu_err);				\
@@ -90,6 +88,14 @@ static inline void set_fs(mm_segment_t fs)
	(void)0;							\
})

#define __get_user(x, ptr)						\
({									\
	long __gu_err = 0;						\
	const __typeof__(*(ptr)) __user *__p = (ptr);			\
	__get_user_err((x), __p, (__gu_err));				\
	__gu_err;							\
})

#define __get_user_check(x, ptr, err)					\
({									\
	const __typeof__(*(ptr)) __user *__p = (ptr);			\
@@ -170,12 +176,18 @@ do { \
		: "r"(addr), "i"(-EFAULT)				\
		: "cc")

#define put_user	__put_user					\
#define put_user(x, ptr)						\
({									\
	long __pu_err = 0;						\
	__put_user_check((x), (ptr), __pu_err);				\
	__pu_err;							\
})

#define __put_user(x, ptr)						\
({									\
	long __pu_err = 0;						\
	__put_user_err((x), (ptr), __pu_err);				\
	__typeof__(*(ptr)) __user *__p = (ptr);				\
	__put_user_err((x), __p, __pu_err);				\
	__pu_err;							\
})

+24 −0
Original line number Diff line number Diff line
@@ -1351,6 +1351,17 @@ static int __init disable_acpi_pci(const struct dmi_system_id *d)
	return 0;
}

static int __init disable_acpi_xsdt(const struct dmi_system_id *d)
{
	if (!acpi_force) {
		pr_notice("%s detected: force use of acpi=rsdt\n", d->ident);
		acpi_gbl_do_not_use_xsdt = TRUE;
	} else {
		pr_notice("Warning: DMI blacklist says broken, but acpi XSDT forced\n");
	}
	return 0;
}

static int __init dmi_disable_acpi(const struct dmi_system_id *d)
{
	if (!acpi_force) {
@@ -1475,6 +1486,19 @@ static const struct dmi_system_id acpi_dmi_table[] __initconst = {
		     DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 360"),
		     },
	 },
	/*
	 * Boxes that need ACPI XSDT use disabled due to corrupted tables
	 */
	{
	 .callback = disable_acpi_xsdt,
	 .ident = "Advantech DAC-BJ01",
	 .matches = {
		     DMI_MATCH(DMI_SYS_VENDOR, "NEC"),
		     DMI_MATCH(DMI_PRODUCT_NAME, "Bearlake CRB Board"),
		     DMI_MATCH(DMI_BIOS_VERSION, "V1.12"),
		     DMI_MATCH(DMI_BIOS_DATE, "02/01/2011"),
		     },
	 },
	{}
};

+12 −0
Original line number Diff line number Diff line
@@ -90,6 +90,10 @@ extern void *acpi_unlock_battery_dir(struct proc_dir_entry *acpi_battery_dir);

static const struct acpi_device_id battery_device_ids[] = {
	{"PNP0C0A", 0},

	/* Microsoft Surface Go 3 */
	{"MSHW0146", 0},

	{"", 0},
};

@@ -1416,6 +1420,14 @@ static const struct dmi_system_id bat_dmi_table[] __initconst = {
			DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad"),
		},
	},
	{
		/* Microsoft Surface Go 3 */
		.callback = battery_notification_delay_quirk,
		.matches = {
			DMI_MATCH(DMI_SYS_VENDOR, "Microsoft Corporation"),
			DMI_MATCH(DMI_PRODUCT_NAME, "Surface Go 3"),
		},
	},
	{},
};

+75 −0
Original line number Diff line number Diff line
@@ -356,6 +356,81 @@ static const struct dmi_system_id video_detect_dmi_table[] = {
		DMI_MATCH(DMI_BOARD_NAME, "BA51_MV"),
		},
	},
	/*
	 * Clevo NL5xRU and NL5xNU/TUXEDO Aura 15 Gen1 and Gen2 have both a
	 * working native and video interface. However the default detection
	 * mechanism first registers the video interface before unregistering
	 * it again and switching to the native interface during boot. This
	 * results in a dangling SBIOS request for backlight change for some
	 * reason, causing the backlight to switch to ~2% once per boot on the
	 * first power cord connect or disconnect event. Setting the native
	 * interface explicitly circumvents this buggy behaviour, by avoiding
	 * the unregistering process.
	 */
	{
	.callback = video_detect_force_native,
	.ident = "Clevo NL5xRU",
	.matches = {
		DMI_MATCH(DMI_SYS_VENDOR, "TUXEDO"),
		DMI_MATCH(DMI_BOARD_NAME, "NL5xRU"),
		},
	},
	{
	.callback = video_detect_force_native,
	.ident = "Clevo NL5xRU",
	.matches = {
		DMI_MATCH(DMI_SYS_VENDOR, "SchenkerTechnologiesGmbH"),
		DMI_MATCH(DMI_BOARD_NAME, "NL5xRU"),
		},
	},
	{
	.callback = video_detect_force_native,
	.ident = "Clevo NL5xRU",
	.matches = {
		DMI_MATCH(DMI_SYS_VENDOR, "Notebook"),
		DMI_MATCH(DMI_BOARD_NAME, "NL5xRU"),
		},
	},
	{
	.callback = video_detect_force_native,
	.ident = "Clevo NL5xRU",
	.matches = {
		DMI_MATCH(DMI_SYS_VENDOR, "TUXEDO"),
		DMI_MATCH(DMI_BOARD_NAME, "AURA1501"),
		},
	},
	{
	.callback = video_detect_force_native,
	.ident = "Clevo NL5xRU",
	.matches = {
		DMI_MATCH(DMI_SYS_VENDOR, "TUXEDO"),
		DMI_MATCH(DMI_BOARD_NAME, "EDUBOOK1502"),
		},
	},
	{
	.callback = video_detect_force_native,
	.ident = "Clevo NL5xNU",
	.matches = {
		DMI_MATCH(DMI_SYS_VENDOR, "TUXEDO"),
		DMI_MATCH(DMI_BOARD_NAME, "NL5xNU"),
		},
	},
	{
	.callback = video_detect_force_native,
	.ident = "Clevo NL5xNU",
	.matches = {
		DMI_MATCH(DMI_SYS_VENDOR, "SchenkerTechnologiesGmbH"),
		DMI_MATCH(DMI_BOARD_NAME, "NL5xNU"),
		},
	},
	{
	.callback = video_detect_force_native,
	.ident = "Clevo NL5xNU",
	.matches = {
		DMI_MATCH(DMI_SYS_VENDOR, "Notebook"),
		DMI_MATCH(DMI_BOARD_NAME, "NL5xNU"),
		},
	},

	/*
	 * Desktops which falsely report a backlight and which our heuristics
Loading