]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
more 3.18 build fixes
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 2 Feb 2017 17:16:55 +0000 (18:16 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 2 Feb 2017 17:16:55 +0000 (18:16 +0100)
queue-3.18/be2iscsi-fix-bogus-warn_on-length-check.patch [new file with mode: 0644]
queue-3.18/bfa-fix-indentation.patch [new file with mode: 0644]
queue-3.18/i40e-reduce-stack-in-i40e_dbg_dump_desc.patch [new file with mode: 0644]
queue-3.18/series
queue-3.18/staging-iio-adc-fix-indent-on-break-statement.patch [new file with mode: 0644]
queue-3.18/staging-lustre-missing-curly-braces-in-ll_setattr_raw.patch [new file with mode: 0644]
queue-3.18/staging-rtl8723au-core-rtw_wlan_util-fix-misleading-indentation.patch [new file with mode: 0644]
queue-3.18/usb-renesas_usbhs-fix-build-warning-if-64-bit-architecture.patch [new file with mode: 0644]
queue-3.18/x86-boot-add-config_paravirt_spinlocks-quirk-to-arch-x86-boot-compressed-misc.h.patch [new file with mode: 0644]
queue-3.18/xilinx-usb2-gadget-get-rid-of-incredibly-annoying-compile-warning.patch [new file with mode: 0644]

diff --git a/queue-3.18/be2iscsi-fix-bogus-warn_on-length-check.patch b/queue-3.18/be2iscsi-fix-bogus-warn_on-length-check.patch
new file mode 100644 (file)
index 0000000..e5ddb6f
--- /dev/null
@@ -0,0 +1,40 @@
+From dd29dae00d39186890a5eaa2fe4ad8768bfd41a9 Mon Sep 17 00:00:00 2001
+From: Tim Gardner <tim.gardner@canonical.com>
+Date: Fri, 30 Oct 2015 12:22:58 -0600
+Subject: be2iscsi: Fix bogus WARN_ON length check
+
+From: Tim Gardner <tim.gardner@canonical.com>
+
+commit dd29dae00d39186890a5eaa2fe4ad8768bfd41a9 upstream.
+
+drivers/scsi/be2iscsi/be_main.c: In function 'be_sgl_create_contiguous':
+drivers/scsi/be2iscsi/be_main.c:3187:18: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses]
+  WARN_ON(!length > 0);
+
+gcc version 5.2.1
+
+Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
+Cc: Jayamohan Kallickal <jayamohan.kallickal@avagotech.com>
+Cc: Minh Tran <minh.tran@avagotech.com>
+Cc: John Soni Jose <sony.john-n@avagotech.com>
+Cc: "James E.J. Bottomley" <JBottomley@odin.com>
+Reported-by: Joel Stanley <joel@jms.id.au>
+Reviewed-by: Manoj Kumar <manoj@linux.vnet.ibm.com>
+Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/scsi/be2iscsi/be_main.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/scsi/be2iscsi/be_main.c
++++ b/drivers/scsi/be2iscsi/be_main.c
+@@ -3165,7 +3165,7 @@ be_sgl_create_contiguous(void *virtual_a
+ {
+       WARN_ON(!virtual_address);
+       WARN_ON(!physical_address);
+-      WARN_ON(!length > 0);
++      WARN_ON(!length);
+       WARN_ON(!sgl);
+       sgl->va = virtual_address;
diff --git a/queue-3.18/bfa-fix-indentation.patch b/queue-3.18/bfa-fix-indentation.patch
new file mode 100644 (file)
index 0000000..d121d7b
--- /dev/null
@@ -0,0 +1,52 @@
+From b7f4d6343820af5c2dc3979e91d85e71e638cd3d Mon Sep 17 00:00:00 2001
+From: Anil Gurumurthy <anil.gurumurthy@qlogic.com>
+Date: Thu, 13 Aug 2015 06:41:51 -0400
+Subject: bfa: Fix indentation
+
+From: Anil Gurumurthy <anil.gurumurthy@qlogic.com>
+
+commit b7f4d6343820af5c2dc3979e91d85e71e638cd3d upstream.
+
+Signed-off-by: Anil Gurumurthy <anil.gurumurthy@qlogic.com>
+Tested-by : Sudarasana Kalluru <sudarsana.kalluru@qlogic.com>
+Reviewed-by: Ewan D. Milne <emilne@redhat.com>
+Signed-off-by: James Bottomley <JBottomley@Odin.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/scsi/bfa/bfa_ioc.c |   22 +++++++++++-----------
+ 1 file changed, 11 insertions(+), 11 deletions(-)
+
+--- a/drivers/scsi/bfa/bfa_ioc.c
++++ b/drivers/scsi/bfa/bfa_ioc.c
+@@ -3665,19 +3665,19 @@ bfa_cb_sfp_state_query(struct bfa_sfp_s
+               if (sfp->state_query_cbfn)
+                       sfp->state_query_cbfn(sfp->state_query_cbarg,
+                                       sfp->status);
+-                      sfp->media = NULL;
+-              }
++              sfp->media = NULL;
++      }
+-              if (sfp->portspeed) {
+-                      sfp->status = bfa_sfp_speed_valid(sfp, sfp->portspeed);
+-                      if (sfp->state_query_cbfn)
+-                              sfp->state_query_cbfn(sfp->state_query_cbarg,
+-                                              sfp->status);
+-                              sfp->portspeed = BFA_PORT_SPEED_UNKNOWN;
+-              }
++      if (sfp->portspeed) {
++              sfp->status = bfa_sfp_speed_valid(sfp, sfp->portspeed);
++              if (sfp->state_query_cbfn)
++                      sfp->state_query_cbfn(sfp->state_query_cbarg,
++                                      sfp->status);
++              sfp->portspeed = BFA_PORT_SPEED_UNKNOWN;
++      }
+-              sfp->state_query_lock = 0;
+-              sfp->state_query_cbfn = NULL;
++      sfp->state_query_lock = 0;
++      sfp->state_query_cbfn = NULL;
+ }
+ /*
diff --git a/queue-3.18/i40e-reduce-stack-in-i40e_dbg_dump_desc.patch b/queue-3.18/i40e-reduce-stack-in-i40e_dbg_dump_desc.patch
new file mode 100644 (file)
index 0000000..26721d9
--- /dev/null
@@ -0,0 +1,118 @@
+From e6c97234d1b18d4751671df15d52e29daa8a7ba8 Mon Sep 17 00:00:00 2001
+From: Joe Perches <joe@perches.com>
+Date: Tue, 18 Nov 2014 05:53:00 +0000
+Subject: i40e: Reduce stack in i40e_dbg_dump_desc
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Joe Perches <joe@perches.com>
+
+commit e6c97234d1b18d4751671df15d52e29daa8a7ba8 upstream.
+
+Reduce stack use by using kmemdup and not using a very
+large struct on stack.
+
+In function ‘i40e_dbg_dump_desc’:
+warning: the frame size of 8192 bytes is larger than 2048 bytes [-Wframe-larger-than=]
+
+Signed-off-by: Joe Perches <joe@perches.com>
+Tested-by: Jim Young <jamesx.m.young@intel.com>
+Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/net/ethernet/intel/i40e/i40e_debugfs.c |   30 ++++++++++++++-----------
+ 1 file changed, 17 insertions(+), 13 deletions(-)
+
+--- a/drivers/net/ethernet/intel/i40e/i40e_debugfs.c
++++ b/drivers/net/ethernet/intel/i40e/i40e_debugfs.c
+@@ -773,7 +773,7 @@ static void i40e_dbg_dump_desc(int cnt,
+ {
+       struct i40e_tx_desc *txd;
+       union i40e_rx_desc *rxd;
+-      struct i40e_ring ring;
++      struct i40e_ring *ring;
+       struct i40e_vsi *vsi;
+       int i;
+@@ -792,29 +792,32 @@ static void i40e_dbg_dump_desc(int cnt,
+                        vsi_seid);
+               return;
+       }
+-      if (is_rx_ring)
+-              ring = *vsi->rx_rings[ring_id];
+-      else
+-              ring = *vsi->tx_rings[ring_id];
++
++      ring = kmemdup(is_rx_ring
++                     ? vsi->rx_rings[ring_id] : vsi->tx_rings[ring_id],
++                     sizeof(*ring), GFP_KERNEL);
++      if (!ring)
++              return;
++
+       if (cnt == 2) {
+               dev_info(&pf->pdev->dev, "vsi = %02i %s ring = %02i\n",
+                        vsi_seid, is_rx_ring ? "rx" : "tx", ring_id);
+-              for (i = 0; i < ring.count; i++) {
++              for (i = 0; i < ring->count; i++) {
+                       if (!is_rx_ring) {
+-                              txd = I40E_TX_DESC(&ring, i);
++                              txd = I40E_TX_DESC(ring, i);
+                               dev_info(&pf->pdev->dev,
+                                        "   d[%03i] = 0x%016llx 0x%016llx\n",
+                                        i, txd->buffer_addr,
+                                        txd->cmd_type_offset_bsz);
+                       } else if (sizeof(union i40e_rx_desc) ==
+                                  sizeof(union i40e_16byte_rx_desc)) {
+-                              rxd = I40E_RX_DESC(&ring, i);
++                              rxd = I40E_RX_DESC(ring, i);
+                               dev_info(&pf->pdev->dev,
+                                        "   d[%03i] = 0x%016llx 0x%016llx\n",
+                                        i, rxd->read.pkt_addr,
+                                        rxd->read.hdr_addr);
+                       } else {
+-                              rxd = I40E_RX_DESC(&ring, i);
++                              rxd = I40E_RX_DESC(ring, i);
+                               dev_info(&pf->pdev->dev,
+                                        "   d[%03i] = 0x%016llx 0x%016llx 0x%016llx 0x%016llx\n",
+                                        i, rxd->read.pkt_addr,
+@@ -823,26 +826,26 @@ static void i40e_dbg_dump_desc(int cnt,
+                       }
+               }
+       } else if (cnt == 3) {
+-              if (desc_n >= ring.count || desc_n < 0) {
++              if (desc_n >= ring->count || desc_n < 0) {
+                       dev_info(&pf->pdev->dev,
+                                "descriptor %d not found\n", desc_n);
+                       return;
+               }
+               if (!is_rx_ring) {
+-                      txd = I40E_TX_DESC(&ring, desc_n);
++                      txd = I40E_TX_DESC(ring, desc_n);
+                       dev_info(&pf->pdev->dev,
+                                "vsi = %02i tx ring = %02i d[%03i] = 0x%016llx 0x%016llx\n",
+                                vsi_seid, ring_id, desc_n,
+                                txd->buffer_addr, txd->cmd_type_offset_bsz);
+               } else if (sizeof(union i40e_rx_desc) ==
+                          sizeof(union i40e_16byte_rx_desc)) {
+-                      rxd = I40E_RX_DESC(&ring, desc_n);
++                      rxd = I40E_RX_DESC(ring, desc_n);
+                       dev_info(&pf->pdev->dev,
+                                "vsi = %02i rx ring = %02i d[%03i] = 0x%016llx 0x%016llx\n",
+                                vsi_seid, ring_id, desc_n,
+                                rxd->read.pkt_addr, rxd->read.hdr_addr);
+               } else {
+-                      rxd = I40E_RX_DESC(&ring, desc_n);
++                      rxd = I40E_RX_DESC(ring, desc_n);
+                       dev_info(&pf->pdev->dev,
+                                "vsi = %02i rx ring = %02i d[%03i] = 0x%016llx 0x%016llx 0x%016llx 0x%016llx\n",
+                                vsi_seid, ring_id, desc_n,
+@@ -852,6 +855,7 @@ static void i40e_dbg_dump_desc(int cnt,
+       } else {
+               dev_info(&pf->pdev->dev, "dump desc rx/tx <vsi_seid> <ring_id> [<desc_n>]\n");
+       }
++      kfree(ring);
+ }
+ /**
index 8d8cf830847bb07e850b62abdabf2212d0f0beb2..76c29ec6810e4f5caf360344ea808c8d468b7952 100644 (file)
@@ -16,3 +16,12 @@ mtd-blkdevs-fix-switch-bool-compilation-warning.patch
 media-remove-unused-variable-that-causes-a-warning.patch
 drivers-net-ethernet-dec-tulip-uli526x.c-fix-misleading-indentation-in-uli526x_timer.patch
 iwlegacy-avoid-warning-about-missing-braces.patch
+be2iscsi-fix-bogus-warn_on-length-check.patch
+i40e-reduce-stack-in-i40e_dbg_dump_desc.patch
+bfa-fix-indentation.patch
+staging-iio-adc-fix-indent-on-break-statement.patch
+xilinx-usb2-gadget-get-rid-of-incredibly-annoying-compile-warning.patch
+staging-lustre-missing-curly-braces-in-ll_setattr_raw.patch
+staging-rtl8723au-core-rtw_wlan_util-fix-misleading-indentation.patch
+usb-renesas_usbhs-fix-build-warning-if-64-bit-architecture.patch
+x86-boot-add-config_paravirt_spinlocks-quirk-to-arch-x86-boot-compressed-misc.h.patch
diff --git a/queue-3.18/staging-iio-adc-fix-indent-on-break-statement.patch b/queue-3.18/staging-iio-adc-fix-indent-on-break-statement.patch
new file mode 100644 (file)
index 0000000..03ed0e1
--- /dev/null
@@ -0,0 +1,32 @@
+From 2c4e9913a114c01991dc3ae455a1d126e440251e Mon Sep 17 00:00:00 2001
+From: Colin Ian King <colin.king@canonical.com>
+Date: Sat, 23 Jan 2016 19:33:10 +0000
+Subject: Staging: iio: adc: fix indent on break statement
+
+From: Colin Ian King <colin.king@canonical.com>
+
+commit b6acb0cfc21293a1bfc283e9217f58f7474ef728 upstream.
+
+Fix indent warning when building with gcc 6:
+drivers/staging/iio/adc/ad7192.c:239:4: warning: statement is indented
+  as if it were guarded by... [-Wmisleading-indentation]
+
+Signed-off-by: Colin Ian King <colin.king@canonical.com>
+Signed-off-by: Jonathan Cameron <jic23@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/staging/iio/adc/ad7192.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/staging/iio/adc/ad7192.c
++++ b/drivers/staging/iio/adc/ad7192.c
+@@ -236,7 +236,7 @@ static int ad7192_setup(struct ad7192_st
+                       st->mclk = pdata->ext_clk_Hz;
+               else
+                       st->mclk = AD7192_INT_FREQ_MHz;
+-                      break;
++              break;
+       default:
+               ret = -EINVAL;
+               goto out;
diff --git a/queue-3.18/staging-lustre-missing-curly-braces-in-ll_setattr_raw.patch b/queue-3.18/staging-lustre-missing-curly-braces-in-ll_setattr_raw.patch
new file mode 100644 (file)
index 0000000..0f9c2fe
--- /dev/null
@@ -0,0 +1,37 @@
+From 53bd4a004ee5ff0f71a858de78faac98924b4a87 Mon Sep 17 00:00:00 2001
+From: Dan Carpenter <dan.carpenter@oracle.com>
+Date: Wed, 25 Feb 2015 16:20:36 +0300
+Subject: Staging: lustre: missing curly braces in ll_setattr_raw()
+
+From: Dan Carpenter <dan.carpenter@oracle.com>
+
+commit 53bd4a004ee5ff0f71a858de78faac98924b4a87 upstream.
+
+>From the indenting, it looks like curly braces were intended here.
+
+Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/staging/lustre/lustre/llite/llite_lib.c |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/drivers/staging/lustre/lustre/llite/llite_lib.c
++++ b/drivers/staging/lustre/lustre/llite/llite_lib.c
+@@ -1504,7 +1504,7 @@ int ll_setattr_raw(struct dentry *dentry
+       if (attr->ia_valid & (ATTR_SIZE |
+                             ATTR_ATIME | ATTR_ATIME_SET |
+-                            ATTR_MTIME | ATTR_MTIME_SET))
++                            ATTR_MTIME | ATTR_MTIME_SET)) {
+               /* For truncate and utimes sending attributes to OSTs, setting
+                * mtime/atime to the past will be performed under PW [0:EOF]
+                * extent lock (new_size:EOF for truncate).  It may seem
+@@ -1516,6 +1516,7 @@ int ll_setattr_raw(struct dentry *dentry
+               rc = ll_setattr_ost(inode, attr);
+               if (attr->ia_valid & ATTR_SIZE)
+                       up_write(&lli->lli_trunc_sem);
++      }
+ out:
+       if (op_data) {
+               if (op_data->op_ioepoch) {
diff --git a/queue-3.18/staging-rtl8723au-core-rtw_wlan_util-fix-misleading-indentation.patch b/queue-3.18/staging-rtl8723au-core-rtw_wlan_util-fix-misleading-indentation.patch
new file mode 100644 (file)
index 0000000..1adefc4
--- /dev/null
@@ -0,0 +1,35 @@
+From 8c182ae20791d638c07ff499709c4a1d4697bd7c Mon Sep 17 00:00:00 2001
+From: Luis de Bethencourt <luisbg@osg.samsung.com>
+Date: Wed, 21 Oct 2015 18:32:38 +0100
+Subject: staging: rtl8723au: core: rtw_wlan_util: fix misleading indentation
+
+From: Luis de Bethencourt <luisbg@osg.samsung.com>
+
+commit 8c182ae20791d638c07ff499709c4a1d4697bd7c upstream.
+
+For loop is outside of the else branch of the above conditional statement.
+Fixing misleading indentation.
+
+Fix a smatch warning:
+drivers/staging/rtl8723au/core/rtw_wlan_util.c:528
+WMMOnAssocRsp23a() warn: curly braces intended?
+
+Signed-off-by: Luis de Bethencourt <luisbg@osg.samsung.com>
+Acked-by: Jes Sorensen <Jes.Sorensen@redhat.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/staging/rtl8723au/core/rtw_wlan_util.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/staging/rtl8723au/core/rtw_wlan_util.c
++++ b/drivers/staging/rtl8723au/core/rtw_wlan_util.c
+@@ -525,7 +525,7 @@ void WMMOnAssocRsp23a(struct rtw_adapter
+       else
+               aSifsTime = 16;
+-              for (i = 0; i < 4; i++) {
++      for (i = 0; i < 4; i++) {
+               ACI = (pmlmeinfo->WMM_param.ac_param[i].ACI_AIFSN >> 5) & 0x03;
+               ACM = (pmlmeinfo->WMM_param.ac_param[i].ACI_AIFSN >> 4) & 0x01;
diff --git a/queue-3.18/usb-renesas_usbhs-fix-build-warning-if-64-bit-architecture.patch b/queue-3.18/usb-renesas_usbhs-fix-build-warning-if-64-bit-architecture.patch
new file mode 100644 (file)
index 0000000..a500359
--- /dev/null
@@ -0,0 +1,46 @@
+From 9ae7ce00cc1353155b1914bfc40e8362efef7d1c Mon Sep 17 00:00:00 2001
+From: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
+Date: Tue, 29 Sep 2015 18:21:18 +0900
+Subject: usb: renesas_usbhs: fix build warning if 64-bit architecture
+
+From: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
+
+commit 9ae7ce00cc1353155b1914bfc40e8362efef7d1c upstream.
+
+This patch fixes the following warning if 64-bit architecture environment:
+
+./drivers/usb/renesas_usbhs/common.c:496:25: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
+  dparam->type = of_id ? (u32)of_id->data : 0;
+
+Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>
+Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
+Signed-off-by: Felipe Balbi <balbi@ti.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/renesas_usbhs/common.c |    2 +-
+ include/linux/usb/renesas_usbhs.h  |    2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+--- a/drivers/usb/renesas_usbhs/common.c
++++ b/drivers/usb/renesas_usbhs/common.c
+@@ -466,7 +466,7 @@ static struct renesas_usbhs_platform_inf
+               return NULL;
+       dparam = &info->driver_param;
+-      dparam->type = of_id ? (u32)of_id->data : 0;
++      dparam->type = of_id ? (uintptr_t)of_id->data : 0;
+       if (!of_property_read_u32(dev->of_node, "renesas,buswait", &tmp))
+               dparam->buswait_bwait = tmp;
+       gpio = of_get_named_gpio_flags(dev->of_node, "renesas,enable-gpio", 0,
+--- a/include/linux/usb/renesas_usbhs.h
++++ b/include/linux/usb/renesas_usbhs.h
+@@ -153,7 +153,7 @@ struct renesas_usbhs_driver_param {
+        */
+       int pio_dma_border; /* default is 64byte */
+-      u32 type;
++      uintptr_t type;
+       u32 enable_gpio;
+       /*
diff --git a/queue-3.18/x86-boot-add-config_paravirt_spinlocks-quirk-to-arch-x86-boot-compressed-misc.h.patch b/queue-3.18/x86-boot-add-config_paravirt_spinlocks-quirk-to-arch-x86-boot-compressed-misc.h.patch
new file mode 100644 (file)
index 0000000..0450431
--- /dev/null
@@ -0,0 +1,84 @@
+From 927392d73a97d8d235bb65400e2e3c7f0bec2b6f Mon Sep 17 00:00:00 2001
+From: Ingo Molnar <mingo@kernel.org>
+Date: Fri, 23 Nov 2012 19:19:07 +0100
+Subject: x86/boot: Add CONFIG_PARAVIRT_SPINLOCKS quirk to arch/x86/boot/compressed/misc.h
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Ingo Molnar <mingo@kernel.org>
+
+commit 927392d73a97d8d235bb65400e2e3c7f0bec2b6f upstream.
+
+Linus reported the following new warning on x86 allmodconfig with GCC 5.1:
+
+  > ./arch/x86/include/asm/spinlock.h: In function ‘arch_spin_lock’:
+  > ./arch/x86/include/asm/spinlock.h:119:3: warning: implicit declaration
+  > of function ‘__ticket_lock_spinning’ [-Wimplicit-function-declaration]
+  >    __ticket_lock_spinning(lock, inc.tail);
+  >    ^
+
+This warning triggers because of these hacks in misc.h:
+
+  /*
+   * we have to be careful, because no indirections are allowed here, and
+   * paravirt_ops is a kind of one. As it will only run in baremetal anyway,
+   * we just keep it from happening
+   */
+  #undef CONFIG_PARAVIRT
+  #undef CONFIG_KASAN
+
+But these hacks were not updated when CONFIG_PARAVIRT_SPINLOCKS was added,
+and eventually (with the introduction of queued paravirt spinlocks in
+recent kernels) this created an invalid Kconfig combination and broke
+the build.
+
+So add a CONFIG_PARAVIRT_SPINLOCKS #undef line as well.
+
+Also remove the _ASM_X86_DESC_H quirk: that undocumented quirk
+was originally added ages ago, in:
+
+  099e1377269a ("x86: use ELF format in compressed images.")
+
+and I went back to that kernel (and fixed up the main Makefile
+which didn't build anymore) and checked what failure it
+avoided: it avoided an include file dependencies related
+build failure related to our old x86-platforms code.
+
+That old code is long gone, the header dependencies got cleaned
+up, and the build does not fail anymore with the totality of
+asm/desc.h included - so remove the quirk.
+
+Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
+Cc: "H. Peter Anvin" <hpa@zytor.com>
+Cc: Thomas Gleixner <tglx@linutronix.de>
+Cc: linux-kernel@vger.kernel.org
+Signed-off-by: Ingo Molnar <mingo@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/x86/boot/compressed/misc.h |   11 +++++------
+ 1 file changed, 5 insertions(+), 6 deletions(-)
+
+--- a/arch/x86/boot/compressed/misc.h
++++ b/arch/x86/boot/compressed/misc.h
+@@ -2,14 +2,13 @@
+ #define BOOT_COMPRESSED_MISC_H
+ /*
+- * we have to be careful, because no indirections are allowed here, and
+- * paravirt_ops is a kind of one. As it will only run in baremetal anyway,
+- * we just keep it from happening
++ * Special hack: we have to be careful, because no indirections are allowed here,
++ * and paravirt_ops is a kind of one. As it will only run in baremetal anyway,
++ * we just keep it from happening. (This list needs to be extended when new
++ * paravirt and debugging variants are added.)
+  */
+ #undef CONFIG_PARAVIRT
+-#ifdef CONFIG_X86_32
+-#define _ASM_X86_DESC_H 1
+-#endif
++#undef CONFIG_PARAVIRT_SPINLOCKS
+ #include <linux/linkage.h>
+ #include <linux/screen_info.h>
diff --git a/queue-3.18/xilinx-usb2-gadget-get-rid-of-incredibly-annoying-compile-warning.patch b/queue-3.18/xilinx-usb2-gadget-get-rid-of-incredibly-annoying-compile-warning.patch
new file mode 100644 (file)
index 0000000..2e74f98
--- /dev/null
@@ -0,0 +1,37 @@
+From 7796c11c728ad40ba4151d559a949c002deffb9a Mon Sep 17 00:00:00 2001
+From: Linus Torvalds <torvalds@linux-foundation.org>
+Date: Wed, 11 Feb 2015 10:52:56 -0800
+Subject: xilinx usb2 gadget: get rid of incredibly annoying compile warning
+
+From: Linus Torvalds <torvalds@linux-foundation.org>
+
+commit 7796c11c728ad40ba4151d559a949c002deffb9a upstream.
+
+This one was driving me mad, with several lines of warnings during the
+allmodconfig build for a single bogus pointer cast.  The warning was so
+verbose due to the indirect macro expansion explanation, and the whole
+thing was just for a debug printout.
+
+The bogus pointer-to-integer cast was pointless anyway, so just remove
+it, and use '%p' to show the pointer.
+
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/usb/gadget/udc/udc-xilinx.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/drivers/usb/gadget/udc/udc-xilinx.c
++++ b/drivers/usb/gadget/udc/udc-xilinx.c
+@@ -2132,8 +2132,8 @@ static int xudc_probe(struct platform_de
+       platform_set_drvdata(pdev, udc);
+-      dev_vdbg(&pdev->dev, "%s at 0x%08X mapped to 0x%08X %s\n",
+-               driver_name, (u32)res->start, (u32 __force)udc->addr,
++      dev_vdbg(&pdev->dev, "%s at 0x%08X mapped to %p %s\n",
++               driver_name, (u32)res->start, udc->addr,
+                udc->dma_enabled ? "with DMA" : "without DMA");
+       return 0;