Linux v3.16.4
This commit is contained in:
parent
4c76d3278f
commit
cd131961ef
|
@ -1,51 +0,0 @@
|
|||
From c54def7bd64d7c0b6993336abcffb8444795bf38 Mon Sep 17 00:00:00 2001
|
||||
From: Jiri Kosina <jkosina@suse.cz>
|
||||
Date: Wed, 27 Aug 2014 09:12:24 +0200
|
||||
Subject: [PATCH] HID: magicmouse: sanity check report size in raw_event()
|
||||
callback
|
||||
|
||||
The report passed to us from transport driver could potentially be
|
||||
arbitrarily large, therefore we better sanity-check it so that
|
||||
magicmouse_emit_touch() gets only valid values of raw_id.
|
||||
|
||||
Bugzilla: 1141179
|
||||
Upstream-status: 3.17 and CC'd stable
|
||||
|
||||
Cc: stable@vger.kernel.org
|
||||
Reported-by: Steven Vittitoe <scvitti@google.com>
|
||||
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
|
||||
---
|
||||
drivers/hid/hid-magicmouse.c | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
diff --git a/drivers/hid/hid-magicmouse.c b/drivers/hid/hid-magicmouse.c
|
||||
index ecc2cbf300cc..29a74c1efcb8 100644
|
||||
--- a/drivers/hid/hid-magicmouse.c
|
||||
+++ b/drivers/hid/hid-magicmouse.c
|
||||
@@ -290,6 +290,11 @@ static int magicmouse_raw_event(struct hid_device *hdev,
|
||||
if (size < 4 || ((size - 4) % 9) != 0)
|
||||
return 0;
|
||||
npoints = (size - 4) / 9;
|
||||
+ if (npoints > 15) {
|
||||
+ hid_warn(hdev, "invalid size value (%d) for TRACKPAD_REPORT_ID\n",
|
||||
+ size);
|
||||
+ return 0;
|
||||
+ }
|
||||
msc->ntouches = 0;
|
||||
for (ii = 0; ii < npoints; ii++)
|
||||
magicmouse_emit_touch(msc, ii, data + ii * 9 + 4);
|
||||
@@ -307,6 +312,11 @@ static int magicmouse_raw_event(struct hid_device *hdev,
|
||||
if (size < 6 || ((size - 6) % 8) != 0)
|
||||
return 0;
|
||||
npoints = (size - 6) / 8;
|
||||
+ if (npoints > 15) {
|
||||
+ hid_warn(hdev, "invalid size value (%d) for MOUSE_REPORT_ID\n",
|
||||
+ size);
|
||||
+ return 0;
|
||||
+ }
|
||||
msc->ntouches = 0;
|
||||
for (ii = 0; ii < npoints; ii++)
|
||||
magicmouse_emit_touch(msc, ii, data + ii * 8 + 6);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
From 844817e47eef14141cf59b8d5ac08dd11c0a9189 Mon Sep 17 00:00:00 2001
|
||||
From: Jiri Kosina <jkosina@suse.cz>
|
||||
Date: Wed, 27 Aug 2014 09:13:15 +0200
|
||||
Subject: [PATCH] HID: picolcd: sanity check report size in raw_event()
|
||||
callback
|
||||
|
||||
The report passed to us from transport driver could potentially be
|
||||
arbitrarily large, therefore we better sanity-check it so that raw_data
|
||||
that we hold in picolcd_pending structure are always kept within proper
|
||||
bounds.
|
||||
|
||||
Bugzilla: 1141410
|
||||
Upstream-status: 3.17 and CC'd to stable
|
||||
|
||||
Cc: stable@vger.kernel.org
|
||||
Reported-by: Steven Vittitoe <scvitti@google.com>
|
||||
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
|
||||
---
|
||||
drivers/hid/hid-picolcd_core.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/drivers/hid/hid-picolcd_core.c b/drivers/hid/hid-picolcd_core.c
|
||||
index acbb021065ec..020df3c2e8b4 100644
|
||||
--- a/drivers/hid/hid-picolcd_core.c
|
||||
+++ b/drivers/hid/hid-picolcd_core.c
|
||||
@@ -350,6 +350,12 @@ static int picolcd_raw_event(struct hid_device *hdev,
|
||||
if (!data)
|
||||
return 1;
|
||||
|
||||
+ if (size > 64) {
|
||||
+ hid_warn(hdev, "invalid size value (%d) for picolcd raw event\n",
|
||||
+ size);
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
if (report->id == REPORT_KEY_STATE) {
|
||||
if (data->input_keys)
|
||||
ret = picolcd_raw_keypad(data, report, raw_data+1, size-1);
|
||||
--
|
||||
2.1.0
|
||||
|
|
@ -1,111 +0,0 @@
|
|||
From: Stephen Warren <swarren@xxxxxxxxxx>
|
||||
|
||||
When tegra-drm.ko is built as a module, these MODULE_DEVICE_TABLEs allow
|
||||
the module to be auto-loaded since the module will match the devices
|
||||
instantiated from device tree.
|
||||
|
||||
(Notes for stable: in 3.14+, just git rm any conflicting file, since they
|
||||
are added in later kernels. For 3.13 and below, manual merging will be
|
||||
needed)
|
||||
|
||||
Cc: <stable@xxxxxxxxxxxxxxx>
|
||||
Signed-off-by: Stephen Warren <swarren@xxxxxxxxxx>
|
||||
---
|
||||
v2: Remove change to drm.c, since the match table there isn't used for
|
||||
probing.
|
||||
---
|
||||
drivers/gpu/drm/tegra/dc.c | 1 +
|
||||
drivers/gpu/drm/tegra/dpaux.c | 1 +
|
||||
drivers/gpu/drm/tegra/dsi.c | 1 +
|
||||
drivers/gpu/drm/tegra/gr2d.c | 1 +
|
||||
drivers/gpu/drm/tegra/gr3d.c | 1 +
|
||||
drivers/gpu/drm/tegra/hdmi.c | 1 +
|
||||
drivers/gpu/drm/tegra/sor.c | 1 +
|
||||
7 files changed, 7 insertions(+)
|
||||
|
||||
diff --git a/drivers/gpu/drm/tegra/dc.c b/drivers/gpu/drm/tegra/dc.c
|
||||
index ef40381f3909..48c3bc460eef 100644
|
||||
--- a/drivers/gpu/drm/tegra/dc.c
|
||||
+++ b/drivers/gpu/drm/tegra/dc.c
|
||||
@@ -1303,6 +1303,7 @@ static const struct of_device_id tegra_dc_of_match[] = {
|
||||
/* sentinel */
|
||||
}
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, tegra_dc_of_match);
|
||||
|
||||
static int tegra_dc_parse_dt(struct tegra_dc *dc)
|
||||
{
|
||||
diff --git a/drivers/gpu/drm/tegra/dpaux.c b/drivers/gpu/drm/tegra/dpaux.c
|
||||
index 3f132e356e9c..708f783ead47 100644
|
||||
--- a/drivers/gpu/drm/tegra/dpaux.c
|
||||
+++ b/drivers/gpu/drm/tegra/dpaux.c
|
||||
@@ -382,6 +382,7 @@ static const struct of_device_id tegra_dpaux_of_match[] = {
|
||||
{ .compatible = "nvidia,tegra124-dpaux", },
|
||||
{ },
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, tegra_dpaux_of_match);
|
||||
|
||||
struct platform_driver tegra_dpaux_driver = {
|
||||
.driver = {
|
||||
diff --git a/drivers/gpu/drm/tegra/dsi.c b/drivers/gpu/drm/tegra/dsi.c
|
||||
index bd56f2affa78..97c409f10456 100644
|
||||
--- a/drivers/gpu/drm/tegra/dsi.c
|
||||
+++ b/drivers/gpu/drm/tegra/dsi.c
|
||||
@@ -982,6 +982,7 @@ static const struct of_device_id tegra_dsi_of_match[] = {
|
||||
{ .compatible = "nvidia,tegra114-dsi", },
|
||||
{ },
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, tegra_dsi_of_match);
|
||||
|
||||
struct platform_driver tegra_dsi_driver = {
|
||||
.driver = {
|
||||
diff --git a/drivers/gpu/drm/tegra/gr2d.c b/drivers/gpu/drm/tegra/gr2d.c
|
||||
index 7c53941f2a9e..02cd3e37a6ec 100644
|
||||
--- a/drivers/gpu/drm/tegra/gr2d.c
|
||||
+++ b/drivers/gpu/drm/tegra/gr2d.c
|
||||
@@ -121,6 +121,7 @@ static const struct of_device_id gr2d_match[] = {
|
||||
{ .compatible = "nvidia,tegra20-gr2d" },
|
||||
{ },
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, gr2d_match);
|
||||
|
||||
static const u32 gr2d_addr_regs[] = {
|
||||
GR2D_UA_BASE_ADDR,
|
||||
diff --git a/drivers/gpu/drm/tegra/gr3d.c b/drivers/gpu/drm/tegra/gr3d.c
|
||||
index 30f5ba9bd6d0..2bea2b2d204e 100644
|
||||
--- a/drivers/gpu/drm/tegra/gr3d.c
|
||||
+++ b/drivers/gpu/drm/tegra/gr3d.c
|
||||
@@ -130,6 +130,7 @@ static const struct of_device_id tegra_gr3d_match[] = {
|
||||
{ .compatible = "nvidia,tegra20-gr3d" },
|
||||
{ }
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, tegra_gr3d_match);
|
||||
|
||||
static const u32 gr3d_addr_regs[] = {
|
||||
GR3D_IDX_ATTRIBUTE( 0),
|
||||
diff --git a/drivers/gpu/drm/tegra/hdmi.c b/drivers/gpu/drm/tegra/hdmi.c
|
||||
index a0b8d8539d07..84ea0c8b47f7 100644
|
||||
--- a/drivers/gpu/drm/tegra/hdmi.c
|
||||
+++ b/drivers/gpu/drm/tegra/hdmi.c
|
||||
@@ -1370,6 +1370,7 @@ static const struct of_device_id tegra_hdmi_of_match[] = {
|
||||
{ .compatible = "nvidia,tegra20-hdmi", .data = &tegra20_hdmi_config },
|
||||
{ },
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, tegra_hdmi_of_match);
|
||||
|
||||
static int tegra_hdmi_probe(struct platform_device *pdev)
|
||||
{
|
||||
diff --git a/drivers/gpu/drm/tegra/sor.c b/drivers/gpu/drm/tegra/sor.c
|
||||
index 27c979b50111..061a5c501124 100644
|
||||
--- a/drivers/gpu/drm/tegra/sor.c
|
||||
+++ b/drivers/gpu/drm/tegra/sor.c
|
||||
@@ -1455,6 +1455,7 @@ static const struct of_device_id tegra_sor_of_match[] = {
|
||||
{ .compatible = "nvidia,tegra124-sor", },
|
||||
{ },
|
||||
};
|
||||
+MODULE_DEVICE_TABLE(of, tegra_sor_of_match);
|
||||
|
||||
struct platform_driver tegra_sor_driver = {
|
||||
.driver = {
|
||||
--
|
||||
1.8.1.5
|
19
kernel.spec
19
kernel.spec
|
@ -74,7 +74,7 @@ Summary: The Linux kernel
|
|||
%if 0%{?released_kernel}
|
||||
|
||||
# Do we have a -stable update to apply?
|
||||
%define stable_update 3
|
||||
%define stable_update 4
|
||||
# Is it a -stable RC?
|
||||
%define stable_rc 0
|
||||
# Set rpm version accordingly
|
||||
|
@ -673,7 +673,6 @@ Patch21020: arm-tegra-usb-no-reset-linux33.patch
|
|||
Patch21021: arm-beagle.patch
|
||||
Patch21022: arm-imx6-utilite.patch
|
||||
# http://www.spinics.net/lists/linux-tegra/msg17948.html
|
||||
Patch21023: arm-tegra-drmdetection.patch
|
||||
Patch21024: arm-qemu-fixdisplay.patch
|
||||
|
||||
#rhbz 754518
|
||||
|
@ -715,12 +714,6 @@ Patch26021: i8042-Also-store-the-aux-firmware-id-in-multi-plexed.patch
|
|||
Patch26022: psmouse-Add-psmouse_matches_pnp_id-helper-function.patch
|
||||
Patch26023: psmouse-Add-support-for-detecting-FocalTech-PS-2-tou.patch
|
||||
|
||||
#CVE-2014-3181 rhbz 1141179 1141173
|
||||
Patch26024: HID-magicmouse-sanity-check-report-size-in-raw_event.patch
|
||||
|
||||
#CVE-2014-3186 rhbz 1141407 1141410
|
||||
Patch26025: HID-picolcd-sanity-check-report-size-in-raw_event-ca.patch
|
||||
|
||||
#CVE-2014-6410 rhbz 1141809 1141810
|
||||
Patch26026: udf-Avoid-infinite-loop-when-processing-indirect-ICB.patch
|
||||
|
||||
|
@ -1285,7 +1278,6 @@ ApplyPatch 0001-lib-cpumask-Make-CPUMASK_OFFSTACK-usable-without-deb.patch
|
|||
ApplyPatch arm-tegra-usb-no-reset-linux33.patch
|
||||
ApplyPatch arm-beagle.patch
|
||||
ApplyPatch arm-imx6-utilite.patch
|
||||
ApplyPatch arm-tegra-drmdetection.patch
|
||||
ApplyPatch arm-qemu-fixdisplay.patch
|
||||
|
||||
#
|
||||
|
@ -1413,12 +1405,6 @@ ApplyPatch i8042-Also-store-the-aux-firmware-id-in-multi-plexed.patch
|
|||
ApplyPatch psmouse-Add-psmouse_matches_pnp_id-helper-function.patch
|
||||
ApplyPatch psmouse-Add-support-for-detecting-FocalTech-PS-2-tou.patch
|
||||
|
||||
#CVE-2014-3181 rhbz 1141179 1141173
|
||||
ApplyPatch HID-magicmouse-sanity-check-report-size-in-raw_event.patch
|
||||
|
||||
#CVE-2014-3186 rhbz 1141407 1141410
|
||||
ApplyPatch HID-picolcd-sanity-check-report-size-in-raw_event-ca.patch
|
||||
|
||||
#CVE-2014-6410 rhbz 1141809 1141810
|
||||
ApplyPatch udf-Avoid-infinite-loop-when-processing-indirect-ICB.patch
|
||||
|
||||
|
@ -2246,6 +2232,9 @@ fi
|
|||
# ||----w |
|
||||
# || ||
|
||||
%changelog
|
||||
* Mon Oct 06 2014 Justin M. Forbes <jforbes@fedoraproject.org> - 3.16.4-200
|
||||
- Linux v3.16.4
|
||||
|
||||
* Tue Sep 23 2014 Josh Boyer <jwboyer@fedoraproject.org>
|
||||
- Add patch to fix XPS 13 touchpad issue (rhbz 1123584)
|
||||
|
||||
|
|
Loading…
Reference in New Issue