diff options
author | Josh Boyer <jwboyer@fedoraproject.org> | 2014-04-21 11:09:47 -0400 |
---|---|---|
committer | Josh Boyer <jwboyer@fedoraproject.org> | 2014-04-21 11:09:47 -0400 |
commit | 5a2828b4c2f95749a551e92bf5f33fb951237f2d (patch) | |
tree | 1ab059a50c3b4a2ffb562ffb37547f25964f586d | |
parent | b1bf9ea7daf301bf5840b1899385e95c5f55d10b (diff) | |
download | kernel-5a2828b4c2f95749a551e92bf5f33fb951237f2d.tar.gz kernel-5a2828b4c2f95749a551e92bf5f33fb951237f2d.tar.xz kernel-5a2828b4c2f95749a551e92bf5f33fb951237f2d.zip |
Fix Brainboxes Express Cards (rhbz 1071914)
- Fix build issues with CONFIG_DEBUG_VM set (rhbz 1074710)
- Fix perf build failures
-rw-r--r-- | USB-serial-ftdi_sio-add-id-for-Brainboxes-serial-car.patch | 112 | ||||
-rw-r--r-- | kernel.spec | 29 | ||||
-rw-r--r-- | mm-page_alloc.c-change-mm-debug-routines-back-to-EXP.patch | 61 |
3 files changed, 196 insertions, 6 deletions
diff --git a/USB-serial-ftdi_sio-add-id-for-Brainboxes-serial-car.patch b/USB-serial-ftdi_sio-add-id-for-Brainboxes-serial-car.patch new file mode 100644 index 00000000..e144c696 --- /dev/null +++ b/USB-serial-ftdi_sio-add-id-for-Brainboxes-serial-car.patch @@ -0,0 +1,112 @@ +Bugzilla: 1071914 +Upstream-status: 3.15 + +From efe26e16b1d93ac0085e69178cc18811629e8fc5 Mon Sep 17 00:00:00 2001 +From: Michele Baldessari <michele@acksyn.org> +Date: Mon, 31 Mar 2014 10:51:00 +0200 +Subject: [PATCH] USB: serial: ftdi_sio: add id for Brainboxes serial cards + +Custom VID/PIDs for Brainboxes cards as reported in +https://bugzilla.redhat.com/show_bug.cgi?id=1071914 + +Signed-off-by: Michele Baldessari <michele@acksyn.org> +Cc: stable <stable@vger.kernel.org> +Signed-off-by: Johan Hovold <jhovold@gmail.com> +Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> +--- + drivers/usb/serial/ftdi_sio.c | 33 +++++++++++++++++++++++++++++++++ + drivers/usb/serial/ftdi_sio_ids.h | 37 +++++++++++++++++++++++++++++++++++++ + 2 files changed, 70 insertions(+) + +diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c +index 44ab12986805..7c6e1dedeb06 100644 +--- a/drivers/usb/serial/ftdi_sio.c ++++ b/drivers/usb/serial/ftdi_sio.c +@@ -909,6 +909,39 @@ static const struct usb_device_id id_table_combined[] = { + { USB_DEVICE(FTDI_VID, FTDI_Z3X_PID) }, + /* Cressi Devices */ + { USB_DEVICE(FTDI_VID, FTDI_CRESSI_PID) }, ++ /* Brainboxes Devices */ ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_VX_001_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_VX_012_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_VX_023_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_VX_034_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_101_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_160_1_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_160_2_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_160_3_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_160_4_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_160_5_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_160_6_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_160_7_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_160_8_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_257_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_279_1_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_279_2_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_279_3_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_279_4_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_313_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_324_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_346_1_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_346_2_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_357_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_606_1_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_606_2_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_606_3_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_701_1_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_701_2_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_842_1_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_842_2_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_842_3_PID) }, ++ { USB_DEVICE(BRAINBOXES_VID, BRAINBOXES_US_842_4_PID) }, + { } /* Terminating entry */ + }; + +diff --git a/drivers/usb/serial/ftdi_sio_ids.h b/drivers/usb/serial/ftdi_sio_ids.h +index e599fbfcde5f..993c93df6874 100644 +--- a/drivers/usb/serial/ftdi_sio_ids.h ++++ b/drivers/usb/serial/ftdi_sio_ids.h +@@ -1326,3 +1326,40 @@ + * Manufacturer: Cressi + */ + #define FTDI_CRESSI_PID 0x87d0 ++ ++/* ++ * Brainboxes devices ++ */ ++#define BRAINBOXES_VID 0x05d1 ++#define BRAINBOXES_VX_001_PID 0x1001 /* VX-001 ExpressCard 1 Port RS232 */ ++#define BRAINBOXES_VX_012_PID 0x1002 /* VX-012 ExpressCard 2 Port RS232 */ ++#define BRAINBOXES_VX_023_PID 0x1003 /* VX-023 ExpressCard 1 Port RS422/485 */ ++#define BRAINBOXES_VX_034_PID 0x1004 /* VX-034 ExpressCard 2 Port RS422/485 */ ++#define BRAINBOXES_US_101_PID 0x1011 /* US-101 1xRS232 */ ++#define BRAINBOXES_US_324_PID 0x1013 /* US-324 1xRS422/485 1Mbaud */ ++#define BRAINBOXES_US_606_1_PID 0x2001 /* US-606 6 Port RS232 Serial Port 1 and 2 */ ++#define BRAINBOXES_US_606_2_PID 0x2002 /* US-606 6 Port RS232 Serial Port 3 and 4 */ ++#define BRAINBOXES_US_606_3_PID 0x2003 /* US-606 6 Port RS232 Serial Port 4 and 6 */ ++#define BRAINBOXES_US_701_1_PID 0x2011 /* US-701 4xRS232 1Mbaud Port 1 and 2 */ ++#define BRAINBOXES_US_701_2_PID 0x2012 /* US-701 4xRS422 1Mbaud Port 3 and 4 */ ++#define BRAINBOXES_US_279_1_PID 0x2021 /* US-279 8xRS422 1Mbaud Port 1 and 2 */ ++#define BRAINBOXES_US_279_2_PID 0x2022 /* US-279 8xRS422 1Mbaud Port 3 and 4 */ ++#define BRAINBOXES_US_279_3_PID 0x2023 /* US-279 8xRS422 1Mbaud Port 5 and 6 */ ++#define BRAINBOXES_US_279_4_PID 0x2024 /* US-279 8xRS422 1Mbaud Port 7 and 8 */ ++#define BRAINBOXES_US_346_1_PID 0x3011 /* US-346 4xRS422/485 1Mbaud Port 1 and 2 */ ++#define BRAINBOXES_US_346_2_PID 0x3012 /* US-346 4xRS422/485 1Mbaud Port 3 and 4 */ ++#define BRAINBOXES_US_257_PID 0x5001 /* US-257 2xRS232 1Mbaud */ ++#define BRAINBOXES_US_313_PID 0x6001 /* US-313 2xRS422/485 1Mbaud */ ++#define BRAINBOXES_US_357_PID 0x7001 /* US_357 1xRS232/422/485 */ ++#define BRAINBOXES_US_842_1_PID 0x8001 /* US-842 8xRS422/485 1Mbaud Port 1 and 2 */ ++#define BRAINBOXES_US_842_2_PID 0x8002 /* US-842 8xRS422/485 1Mbaud Port 3 and 4 */ ++#define BRAINBOXES_US_842_3_PID 0x8003 /* US-842 8xRS422/485 1Mbaud Port 5 and 6 */ ++#define BRAINBOXES_US_842_4_PID 0x8004 /* US-842 8xRS422/485 1Mbaud Port 7 and 8 */ ++#define BRAINBOXES_US_160_1_PID 0x9001 /* US-160 16xRS232 1Mbaud Port 1 and 2 */ ++#define BRAINBOXES_US_160_2_PID 0x9002 /* US-160 16xRS232 1Mbaud Port 3 and 4 */ ++#define BRAINBOXES_US_160_3_PID 0x9003 /* US-160 16xRS232 1Mbaud Port 5 and 6 */ ++#define BRAINBOXES_US_160_4_PID 0x9004 /* US-160 16xRS232 1Mbaud Port 7 and 8 */ ++#define BRAINBOXES_US_160_5_PID 0x9005 /* US-160 16xRS232 1Mbaud Port 9 and 10 */ ++#define BRAINBOXES_US_160_6_PID 0x9006 /* US-160 16xRS232 1Mbaud Port 11 and 12 */ ++#define BRAINBOXES_US_160_7_PID 0x9007 /* US-160 16xRS232 1Mbaud Port 13 and 14 */ ++#define BRAINBOXES_US_160_8_PID 0x9008 /* US-160 16xRS232 1Mbaud Port 15 and 16 */ +-- +1.9.0 + diff --git a/kernel.spec b/kernel.spec index 5397bf38..fabf1695 100644 --- a/kernel.spec +++ b/kernel.spec @@ -715,9 +715,6 @@ Patch25044: iwlwifi-dvm-take-mutex-when-sending-SYNC-BT-config-command.patch #CVE-2014-0155 rhbz 1081589 1085016 Patch25036: KVM-ioapic-fix-assignment-of-ioapic-rtc_status-pending_eoi.patch -#rhbz 1048314 -Patch25062: 0001-HID-rmi-introduce-RMI-driver-for-Synaptics-touchpads.patch - #rhbz 1074235 Patch25055: lib-percpu_counter.c-fix-bad-percpu-counter-state-du.patch @@ -727,6 +724,15 @@ Patch25059: net-ipv4-current-group_info-should-be-put-after-using.patch #rhbz 1085582 1085697 Patch25060: 0001-synaptics-Add-min-max-quirk-for-ThinkPad-T431s-L440-.patch +#rhbz 1074710 +Patch25061: mm-page_alloc.c-change-mm-debug-routines-back-to-EXP.patch + +#rhbz 1048314 +Patch25062: 0001-HID-rmi-introduce-RMI-driver-for-Synaptics-touchpads.patch + +#rhbz 1071914 +Patch25063: USB-serial-ftdi_sio-add-id-for-Brainboxes-serial-car.patch + # END OF PATCH DEFINITIONS %endif @@ -1409,6 +1415,12 @@ ApplyPatch net-ipv4-current-group_info-should-be-put-after-using.patch #rhbz 1085582 1085697 ApplyPatch 0001-synaptics-Add-min-max-quirk-for-ThinkPad-T431s-L440-.patch +#rhbz 1074710 +ApplyPatch mm-page_alloc.c-change-mm-debug-routines-back-to-EXP.patch + +#rhbz 1071914 +ApplyPatch USB-serial-ftdi_sio-add-id-for-Brainboxes-serial-car.patch + # END OF PATCH APPLICATIONS %endif @@ -1909,7 +1921,7 @@ find $RPM_BUILD_ROOT/usr/include \ %if %{with_perf} # perf tool binary and supporting scripts/binaries -%{perf_make} DESTDIR=$RPM_BUILD_ROOT install +%{perf_make} DESTDIR=$RPM_BUILD_ROOT install-bin # remove the 'trace' symlink. rm -f %{buildroot}%{_bindir}/trace @@ -1917,7 +1929,7 @@ rm -f %{buildroot}%{_bindir}/trace %{perf_make} DESTDIR=$RPM_BUILD_ROOT install-python_ext # perf man pages (note: implicit rpm magic compresses them later) -%{perf_make} DESTDIR=$RPM_BUILD_ROOT install-man || %{doc_build_fail} +%{perf_make} DESTDIR=$RPM_BUILD_ROOT try-install-man || %{doc_build_fail} %endif %if %{with_tools} @@ -2220,7 +2232,12 @@ fi # ||----w | # || || %changelog -* Mon Apr 21 2014 Justin M. Forbes <jforbes@fedoraproject.org> - 3.14.1-200 +* Mon Apr 21 2014 Josh Boyer <jwboyer@fedoraproject.org> - 3.14.1-200 +- Fix Brainboxes Express Cards (rhbz 1071914) +- Fix build issues with CONFIG_DEBUG_VM set (rhbz 1074710) +- Fix perf build failures + +* Mon Apr 21 2014 Justin M. Forbes <jforbes@fedoraproject.org> - Linux v3.14.1 * Thu Apr 17 2014 Hans de Goede <hdegoede@redhat.com> diff --git a/mm-page_alloc.c-change-mm-debug-routines-back-to-EXP.patch b/mm-page_alloc.c-change-mm-debug-routines-back-to-EXP.patch new file mode 100644 index 00000000..c0144bad --- /dev/null +++ b/mm-page_alloc.c-change-mm-debug-routines-back-to-EXP.patch @@ -0,0 +1,61 @@ +Bugzilla: 1074710 +Upstream-status: 3.15 + +From ed12d845b5f528cc0846023862b9c448a36122ec Mon Sep 17 00:00:00 2001 +From: John Hubbard <jhubbard@nvidia.com> +Date: Mon, 7 Apr 2014 15:37:59 -0700 +Subject: [PATCH] mm/page_alloc.c: change mm debug routines back to + EXPORT_SYMBOL + +A new dump_page() routine was recently added, and marked +EXPORT_SYMBOL_GPL. dump_page() was also added to the VM_BUG_ON_PAGE() +macro, and so the end result is that non-GPL code can no longer call +get_page() and a few other routines. + +This only happens if the kernel was compiled with CONFIG_DEBUG_VM. + +Change dump_page() to be EXPORT_SYMBOL. + +Longer explanation: + +Prior to commit 309381feaee5 ("mm: dump page when hitting a VM_BUG_ON +using VM_BUG_ON_PAGE") , it was possible to build MIT-licensed (non-GPL) +drivers on Fedora. Fedora is semi-unique, in that it sets +CONFIG_VM_DEBUG. + +Because Fedora sets CONFIG_VM_DEBUG, they end up pulling in dump_page(), +via VM_BUG_ON_PAGE, via get_page(). As one of the authors of NVIDIA's +new, open source, "UVM-Lite" kernel module, I originally choose to use +the kernel's get_page() routine from within nvidia_uvm_page_cache.c, +because get_page() has always seemed to be very clearly intended for use +by non-GPL, driver code. + +So I'm hoping that making get_page() widely accessible again will not be +too controversial. We did check with Fedora first, and they responded +(https://bugzilla.redhat.com/show_bug.cgi?id=1074710#c3) that we should +try to get upstream changed, before asking Fedora to change. Their +reasoning seems beneficial to Linux: leaving CONFIG_DEBUG_VM set allows +Fedora to help catch mm bugs. + +Signed-off-by: John Hubbard <jhubbard@nvidia.com> +Cc: Sasha Levin <sasha.levin@oracle.com> +Cc: Josh Boyer <jwboyer@redhat.com> +Signed-off-by: Andrew Morton <akpm@linux-foundation.org> +Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> +--- + mm/page_alloc.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/mm/page_alloc.c b/mm/page_alloc.c +index 48427a7cfb45..5dba2933c9c0 100644 +--- a/mm/page_alloc.c ++++ b/mm/page_alloc.c +@@ -6568,4 +6568,4 @@ void dump_page(struct page *page, const char *reason) + { + dump_page_badflags(page, reason, 0); + } +-EXPORT_SYMBOL_GPL(dump_page); ++EXPORT_SYMBOL(dump_page); +-- +1.9.0 + |