--- /dev/null
+From 33ead538f642a33b1d658782a5d14a40b5014d1f Mon Sep 17 00:00:00 2001
+From: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>
+Date: Fri, 3 Oct 2014 19:06:03 +0900
+Subject: driver/base/node: remove unnecessary kfree of node struct from unregister_one_node
+
+From: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>
+
+commit 33ead538f642a33b1d658782a5d14a40b5014d1f upstream.
+
+Commit 92d585ef067d ("numa: fix NULL pointer access and memory
+leak in unregister_one_node()") added kfree() of node struct in
+unregister_one_node(). But node struct is freed by node_device_release()
+which is called in unregister_node(). So by adding the kfree(),
+node struct is freed two times.
+
+While hot removing memory, the commit leads the following BUG_ON():
+
+ kernel BUG at mm/slub.c:3346!
+ invalid opcode: 0000 [#1] SMP
+ [...]
+ Call Trace:
+ [...] unregister_one_node
+ [...] try_offline_node
+ [...] remove_memory
+ [...] acpi_memory_device_remove
+ [...] acpi_bus_trim
+ [...] acpi_bus_trim
+ [...] acpi_device_hotplug
+ [...] acpi_hotplug_work_fn
+ [...] process_one_work
+ [...] worker_thread
+ [...] ? rescuer_thread
+ [...] kthread
+ [...] ? kthread_create_on_node
+ [...] ret_from_fork
+ [...] ? kthread_create_on_node
+
+This patch removes unnecessary kfree() from unregister_one_node().
+
+Signed-off-by: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>
+Cc: Xishi Qiu <qiuxishi@huawei.com>
+Fixes: 92d585ef067d "numa: fix NULL pointer access and memory leak in unregister_one_node()"
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/base/node.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+--- a/drivers/base/node.c
++++ b/drivers/base/node.c
+@@ -603,7 +603,6 @@ void unregister_one_node(int nid)
+ return;
+
+ unregister_node(node_devices[nid]);
+- kfree(node_devices[nid]);
+ node_devices[nid] = NULL;
+ }
+
--- /dev/null
+From 1ede7dcca3c4fa15a518ab0473126f9c3e621e4c Mon Sep 17 00:00:00 2001
+From: Bryan O'Donoghue <pure.logic@nexus-software.ie>
+Date: Tue, 23 Sep 2014 01:21:11 +0100
+Subject: serial: 8250: Add Quark X1000 to 8250_pci.c
+
+From: Bryan O'Donoghue <pure.logic@nexus-software.ie>
+
+commit 1ede7dcca3c4fa15a518ab0473126f9c3e621e4c upstream.
+
+Quark X1000 contains two designware derived 8250 serial ports.
+Each port has a unique PCI configuration space consisting of
+BAR0:UART BAR1:DMA respectively.
+
+Unlike the standard 8250 the register width is 32 bits for RHR,IER etc
+The Quark UART has a fundamental clock @ 44.2368 MHz allowing for a
+bitrate of up to about 2.76 megabits per second.
+
+This patch enables standard 8250 mode
+
+Signed-off-by: Bryan O'Donoghue <pure.logic@nexus-software.ie>
+Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/tty/serial/8250/8250_pci.c | 21 +++++++++++++++++++++
+ 1 file changed, 21 insertions(+)
+
+--- a/drivers/tty/serial/8250/8250_pci.c
++++ b/drivers/tty/serial/8250/8250_pci.c
+@@ -1790,6 +1790,7 @@ pci_wch_ch353_setup(struct serial_privat
+ #define PCI_DEVICE_ID_COMMTECH_4222PCIE 0x0022
+ #define PCI_DEVICE_ID_BROADCOM_TRUMANAGE 0x160a
+ #define PCI_DEVICE_ID_AMCC_ADDIDATA_APCI7800 0x818e
++#define PCI_DEVICE_ID_INTEL_QRK_UART 0x0936
+
+ #define PCI_VENDOR_ID_SUNIX 0x1fd4
+ #define PCI_DEVICE_ID_SUNIX_1999 0x1999
+@@ -1900,6 +1901,13 @@ static struct pci_serial_quirk pci_seria
+ .subdevice = PCI_ANY_ID,
+ .setup = byt_serial_setup,
+ },
++ {
++ .vendor = PCI_VENDOR_ID_INTEL,
++ .device = PCI_DEVICE_ID_INTEL_QRK_UART,
++ .subvendor = PCI_ANY_ID,
++ .subdevice = PCI_ANY_ID,
++ .setup = pci_default_setup,
++ },
+ /*
+ * ITE
+ */
+@@ -2742,6 +2750,7 @@ enum pci_board_num_t {
+ pbn_ADDIDATA_PCIe_8_3906250,
+ pbn_ce4100_1_115200,
+ pbn_byt,
++ pbn_qrk,
+ pbn_omegapci,
+ pbn_NETMOS9900_2s_115200,
+ pbn_brcm_trumanage,
+@@ -3492,6 +3501,12 @@ static struct pciserial_board pci_boards
+ .uart_offset = 0x80,
+ .reg_shift = 2,
+ },
++ [pbn_qrk] = {
++ .flags = FL_BASE0,
++ .num_ports = 1,
++ .base_baud = 2764800,
++ .reg_shift = 2,
++ },
+ [pbn_omegapci] = {
+ .flags = FL_BASE0,
+ .num_ports = 8,
+@@ -5194,6 +5209,12 @@ static struct pci_device_id serial_pci_t
+ pbn_byt },
+
+ /*
++ * Intel Quark x1000
++ */
++ { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_QRK_UART,
++ PCI_ANY_ID, PCI_ANY_ID, 0, 0,
++ pbn_qrk },
++ /*
+ * Cronyx Omega PCI
+ */
+ { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_CRONYX_OMEGA,