Check for NULL entries before checking the entry order, otherwise NULL
is misinterpreted as a present pte conflict. The 'order' check needs to
happen before the locked check as an unlocked entry at the wrong order
must fallback to lookup the correct order.
Reported-by: Jeff Smits <jeff.smits(a)intel.com>
Reported-by: Doug Nelson <doug.nelson(a)intel.com>
Cc: <stable(a)vger.kernel.org>
Fixes: 23c84eb78375 ("dax: Fix missed wakeup with PMD faults")
Cc: Jan Kara <jack(a)suse.cz>
Cc: Matthew Wilcox (Oracle) <willy(a)infradead.org>
Signed-off-by: Dan Williams <dan.j.williams(a)intel.com>
---
fs/dax.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/fs/dax.c b/fs/dax.c
index a71881e77204..08160011d94c 100644
--- a/fs/dax.c
+++ b/fs/dax.c
@@ -221,10 +221,11 @@ static void *get_unlocked_entry(struct xa_state *xas, unsigned int order)
for (;;) {
entry = xas_find_conflict(xas);
+ if (!entry || WARN_ON_ONCE(!xa_is_value(entry)))
+ return entry;
if (dax_entry_order(entry) < order)
return XA_RETRY_ENTRY;
- if (!entry || WARN_ON_ONCE(!xa_is_value(entry)) ||
- !dax_is_locked(entry))
+ if (!dax_is_locked(entry))
return entry;
wq = dax_entry_waitqueue(xas, entry, &ewait.key);
From: Hans Verkuil <hans.verkuil(a)cisco.com>
onetland: cherry-picked from mainline: 9cfd2753f8f3
Several CEC functions are actually specific for use with receivers,
i.e. they should be part of the V4L2 subsystem, not CEC.
These functions deal with validating and modifying EDIDs for (HDMI)
receivers, and they do not actually have anything to do with the CEC
subsystem and whether or not CEC is enabled. The problem was that if
the CEC_CORE config option was not set, then these functions would
become stubs, but that's not right: they should always be valid.
So replace the cec_ prefix by v4l2_ and move them to v4l2-dv-timings.c.
Update all drivers that call these accordingly.
Signed-off-by: Hans Verkuil <hans.verkuil(a)cisco.com>
Reported-by: Lars-Peter Clausen <lars(a)metafoo.de>
Cc: <stable(a)vger.kernel.org> # for v4.17 and up
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung(a)kernel.org>
diff --git a/drivers/media/i2c/adv7604.c b/drivers/media/i2c/adv7604.c
index 7b1935ab03c8..9257ff49ae20 100644
--- a/drivers/media/i2c/adv7604.c
+++ b/drivers/media/i2c/adv7604.c
@@ -2291,8 +2291,8 @@ static int adv76xx_set_edid(struct v4l2_subdev *sd, struct v4l2_edid *edid)
edid->blocks = 2;
return -E2BIG;
}
- pa = cec_get_edid_phys_addr(edid->edid, edid->blocks * 128, &spa_loc);
- err = cec_phys_addr_validate(pa, &pa, NULL);
+ pa = v4l2_get_edid_phys_addr(edid->edid, edid->blocks * 128, &spa_loc);
+ err = v4l2_phys_addr_validate(pa, &pa, NULL);
if (err)
return err;
diff --git a/drivers/media/i2c/adv7842.c b/drivers/media/i2c/adv7842.c
index 8c2a52e280af..2cd33925bdc4 100644
--- a/drivers/media/i2c/adv7842.c
+++ b/drivers/media/i2c/adv7842.c
@@ -802,8 +802,8 @@ static int edid_write_hdmi_segment(struct v4l2_subdev *sd, u8 port)
if (!state->hdmi_edid.present)
return 0;
- pa = cec_get_edid_phys_addr(edid, 256, &spa_loc);
- err = cec_phys_addr_validate(pa, &pa, NULL);
+ pa = v4l2_get_edid_phys_addr(edid, 256, &spa_loc);
+ err = v4l2_phys_addr_validate(pa, &pa, NULL);
if (err)
return err;
diff --git a/drivers/media/platform/vivid/vivid-vid-cap.c b/drivers/media/platform/vivid/vivid-vid-cap.c
index 82a6315353f7..ad356aab1c19 100644
--- a/drivers/media/platform/vivid/vivid-vid-cap.c
+++ b/drivers/media/platform/vivid/vivid-vid-cap.c
@@ -1813,7 +1813,7 @@ int vidioc_s_edid(struct file *file, void *_fh,
return -E2BIG;
}
phys_addr = cec_get_edid_phys_addr(edid->edid, edid->blocks * 128, NULL);
- ret = cec_phys_addr_validate(phys_addr, &phys_addr, NULL);
+ ret = v4l2_phys_addr_validate(phys_addr, &phys_addr, NULL);
if (ret)
return ret;
@@ -1829,7 +1829,7 @@ int vidioc_s_edid(struct file *file, void *_fh,
for (i = 0; i < MAX_OUTPUTS && dev->cec_tx_adap[i]; i++)
cec_s_phys_addr(dev->cec_tx_adap[i],
- cec_phys_addr_for_input(phys_addr, i + 1),
+ v4l2_phys_addr_for_input(phys_addr, i + 1),
false);
return 0;
}
diff --git a/drivers/media/platform/vivid/vivid-vid-common.c b/drivers/media/platform/vivid/vivid-vid-common.c
index b701a8ebd424..b35026f0a5a1 100644
--- a/drivers/media/platform/vivid/vivid-vid-common.c
+++ b/drivers/media/platform/vivid/vivid-vid-common.c
@@ -909,6 +909,6 @@ int vidioc_g_edid(struct file *file, void *_fh,
if (edid->start_block + edid->blocks > dev->edid_blocks)
edid->blocks = dev->edid_blocks - edid->start_block;
memcpy(edid->edid, dev->edid, edid->blocks * 128);
- cec_set_edid_phys_addr(edid->edid, edid->blocks * 128, adap->phys_addr);
+ v4l2_set_edid_phys_addr(edid->edid, edid->blocks * 128, adap->phys_addr);
return 0;
}
diff --git a/drivers/media/v4l2-core/v4l2-dv-timings.c b/drivers/media/v4l2-core/v4l2-dv-timings.c
index eaec17dea161..9bc86899d074 100644
--- a/drivers/media/v4l2-core/v4l2-dv-timings.c
+++ b/drivers/media/v4l2-core/v4l2-dv-timings.c
@@ -27,6 +27,7 @@
#include <media/v4l2-dv-timings.h>
#include <linux/math64.h>
#include <linux/hdmi.h>
+#include <media/cec.h>
MODULE_AUTHOR("Hans Verkuil");
MODULE_DESCRIPTION("V4L2 DV Timings Helper Functions");
@@ -900,3 +901,153 @@ v4l2_hdmi_rx_colorimetry(const struct hdmi_avi_infoframe *avi,
return c;
}
EXPORT_SYMBOL_GPL(v4l2_hdmi_rx_colorimetry);
+
+/**
+ * v4l2_get_edid_phys_addr() - find and return the physical address
+ *
+ * @edid: pointer to the EDID data
+ * @size: size in bytes of the EDID data
+ * @offset: If not %NULL then the location of the physical address
+ * bytes in the EDID will be returned here. This is set to 0
+ * if there is no physical address found.
+ *
+ * Return: the physical address or CEC_PHYS_ADDR_INVALID if there is none.
+ */
+u16 v4l2_get_edid_phys_addr(const u8 *edid, unsigned int size,
+ unsigned int *offset)
+{
+ unsigned int loc = cec_get_edid_spa_location(edid, size);
+
+ if (offset)
+ *offset = loc;
+ if (loc == 0)
+ return CEC_PHYS_ADDR_INVALID;
+ return (edid[loc] << 8) | edid[loc + 1];
+}
+EXPORT_SYMBOL_GPL(v4l2_get_edid_phys_addr);
+
+/**
+ * v4l2_set_edid_phys_addr() - find and set the physical address
+ *
+ * @edid: pointer to the EDID data
+ * @size: size in bytes of the EDID data
+ * @phys_addr: the new physical address
+ *
+ * This function finds the location of the physical address in the EDID
+ * and fills in the given physical address and updates the checksum
+ * at the end of the EDID block. It does nothing if the EDID doesn't
+ * contain a physical address.
+ */
+void v4l2_set_edid_phys_addr(u8 *edid, unsigned int size, u16 phys_addr)
+{
+ unsigned int loc = cec_get_edid_spa_location(edid, size);
+ u8 sum = 0;
+ unsigned int i;
+
+ if (loc == 0)
+ return;
+ edid[loc] = phys_addr >> 8;
+ edid[loc + 1] = phys_addr & 0xff;
+ loc &= ~0x7f;
+
+ /* update the checksum */
+ for (i = loc; i < loc + 127; i++)
+ sum += edid[i];
+ edid[i] = 256 - sum;
+}
+EXPORT_SYMBOL_GPL(v4l2_set_edid_phys_addr);
+
+/**
+ * v4l2_phys_addr_for_input() - calculate the PA for an input
+ *
+ * @phys_addr: the physical address of the parent
+ * @input: the number of the input port, must be between 1 and 15
+ *
+ * This function calculates a new physical address based on the input
+ * port number. For example:
+ *
+ * PA = 0.0.0.0 and input = 2 becomes 2.0.0.0
+ *
+ * PA = 3.0.0.0 and input = 1 becomes 3.1.0.0
+ *
+ * PA = 3.2.1.0 and input = 5 becomes 3.2.1.5
+ *
+ * PA = 3.2.1.3 and input = 5 becomes f.f.f.f since it maxed out the depth.
+ *
+ * Return: the new physical address or CEC_PHYS_ADDR_INVALID.
+ */
+u16 v4l2_phys_addr_for_input(u16 phys_addr, u8 input)
+{
+ /* Check if input is sane */
+ if (WARN_ON(input == 0 || input > 0xf))
+ return CEC_PHYS_ADDR_INVALID;
+
+ if (phys_addr == 0)
+ return input << 12;
+
+ if ((phys_addr & 0x0fff) == 0)
+ return phys_addr | (input << 8);
+
+ if ((phys_addr & 0x00ff) == 0)
+ return phys_addr | (input << 4);
+
+ if ((phys_addr & 0x000f) == 0)
+ return phys_addr | input;
+
+ /*
+ * All nibbles are used so no valid physical addresses can be assigned
+ * to the input.
+ */
+ return CEC_PHYS_ADDR_INVALID;
+}
+EXPORT_SYMBOL_GPL(v4l2_phys_addr_for_input);
+
+/**
+ * v4l2_phys_addr_validate() - validate a physical address from an EDID
+ *
+ * @phys_addr: the physical address to validate
+ * @parent: if not %NULL, then this is filled with the parents PA.
+ * @port: if not %NULL, then this is filled with the input port.
+ *
+ * This validates a physical address as read from an EDID. If the
+ * PA is invalid (such as 1.0.1.0 since '0' is only allowed at the end),
+ * then it will return -EINVAL.
+ *
+ * The parent PA is passed into %parent and the input port is passed into
+ * %port. For example:
+ *
+ * PA = 0.0.0.0: has parent 0.0.0.0 and input port 0.
+ *
+ * PA = 1.0.0.0: has parent 0.0.0.0 and input port 1.
+ *
+ * PA = 3.2.0.0: has parent 3.0.0.0 and input port 2.
+ *
+ * PA = f.f.f.f: has parent f.f.f.f and input port 0.
+ *
+ * Return: 0 if the PA is valid, -EINVAL if not.
+ */
+int v4l2_phys_addr_validate(u16 phys_addr, u16 *parent, u16 *port)
+{
+ int i;
+
+ if (parent)
+ *parent = phys_addr;
+ if (port)
+ *port = 0;
+ if (phys_addr == CEC_PHYS_ADDR_INVALID)
+ return 0;
+ for (i = 0; i < 16; i += 4)
+ if (phys_addr & (0xf << i))
+ break;
+ if (i == 16)
+ return 0;
+ if (parent)
+ *parent = phys_addr & (0xfff0 << i);
+ if (port)
+ *port = (phys_addr >> i) & 0xf;
+ for (i += 4; i < 16; i += 4)
+ if ((phys_addr & (0xf << i)) == 0)
+ return -EINVAL;
+ return 0;
+}
+EXPORT_SYMBOL_GPL(v4l2_phys_addr_validate);
diff --git a/include/media/cec.h b/include/media/cec.h
index ae209e542d11..27b95bdaa4a9 100644
--- a/include/media/cec.h
+++ b/include/media/cec.h
@@ -336,67 +336,6 @@ void cec_queue_pin_hpd_event(struct cec_adapter *adap, bool is_high, ktime_t ts)
u16 cec_get_edid_phys_addr(const u8 *edid, unsigned int size,
unsigned int *offset);
-/**
- * cec_set_edid_phys_addr() - find and set the physical address
- *
- * @edid: pointer to the EDID data
- * @size: size in bytes of the EDID data
- * @phys_addr: the new physical address
- *
- * This function finds the location of the physical address in the EDID
- * and fills in the given physical address and updates the checksum
- * at the end of the EDID block. It does nothing if the EDID doesn't
- * contain a physical address.
- */
-void cec_set_edid_phys_addr(u8 *edid, unsigned int size, u16 phys_addr);
-
-/**
- * cec_phys_addr_for_input() - calculate the PA for an input
- *
- * @phys_addr: the physical address of the parent
- * @input: the number of the input port, must be between 1 and 15
- *
- * This function calculates a new physical address based on the input
- * port number. For example:
- *
- * PA = 0.0.0.0 and input = 2 becomes 2.0.0.0
- *
- * PA = 3.0.0.0 and input = 1 becomes 3.1.0.0
- *
- * PA = 3.2.1.0 and input = 5 becomes 3.2.1.5
- *
- * PA = 3.2.1.3 and input = 5 becomes f.f.f.f since it maxed out the depth.
- *
- * Return: the new physical address or CEC_PHYS_ADDR_INVALID.
- */
-u16 cec_phys_addr_for_input(u16 phys_addr, u8 input);
-
-/**
- * cec_phys_addr_validate() - validate a physical address from an EDID
- *
- * @phys_addr: the physical address to validate
- * @parent: if not %NULL, then this is filled with the parents PA.
- * @port: if not %NULL, then this is filled with the input port.
- *
- * This validates a physical address as read from an EDID. If the
- * PA is invalid (such as 1.0.1.0 since '0' is only allowed at the end),
- * then it will return -EINVAL.
- *
- * The parent PA is passed into %parent and the input port is passed into
- * %port. For example:
- *
- * PA = 0.0.0.0: has parent 0.0.0.0 and input port 0.
- *
- * PA = 1.0.0.0: has parent 0.0.0.0 and input port 1.
- *
- * PA = 3.2.0.0: has parent 3.0.0.0 and input port 2.
- *
- * PA = f.f.f.f: has parent f.f.f.f and input port 0.
- *
- * Return: 0 if the PA is valid, -EINVAL if not.
- */
-int cec_phys_addr_validate(u16 phys_addr, u16 *parent, u16 *port);
-
#else
static inline int cec_register_adapter(struct cec_adapter *adap,
@@ -431,25 +370,6 @@ static inline u16 cec_get_edid_phys_addr(const u8 *edid, unsigned int size,
return CEC_PHYS_ADDR_INVALID;
}
-static inline void cec_set_edid_phys_addr(u8 *edid, unsigned int size,
- u16 phys_addr)
-{
-}
-
-static inline u16 cec_phys_addr_for_input(u16 phys_addr, u8 input)
-{
- return CEC_PHYS_ADDR_INVALID;
-}
-
-static inline int cec_phys_addr_validate(u16 phys_addr, u16 *parent, u16 *port)
-{
- if (parent)
- *parent = phys_addr;
- if (port)
- *port = 0;
- return 0;
-}
-
#endif
/**
diff --git a/include/media/v4l2-dv-timings.h b/include/media/v4l2-dv-timings.h
index 5586e8d6c5ed..d987c469136e 100644
--- a/include/media/v4l2-dv-timings.h
+++ b/include/media/v4l2-dv-timings.h
@@ -227,4 +227,10 @@ v4l2_hdmi_rx_colorimetry(const struct hdmi_avi_infoframe *avi,
const struct hdmi_vendor_infoframe *hdmi,
unsigned int height);
+u16 v4l2_get_edid_phys_addr(const u8 *edid, unsigned int size,
+ unsigned int *offset);
+void v4l2_set_edid_phys_addr(u8 *edid, unsigned int size, u16 phys_addr);
+u16 v4l2_phys_addr_for_input(u16 phys_addr, u8 input);
+int v4l2_phys_addr_validate(u16 phys_addr, u16 *parent, u16 *port);
+
#endif
--
2.20.1
From: Hans Verkuil <hans.verkuil(a)cisco.com>
onetland: cherry-picked from mainline: e81bff39489a
The cec_phys_addr_validate() function will be moved to V4L2,
so use a simplified variant of that function in cec-api.c.
cec now no longer calls cec_phys_addr_validate() and it can
be safely moved to V4L2.
Signed-off-by: Hans Verkuil <hans.verkuil(a)cisco.com>
Cc: <stable(a)vger.kernel.org> # for v4.17 and up
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung(a)kernel.org>
diff --git a/drivers/media/cec/cec-api.c b/drivers/media/cec/cec-api.c
index 4ba82938fecf..8436775991d6 100644
--- a/drivers/media/cec/cec-api.c
+++ b/drivers/media/cec/cec-api.c
@@ -112,6 +112,23 @@ static long cec_adap_g_phys_addr(struct cec_adapter *adap,
return 0;
}
+static int cec_validate_phys_addr(u16 phys_addr)
+{
+ int i;
+
+ if (phys_addr == CEC_PHYS_ADDR_INVALID)
+ return 0;
+ for (i = 0; i < 16; i += 4)
+ if (phys_addr & (0xf << i))
+ break;
+ if (i == 16)
+ return 0;
+ for (i += 4; i < 16; i += 4)
+ if ((phys_addr & (0xf << i)) == 0)
+ return -EINVAL;
+ return 0;
+}
+
static long cec_adap_s_phys_addr(struct cec_adapter *adap, struct cec_fh *fh,
bool block, __u16 __user *parg)
{
@@ -123,7 +140,7 @@ static long cec_adap_s_phys_addr(struct cec_adapter *adap, struct cec_fh *fh,
if (copy_from_user(&phys_addr, parg, sizeof(phys_addr)))
return -EFAULT;
- err = cec_phys_addr_validate(phys_addr, NULL, NULL);
+ err = cec_validate_phys_addr(phys_addr);
if (err)
return err;
mutex_lock(&adap->lock);
--
2.20.1
From: Hans Verkuil <hverkuil(a)xs4all.nl>
onetland: cherry-picked from cust/cisco/r28n-cisco: def9fd009919
If the wait for completion was interrupted, then make sure to cancel
any delayed work.
This can only happen if a transmit is waiting for a reply, and you press
Ctrl-C or reboot/poweroff or something like that which interrupts the
thread waiting for the reply and then proceeds to delete the CEC message.
Since the delayed work wasn't canceled, once it would trigger it referred
to stale data and resulted in a kernel oops.
Signed-off-by: Hans Verkuil <hans.verkuil(a)cisco.com>
Fixes: 05f525b833e8 ("cec: add new tx/rx status bits to detect aborts/timeouts")
Cc: <stable(a)vger.kernel.org> # for v4.18 and up
diff --git a/drivers/media/cec/cec-adap.c b/drivers/media/cec/cec-adap.c
index 0ab3a2a73b23..c00ab539ab90 100644
--- a/drivers/media/cec/cec-adap.c
+++ b/drivers/media/cec/cec-adap.c
@@ -822,6 +822,8 @@ int cec_transmit_msg_fh(struct cec_adapter *adap, struct cec_msg *msg,
*/
mutex_unlock(&adap->lock);
wait_for_completion_killable(&data->c);
+ if (!data->completed)
+ cancel_delayed_work_sync(&data->work);
mutex_lock(&adap->lock);
/* Cancel the transmit if it was interrupted */
--
2.20.1
Commit 03c4749dd6c7 ("gpio / ACPI: Drop unnecessary ACPI GPIO to Linux
GPIO translation") has made the cherryview gpio numbers sparse, to get
a 1:1 mapping between ACPI pin numbers and gpio numbers in Linux.
This has greatly simplified things, but the code setting the
irq_valid_mask was not updated for this, so the valid mask is still in
the old "compressed" numbering with the gaps in the pin numbers skipped,
which is wrong as irq_valid_mask needs to be expressed in gpio numbers.
This results in the following error on devices using pin 24 (0x0018) on
the north GPIO controller as an ACPI event source:
[ 0.422452] cherryview-pinctrl INT33FF:01: Failed to translate GPIO to IRQ
This has been reported (by email) to be happening on a Caterpillar CAT T20
tablet and I've reproduced this myself on a Medion Akoya e2215t 2-in-1.
This commit uses the pin number instead of the compressed index into
community->pins to clear the correct bits in irq_valid_mask for GPIOs
using GPEs for interrupts, fixing these errors and in case of the
Medion Akoya e2215t also fixing the LID switch not working.
Cc: stable(a)vger.kernel.org
Cc: Mika Westerberg <mika.westerberg(a)linux.intel.com>
Fixes: 03c4749dd6c7 ("gpio / ACPI: Drop unnecessary ACPI GPIO to Linux GPIO translation")
Signed-off-by: Hans de Goede <hdegoede(a)redhat.com>
---
drivers/pinctrl/intel/pinctrl-cherryview.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/pinctrl/intel/pinctrl-cherryview.c b/drivers/pinctrl/intel/pinctrl-cherryview.c
index aae51c507f59..02ff5e8b0510 100644
--- a/drivers/pinctrl/intel/pinctrl-cherryview.c
+++ b/drivers/pinctrl/intel/pinctrl-cherryview.c
@@ -1563,7 +1563,7 @@ static void chv_init_irq_valid_mask(struct gpio_chip *chip,
intsel >>= CHV_PADCTRL0_INTSEL_SHIFT;
if (intsel >= community->nirqs)
- clear_bit(i, valid_mask);
+ clear_bit(desc->number, valid_mask);
}
}
--
2.23.0
Hello,
We ran automated tests on a patchset that was proposed for merging into this
kernel tree. The patches were applied to:
Kernel repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: 365dab61f74e - Linux 5.3.7
The results of these automated tests are provided below.
Overall result: PASSED
Merge: OK
Compile: OK
Tests: OK
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/238409
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Merge testing
-------------
We cloned this repository and checked out the following commit:
Repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: 365dab61f74e - Linux 5.3.7
We grabbed the f1ba1badc8f7 commit of the stable queue repository.
We then merged the patchset with `git am`:
drm-free-the-writeback_job-when-it-with-an-empty-fb.patch
drm-clear-the-fence-pointer-when-writeback-job-signa.patch
clk-ti-dra7-fix-mcasp8-clock-bits.patch
arm-dts-fix-wrong-clocks-for-dra7-mcasp.patch
nvme-pci-fix-a-race-in-controller-removal.patch
scsi-ufs-skip-shutdown-if-hba-is-not-powered.patch
scsi-megaraid-disable-device-when-probe-failed-after.patch
scsi-qla2xxx-silence-fwdump-template-message.patch
scsi-qla2xxx-fix-unbound-sleep-in-fcport-delete-path.patch
scsi-qla2xxx-fix-stale-mem-access-on-driver-unload.patch
scsi-qla2xxx-fix-n2n-link-reset.patch
scsi-qla2xxx-fix-n2n-link-up-fail.patch
arm-dts-fix-gpio0-flags-for-am335x-icev2.patch
arm-omap2-fix-missing-reset-done-flag-for-am3-and-am.patch
arm-omap2-add-missing-lcdc-midlemode-for-am335x.patch
arm-omap2-fix-warnings-with-broken-omap2_set_init_vo.patch
nvme-tcp-fix-wrong-stop-condition-in-io_work.patch
nvme-pci-save-pci-state-before-putting-drive-into-de.patch
nvme-fix-an-error-code-in-nvme_init_subsystem.patch
nvme-rdma-fix-max_hw_sectors-calculation.patch
added-quirks-for-adata-xpg-sx8200-pro-512gb.patch
nvme-add-quirk-for-kingston-nvme-ssd-running-fw-e8fk.patch
nvme-allow-64-bit-results-in-passthru-commands.patch
drm-komeda-prevent-memory-leak-in-komeda_wb_connecto.patch
nvme-rdma-fix-possible-use-after-free-in-connect-tim.patch
blk-mq-honor-io-scheduler-for-multiqueue-devices.patch
ieee802154-ca8210-prevent-memory-leak.patch
arm-dts-am4372-set-memory-bandwidth-limit-for-dispc.patch
net-dsa-qca8k-use-up-to-7-ports-for-all-operations.patch
mips-dts-ar9331-fix-interrupt-controller-size.patch
xen-efi-set-nonblocking-callbacks.patch
loop-change-queue-block-size-to-match-when-using-dio.patch
nl80211-fix-null-pointer-dereference.patch
mac80211-fix-txq-null-pointer-dereference.patch
netfilter-nft_connlimit-disable-bh-on-garbage-collec.patch
net-mscc-ocelot-add-missing-of_node_put-after-callin.patch
net-dsa-rtl8366rb-add-missing-of_node_put-after-call.patch
net-stmmac-xgmac-not-all-unicast-addresses-may-be-av.patch
net-stmmac-dwmac4-always-update-the-mac-hash-filter.patch
net-stmmac-correctly-take-timestamp-for-ptpv2.patch
net-stmmac-do-not-stop-phy-if-wol-is-enabled.patch
net-ag71xx-fix-mdio-subnode-support.patch
risc-v-clear-load-reservations-while-restoring-hart-.patch
riscv-fix-memblock-reservation-for-device-tree-blob.patch
drm-amdgpu-fix-multiple-memory-leaks-in-acp_hw_init.patch
drm-amd-display-memory-leak.patch
mips-loongson-fix-the-link-time-qualifier-of-serial_.patch
net-hisilicon-fix-usage-of-uninitialized-variable-in.patch
net-stmmac-avoid-deadlock-on-suspend-resume.patch
selftests-kvm-fix-libkvm-build-error.patch
lib-textsearch-fix-escapes-in-example-code.patch
s390-mm-fix-wunused-but-set-variable-warnings.patch
r8152-set-macpassthru-in-reset_resume-callback.patch
net-phy-allow-for-reset-line-to-be-tied-to-a-sleepy-.patch
net-phy-fix-write-to-mii-ctrl1000-register.patch
namespace-fix-namespace.pl-script-to-support-relativ.patch
convert-filldir-64-from-__put_user-to-unsafe_put_use.patch
elf-don-t-use-map_fixed_noreplace-for-elf-executable.patch
make-filldir-64-verify-the-directory-entry-filename-.patch
uaccess-implement-a-proper-unsafe_copy_to_user-and-s.patch
filldir-64-remove-warn_on_once-for-bad-directory-ent.patch
net_sched-fix-backward-compatibility-for-tca_kind.patch
net_sched-fix-backward-compatibility-for-tca_act_kin.patch
libata-ahci-fix-pcs-quirk-application.patch
md-raid0-fix-warning-message-for-parameter-default_l.patch
revert-drm-radeon-fix-eeh-during-kexec.patch
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
✅ storage: SCSI VPD
✅ stress: stress-ng
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ storage: dm/common
ppc64le:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ storage: dm/common
Host 2:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
x86_64:
Host 1:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ pciutils: sanity smoke test
✅ Usex - version 1.9-29
✅ storage: SCSI VPD
✅ stress: stress-ng
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ storage: dm/common
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
Testing timeout
---------------
We aim to provide a report within reasonable timeframe. Tests that haven't
finished running are marked with ⏱. Reports for non-upstream kernels have
a Beaker recipe linked to next to each host.
In do_hres(), we currently use whether the return value of __arch_get_
hw_counter() is negtive to indicate fallback, but this is not a good
idea. Because:
1, ARM64 returns ULL_MAX but MIPS returns 0 when clock_mode is invalid;
2, For a 64bit counter, a "negtive" value of counter is actually valid.
To solve this problem, we use U64_MAX as the only "invalid" return
value -- this is still not fully correct, but has no problem in most
cases. Moreover, all vdso time-related functions should rely on the
return value of __arch_use_vsyscall(), because update_vdso_data() and
update_vsyscall_tz() also rely on it. So, in the core functions of
__cvdso_gettimeofday(), __cvdso_clock_gettime() and __cvdso_clock_
getres(), if __arch_use_vsyscall() returns false, we use the fallback
functions directly.
Fixes: 00b26474c2f1613d7ab894c5 ("lib/vdso: Provide generic VDSO implementation")
Cc: stable(a)vger.kernel.org
Cc: Arnd Bergmann <arnd(a)arndb.de>
Cc: Paul Burton <paul.burton(a)mips.com>
Cc: linux-mips(a)vger.kernel.org
Cc: linux-arm-kernel(a)lists.infradead.org
Signed-off-by: Huacai Chen <chenhc(a)lemote.com>
---
arch/arm64/include/asm/vdso/vsyscall.h | 2 +-
arch/mips/include/asm/vdso/vsyscall.h | 2 +-
include/asm-generic/vdso/vsyscall.h | 2 +-
lib/vdso/gettimeofday.c | 12 +++++++++++-
4 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/arch/arm64/include/asm/vdso/vsyscall.h b/arch/arm64/include/asm/vdso/vsyscall.h
index 0c731bf..406e6de 100644
--- a/arch/arm64/include/asm/vdso/vsyscall.h
+++ b/arch/arm64/include/asm/vdso/vsyscall.h
@@ -31,7 +31,7 @@ int __arm64_get_clock_mode(struct timekeeper *tk)
#define __arch_get_clock_mode __arm64_get_clock_mode
static __always_inline
-int __arm64_use_vsyscall(struct vdso_data *vdata)
+int __arm64_use_vsyscall(const struct vdso_data *vdata)
{
return !vdata[CS_HRES_COARSE].clock_mode;
}
diff --git a/arch/mips/include/asm/vdso/vsyscall.h b/arch/mips/include/asm/vdso/vsyscall.h
index 1953147..8b10dd7 100644
--- a/arch/mips/include/asm/vdso/vsyscall.h
+++ b/arch/mips/include/asm/vdso/vsyscall.h
@@ -29,7 +29,7 @@ int __mips_get_clock_mode(struct timekeeper *tk)
#define __arch_get_clock_mode __mips_get_clock_mode
static __always_inline
-int __mips_use_vsyscall(struct vdso_data *vdata)
+int __mips_use_vsyscall(const struct vdso_data *vdata)
{
return (vdata[CS_HRES_COARSE].clock_mode != VDSO_CLOCK_NONE);
}
diff --git a/include/asm-generic/vdso/vsyscall.h b/include/asm-generic/vdso/vsyscall.h
index e94b1978..ac05a625 100644
--- a/include/asm-generic/vdso/vsyscall.h
+++ b/include/asm-generic/vdso/vsyscall.h
@@ -26,7 +26,7 @@ static __always_inline int __arch_get_clock_mode(struct timekeeper *tk)
#endif /* __arch_get_clock_mode */
#ifndef __arch_use_vsyscall
-static __always_inline int __arch_use_vsyscall(struct vdso_data *vdata)
+static __always_inline int __arch_use_vsyscall(const struct vdso_data *vdata)
{
return 1;
}
diff --git a/lib/vdso/gettimeofday.c b/lib/vdso/gettimeofday.c
index e630e7f..4ad062e 100644
--- a/lib/vdso/gettimeofday.c
+++ b/lib/vdso/gettimeofday.c
@@ -9,6 +9,7 @@
#include <linux/hrtimer_defs.h>
#include <vdso/datapage.h>
#include <vdso/helpers.h>
+#include <vdso/vsyscall.h>
/*
* The generic vDSO implementation requires that gettimeofday.h
@@ -50,7 +51,7 @@ static int do_hres(const struct vdso_data *vd, clockid_t clk,
cycles = __arch_get_hw_counter(vd->clock_mode);
ns = vdso_ts->nsec;
last = vd->cycle_last;
- if (unlikely((s64)cycles < 0))
+ if (unlikely(cycles == U64_MAX))
return -1;
ns += vdso_calc_delta(cycles, last, vd->mask, vd->mult);
@@ -91,6 +92,9 @@ __cvdso_clock_gettime_common(clockid_t clock, struct __kernel_timespec *ts)
if (unlikely((u32) clock >= MAX_CLOCKS))
return -1;
+ if (!__arch_use_vsyscall(vd))
+ return -1;
+
/*
* Convert the clockid to a bitmask and use it to check which
* clocks are handled in the VDSO directly.
@@ -145,6 +149,9 @@ __cvdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz)
{
const struct vdso_data *vd = __arch_get_vdso_data();
+ if (!__arch_use_vsyscall(vd))
+ return gettimeofday_fallback(tv, tz);
+
if (likely(tv != NULL)) {
struct __kernel_timespec ts;
@@ -189,6 +196,9 @@ int __cvdso_clock_getres_common(clockid_t clock, struct __kernel_timespec *res)
if (unlikely((u32) clock >= MAX_CLOCKS))
return -1;
+ if (!__arch_use_vsyscall(vd))
+ return -1;
+
hrtimer_res = READ_ONCE(vd[CS_HRES_COARSE].hrtimer_res);
/*
* Convert the clockid to a bitmask and use it to check which
--
2.7.0
From: David Hildenbrand <david(a)redhat.com>
Subject: mm/memory_hotplug: don't access uninitialized memmaps in shrink_pgdat_span()
We might use the nid of memmaps that were never initialized. For example,
if the memmap was poisoned, we will crash the kernel in pfn_to_nid() right
now. Let's use the calculated boundaries of the separate zones instead.
This now also avoids having to iterate over a whole bunch of subsections
again, after shrinking one zone.
Before commit d0dc12e86b31 ("mm/memory_hotplug: optimize memory hotplug"),
the memmap was initialized to 0 and the node was set to the right value.
After that commit, the node might be garbage.
We'll have to fix shrink_zone_span() next.
Link: http://lkml.kernel.org/r/20191006085646.5768-4-david@redhat.com
Fixes: f1dd2cd13c4b ("mm, memory_hotplug: do not associate hotadded memory to zones until online") [d0dc12e86b319]
Signed-off-by: David Hildenbrand <david(a)redhat.com>
Reported-by: Aneesh Kumar K.V <aneesh.kumar(a)linux.ibm.com>
Cc: Oscar Salvador <osalvador(a)suse.de>
Cc: David Hildenbrand <david(a)redhat.com>
Cc: Michal Hocko <mhocko(a)suse.com>
Cc: Pavel Tatashin <pasha.tatashin(a)soleen.com>
Cc: Dan Williams <dan.j.williams(a)intel.com>
Cc: Wei Yang <richardw.yang(a)linux.intel.com>
Cc: Alexander Duyck <alexander.h.duyck(a)linux.intel.com>
Cc: Alexander Potapenko <glider(a)google.com>
Cc: Andy Lutomirski <luto(a)kernel.org>
Cc: Anshuman Khandual <anshuman.khandual(a)arm.com>
Cc: Benjamin Herrenschmidt <benh(a)kernel.crashing.org>
Cc: Borislav Petkov <bp(a)alien8.de>
Cc: Catalin Marinas <catalin.marinas(a)arm.com>
Cc: Christian Borntraeger <borntraeger(a)de.ibm.com>
Cc: Christophe Leroy <christophe.leroy(a)c-s.fr>
Cc: Damian Tometzki <damian.tometzki(a)gmail.com>
Cc: Dave Hansen <dave.hansen(a)linux.intel.com>
Cc: Fenghua Yu <fenghua.yu(a)intel.com>
Cc: Gerald Schaefer <gerald.schaefer(a)de.ibm.com>
Cc: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Cc: Halil Pasic <pasic(a)linux.ibm.com>
Cc: Heiko Carstens <heiko.carstens(a)de.ibm.com>
Cc: "H. Peter Anvin" <hpa(a)zytor.com>
Cc: Ingo Molnar <mingo(a)redhat.com>
Cc: Ira Weiny <ira.weiny(a)intel.com>
Cc: Jason Gunthorpe <jgg(a)ziepe.ca>
Cc: Jun Yao <yaojun8558363(a)gmail.com>
Cc: Logan Gunthorpe <logang(a)deltatee.com>
Cc: Mark Rutland <mark.rutland(a)arm.com>
Cc: Masahiro Yamada <yamada.masahiro(a)socionext.com>
Cc: "Matthew Wilcox (Oracle)" <willy(a)infradead.org>
Cc: Mel Gorman <mgorman(a)techsingularity.net>
Cc: Michael Ellerman <mpe(a)ellerman.id.au>
Cc: Mike Rapoport <rppt(a)linux.ibm.com>
Cc: Pankaj Gupta <pagupta(a)redhat.com>
Cc: Paul Mackerras <paulus(a)samba.org>
Cc: Pavel Tatashin <pavel.tatashin(a)microsoft.com>
Cc: Peter Zijlstra <peterz(a)infradead.org>
Cc: Qian Cai <cai(a)lca.pw>
Cc: Rich Felker <dalias(a)libc.org>
Cc: Robin Murphy <robin.murphy(a)arm.com>
Cc: Steve Capper <steve.capper(a)arm.com>
Cc: Thomas Gleixner <tglx(a)linutronix.de>
Cc: Tom Lendacky <thomas.lendacky(a)amd.com>
Cc: Tony Luck <tony.luck(a)intel.com>
Cc: Vasily Gorbik <gor(a)linux.ibm.com>
Cc: Vlastimil Babka <vbabka(a)suse.cz>
Cc: Wei Yang <richard.weiyang(a)gmail.com>
Cc: Will Deacon <will(a)kernel.org>
Cc: Yoshinori Sato <ysato(a)users.sourceforge.jp>
Cc: Yu Zhao <yuzhao(a)google.com>
Cc: <stable(a)vger.kernel.org> [4.13+]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/memory_hotplug.c | 74 +++++++++---------------------------------
1 file changed, 16 insertions(+), 58 deletions(-)
--- a/mm/memory_hotplug.c~mm-memory_hotplug-dont-access-uninitialized-memmaps-in-shrink_pgdat_span
+++ a/mm/memory_hotplug.c
@@ -436,67 +436,25 @@ static void shrink_zone_span(struct zone
zone_span_writeunlock(zone);
}
-static void shrink_pgdat_span(struct pglist_data *pgdat,
- unsigned long start_pfn, unsigned long end_pfn)
+static void update_pgdat_span(struct pglist_data *pgdat)
{
- unsigned long pgdat_start_pfn = pgdat->node_start_pfn;
- unsigned long p = pgdat_end_pfn(pgdat); /* pgdat_end_pfn namespace clash */
- unsigned long pgdat_end_pfn = p;
- unsigned long pfn;
- int nid = pgdat->node_id;
-
- if (pgdat_start_pfn == start_pfn) {
- /*
- * If the section is smallest section in the pgdat, it need
- * shrink pgdat->node_start_pfn and pgdat->node_spanned_pages.
- * In this case, we find second smallest valid mem_section
- * for shrinking zone.
- */
- pfn = find_smallest_section_pfn(nid, NULL, end_pfn,
- pgdat_end_pfn);
- if (pfn) {
- pgdat->node_start_pfn = pfn;
- pgdat->node_spanned_pages = pgdat_end_pfn - pfn;
- }
- } else if (pgdat_end_pfn == end_pfn) {
- /*
- * If the section is biggest section in the pgdat, it need
- * shrink pgdat->node_spanned_pages.
- * In this case, we find second biggest valid mem_section for
- * shrinking zone.
- */
- pfn = find_biggest_section_pfn(nid, NULL, pgdat_start_pfn,
- start_pfn);
- if (pfn)
- pgdat->node_spanned_pages = pfn - pgdat_start_pfn + 1;
- }
-
- /*
- * If the section is not biggest or smallest mem_section in the pgdat,
- * it only creates a hole in the pgdat. So in this case, we need not
- * change the pgdat.
- * But perhaps, the pgdat has only hole data. Thus it check the pgdat
- * has only hole or not.
- */
- pfn = pgdat_start_pfn;
- for (; pfn < pgdat_end_pfn; pfn += PAGES_PER_SUBSECTION) {
- if (unlikely(!pfn_valid(pfn)))
- continue;
-
- if (pfn_to_nid(pfn) != nid)
- continue;
-
- /* Skip range to be removed */
- if (pfn >= start_pfn && pfn < end_pfn)
- continue;
+ unsigned long node_start_pfn = 0, node_end_pfn = 0;
+ struct zone *zone;
- /* If we find valid section, we have nothing to do */
- return;
+ for (zone = pgdat->node_zones;
+ zone < pgdat->node_zones + MAX_NR_ZONES; zone++) {
+ unsigned long zone_end_pfn = zone->zone_start_pfn +
+ zone->spanned_pages;
+
+ /* No need to lock the zones, they can't change. */
+ if (zone_end_pfn > node_end_pfn)
+ node_end_pfn = zone_end_pfn;
+ if (zone->zone_start_pfn < node_start_pfn)
+ node_start_pfn = zone->zone_start_pfn;
}
- /* The pgdat has no valid section */
- pgdat->node_start_pfn = 0;
- pgdat->node_spanned_pages = 0;
+ pgdat->node_start_pfn = node_start_pfn;
+ pgdat->node_spanned_pages = node_end_pfn - node_start_pfn;
}
static void __remove_zone(struct zone *zone, unsigned long start_pfn,
@@ -507,7 +465,7 @@ static void __remove_zone(struct zone *z
pgdat_resize_lock(zone->zone_pgdat, &flags);
shrink_zone_span(zone, start_pfn, start_pfn + nr_pages);
- shrink_pgdat_span(pgdat, start_pfn, start_pfn + nr_pages);
+ update_pgdat_span(pgdat);
pgdat_resize_unlock(zone->zone_pgdat, &flags);
}
_
From: "Aneesh Kumar K.V" <aneesh.kumar(a)linux.ibm.com>
Subject: mm/memunmap: don't access uninitialized memmap in memunmap_pages()
Patch series "mm/memory_hotplug: Shrink zones before removing memory", v6.
This series fixes the access of uninitialized memmaps when shrinking
zones/nodes and when removing memory. Also, it contains all fixes for
crashes that can be triggered when removing certain namespace using
memunmap_pages() - ZONE_DEVICE, reported by Aneesh.
We stop trying to shrink ZONE_DEVICE, as it's buggy, fixing it would be
more involved (we don't have SECTION_IS_ONLINE as an indicator), and
shrinking is only of limited use (set_zone_contiguous() cannot detect the
ZONE_DEVICE as contiguous).
We continue shrinking !ZONE_DEVICE zones, however, I reduced the amount of
code to a minimum. Shrinking is especially necessary to keep
zone->contiguous set where possible, especially, on memory unplug of DIMMs
at zone boundaries.
--------------------------------------------------------------------------
Zones are now properly shrunk when offlining memory blocks or when
onlining failed. This allows to properly shrink zones on memory unplug
even if the separate memory blocks of a DIMM were onlined to different
zones or re-onlined to a different zone after offlining.
Example:
:/# cat /proc/zoneinfo
Node 1, zone Movable
spanned 0
present 0
managed 0
:/# echo "online_movable" > /sys/devices/system/memory/memory41/state
:/# echo "online_movable" > /sys/devices/system/memory/memory43/state
:/# cat /proc/zoneinfo
Node 1, zone Movable
spanned 98304
present 65536
managed 65536
:/# echo 0 > /sys/devices/system/memory/memory43/online
:/# cat /proc/zoneinfo
Node 1, zone Movable
spanned 32768
present 32768
managed 32768
:/# echo 0 > /sys/devices/system/memory/memory41/online
:/# cat /proc/zoneinfo
Node 1, zone Movable
spanned 0
present 0
managed 0
This patch (of 10):
With an altmap, the memmap falling into the reserved altmap space are not
initialized and, therefore, contain a garbage NID and a garbage zone.
Make sure to read the NID/zone from a memmap that was initialized.
This fixes a kernel crash that is observed when destroying a namespace:
[ 81.356173] kernel BUG at include/linux/mm.h:1107!
cpu 0x1: Vector: 700 (Program Check) at [c000000274087890]
pc: c0000000004b9728: memunmap_pages+0x238/0x340
lr: c0000000004b9724: memunmap_pages+0x234/0x340
...
pid = 3669, comm = ndctl
kernel BUG at include/linux/mm.h:1107!
[c000000274087ba0] c0000000009e3500 devm_action_release+0x30/0x50
[c000000274087bc0] c0000000009e4758 release_nodes+0x268/0x2d0
[c000000274087c30] c0000000009dd144 device_release_driver_internal+0x174/0x240
[c000000274087c70] c0000000009d9dfc unbind_store+0x13c/0x190
[c000000274087cb0] c0000000009d8a24 drv_attr_store+0x44/0x60
[c000000274087cd0] c0000000005a7470 sysfs_kf_write+0x70/0xa0
[c000000274087d10] c0000000005a5cac kernfs_fop_write+0x1ac/0x290
[c000000274087d60] c0000000004be45c __vfs_write+0x3c/0x70
[c000000274087d80] c0000000004c26e4 vfs_write+0xe4/0x200
[c000000274087dd0] c0000000004c2a6c ksys_write+0x7c/0x140
[c000000274087e20] c00000000000bbd0 system_call+0x5c/0x68
The "page_zone(pfn_to_page(pfn)" was introduced by 69324b8f4833 ("mm,
devm_memremap_pages: add MEMORY_DEVICE_PRIVATE support"), however, I
think we will never have driver reserved memory with
MEMORY_DEVICE_PRIVATE (no altmap AFAIKS).
[david(a)redhat.com: minimze code changes, rephrase description]
Link: http://lkml.kernel.org/r/20191006085646.5768-2-david@redhat.com
Fixes: 2c2a5af6fed2 ("mm, memory_hotplug: add nid parameter to arch_remove_memory")
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar(a)linux.ibm.com>
Signed-off-by: David Hildenbrand <david(a)redhat.com>
Cc: Dan Williams <dan.j.williams(a)intel.com>
Cc: Jason Gunthorpe <jgg(a)ziepe.ca>
Cc: Logan Gunthorpe <logang(a)deltatee.com>
Cc: Ira Weiny <ira.weiny(a)intel.com>
Cc: Damian Tometzki <damian.tometzki(a)gmail.com>
Cc: Alexander Duyck <alexander.h.duyck(a)linux.intel.com>
Cc: Alexander Potapenko <glider(a)google.com>
Cc: Andy Lutomirski <luto(a)kernel.org>
Cc: Anshuman Khandual <anshuman.khandual(a)arm.com>
Cc: Benjamin Herrenschmidt <benh(a)kernel.crashing.org>
Cc: Borislav Petkov <bp(a)alien8.de>
Cc: Catalin Marinas <catalin.marinas(a)arm.com>
Cc: Christian Borntraeger <borntraeger(a)de.ibm.com>
Cc: Christophe Leroy <christophe.leroy(a)c-s.fr>
Cc: Dave Hansen <dave.hansen(a)linux.intel.com>
Cc: Fenghua Yu <fenghua.yu(a)intel.com>
Cc: Gerald Schaefer <gerald.schaefer(a)de.ibm.com>
Cc: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Cc: Halil Pasic <pasic(a)linux.ibm.com>
Cc: Heiko Carstens <heiko.carstens(a)de.ibm.com>
Cc: "H. Peter Anvin" <hpa(a)zytor.com>
Cc: Ingo Molnar <mingo(a)redhat.com>
Cc: Jun Yao <yaojun8558363(a)gmail.com>
Cc: Mark Rutland <mark.rutland(a)arm.com>
Cc: Masahiro Yamada <yamada.masahiro(a)socionext.com>
Cc: "Matthew Wilcox (Oracle)" <willy(a)infradead.org>
Cc: Mel Gorman <mgorman(a)techsingularity.net>
Cc: Michael Ellerman <mpe(a)ellerman.id.au>
Cc: Michal Hocko <mhocko(a)suse.com>
Cc: Mike Rapoport <rppt(a)linux.ibm.com>
Cc: Oscar Salvador <osalvador(a)suse.de>
Cc: Pankaj Gupta <pagupta(a)redhat.com>
Cc: Paul Mackerras <paulus(a)samba.org>
Cc: Pavel Tatashin <pasha.tatashin(a)soleen.com>
Cc: Pavel Tatashin <pavel.tatashin(a)microsoft.com>
Cc: Peter Zijlstra <peterz(a)infradead.org>
Cc: Qian Cai <cai(a)lca.pw>
Cc: Rich Felker <dalias(a)libc.org>
Cc: Robin Murphy <robin.murphy(a)arm.com>
Cc: Steve Capper <steve.capper(a)arm.com>
Cc: Thomas Gleixner <tglx(a)linutronix.de>
Cc: Tom Lendacky <thomas.lendacky(a)amd.com>
Cc: Tony Luck <tony.luck(a)intel.com>
Cc: Vasily Gorbik <gor(a)linux.ibm.com>
Cc: Vlastimil Babka <vbabka(a)suse.cz>
Cc: Wei Yang <richard.weiyang(a)gmail.com>
Cc: Wei Yang <richardw.yang(a)linux.intel.com>
Cc: Will Deacon <will(a)kernel.org>
Cc: Yoshinori Sato <ysato(a)users.sourceforge.jp>
Cc: Yu Zhao <yuzhao(a)google.com>
Cc: <stable(a)vger.kernel.org> [5.0+]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/memremap.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
--- a/mm/memremap.c~mm-memunmap-dont-access-uninitialized-memmap-in-memunmap_pages
+++ a/mm/memremap.c
@@ -103,6 +103,7 @@ static void dev_pagemap_cleanup(struct d
void memunmap_pages(struct dev_pagemap *pgmap)
{
struct resource *res = &pgmap->res;
+ struct page *first_page;
unsigned long pfn;
int nid;
@@ -111,14 +112,16 @@ void memunmap_pages(struct dev_pagemap *
put_page(pfn_to_page(pfn));
dev_pagemap_cleanup(pgmap);
+ /* make sure to access a memmap that was actually initialized */
+ first_page = pfn_to_page(pfn_first(pgmap));
+
/* pages are dead and unused, undo the arch mapping */
- nid = page_to_nid(pfn_to_page(PHYS_PFN(res->start)));
+ nid = page_to_nid(first_page);
mem_hotplug_begin();
if (pgmap->type == MEMORY_DEVICE_PRIVATE) {
- pfn = PHYS_PFN(res->start);
- __remove_pages(page_zone(pfn_to_page(pfn)), pfn,
- PHYS_PFN(resource_size(res)), NULL);
+ __remove_pages(page_zone(first_page), PHYS_PFN(res->start),
+ PHYS_PFN(resource_size(res)), NULL);
} else {
arch_remove_memory(nid, res->start, resource_size(res),
pgmap_altmap(pgmap));
_
This brings some fixes and allows to start more VMs with an in-kernel
XIVE or XICS-on-XIVE device.
Changes since v1 (https://patchwork.ozlabs.org/cover/1166099/):
- drop a useless patch
- add a patch to show VP ids in debugfs
- update some changelogs
- fix buggy check in patch 5
- Cc: stable
--
Greg
---
Greg Kurz (6):
KVM: PPC: Book3S HV: XIVE: Set kvm->arch.xive when VPs are allocated
KVM: PPC: Book3S HV: XIVE: Ensure VP isn't already in use
KVM: PPC: Book3S HV: XIVE: Show VP id in debugfs
KVM: PPC: Book3S HV: XIVE: Compute the VP id in a common helper
KVM: PPC: Book3S HV: XIVE: Make VP block size configurable
KVM: PPC: Book3S HV: XIVE: Allow userspace to set the # of VPs
Documentation/virt/kvm/devices/xics.txt | 14 +++
Documentation/virt/kvm/devices/xive.txt | 8 ++
arch/powerpc/include/uapi/asm/kvm.h | 3 +
arch/powerpc/kvm/book3s_xive.c | 142 ++++++++++++++++++++++++-------
arch/powerpc/kvm/book3s_xive.h | 17 ++++
arch/powerpc/kvm/book3s_xive_native.c | 40 +++------
6 files changed, 167 insertions(+), 57 deletions(-)
When number of free space in the journal is very low, the arithmetic in
jbd2_log_space_left() could underflow resulting in very high number of
free blocks and thus triggering assertion failure in transaction commit
code complaining there's not enough space in the journal:
J_ASSERT(journal->j_free > 1);
Properly check for the low number of free blocks.
CC: stable(a)vger.kernel.org
Signed-off-by: Jan Kara <jack(a)suse.cz>
---
include/linux/jbd2.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/linux/jbd2.h b/include/linux/jbd2.h
index 603fbc4e2f70..10e6049c0ba9 100644
--- a/include/linux/jbd2.h
+++ b/include/linux/jbd2.h
@@ -1582,7 +1582,7 @@ static inline int jbd2_space_needed(journal_t *journal)
static inline unsigned long jbd2_log_space_left(journal_t *journal)
{
/* Allow for rounding errors */
- unsigned long free = journal->j_free - 32;
+ long free = journal->j_free - 32;
if (journal->j_committing_transaction) {
unsigned long committing = atomic_read(&journal->
@@ -1591,7 +1591,7 @@ static inline unsigned long jbd2_log_space_left(journal_t *journal)
/* Transaction + control blocks */
free -= committing + (committing >> JBD2_CONTROL_BLOCKS_SHIFT);
}
- return free;
+ return max_t(long, free, 0);
}
/*
--
2.16.4
In commit 8020919a9b99 ("mac80211: Properly handle SKB with radiotap
only"), buffers whose length is too short cause a WARN_ON(1) to be
executed. This change exposed a fault in rtlwifi drivers, which is fixed
by increasing the length of the affected buffer before it is sent to
mac80211.
Cc: Stable <stable(a)vger.kernel.org> # v5.0+
Signed-off-by: Larry Finger <Larry.Finger(a)lwfinger.net>
---
V2 - added missing usage of new len
---
Please Apply to 5.4
---
drivers/net/wireless/realtek/rtlwifi/pci.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/net/wireless/realtek/rtlwifi/pci.c b/drivers/net/wireless/realtek/rtlwifi/pci.c
index 6087ec7a90a6..3e9185162e51 100644
--- a/drivers/net/wireless/realtek/rtlwifi/pci.c
+++ b/drivers/net/wireless/realtek/rtlwifi/pci.c
@@ -692,12 +692,15 @@ static void _rtl_pci_rx_to_mac80211(struct ieee80211_hw *hw,
dev_kfree_skb_any(skb);
} else {
struct sk_buff *uskb = NULL;
+ int len = skb->len;
+ if (unlikely(len <= FCS_LEN))
+ len = FCS_LEN + 2;
uskb = dev_alloc_skb(skb->len + 128);
if (likely(uskb)) {
memcpy(IEEE80211_SKB_RXCB(uskb), &rx_status,
sizeof(rx_status));
- skb_put_data(uskb, skb->data, skb->len);
+ skb_put_data(uskb, skb->data, len);
dev_kfree_skb_any(skb);
ieee80211_rx_irqsafe(hw, uskb);
} else {
--
2.23.0
In commit 8020919a9b99 ("mac80211: Properly handle SKB with radiotap
only"), buffers whose length is too short cause a WARN_ON(1) to be
executed. This change exposed a fault in rtlwifi drivers, which is fixed
by increasing the length of the affected buffer before it is sent to
mac80211.
Cc: Stable <stable(a)vger.kernel.org> # v5.0+
Signed-off-by: Larry Finger <Larry.Finger(a)lwfinger.net>
---
Kalle,
Please send to v5.4.
Larry
---
drivers/net/wireless/realtek/rtlwifi/pci.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/wireless/realtek/rtlwifi/pci.c b/drivers/net/wireless/realtek/rtlwifi/pci.c
index 6087ec7a90a6..bb5144b7c64f 100644
--- a/drivers/net/wireless/realtek/rtlwifi/pci.c
+++ b/drivers/net/wireless/realtek/rtlwifi/pci.c
@@ -692,7 +692,10 @@ static void _rtl_pci_rx_to_mac80211(struct ieee80211_hw *hw,
dev_kfree_skb_any(skb);
} else {
struct sk_buff *uskb = NULL;
+ int len = skb->len;
+ if (unlikely(len <= FCS_LEN))
+ len = FCS_LEN + 2;
uskb = dev_alloc_skb(skb->len + 128);
if (likely(uskb)) {
memcpy(IEEE80211_SKB_RXCB(uskb), &rx_status,
--
2.23.0
musl libc also defines the structures in their arch/aarch64/bits/signal.h
header file. Some applications like strace and gdb include both of them
and then the structure definitions are clashing and the build of these
user space applications fails.
This patch allows a libc to define a constant which tells the kernel
header file that the libc already defined these structures and that they
should not be defined by the kernel uapi header files any more to
prevent clashes. This is done in a similar way as it is already done for
other header files.
When this patch was accepted into the kernel I will also update musl
libc to define these constants.
Signed-off-by: Hauke Mehrtens <hauke(a)hauke-m.de>
Cc: stable(a)vger.kernel.org
---
arch/arm64/include/uapi/asm/sigcontext.h | 13 +++++++++++++
include/uapi/linux/libc-compat.h | 20 ++++++++++++++++++++
2 files changed, 33 insertions(+)
diff --git a/arch/arm64/include/uapi/asm/sigcontext.h b/arch/arm64/include/uapi/asm/sigcontext.h
index 8b0ebce92427..92d911146137 100644
--- a/arch/arm64/include/uapi/asm/sigcontext.h
+++ b/arch/arm64/include/uapi/asm/sigcontext.h
@@ -20,7 +20,9 @@
#ifndef __ASSEMBLY__
#include <linux/types.h>
+#include <linux/libc-compat.h>
+#if __UAPI_DEF_SIGCONTEXT
/*
* Signal context structure - contains all info to do with the state
* before the signal handler was invoked.
@@ -35,6 +37,7 @@ struct sigcontext {
/* 4K reserved for FP/SIMD state and future expansion */
__u8 __reserved[4096] __attribute__((__aligned__(16)));
};
+#endif
/*
* Allocation of __reserved[]:
@@ -57,6 +60,7 @@ struct sigcontext {
* generated when userspace does not opt in for any such extension.
*/
+#if __UAPI_DEF_AARCH64_CTX
/*
* Header to be used at the beginning of structures extending the user
* context. Such structures must be placed after the rt_sigframe on the stack
@@ -67,7 +71,9 @@ struct _aarch64_ctx {
__u32 magic;
__u32 size;
};
+#endif
+#if __UAPI_DEF_FPSIMD_CONTEXT
#define FPSIMD_MAGIC 0x46508001
struct fpsimd_context {
@@ -76,7 +82,9 @@ struct fpsimd_context {
__u32 fpcr;
__uint128_t vregs[32];
};
+#endif
+#if __UAPI_DEF_ESR_CONTEXT
/*
* Note: similarly to all other integer fields, each V-register is stored in an
* endianness-dependent format, with the byte at offset i from the start of the
@@ -93,7 +101,9 @@ struct esr_context {
struct _aarch64_ctx head;
__u64 esr;
};
+#endif
+#if __UAPI_DEF_EXTRA_CONTEXT
/*
* extra_context: describes extra space in the signal frame for
* additional structures that don't fit in sigcontext.__reserved[].
@@ -128,7 +138,9 @@ struct extra_context {
__u32 size; /* size in bytes of the extra space */
__u32 __reserved[3];
};
+#endif
+#if __UAPI_DEF_SVE_CONTEXT
#define SVE_MAGIC 0x53564501
struct sve_context {
@@ -136,6 +148,7 @@ struct sve_context {
__u16 vl;
__u16 __reserved[3];
};
+#endif
#endif /* !__ASSEMBLY__ */
diff --git a/include/uapi/linux/libc-compat.h b/include/uapi/linux/libc-compat.h
index 8254c937c9f4..a863130f4638 100644
--- a/include/uapi/linux/libc-compat.h
+++ b/include/uapi/linux/libc-compat.h
@@ -264,4 +264,24 @@
#endif /* __GLIBC__ */
+/* Definitions for arch/arm64/include/uapi/asm/sigcontext.h */
+#ifndef __UAPI_DEF_SIGCONTEXT
+#define __UAPI_DEF_SIGCONTEXT 1
+#endif
+#ifndef __UAPI_DEF_AARCH64_CTX
+#define __UAPI_DEF_AARCH64_CTX 1
+#endif
+#ifndef __UAPI_DEF_FPSIMD_CONTEXT
+#define __UAPI_DEF_FPSIMD_CONTEXT 1
+#endif
+#ifndef __UAPI_DEF_ESR_CONTEXT
+#define __UAPI_DEF_ESR_CONTEXT 1
+#endif
+#ifndef __UAPI_DEF_EXTRA_CONTEXT
+#define __UAPI_DEF_EXTRA_CONTEXT 1
+#endif
+#ifndef __UAPI_DEF_SVE_CONTEXT
+#define __UAPI_DEF_SVE_CONTEXT 1
+#endif
+
#endif /* _UAPI_LIBC_COMPAT_H */
--
2.20.1
xenvif_connect_data() calls module_put() in case of error. This is
wrong as there is no related module_get().
Remove the superfluous module_put().
Fixes: 279f438e36c0a7 ("xen-netback: Don't destroy the netdev until the vif is shut down")
Cc: <stable(a)vger.kernel.org> # 3.12
Signed-off-by: Juergen Gross <jgross(a)suse.com>
Reviewed-by: Paul Durrant <paul(a)xen.org>
---
drivers/net/xen-netback/interface.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/xen-netback/interface.c b/drivers/net/xen-netback/interface.c
index 240f762b3749..103ed00775eb 100644
--- a/drivers/net/xen-netback/interface.c
+++ b/drivers/net/xen-netback/interface.c
@@ -719,7 +719,6 @@ int xenvif_connect_data(struct xenvif_queue *queue,
xenvif_unmap_frontend_data_rings(queue);
netif_napi_del(&queue->napi);
err:
- module_put(THIS_MODULE);
return err;
}
--
2.16.4
v4.11-rc1 did introduce a patch series that rearranged the
sdio quirks into a header file. Unfortunately this did forget
to handle SDIO_VENDOR_ID_TI differently between wl1251 and
wl1271 with the result that although the wl1251 was found on
the sdio bus, the firmware did not load any more and there was
no interface registration.
This patch defines separate constants to be used by sdio quirks
and drivers.
Fixes: 884f38607897 ("mmc: core: move some sdio IDs out of quirks file")
Signed-off-by: H. Nikolaus Schaller <hns(a)goldelico.com>
Cc: <stable(a)vger.kernel.org> # 4.11.0
---
include/linux/mmc/sdio_ids.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/include/linux/mmc/sdio_ids.h b/include/linux/mmc/sdio_ids.h
index d1a5d5df02f5..08b25c02b5a1 100644
--- a/include/linux/mmc/sdio_ids.h
+++ b/include/linux/mmc/sdio_ids.h
@@ -71,6 +71,8 @@
#define SDIO_VENDOR_ID_TI 0x0097
#define SDIO_DEVICE_ID_TI_WL1271 0x4076
+#define SDIO_VENDOR_ID_TI_WL1251 0x104c
+#define SDIO_DEVICE_ID_TI_WL1251 0x9066
#define SDIO_VENDOR_ID_STE 0x0020
#define SDIO_DEVICE_ID_STE_CW1200 0x2280
--
2.19.1
Hello,
We ran automated tests on a recent commit from this kernel tree:
Kernel repo: git://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
Commit: 404590aa1984 - scsi: core: try to get module before removing device
The results of these automated tests are provided below.
Overall result: FAILED (see details below)
Merge: OK
Compile: OK
Tests: FAILED
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/235237
One or more kernel tests failed:
ppc64le:
❌ Boot test
❌ Boot test
aarch64:
❌ Boot test
❌ Boot test
x86_64:
❌ Boot test
❌ Boot test
❌ Boot test
❌ Boot test
❌ Boot test
We hope that these logs can help you find the problem quickly. For the full
detail on our testing procedures, please scroll to the bottom of this message.
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
❌ Boot test
⚡⚡⚡ Podman system integration test (as root)
⚡⚡⚡ Podman system integration test (as user)
⚡⚡⚡ LTP lite
⚡⚡⚡ Loopdev Sanity
⚡⚡⚡ jvm test suite
⚡⚡⚡ Memory function: memfd_create
⚡⚡⚡ Memory function: kaslr
⚡⚡⚡ AMTU (Abstract Machine Test Utility)
⚡⚡⚡ LTP: openposix test suite
⚡⚡⚡ Ethernet drivers sanity
⚡⚡⚡ Networking MACsec: sanity
⚡⚡⚡ Networking socket: fuzz
⚡⚡⚡ Networking sctp-auth: sockopts test
⚡⚡⚡ Networking: igmp conformance test
⚡⚡⚡ Networking TCP: keepalive test
⚡⚡⚡ Networking UDP: socket
⚡⚡⚡ Networking tunnel: gre basic
⚡⚡⚡ L2TP basic test
⚡⚡⚡ Networking tunnel: vxlan basic
⚡⚡⚡ audit: audit testsuite test
⚡⚡⚡ httpd: mod_ssl smoke sanity
⚡⚡⚡ iotop: sanity
⚡⚡⚡ tuned: tune-processes-through-perf
⚡⚡⚡ ALSA PCM loopback test
⚡⚡⚡ ALSA Control (mixer) Userspace Element test
⚡⚡⚡ Usex - version 1.9-29
⚡⚡⚡ storage: SCSI VPD
⚡⚡⚡ stress: stress-ng
⚡⚡⚡ trace: ftrace/tracer
🚧 ⚡⚡⚡ CIFS Connectathon
🚧 ⚡⚡⚡ POSIX pjd-fstest suites
🚧 ⚡⚡⚡ Networking bridge: sanity
🚧 ⚡⚡⚡ Networking route: pmtu
🚧 ⚡⚡⚡ Networking tunnel: geneve basic test
🚧 ⚡⚡⚡ Networking vnic: ipvlan/basic
🚧 ⚡⚡⚡ storage: dm/common
🚧 ⚡⚡⚡ Networking route_func: local
🚧 ⚡⚡⚡ Networking route_func: forward
🚧 ⚡⚡⚡ Networking ipsec: basic netns transport
🚧 ⚡⚡⚡ Networking ipsec: basic netns tunnel
Host 2:
❌ Boot test
⚡⚡⚡ xfstests: ext4
⚡⚡⚡ xfstests: xfs
⚡⚡⚡ selinux-policy: serge-testsuite
⚡⚡⚡ lvm thinp sanity
⚡⚡⚡ storage: software RAID testing
🚧 ⚡⚡⚡ Storage blktests
ppc64le:
Host 1:
❌ Boot test
⚡⚡⚡ Podman system integration test (as root)
⚡⚡⚡ Podman system integration test (as user)
⚡⚡⚡ LTP lite
⚡⚡⚡ Loopdev Sanity
⚡⚡⚡ jvm test suite
⚡⚡⚡ Memory function: memfd_create
⚡⚡⚡ Memory function: kaslr
⚡⚡⚡ AMTU (Abstract Machine Test Utility)
⚡⚡⚡ LTP: openposix test suite
⚡⚡⚡ Ethernet drivers sanity
⚡⚡⚡ Networking MACsec: sanity
⚡⚡⚡ Networking socket: fuzz
⚡⚡⚡ Networking sctp-auth: sockopts test
⚡⚡⚡ Networking TCP: keepalive test
⚡⚡⚡ Networking UDP: socket
⚡⚡⚡ Networking tunnel: gre basic
⚡⚡⚡ L2TP basic test
⚡⚡⚡ Networking tunnel: vxlan basic
⚡⚡⚡ audit: audit testsuite test
⚡⚡⚡ httpd: mod_ssl smoke sanity
⚡⚡⚡ iotop: sanity
⚡⚡⚡ tuned: tune-processes-through-perf
⚡⚡⚡ ALSA PCM loopback test
⚡⚡⚡ ALSA Control (mixer) Userspace Element test
⚡⚡⚡ Usex - version 1.9-29
⚡⚡⚡ trace: ftrace/tracer
🚧 ⚡⚡⚡ CIFS Connectathon
🚧 ⚡⚡⚡ POSIX pjd-fstest suites
🚧 ⚡⚡⚡ Networking bridge: sanity
🚧 ⚡⚡⚡ Networking route: pmtu
🚧 ⚡⚡⚡ Networking tunnel: geneve basic test
🚧 ⚡⚡⚡ Networking ipsec: basic netns tunnel
🚧 ⚡⚡⚡ Networking vnic: ipvlan/basic
🚧 ⚡⚡⚡ storage: dm/common
🚧 ⚡⚡⚡ Networking route_func: local
🚧 ⚡⚡⚡ Networking route_func: forward
Host 2:
❌ Boot test
⚡⚡⚡ xfstests: ext4
⚡⚡⚡ xfstests: xfs
⚡⚡⚡ selinux-policy: serge-testsuite
⚡⚡⚡ lvm thinp sanity
⚡⚡⚡ storage: software RAID testing
🚧 ⚡⚡⚡ Storage blktests
x86_64:
Host 1:
❌ Boot test
⚡⚡⚡ xfstests: ext4
⚡⚡⚡ xfstests: xfs
⚡⚡⚡ selinux-policy: serge-testsuite
⚡⚡⚡ lvm thinp sanity
⚡⚡⚡ storage: software RAID testing
🚧 ⚡⚡⚡ IOMMU boot test
🚧 ⚡⚡⚡ Storage blktests
Host 2:
❌ Boot test
⚡⚡⚡ Podman system integration test (as root)
⚡⚡⚡ Podman system integration test (as user)
⚡⚡⚡ LTP lite
⚡⚡⚡ Loopdev Sanity
⚡⚡⚡ jvm test suite
⚡⚡⚡ Memory function: memfd_create
⚡⚡⚡ Memory function: kaslr
⚡⚡⚡ AMTU (Abstract Machine Test Utility)
⚡⚡⚡ LTP: openposix test suite
⚡⚡⚡ Ethernet drivers sanity
⚡⚡⚡ Networking MACsec: sanity
⚡⚡⚡ Networking socket: fuzz
⚡⚡⚡ Networking sctp-auth: sockopts test
⚡⚡⚡ Networking: igmp conformance test
⚡⚡⚡ Networking TCP: keepalive test
⚡⚡⚡ Networking UDP: socket
⚡⚡⚡ Networking tunnel: gre basic
⚡⚡⚡ L2TP basic test
⚡⚡⚡ Networking tunnel: vxlan basic
⚡⚡⚡ audit: audit testsuite test
⚡⚡⚡ httpd: mod_ssl smoke sanity
⚡⚡⚡ iotop: sanity
⚡⚡⚡ tuned: tune-processes-through-perf
⚡⚡⚡ pciutils: sanity smoke test
⚡⚡⚡ ALSA PCM loopback test
⚡⚡⚡ ALSA Control (mixer) Userspace Element test
⚡⚡⚡ Usex - version 1.9-29
⚡⚡⚡ storage: SCSI VPD
⚡⚡⚡ stress: stress-ng
⚡⚡⚡ trace: ftrace/tracer
🚧 ⚡⚡⚡ CIFS Connectathon
🚧 ⚡⚡⚡ POSIX pjd-fstest suites
🚧 ⚡⚡⚡ Networking bridge: sanity
🚧 ⚡⚡⚡ Networking route: pmtu
🚧 ⚡⚡⚡ Networking tunnel: geneve basic test
🚧 ⚡⚡⚡ Networking vnic: ipvlan/basic
🚧 ⚡⚡⚡ storage: dm/common
🚧 ⚡⚡⚡ Networking route_func: local
🚧 ⚡⚡⚡ Networking route_func: forward
🚧 ⚡⚡⚡ Networking ipsec: basic netns transport
🚧 ⚡⚡⚡ Networking ipsec: basic netns tunnel
Host 3:
❌ Boot test
⚡⚡⚡ Storage SAN device stress - megaraid_sas
Host 4:
❌ Boot test
🚧 ⚡⚡⚡ IPMI driver test
🚧 ⚡⚡⚡ IPMItool loop stress test
Host 5:
❌ Boot test
⚡⚡⚡ Storage SAN device stress - mpt3sas driver
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
Testing timeout
---------------
We aim to provide a report within reasonable timeframe. Tests that haven't
finished running are marked with ⏱. Reports for non-upstream kernels have
a Beaker recipe linked to next to each host.
* H. Nikolaus Schaller <hns(a)goldelico.com> [191019 15:18]:
>
> > Am 19.10.2019 um 15:36 schrieb Sasha Levin <sashal(a)kernel.org>:
> >
> > Hi,
> >
> > [This is an automated email]
> >
> > This commit has been processed because it contains a "Fixes:" tag,
> > fixing commit: 81eef6ca92014 mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel.
> >
> > The bot has tested the following trees: v5.3.6, v4.19.79, v4.14.149, v4.9.196.
> >
> > v5.3.6: Build OK!
> > v4.19.79: Failed to apply! Possible dependencies:
> > Unable to calculate
> >
> > v4.14.149: Failed to apply! Possible dependencies:
> > 0486738928bf0 ("ARM: OMAP1: ams-delta: add GPIO lookup tables")
> > 0920ca103f8d8 ("ARM: sa1100: provide infrastructure to support generic CF sockets")
> > 29786e9b6551b ("ARM: sa1100/assabet: convert to generic CF sockets")
> > 2bcb1be092370 ("Input: ams_delta_serio: Replace power GPIO with regulator")
> > 56de7570b3264 ("Input: ams_delta_serio: use private structure")
> > 7be893aa2d6a1 ("pcmcia: sa1100: provide generic CF support")
> > b51af86559d4b ("ARM: sa1100/shannon: convert to generic CF sockets")
> > b955153bfa68d ("ARM: sa1100/assabet: add BCR/BSR GPIO driver")
> > c2f9b05fd5c12 ("media: arch: sh: ecovec: Use new renesas-ceu camera driver")
> > df88c57689278 ("Input: ams_delta_serio: convert to platform driver")
> > efdfeb079cc3b ("regulator: fixed: Convert to use GPIO descriptor only")
>
> ^^^ this is the relevant one.
>
> >
> > v4.9.196: Failed to apply! Possible dependencies:
> > 0486738928bf0 ("ARM: OMAP1: ams-delta: add GPIO lookup tables")
> > 072f58af1dfbc ("ARM: dts: Add devicetree for the Raspberry Pi 3, for arm32 (v6)")
> > 1aa1d858f582c ("ARM: dts: bcm283x: Add dtsi for OTG mode")
> > 29786e9b6551b ("ARM: sa1100/assabet: convert to generic CF sockets")
> > 2bcb1be092370 ("Input: ams_delta_serio: Replace power GPIO with regulator")
> > 3bfe25fa9f8a5 ("ARM: dts: bcm283x: Move the BCM2837 DT contents from arm64 to arm.")
> > 56de7570b3264 ("Input: ams_delta_serio: use private structure")
> > 6c1b417adc8fa ("ARM: pxa: ezx: use the new pxa_camera platform_data")
> > 7ade445c26269 ("ARM: pxa: magician: Add support for ADS7846 touchscreen")
> > 8f9bafbb92c03 ("ARM: dts: aspeed: Add Romulus BMC platform")
> > b24413180f560 ("License cleanup: add SPDX GPL-2.0 license identifier to files with no license")
> > b5478c1b67bcd ("alpha: add asm/extable.h")
> > b955153bfa68d ("ARM: sa1100/assabet: add BCR/BSR GPIO driver")
> > d9fa04725f27f ("ARM: pxa: em-x270: use the new pxa_camera platform_data")
> > df88c57689278 ("Input: ams_delta_serio: convert to platform driver")
> > efdfeb079cc3b ("regulator: fixed: Convert to use GPIO descriptor only")
> > fe7bf9dcfff5b ("ARM: dts: add a devicetree for Raidsonic NAS IB-4220-B")
> >
> >
> > NOTE: The patch will not be queued to stable trees until it is upstream.
> >
> > How should we proceed with this patch?
>
> I have checked and the reason is that
>
> efdfeb079cc3b ("regulator: fixed: Convert to use GPIO descriptor only")
>
> was introduced after v.4.19 which was also partially reverted by this patch
> if based on mainline.
>
> I have split it up into the partial revert of efdfeb079cc3b for mainline
> and the real patch which now applies to all relevant stable trees.
>
> So I'll sent a v2 asap.
Please also remove arch/arm/mach-omap2/hsmmc.[ch] as I think that
can be now done :)
Regards,
Tony
Hello,
We ran automated tests on a patchset that was proposed for merging into this
kernel tree. The patches were applied to:
Kernel repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: 365dab61f74e - Linux 5.3.7
The results of these automated tests are provided below.
Overall result: PASSED
Merge: OK
Compile: OK
Tests: OK
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/234049
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Merge testing
-------------
We cloned this repository and checked out the following commit:
Repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: 365dab61f74e - Linux 5.3.7
We grabbed the 8790a8b4e158 commit of the stable queue repository.
We then merged the patchset with `git am`:
drm-free-the-writeback_job-when-it-with-an-empty-fb.patch
drm-clear-the-fence-pointer-when-writeback-job-signa.patch
clk-ti-dra7-fix-mcasp8-clock-bits.patch
arm-dts-fix-wrong-clocks-for-dra7-mcasp.patch
nvme-pci-fix-a-race-in-controller-removal.patch
scsi-ufs-skip-shutdown-if-hba-is-not-powered.patch
scsi-megaraid-disable-device-when-probe-failed-after.patch
scsi-qla2xxx-silence-fwdump-template-message.patch
scsi-qla2xxx-fix-unbound-sleep-in-fcport-delete-path.patch
scsi-qla2xxx-fix-stale-mem-access-on-driver-unload.patch
scsi-qla2xxx-fix-n2n-link-reset.patch
scsi-qla2xxx-fix-n2n-link-up-fail.patch
arm-dts-fix-gpio0-flags-for-am335x-icev2.patch
arm-omap2-fix-missing-reset-done-flag-for-am3-and-am.patch
arm-omap2-add-missing-lcdc-midlemode-for-am335x.patch
arm-omap2-fix-warnings-with-broken-omap2_set_init_vo.patch
nvme-tcp-fix-wrong-stop-condition-in-io_work.patch
nvme-pci-save-pci-state-before-putting-drive-into-de.patch
nvme-fix-an-error-code-in-nvme_init_subsystem.patch
nvme-rdma-fix-max_hw_sectors-calculation.patch
added-quirks-for-adata-xpg-sx8200-pro-512gb.patch
nvme-add-quirk-for-kingston-nvme-ssd-running-fw-e8fk.patch
nvme-allow-64-bit-results-in-passthru-commands.patch
drm-komeda-prevent-memory-leak-in-komeda_wb_connecto.patch
nvme-rdma-fix-possible-use-after-free-in-connect-tim.patch
blk-mq-honor-io-scheduler-for-multiqueue-devices.patch
ieee802154-ca8210-prevent-memory-leak.patch
arm-dts-am4372-set-memory-bandwidth-limit-for-dispc.patch
net-dsa-qca8k-use-up-to-7-ports-for-all-operations.patch
mips-dts-ar9331-fix-interrupt-controller-size.patch
xen-efi-set-nonblocking-callbacks.patch
loop-change-queue-block-size-to-match-when-using-dio.patch
nl80211-fix-null-pointer-dereference.patch
mac80211-fix-txq-null-pointer-dereference.patch
netfilter-nft_connlimit-disable-bh-on-garbage-collec.patch
net-mscc-ocelot-add-missing-of_node_put-after-callin.patch
net-dsa-rtl8366rb-add-missing-of_node_put-after-call.patch
net-stmmac-xgmac-not-all-unicast-addresses-may-be-av.patch
net-stmmac-dwmac4-always-update-the-mac-hash-filter.patch
net-stmmac-correctly-take-timestamp-for-ptpv2.patch
net-stmmac-do-not-stop-phy-if-wol-is-enabled.patch
net-ag71xx-fix-mdio-subnode-support.patch
risc-v-clear-load-reservations-while-restoring-hart-.patch
riscv-fix-memblock-reservation-for-device-tree-blob.patch
drm-amdgpu-fix-multiple-memory-leaks-in-acp_hw_init.patch
drm-amd-display-memory-leak.patch
mips-loongson-fix-the-link-time-qualifier-of-serial_.patch
net-hisilicon-fix-usage-of-uninitialized-variable-in.patch
net-stmmac-avoid-deadlock-on-suspend-resume.patch
selftests-kvm-fix-libkvm-build-error.patch
lib-textsearch-fix-escapes-in-example-code.patch
s390-mm-fix-wunused-but-set-variable-warnings.patch
r8152-set-macpassthru-in-reset_resume-callback.patch
net-phy-allow-for-reset-line-to-be-tied-to-a-sleepy-.patch
net-phy-fix-write-to-mii-ctrl1000-register.patch
namespace-fix-namespace.pl-script-to-support-relativ.patch
convert-filldir-64-from-__put_user-to-unsafe_put_use.patch
elf-don-t-use-map_fixed_noreplace-for-elf-executable.patch
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
✅ storage: SCSI VPD
✅ stress: stress-ng
🚧 ✅ POSIX pjd-fstest suites
ppc64le:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
🚧 ✅ POSIX pjd-fstest suites
Host 2:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
x86_64:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ pciutils: sanity smoke test
✅ Usex - version 1.9-29
✅ storage: SCSI VPD
✅ stress: stress-ng
🚧 ✅ POSIX pjd-fstest suites
Host 2:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
Testing timeout
---------------
We aim to provide a report within reasonable timeframe. Tests that haven't
finished running are marked with ⏱. Reports for non-upstream kernels have
a Beaker recipe linked to next to each host.
From: David Hildenbrand <david(a)redhat.com>
Subject: hugetlbfs: don't access uninitialized memmaps in pfn_range_valid_gigantic()
Uninitialized memmaps contain garbage and in the worst case trigger kernel
BUGs, especially with CONFIG_PAGE_POISONING. They should not get touched.
Let's make sure that we only consider online memory (managed by the buddy)
that has initialized memmaps. ZONE_DEVICE is not applicable.
page_zone() will call page_to_nid(), which will trigger
VM_BUG_ON_PGFLAGS(PagePoisoned(page), page) with CONFIG_PAGE_POISONING and
CONFIG_DEBUG_VM_PGFLAGS when called on uninitialized memmaps. This can be
the case when an offline memory block (e.g., never onlined) is spanned by
a zone.
Note: As explained by Michal in [1], alloc_contig_range() will verify the
range. So it boils down to the wrong access in this function.
[1] http://lkml.kernel.org/r/20180423000943.GO17484@dhcp22.suse.cz
Link: http://lkml.kernel.org/r/20191015120717.4858-1-david@redhat.com
Fixes: f1dd2cd13c4b ("mm, memory_hotplug: do not associate hotadded memory to zones until online") [visible after d0dc12e86b319]
Signed-off-by: David Hildenbrand <david(a)redhat.com>
Reported-by: Michal Hocko <mhocko(a)kernel.org>
Acked-by: Michal Hocko <mhocko(a)suse.com>
Reviewed-by: Mike Kravetz <mike.kravetz(a)oracle.com>
Cc: Anshuman Khandual <anshuman.khandual(a)arm.com>
Cc: <stable(a)vger.kernel.org> [4.13+]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/hugetlb.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
--- a/mm/hugetlb.c~hugetlbfs-dont-access-uninitialized-memmaps-in-pfn_range_valid_gigantic
+++ a/mm/hugetlb.c
@@ -1084,11 +1084,10 @@ static bool pfn_range_valid_gigantic(str
struct page *page;
for (i = start_pfn; i < end_pfn; i++) {
- if (!pfn_valid(i))
+ page = pfn_to_online_page(i);
+ if (!page)
return false;
- page = pfn_to_page(i);
-
if (page_zone(page) != z)
return false;
_
From: Honglei Wang <honglei.wang(a)oracle.com>
Subject: mm: memcg: get number of pages on the LRU list in memcgroup base on lru_zone_size
1a61ab8038e72 ("mm: memcontrol: replace zone summing with
lruvec_page_state()") has made lruvec_page_state to use per-cpu counters
instead of calculating it directly from lru_zone_size with an idea that
this would be more effective. Tim has reported that this is not really
the case for their database benchmark which is showing an opposite results
where lruvec_page_state is taking up a huge chunk of CPU cycles (about 25%
of the system time which is roughly 7% of total cpu cycles) on 5.3
kernels. The workload is running on a larger machine (96cpus), it has
many cgroups (500) and it is heavily direct reclaim bound.
Tim Chen said:
: The problem can also be reproduced by running simple multi-threaded
: pmbench benchmark with a fast Optane SSD swap (see profile below).
:
:
: 6.15% 3.08% pmbench [kernel.vmlinux] [k] lruvec_lru_size
: |
: |--3.07%--lruvec_lru_size
: | |
: | |--2.11%--cpumask_next
: | | |
: | | --1.66%--find_next_bit
: | |
: | --0.57%--call_function_interrupt
: | |
: | --0.55%--smp_call_function_interrupt
: |
: |--1.59%--0x441f0fc3d009
: | _ops_rdtsc_init_base_freq
: | access_histogram
: | page_fault
: | __do_page_fault
: | handle_mm_fault
: | __handle_mm_fault
: | |
: | --1.54%--do_swap_page
: | swapin_readahead
: | swap_cluster_readahead
: | |
: | --1.53%--read_swap_cache_async
: | __read_swap_cache_async
: | alloc_pages_vma
: | __alloc_pages_nodemask
: | __alloc_pages_slowpath
: | try_to_free_pages
: | do_try_to_free_pages
: | shrink_node
: | shrink_node_memcg
: | |
: | |--0.77%--lruvec_lru_size
: | |
: | --0.76%--inactive_list_is_low
: | |
: | --0.76%--lruvec_lru_size
: |
: --1.50%--measure_read
: page_fault
: __do_page_fault
: handle_mm_fault
: __handle_mm_fault
: do_swap_page
: swapin_readahead
: swap_cluster_readahead
: |
: --1.48%--read_swap_cache_async
: __read_swap_cache_async
: alloc_pages_vma
: __alloc_pages_nodemask
: __alloc_pages_slowpath
: try_to_free_pages
: do_try_to_free_pages
: shrink_node
: shrink_node_memcg
: |
: |--0.75%--inactive_list_is_low
: | |
: | --0.75%--lruvec_lru_size
: |
: --0.73%--lruvec_lru_size
The likely culprit is the cache traffic the lruvec_page_state_local
generates. Dave Hansen says:
: I was thinking purely of the cache footprint. If it's reading
: pn->lruvec_stat_local->count[idx] is three separate cachelines, so 192
: bytes of cache *96 CPUs = 18k of data, mostly read-only. 1 cgroup would
: be 18k of data for the whole system and the caching would be pretty
: efficient and all 18k would probably survive a tight page fault loop in
: the L1. 500 cgroups would be ~90k of data per CPU thread which doesn't
: fit in the L1 and probably wouldn't survive a tight page fault loop if
: both logical threads were banging on different cgroups.
:
: It's just a theory, but it's why I noted the number of cgroups when I
: initially saw this show up in profiles
Fix the regression by partially reverting the said commit and calculate
the lru size explicitly.
Link: http://lkml.kernel.org/r/20190905071034.16822-1-honglei.wang@oracle.com
Fixes: 1a61ab8038e72 ("mm: memcontrol: replace zone summing with lruvec_page_state()")
Signed-off-by: Honglei Wang <honglei.wang(a)oracle.com>
Reported-by: Tim Chen <tim.c.chen(a)linux.intel.com>
Acked-by: Tim Chen <tim.c.chen(a)linux.intel.com>
Tested-by: Tim Chen <tim.c.chen(a)linux.intel.com>
Acked-by: Michal Hocko <mhocko(a)suse.com>
Cc: Vladimir Davydov <vdavydov.dev(a)gmail.com>
Cc: Johannes Weiner <hannes(a)cmpxchg.org>
Cc: Roman Gushchin <guro(a)fb.com>
Cc: Tejun Heo <tj(a)kernel.org>
Cc: Dave Hansen <dave.hansen(a)intel.com>
Cc: <stable(a)vger.kernel.org> [5.2+]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/vmscan.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
--- a/mm/vmscan.c~mm-vmscan-get-number-of-pages-on-the-lru-list-in-memcgroup-base-on-lru_zone_size
+++ a/mm/vmscan.c
@@ -351,12 +351,13 @@ unsigned long zone_reclaimable_pages(str
*/
unsigned long lruvec_lru_size(struct lruvec *lruvec, enum lru_list lru, int zone_idx)
{
- unsigned long lru_size;
+ unsigned long lru_size = 0;
int zid;
- if (!mem_cgroup_disabled())
- lru_size = lruvec_page_state_local(lruvec, NR_LRU_BASE + lru);
- else
+ if (!mem_cgroup_disabled()) {
+ for (zid = 0; zid < MAX_NR_ZONES; zid++)
+ lru_size += mem_cgroup_get_zone_lru_size(lruvec, lru, zid);
+ } else
lru_size = node_page_state(lruvec_pgdat(lruvec), NR_LRU_BASE + lru);
for (zid = zone_idx + 1; zid < MAX_NR_ZONES; zid++) {
_
From: Roman Gushchin <guro(a)fb.com>
Subject: mm: memcg/slab: fix panic in __free_slab() caused by premature memcg pointer release
Karsten reported the following panic in __free_slab() happening on a s390x
machine:
349.361168 Unable to handle kernel pointer dereference in virtual kernel address space
349.361210 Failing address: 0000000000000000 TEID: 0000000000000483
349.361223 Fault in home space mode while using kernel ASCE.
349.361240 AS:00000000017d4007 R3:000000007fbd0007 S:000000007fbff000 P:000000000000003d
349.361340 Oops: 0004 ilc:3 Ý#1¨ PREEMPT SMP
349.361349 Modules linked in: tcp_diag inet_diag xt_tcpudp ip6t_rpfilter ip6t_REJECT \
nf_reject_ipv6 ipt_REJECT nf_reject_ipv4 xt_conntrack ip6table_nat ip6table_mangle \
ip6table_raw ip6table_security iptable_at nf_nat
349.361436 CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.3.0-05872-g6133e3e4bada-dirty #14
349.361445 Hardware name: IBM 2964 NC9 702 (z/VM 6.4.0)
349.361450 Krnl PSW : 0704d00180000000 00000000003cadb6 (__free_slab+0x686/0x6b0)
349.361464 R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:3 CC:1 PM:0 RI:0 EA:3
349.361470 Krnl GPRS: 00000000f3a32928 0000000000000000 000000007fbf5d00 000000000117c4b8
349.361475 0000000000000000 000000009e3291c1 0000000000000000 0000000000000000
349.361481 0000000000000003 0000000000000008 000000002b478b00 000003d080a97600
349.361481 0000000000000003 0000000000000008 000000002b478b00 000003d080a97600
349.361486 000000000117ba00 000003e000057db0 00000000003cabcc 000003e000057c78
349.361500 Krnl Code: 00000000003cada6: e310a1400004 lg %r1,320(%r10)
349.361500 00000000003cadac: c0e50046c286 brasl %r14,ca32b8
349.361500 #00000000003cadb2: a7f4fe36 brc 15,3caa1e
349.361500 >00000000003cadb6: e32060800024 stg %r2,128(%r6)
349.361500 00000000003cadbc: a7f4fd9e brc 15,3ca8f8
349.361500 00000000003cadc0: c0e50046790c brasl %r14,c99fd8
349.361500 00000000003cadc6: a7f4fe2c brc 15,3caa
349.361500 00000000003cadc6: a7f4fe2c brc 15,3caa1e
349.361500 00000000003cadca: ecb1ffff00d9 aghik %r11,%r1,-1
349.361619 Call Trace:
349.361627 (<00000000003cabcc> __free_slab+0x49c/0x6b0)
349.361634 <00000000001f5886> rcu_core+0x5a6/0x7e0
349.361643 <0000000000ca2dea> __do_softirq+0xf2/0x5c0
349.361652 <0000000000152644> irq_exit+0x104/0x130
349.361659 <000000000010d222> do_IRQ+0x9a/0xf0
349.361667 <0000000000ca2344> ext_int_handler+0x130/0x134
349.361674 <0000000000103648> enabled_wait+0x58/0x128
349.361681 (<0000000000103634> enabled_wait+0x44/0x128)
349.361688 <0000000000103b00> arch_cpu_idle+0x40/0x58
349.361695 <0000000000ca0544> default_idle_call+0x3c/0x68
349.361704 <000000000018eaa4> do_idle+0xec/0x1c0
349.361748 <000000000018ee0e> cpu_startup_entry+0x36/0x40
349.361756 <000000000122df34> arch_call_rest_init+0x5c/0x88
349.361761 <0000000000000000> 0x0
349.361765 INFO: lockdep is turned off.
349.361769 Last Breaking-Event-Address:
349.361774 <00000000003ca8f4> __free_slab+0x1c4/0x6b0
349.361781 Kernel panic - not syncing: Fatal exception in interrupt
The kernel panics on an attempt to dereference the NULL memcg pointer.
When shutdown_cache() is called from the kmem_cache_destroy() context, a
memcg kmem_cache might have empty slab pages in a partial list, which are
still charged to the memory cgroup. These pages are released by
free_partial() at the beginning of shutdown_cache(): either directly or by
scheduling a RCU-delayed work (if the kmem_cache has the
SLAB_TYPESAFE_BY_RCU flag). The latter case is when the reported panic
can happen: memcg_unlink_cache() is called immediately after shrinking
partial lists, without waiting for scheduled RCU works. It sets the
kmem_cache->memcg_params.memcg pointer to NULL, and the following attempt
to dereference it by __free_slab() from the RCU work context causes the
panic.
To fix the issue, let's postpone the release of the memcg pointer to
destroy_memcg_params(). It's called from a separate work context by
slab_caches_to_rcu_destroy_workfn(), which contains a full RCU barrier.
This guarantees that all scheduled page release RCU works will complete
before the memcg pointer will be zeroed.
Big thanks for Karsten for the perfect report containing all necessary
information, his help with the analysis of the problem and testing of the
fix.
Link: http://lkml.kernel.org/r/20191010160549.1584316-1-guro@fb.com
Fixes: fb2f2b0adb98 ("mm: memcg/slab: reparent memcg kmem_caches on cgroup removal")
Signed-off-by: Roman Gushchin <guro(a)fb.com>
Reported-by: Karsten Graul <kgraul(a)linux.ibm.com>
Tested-by: Karsten Graul <kgraul(a)linux.ibm.com>
Acked-by: Vlastimil Babka <vbabka(a)suse.cz>
Reviewed-by: Shakeel Butt <shakeelb(a)google.com>
Cc: Karsten Graul <kgraul(a)linux.ibm.com>
Cc: Vladimir Davydov <vdavydov.dev(a)gmail.com>
Cc: David Rientjes <rientjes(a)google.com>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/slab_common.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
--- a/mm/slab_common.c~mm-memcg-slab-fix-panic-in-__free_slab-caused-by-premature-memcg-pointer-release
+++ a/mm/slab_common.c
@@ -178,10 +178,13 @@ static int init_memcg_params(struct kmem
static void destroy_memcg_params(struct kmem_cache *s)
{
- if (is_root_cache(s))
+ if (is_root_cache(s)) {
kvfree(rcu_access_pointer(s->memcg_params.memcg_caches));
- else
+ } else {
+ mem_cgroup_put(s->memcg_params.memcg);
+ WRITE_ONCE(s->memcg_params.memcg, NULL);
percpu_ref_exit(&s->memcg_params.refcnt);
+ }
}
static void free_memcg_params(struct rcu_head *rcu)
@@ -253,8 +256,6 @@ static void memcg_unlink_cache(struct km
} else {
list_del(&s->memcg_params.children_node);
list_del(&s->memcg_params.kmem_caches_node);
- mem_cgroup_put(s->memcg_params.memcg);
- WRITE_ONCE(s->memcg_params.memcg, NULL);
}
}
#else
_
From: Qian Cai <cai(a)lca.pw>
Subject: mm/page_owner: don't access uninitialized memmaps when reading /proc/pagetypeinfo
Uninitialized memmaps contain garbage and in the worst case trigger kernel
BUGs, especially with CONFIG_PAGE_POISONING. They should not get touched.
For example, when not onlining a memory block that is spanned by a zone
and reading /proc/pagetypeinfo with CONFIG_DEBUG_VM_PGFLAGS and
CONFIG_PAGE_POISONING, we can trigger a kernel BUG:
:/# echo 1 > /sys/devices/system/memory/memory40/online
:/# echo 1 > /sys/devices/system/memory/memory42/online
:/# cat /proc/pagetypeinfo > test.file
[ 42.489856] page:fffff2c585200000 is uninitialized and poisoned
[ 42.489861] raw: ffffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffff
[ 42.492235] raw: ffffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffff
[ 42.493501] page dumped because: VM_BUG_ON_PAGE(PagePoisoned(p))
[ 42.494533] There is not page extension available.
[ 42.495358] ------------[ cut here ]------------
[ 42.496163] kernel BUG at include/linux/mm.h:1107!
[ 42.497069] invalid opcode: 0000 [#1] SMP NOPTI
Please note that this change does not affect ZONE_DEVICE, because
pagetypeinfo_showmixedcount_print() is called from
mm/vmstat.c:pagetypeinfo_showmixedcount() only for populated zones, and
ZONE_DEVICE is never populated (zone->present_pages always 0).
[david(a)redhat.com: move check to outer loop, add comment, rephrase description]
Link: http://lkml.kernel.org/r/20191011140638.8160-1-david@redhat.com
Fixes: f1dd2cd13c4b ("mm, memory_hotplug: do not associate hotadded memory to zones until online") # visible after d0dc12e86b319
Signed-off-by: Qian Cai <cai(a)lca.pw>
Signed-off-by: David Hildenbrand <david(a)redhat.com>
Acked-by: Michal Hocko <mhocko(a)suse.com>
Acked-by: Vlastimil Babka <vbabka(a)suse.cz>
Cc: Thomas Gleixner <tglx(a)linutronix.de>
Cc: "Peter Zijlstra (Intel)" <peterz(a)infradead.org>
Cc: Miles Chen <miles.chen(a)mediatek.com>
Cc: Mike Rapoport <rppt(a)linux.vnet.ibm.com>
Cc: Qian Cai <cai(a)lca.pw>
Cc: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Cc: <stable(a)vger.kernel.org> [4.13+]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/page_owner.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
--- a/mm/page_owner.c~mm-page_owner-dont-access-uninitialized-memmaps-when-reading-proc-pagetypeinfo
+++ a/mm/page_owner.c
@@ -271,7 +271,8 @@ void pagetypeinfo_showmixedcount_print(s
* not matter as the mixed block count will still be correct
*/
for (; pfn < end_pfn; ) {
- if (!pfn_valid(pfn)) {
+ page = pfn_to_online_page(pfn);
+ if (!page) {
pfn = ALIGN(pfn + 1, MAX_ORDER_NR_PAGES);
continue;
}
@@ -279,13 +280,13 @@ void pagetypeinfo_showmixedcount_print(s
block_end_pfn = ALIGN(pfn + 1, pageblock_nr_pages);
block_end_pfn = min(block_end_pfn, end_pfn);
- page = pfn_to_page(pfn);
pageblock_mt = get_pageblock_migratetype(page);
for (; pfn < block_end_pfn; pfn++) {
if (!pfn_valid_within(pfn))
continue;
+ /* The pageblock is online, no need to recheck. */
page = pfn_to_page(pfn);
if (page_zone(page) != zone)
_
From: David Hildenbrand <david(a)redhat.com>
Subject: mm/memory-failure.c: don't access uninitialized memmaps in memory_failure()
We should check for pfn_to_online_page() to not access uninitialized
memmaps. Reshuffle the code so we don't have to duplicate the error
message.
Link: http://lkml.kernel.org/r/20191009142435.3975-3-david@redhat.com
Signed-off-by: David Hildenbrand <david(a)redhat.com>
Fixes: f1dd2cd13c4b ("mm, memory_hotplug: do not associate hotadded memory to zones until online") [visible after d0dc12e86b319]
Acked-by: Naoya Horiguchi <n-horiguchi(a)ah.jp.nec.com>
Cc: Michal Hocko <mhocko(a)kernel.org>
Cc: <stable(a)vger.kernel.org> [4.13+]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/memory-failure.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
--- a/mm/memory-failure.c~mm-memory-failurec-dont-access-uninitialized-memmaps-in-memory_failure
+++ a/mm/memory-failure.c
@@ -1257,17 +1257,19 @@ int memory_failure(unsigned long pfn, in
if (!sysctl_memory_failure_recovery)
panic("Memory failure on page %lx", pfn);
- if (!pfn_valid(pfn)) {
+ p = pfn_to_online_page(pfn);
+ if (!p) {
+ if (pfn_valid(pfn)) {
+ pgmap = get_dev_pagemap(pfn, NULL);
+ if (pgmap)
+ return memory_failure_dev_pagemap(pfn, flags,
+ pgmap);
+ }
pr_err("Memory failure: %#lx: memory outside kernel control\n",
pfn);
return -ENXIO;
}
- pgmap = get_dev_pagemap(pfn, NULL);
- if (pgmap)
- return memory_failure_dev_pagemap(pfn, flags, pgmap);
-
- p = pfn_to_page(pfn);
if (PageHuge(p))
return memory_failure_hugetlb(pfn, flags);
if (TestSetPageHWPoison(p)) {
_
From: David Hildenbrand <david(a)redhat.com>
Subject: fs/proc/page.c: don't access uninitialized memmaps in fs/proc/page.c
There are three places where we access uninitialized memmaps, namely:
- /proc/kpagecount
- /proc/kpageflags
- /proc/kpagecgroup
We have initialized memmaps either when the section is online or when the
page was initialized to the ZONE_DEVICE. Uninitialized memmaps contain
garbage and in the worst case trigger kernel BUGs, especially with
CONFIG_PAGE_POISONING.
For example, not onlining a DIMM during boot and calling /proc/kpagecount
with CONFIG_PAGE_POISONING:
:/# cat /proc/kpagecount > tmp.test
[ 95.600592] BUG: unable to handle page fault for address: fffffffffffffffe
[ 95.601238] #PF: supervisor read access in kernel mode
[ 95.601675] #PF: error_code(0x0000) - not-present page
[ 95.602116] PGD 114616067 P4D 114616067 PUD 114618067 PMD 0
[ 95.602596] Oops: 0000 [#1] SMP NOPTI
[ 95.602920] CPU: 0 PID: 469 Comm: cat Not tainted 5.4.0-rc1-next-20191004+ #11
[ 95.603547] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.12.1-0-ga5cab58e9a3f-prebuilt.qemu.4
[ 95.604521] RIP: 0010:kpagecount_read+0xce/0x1e0
[ 95.604917] Code: e8 09 83 e0 3f 48 0f a3 02 73 2d 4c 89 e7 48 c1 e7 06 48 03 3d ab 51 01 01 74 1d 48 8b 57 08 480
[ 95.606450] RSP: 0018:ffffa14e409b7e78 EFLAGS: 00010202
[ 95.606904] RAX: fffffffffffffffe RBX: 0000000000020000 RCX: 0000000000000000
[ 95.607519] RDX: 0000000000000001 RSI: 00007f76b5595000 RDI: fffff35645000000
[ 95.608128] RBP: 00007f76b5595000 R08: 0000000000000001 R09: 0000000000000000
[ 95.608731] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000140000
[ 95.609327] R13: 0000000000020000 R14: 00007f76b5595000 R15: ffffa14e409b7f08
[ 95.609924] FS: 00007f76b577d580(0000) GS:ffff8f41bd400000(0000) knlGS:0000000000000000
[ 95.610599] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 95.611083] CR2: fffffffffffffffe CR3: 0000000078960000 CR4: 00000000000006f0
[ 95.611686] Call Trace:
[ 95.611906] proc_reg_read+0x3c/0x60
[ 95.612228] vfs_read+0xc5/0x180
[ 95.612505] ksys_read+0x68/0xe0
[ 95.612785] do_syscall_64+0x5c/0xa0
[ 95.613092] entry_SYSCALL_64_after_hwframe+0x49/0xbe
For now, let's drop support for ZONE_DEVICE from the three pseudo files in
order to fix this. To distinguish offline memory (with garbage memmap)
from ZONE_DEVICE memory with properly initialized memmaps, we would have
to check get_dev_pagemap() and pfn_zone_device_reserved() right now. The
usage of both (especially, special casing devmem) is frowned upon and
needs to be reworked. The fundamental issue we have is:
if (pfn_to_online_page(pfn)) {
/* memmap initialized */
} else if (pfn_valid(pfn)) {
/*
* ???
* a) offline memory. memmap garbage.
* b) devmem: memmap initialized to ZONE_DEVICE.
* c) devmem: reserved for driver. memmap garbage.
* (d) devmem: memmap currently initializing - garbage)
*/
}
We'll leave the pfn_zone_device_reserved() check in stable_page_flags() in
place as that function is also used from memory failure. We now no longer
dump information about pages that are not in use anymore - offline.
Link: http://lkml.kernel.org/r/20191009142435.3975-2-david@redhat.com
Fixes: f1dd2cd13c4b ("mm, memory_hotplug: do not associate hotadded memory to zones until online") [visible after d0dc12e86b319]
Signed-off-by: David Hildenbrand <david(a)redhat.com>
Reported-by: Qian Cai <cai(a)lca.pw>
Acked-by: Michal Hocko <mhocko(a)suse.com>
Cc: Dan Williams <dan.j.williams(a)intel.com>
Cc: Alexey Dobriyan <adobriyan(a)gmail.com>
Cc: Stephen Rothwell <sfr(a)canb.auug.org.au>
Cc: Toshiki Fukasawa <t-fukasawa(a)vx.jp.nec.com>
Cc: Pankaj gupta <pagupta(a)redhat.com>
Cc: Mike Rapoport <rppt(a)linux.vnet.ibm.com>
Cc: Anthony Yznaga <anthony.yznaga(a)oracle.com>
Cc: "Aneesh Kumar K.V" <aneesh.kumar(a)linux.ibm.com>
Cc: <stable(a)vger.kernel.org> [4.13+]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
fs/proc/page.c | 28 ++++++++++++++++------------
1 file changed, 16 insertions(+), 12 deletions(-)
--- a/fs/proc/page.c~mm-dont-access-uninitialized-memmaps-in-fs-proc-pagec
+++ a/fs/proc/page.c
@@ -42,10 +42,12 @@ static ssize_t kpagecount_read(struct fi
return -EINVAL;
while (count > 0) {
- if (pfn_valid(pfn))
- ppage = pfn_to_page(pfn);
- else
- ppage = NULL;
+ /*
+ * TODO: ZONE_DEVICE support requires to identify
+ * memmaps that were actually initialized.
+ */
+ ppage = pfn_to_online_page(pfn);
+
if (!ppage || PageSlab(ppage) || page_has_type(ppage))
pcount = 0;
else
@@ -216,10 +218,11 @@ static ssize_t kpageflags_read(struct fi
return -EINVAL;
while (count > 0) {
- if (pfn_valid(pfn))
- ppage = pfn_to_page(pfn);
- else
- ppage = NULL;
+ /*
+ * TODO: ZONE_DEVICE support requires to identify
+ * memmaps that were actually initialized.
+ */
+ ppage = pfn_to_online_page(pfn);
if (put_user(stable_page_flags(ppage), out)) {
ret = -EFAULT;
@@ -261,10 +264,11 @@ static ssize_t kpagecgroup_read(struct f
return -EINVAL;
while (count > 0) {
- if (pfn_valid(pfn))
- ppage = pfn_to_page(pfn);
- else
- ppage = NULL;
+ /*
+ * TODO: ZONE_DEVICE support requires to identify
+ * memmaps that were actually initialized.
+ */
+ ppage = pfn_to_online_page(pfn);
if (ppage)
ino = page_cgroup_ino(ppage);
_
From: David Hildenbrand <david(a)redhat.com>
Subject: drivers/base/memory.c: don't access uninitialized memmaps in soft_offline_page_store()
Uninitialized memmaps contain garbage and in the worst case trigger kernel
BUGs, especially with CONFIG_PAGE_POISONING. They should not get touched.
Right now, when trying to soft-offline a PFN that resides on a memory
block that was never onlined, one gets a misleading error with
CONFIG_PAGE_POISONING:
:/# echo 5637144576 > /sys/devices/system/memory/soft_offline_page
[ 23.097167] soft offline: 0x150000 page already poisoned
But the actual result depends on the garbage in the memmap.
soft_offline_page() can only work with online pages, it returns -EIO in
case of ZONE_DEVICE. Make sure to only forward pages that are online
(iow, managed by the buddy) and, therefore, have an initialized memmap.
Add a check against pfn_to_online_page() and similarly return -EIO.
Link: http://lkml.kernel.org/r/20191010141200.8985-1-david@redhat.com
Fixes: f1dd2cd13c4b ("mm, memory_hotplug: do not associate hotadded memory to zones until online") [visible after d0dc12e86b319]
Signed-off-by: David Hildenbrand <david(a)redhat.com>
Acked-by: Naoya Horiguchi <n-horiguchi(a)ah.jp.nec.com>
Acked-by: Michal Hocko <mhocko(a)suse.com>
Cc: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Cc: "Rafael J. Wysocki" <rafael(a)kernel.org>
Cc: <stable(a)vger.kernel.org> [4.13+]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
drivers/base/memory.c | 3 +++
1 file changed, 3 insertions(+)
--- a/drivers/base/memory.c~drivers-base-memoryc-dont-access-uninitialized-memmaps-in-soft_offline_page_store
+++ a/drivers/base/memory.c
@@ -540,6 +540,9 @@ static ssize_t soft_offline_page_store(s
pfn >>= PAGE_SHIFT;
if (!pfn_valid(pfn))
return -ENXIO;
+ /* Only online pages can be soft-offlined (esp., not ZONE_DEVICE). */
+ if (!pfn_to_online_page(pfn))
+ return -EIO;
ret = soft_offline_page(pfn_to_page(pfn), 0);
return ret == 0 ? count : ret;
}
_
The patch titled
Subject: mm, meminit: recalculate pcpu batch and high limits after init completes
has been added to the -mm tree. Its filename is
mm-meminit-recalculate-pcpu-batch-and-high-limits-after-init-completes.patch
This patch should soon appear at
http://ozlabs.org/~akpm/mmots/broken-out/mm-meminit-recalculate-pcpu-batch-…
and later at
http://ozlabs.org/~akpm/mmotm/broken-out/mm-meminit-recalculate-pcpu-batch-…
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next and is updated
there every 3-4 working days
------------------------------------------------------
From: Mel Gorman <mgorman(a)techsingularity.net>
Subject: mm, meminit: recalculate pcpu batch and high limits after init completes
Deferred memory initialisation updates zone->managed_pages during the
initialisation phase but before that finishes, the per-cpu page allocator
(pcpu) calculates the number of pages allocated/freed in batches as well
as the maximum number of pages allowed on a per-cpu list. As
zone->managed_pages is not up to date yet, the pcpu initialisation
calculates inappropriately low batch and high values.
This increases zone lock contention quite severely in some cases with the
degree of severity depending on how many CPUs share a local zone and the
size of the zone. A private report indicated that kernel build times were
excessive with extremely high system CPU usage. A perf profile indicated
that a large chunk of time was lost on zone->lock contention.
This patch recalculates the pcpu batch and high values after deferred
initialisation completes on each node. It was tested on a 2-socket AMD
EPYC 2 machine using a kernel compilation workload -- allmodconfig and all
available CPUs.
mmtests configuration: config-workload-kernbench-max Configuration was
modified to build on a fresh XFS partition.
kernbench
5.4.0-rc3 5.4.0-rc3
vanilla resetpcpu-v1r1
Amean user-256 13249.50 ( 0.00%) 15928.40 * -20.22%*
Amean syst-256 14760.30 ( 0.00%) 4551.77 * 69.16%*
Amean elsp-256 162.42 ( 0.00%) 118.46 * 27.06%*
Stddev user-256 42.97 ( 0.00%) 50.83 ( -18.30%)
Stddev syst-256 336.87 ( 0.00%) 33.70 ( 90.00%)
Stddev elsp-256 2.46 ( 0.00%) 0.81 ( 67.01%)
5.4.0-rc3 5.4.0-rc3
vanillaresetpcpu-v1r1
Duration User 39766.24 47802.92
Duration System 44298.10 13671.93
Duration Elapsed 519.11 387.65
The patch reduces system CPU usage by 69.16% and total build time by
27.06%. The variance of system CPU usage is also much reduced.
Link: http://lkml.kernel.org/r/20191018105606.3249-3-mgorman@techsingularity.net
Signed-off-by: Mel Gorman <mgorman(a)techsingularity.net>
Tested-by: Matt Fleming <matt(a)codeblueprint.co.uk>
Acked-by: Michal Hocko <mhocko(a)suse.com>
Cc: Vlastimil Babka <vbabka(a)suse.cz>
Cc: Thomas Gleixner <tglx(a)linutronix.de>
Cc: Borislav Petkov <bp(a)alien8.de>
Cc: <stable(a)vger.kernel.org> [4.1+]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/page_alloc.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
--- a/mm/page_alloc.c~mm-meminit-recalculate-pcpu-batch-and-high-limits-after-init-completes
+++ a/mm/page_alloc.c
@@ -1818,6 +1818,14 @@ static int __init deferred_init_memmap(v
*/
while (spfn < epfn)
nr_pages += deferred_init_maxorder(&i, zone, &spfn, &epfn);
+
+ /*
+ * The number of managed pages has changed due to the initialisation
+ * so the pcpu batch and high limits needs to be updated or the limits
+ * will be artificially small.
+ */
+ zone_pcp_update(zone);
+
zone_empty:
pgdat_resize_unlock(pgdat, &flags);
@@ -8518,7 +8526,6 @@ void free_contig_range(unsigned long pfn
WARN(count != 0, "%d pages are still in use!\n", count);
}
-#ifdef CONFIG_MEMORY_HOTPLUG
/*
* The zone indicated has a new number of managed_pages; batch sizes and percpu
* page high values need to be recalulated.
@@ -8529,7 +8536,6 @@ void __meminit zone_pcp_update(struct zo
__zone_pcp_update(zone);
mutex_unlock(&pcp_batch_high_lock);
}
-#endif
void zone_pcp_reset(struct zone *zone)
{
_
Patches currently in -mm which might be from mgorman(a)techsingularity.net are
mm-pcp-share-common-code-between-memory-hotplug-and-percpu-sysctl-handler.patch
mm-meminit-recalculate-pcpu-batch-and-high-limits-after-init-completes.patch
mm-pcpu-make-zone-pcp-updates-and-reset-internal-to-the-mm.patch
The patch titled
Subject: mm, pcp: share common code between memory hotplug and percpu sysctl handler
has been added to the -mm tree. Its filename is
mm-pcp-share-common-code-between-memory-hotplug-and-percpu-sysctl-handler.patch
This patch should soon appear at
http://ozlabs.org/~akpm/mmots/broken-out/mm-pcp-share-common-code-between-m…
and later at
http://ozlabs.org/~akpm/mmotm/broken-out/mm-pcp-share-common-code-between-m…
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next and is updated
there every 3-4 working days
------------------------------------------------------
From: Mel Gorman <mgorman(a)techsingularity.net>
Subject: mm, pcp: share common code between memory hotplug and percpu sysctl handler
Both the percpu_pagelist_fraction sysctl handler and memory hotplug have a
common requirement of updating the pcpu page allocation batch and high
values. Split the relevant helper to share common code.
No functional change.
Link: http://lkml.kernel.org/r/20191018105606.3249-2-mgorman@techsingularity.net
Signed-off-by: Mel Gorman <mgorman(a)techsingularity.net>
Tested-by: Matt Fleming <matt(a)codeblueprint.co.uk>
Acked-by: Michal Hocko <mhocko(a)suse.com>
Cc: Vlastimil Babka <vbabka(a)suse.cz>
Cc: Thomas Gleixner <tglx(a)linutronix.de>
Cc: Borislav Petkov <bp(a)alien8.de>
Cc: <stable(a)vger.kernel.org> [4.1+]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/page_alloc.c | 23 ++++++++++++-----------
1 file changed, 12 insertions(+), 11 deletions(-)
--- a/mm/page_alloc.c~mm-pcp-share-common-code-between-memory-hotplug-and-percpu-sysctl-handler
+++ a/mm/page_alloc.c
@@ -7985,6 +7985,15 @@ int lowmem_reserve_ratio_sysctl_handler(
return 0;
}
+static void __zone_pcp_update(struct zone *zone)
+{
+ unsigned int cpu;
+
+ for_each_possible_cpu(cpu)
+ pageset_set_high_and_batch(zone,
+ per_cpu_ptr(zone->pageset, cpu));
+}
+
/*
* percpu_pagelist_fraction - changes the pcp->high for each zone on each
* cpu. It is the fraction of total pages in each zone that a hot per cpu
@@ -8016,13 +8025,8 @@ int percpu_pagelist_fraction_sysctl_hand
if (percpu_pagelist_fraction == old_percpu_pagelist_fraction)
goto out;
- for_each_populated_zone(zone) {
- unsigned int cpu;
-
- for_each_possible_cpu(cpu)
- pageset_set_high_and_batch(zone,
- per_cpu_ptr(zone->pageset, cpu));
- }
+ for_each_populated_zone(zone)
+ __zone_pcp_update(zone);
out:
mutex_unlock(&pcp_batch_high_lock);
return ret;
@@ -8521,11 +8525,8 @@ void free_contig_range(unsigned long pfn
*/
void __meminit zone_pcp_update(struct zone *zone)
{
- unsigned cpu;
mutex_lock(&pcp_batch_high_lock);
- for_each_possible_cpu(cpu)
- pageset_set_high_and_batch(zone,
- per_cpu_ptr(zone->pageset, cpu));
+ __zone_pcp_update(zone);
mutex_unlock(&pcp_batch_high_lock);
}
#endif
_
Patches currently in -mm which might be from mgorman(a)techsingularity.net are
mm-pcp-share-common-code-between-memory-hotplug-and-percpu-sysctl-handler.patch
mm-meminit-recalculate-pcpu-batch-and-high-limits-after-init-completes.patch
mm-pcpu-make-zone-pcp-updates-and-reset-internal-to-the-mm.patch
The patch titled
Subject: mm: memcontrol: fix NULL-ptr deref in percpu stats flush
has been added to the -mm tree. Its filename is
mm-memcontrol-fix-null-ptr-deref-in-percpu-stats-flush.patch
This patch should soon appear at
http://ozlabs.org/~akpm/mmots/broken-out/mm-memcontrol-fix-null-ptr-deref-i…
and later at
http://ozlabs.org/~akpm/mmotm/broken-out/mm-memcontrol-fix-null-ptr-deref-i…
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next and is updated
there every 3-4 working days
------------------------------------------------------
From: Shakeel Butt <shakeelb(a)google.com>
Subject: mm: memcontrol: fix NULL-ptr deref in percpu stats flush
__mem_cgroup_free() can be called on the failure path in
mem_cgroup_alloc(). However memcg_flush_percpu_vmstats() and
memcg_flush_percpu_vmevents() which are called from __mem_cgroup_free()
access the fields of memcg which can potentially be null if called from
failure path from mem_cgroup_alloc(). Indeed syzbot has reported the
following crash:
R13: 00000000004bf27d R14: 00000000004db028 R15: 0000000000000003
kasan: CONFIG_KASAN_INLINE enabled
kasan: GPF could be caused by NULL-ptr deref or user memory access
general protection fault: 0000 [#1] PREEMPT SMP KASAN
CPU: 0 PID: 30393 Comm: syz-executor.1 Not tainted 5.4.0-rc2+ #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:memcg_flush_percpu_vmstats+0x4ae/0x930 mm/memcontrol.c:3436
Code: 05 41 89 c0 41 0f b6 04 24 41 38 c7 7c 08 84 c0 0f 85 5d 03 00 00 44 3b 05 33 d5 12 08 0f 83 e2 00 00 00 4c 89 f0 48 c1 e8 03 <42> 80 3c 28 00 0f 85 91 03 00 00 48 8b 85 10 fe ff ff 48 8b b0 90
RSP: 0018:ffff888095c27980 EFLAGS: 00010206
RAX: 0000000000000012 RBX: ffff888095c27b28 RCX: ffffc90008192000
RDX: 0000000000040000 RSI: ffffffff8340fae7 RDI: 0000000000000007
RBP: ffff888095c27be0 R08: 0000000000000000 R09: ffffed1013f0da33
R10: ffffed1013f0da32 R11: ffff88809f86d197 R12: fffffbfff138b760
R13: dffffc0000000000 R14: 0000000000000090 R15: 0000000000000007
FS: 00007f5027170700(0000) GS:ffff8880ae800000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000710158 CR3: 00000000a7b18000 CR4: 00000000001406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
__mem_cgroup_free+0x1a/0x190 mm/memcontrol.c:5021
mem_cgroup_free mm/memcontrol.c:5033 [inline]
mem_cgroup_css_alloc+0x3a1/0x1ae0 mm/memcontrol.c:5160
css_create kernel/cgroup/cgroup.c:5156 [inline]
cgroup_apply_control_enable+0x44d/0xc40 kernel/cgroup/cgroup.c:3119
cgroup_mkdir+0x899/0x11b0 kernel/cgroup/cgroup.c:5401
kernfs_iop_mkdir+0x14d/0x1d0 fs/kernfs/dir.c:1124
vfs_mkdir+0x42e/0x670 fs/namei.c:3807
do_mkdirat+0x234/0x2a0 fs/namei.c:3830
__do_sys_mkdir fs/namei.c:3846 [inline]
__se_sys_mkdir fs/namei.c:3844 [inline]
__x64_sys_mkdir+0x5c/0x80 fs/namei.c:3844
do_syscall_64+0xfa/0x760 arch/x86/entry/common.c:290
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x459a59
Code: fd b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 0f 83 cb b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007f502716fc78 EFLAGS: 00000246 ORIG_RAX: 0000000000000053
RAX: ffffffffffffffda RBX: 00007f502716fc90 RCX: 0000000000459a59
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000020000180
RBP: 000000000075bf20 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f50271706d4
R13: 00000000004bf27d R14: 00000000004db028 R15: 0000000000000003
Fixing this by moving the flush to mem_cgroup_free as there is no need
to flush anything if we see failure in mem_cgroup_alloc().
Link: http://lkml.kernel.org/r/20191018165231.249872-1-shakeelb@google.com
Fixes: bb65f89b7d3d ("mm: memcontrol: flush percpu vmevents before releasing memcg")
Fixes: c350a99ea2b1 ("mm: memcontrol: flush percpu vmstats before releasing memcg")
Signed-off-by: Shakeel Butt <shakeelb(a)google.com>
Reported-by: syzbot+515d5bcfe179cdf049b2(a)syzkaller.appspotmail.com
Reviewed-by: Roman Gushchin <guro(a)fb.com>
Cc: Michal Hocko <mhocko(a)suse.com>
Cc: Johannes Weiner <hannes(a)cmpxchg.org>
Cc: Vladimir Davydov <vdavydov.dev(a)gmail.com>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/memcontrol.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
--- a/mm/memcontrol.c~mm-memcontrol-fix-null-ptr-deref-in-percpu-stats-flush
+++ a/mm/memcontrol.c
@@ -5014,12 +5014,6 @@ static void __mem_cgroup_free(struct mem
{
int node;
- /*
- * Flush percpu vmstats and vmevents to guarantee the value correctness
- * on parent's and all ancestor levels.
- */
- memcg_flush_percpu_vmstats(memcg, false);
- memcg_flush_percpu_vmevents(memcg);
for_each_node(node)
free_mem_cgroup_per_node_info(memcg, node);
free_percpu(memcg->vmstats_percpu);
@@ -5030,6 +5024,12 @@ static void __mem_cgroup_free(struct mem
static void mem_cgroup_free(struct mem_cgroup *memcg)
{
memcg_wb_domain_exit(memcg);
+ /*
+ * Flush percpu vmstats and vmevents to guarantee the value correctness
+ * on parent's and all ancestor levels.
+ */
+ memcg_flush_percpu_vmstats(memcg, false);
+ memcg_flush_percpu_vmevents(memcg);
__mem_cgroup_free(memcg);
}
_
Patches currently in -mm which might be from shakeelb(a)google.com are
mm-memcontrol-fix-null-ptr-deref-in-percpu-stats-flush.patch
From: Jaegeuk Kim <jaegeuk(a)kernel.org>
[ Upstream commit 0e0667b625cf64243df83171bff61f9d350b9ca5 ]
After quota_off, we'll get some dirty blocks. If put_super don't have a chance
to flush them by checkpoint, it causes NULL pointer exception in end_io after
iput(node_inode). (e.g., by checkpoint=disable)
Reviewed-by: Chao Yu <yuchao0(a)huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk(a)kernel.org>
Signed-off-by: Sasha Levin <sashal(a)kernel.org>
---
fs/f2fs/super.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/fs/f2fs/super.c b/fs/f2fs/super.c
index 344aa861774bd..1ff0659d53d01 100644
--- a/fs/f2fs/super.c
+++ b/fs/f2fs/super.c
@@ -1523,6 +1523,12 @@ void f2fs_quota_off_umount(struct super_block *sb)
set_sbi_flag(F2FS_SB(sb), SBI_NEED_FSCK);
}
}
+ /*
+ * In case of checkpoint=disable, we must flush quota blocks.
+ * This can cause NULL exception for node_inode in end_io, since
+ * put_super already dropped it.
+ */
+ sync_filesystem(sb);
}
int f2fs_get_projid(struct inode *inode, kprojid_t *projid)
--
2.20.1
From: Phil Elwell <phil(a)raspberrypi.org>
[ Upstream commit 30ec514d440cf2c472c8e4b0079af2c731f71a3e ]
The SC16IS752 has an Enhanced Feature Register which is aliased at the
same address as the Interrupt Identification Register; accessing it
requires that a magic value is written to the Line Configuration
Register. If an interrupt is raised while the EFR is mapped in then
the ISR won't be able to access the IIR, leading to the "Unexpected
interrupt" error messages.
Avoid the problem by claiming a mutex around accesses to the EFR
register, also claiming the mutex in the interrupt handler work
item (this is equivalent to disabling interrupts to interlock against
a non-threaded interrupt handler).
See: https://github.com/raspberrypi/linux/issues/2529
Signed-off-by: Phil Elwell <phil(a)raspberrypi.org>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal(a)kernel.org>
---
drivers/tty/serial/sc16is7xx.c | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/drivers/tty/serial/sc16is7xx.c b/drivers/tty/serial/sc16is7xx.c
index 032f3c13b8c45..a3dfefa33e3c1 100644
--- a/drivers/tty/serial/sc16is7xx.c
+++ b/drivers/tty/serial/sc16is7xx.c
@@ -332,6 +332,7 @@ struct sc16is7xx_port {
struct kthread_worker kworker;
struct task_struct *kworker_task;
struct kthread_work irq_work;
+ struct mutex efr_lock;
struct sc16is7xx_one p[0];
};
@@ -496,6 +497,21 @@ static int sc16is7xx_set_baud(struct uart_port *port, int baud)
div /= 4;
}
+ /* In an amazing feat of design, the Enhanced Features Register shares
+ * the address of the Interrupt Identification Register, and is
+ * switched in by writing a magic value (0xbf) to the Line Control
+ * Register. Any interrupt firing during this time will see the EFR
+ * where it expects the IIR to be, leading to "Unexpected interrupt"
+ * messages.
+ *
+ * Prevent this possibility by claiming a mutex while accessing the
+ * EFR, and claiming the same mutex from within the interrupt handler.
+ * This is similar to disabling the interrupt, but that doesn't work
+ * because the bulk of the interrupt processing is run as a workqueue
+ * job in thread context.
+ */
+ mutex_lock(&s->efr_lock);
+
lcr = sc16is7xx_port_read(port, SC16IS7XX_LCR_REG);
/* Open the LCR divisors for configuration */
@@ -511,6 +527,8 @@ static int sc16is7xx_set_baud(struct uart_port *port, int baud)
/* Put LCR back to the normal mode */
sc16is7xx_port_write(port, SC16IS7XX_LCR_REG, lcr);
+ mutex_unlock(&s->efr_lock);
+
sc16is7xx_port_update(port, SC16IS7XX_MCR_REG,
SC16IS7XX_MCR_CLKSEL_BIT,
prescaler);
@@ -693,6 +711,8 @@ static void sc16is7xx_ist(struct kthread_work *ws)
{
struct sc16is7xx_port *s = to_sc16is7xx_port(ws, irq_work);
+ mutex_lock(&s->efr_lock);
+
while (1) {
bool keep_polling = false;
int i;
@@ -702,6 +722,8 @@ static void sc16is7xx_ist(struct kthread_work *ws)
if (!keep_polling)
break;
}
+
+ mutex_unlock(&s->efr_lock);
}
static irqreturn_t sc16is7xx_irq(int irq, void *dev_id)
@@ -888,6 +910,9 @@ static void sc16is7xx_set_termios(struct uart_port *port,
if (!(termios->c_cflag & CREAD))
port->ignore_status_mask |= SC16IS7XX_LSR_BRK_ERROR_MASK;
+ /* As above, claim the mutex while accessing the EFR. */
+ mutex_lock(&s->efr_lock);
+
sc16is7xx_port_write(port, SC16IS7XX_LCR_REG,
SC16IS7XX_LCR_CONF_MODE_B);
@@ -909,6 +934,8 @@ static void sc16is7xx_set_termios(struct uart_port *port,
/* Update LCR register */
sc16is7xx_port_write(port, SC16IS7XX_LCR_REG, lcr);
+ mutex_unlock(&s->efr_lock);
+
/* Get baud rate generator configuration */
baud = uart_get_baud_rate(port, termios, old,
port->uartclk / 16 / 4 / 0xffff,
@@ -1172,6 +1199,7 @@ static int sc16is7xx_probe(struct device *dev,
s->regmap = regmap;
s->devtype = devtype;
dev_set_drvdata(dev, s);
+ mutex_init(&s->efr_lock);
init_kthread_worker(&s->kworker);
init_kthread_work(&s->irq_work, sc16is7xx_ist);
--
2.20.1
From: Phil Elwell <phil(a)raspberrypi.org>
[ Upstream commit 30ec514d440cf2c472c8e4b0079af2c731f71a3e ]
The SC16IS752 has an Enhanced Feature Register which is aliased at the
same address as the Interrupt Identification Register; accessing it
requires that a magic value is written to the Line Configuration
Register. If an interrupt is raised while the EFR is mapped in then
the ISR won't be able to access the IIR, leading to the "Unexpected
interrupt" error messages.
Avoid the problem by claiming a mutex around accesses to the EFR
register, also claiming the mutex in the interrupt handler work
item (this is equivalent to disabling interrupts to interlock against
a non-threaded interrupt handler).
See: https://github.com/raspberrypi/linux/issues/2529
Signed-off-by: Phil Elwell <phil(a)raspberrypi.org>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal(a)kernel.org>
---
drivers/tty/serial/sc16is7xx.c | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/drivers/tty/serial/sc16is7xx.c b/drivers/tty/serial/sc16is7xx.c
index 82451bb6622bd..f80a88d107d7f 100644
--- a/drivers/tty/serial/sc16is7xx.c
+++ b/drivers/tty/serial/sc16is7xx.c
@@ -332,6 +332,7 @@ struct sc16is7xx_port {
struct kthread_worker kworker;
struct task_struct *kworker_task;
struct kthread_work irq_work;
+ struct mutex efr_lock;
struct sc16is7xx_one p[0];
};
@@ -503,6 +504,21 @@ static int sc16is7xx_set_baud(struct uart_port *port, int baud)
div /= 4;
}
+ /* In an amazing feat of design, the Enhanced Features Register shares
+ * the address of the Interrupt Identification Register, and is
+ * switched in by writing a magic value (0xbf) to the Line Control
+ * Register. Any interrupt firing during this time will see the EFR
+ * where it expects the IIR to be, leading to "Unexpected interrupt"
+ * messages.
+ *
+ * Prevent this possibility by claiming a mutex while accessing the
+ * EFR, and claiming the same mutex from within the interrupt handler.
+ * This is similar to disabling the interrupt, but that doesn't work
+ * because the bulk of the interrupt processing is run as a workqueue
+ * job in thread context.
+ */
+ mutex_lock(&s->efr_lock);
+
lcr = sc16is7xx_port_read(port, SC16IS7XX_LCR_REG);
/* Open the LCR divisors for configuration */
@@ -518,6 +534,8 @@ static int sc16is7xx_set_baud(struct uart_port *port, int baud)
/* Put LCR back to the normal mode */
sc16is7xx_port_write(port, SC16IS7XX_LCR_REG, lcr);
+ mutex_unlock(&s->efr_lock);
+
sc16is7xx_port_update(port, SC16IS7XX_MCR_REG,
SC16IS7XX_MCR_CLKSEL_BIT,
prescaler);
@@ -700,6 +718,8 @@ static void sc16is7xx_ist(struct kthread_work *ws)
{
struct sc16is7xx_port *s = to_sc16is7xx_port(ws, irq_work);
+ mutex_lock(&s->efr_lock);
+
while (1) {
bool keep_polling = false;
int i;
@@ -709,6 +729,8 @@ static void sc16is7xx_ist(struct kthread_work *ws)
if (!keep_polling)
break;
}
+
+ mutex_unlock(&s->efr_lock);
}
static irqreturn_t sc16is7xx_irq(int irq, void *dev_id)
@@ -903,6 +925,9 @@ static void sc16is7xx_set_termios(struct uart_port *port,
if (!(termios->c_cflag & CREAD))
port->ignore_status_mask |= SC16IS7XX_LSR_BRK_ERROR_MASK;
+ /* As above, claim the mutex while accessing the EFR. */
+ mutex_lock(&s->efr_lock);
+
sc16is7xx_port_write(port, SC16IS7XX_LCR_REG,
SC16IS7XX_LCR_CONF_MODE_B);
@@ -924,6 +949,8 @@ static void sc16is7xx_set_termios(struct uart_port *port,
/* Update LCR register */
sc16is7xx_port_write(port, SC16IS7XX_LCR_REG, lcr);
+ mutex_unlock(&s->efr_lock);
+
/* Get baud rate generator configuration */
baud = uart_get_baud_rate(port, termios, old,
port->uartclk / 16 / 4 / 0xffff,
@@ -1186,6 +1213,7 @@ static int sc16is7xx_probe(struct device *dev,
s->regmap = regmap;
s->devtype = devtype;
dev_set_drvdata(dev, s);
+ mutex_init(&s->efr_lock);
kthread_init_worker(&s->kworker);
kthread_init_work(&s->irq_work, sc16is7xx_ist);
--
2.20.1
On 10/17/2019 7:01 PM, Martin K. Petersen wrote:
> Hannes,
>
>> The BUILD_NVME define never got defined anywhere, causing NVMe
>> commands to be treated as SCSI commands when freeing the buffers.
>> This was causing a stuck discovery and a horrible crash in
>> lpfc_set_rrq_active() later on.
> Applied to 5.4/scsi-fixes, thanks!
>
The offending patches that introduced the define are:
From 12.2.0.0:
scsi: lpfc: Move SCSI and NVME Stats to hardware queue structures
commit 4c47efc140fa926f00aa59c248458d95bd7b5eab
From 12.4.0.0:
scsi: lpfc: Merge per-protocol WQ/CQ pairs into single per-cpu pair
commit c00f62e6c5468ed0673c583f1ff284274e817410
The 12.2 patch just misses some stats - no big deal.
But the 12.4 patch introduces a logic error, and is in the head of the
stable tree.
I assume that 5.4/scsi-fixes will get merged into 5.4 pre-release, and
that the stable tree will rebase to pick it up ?
-- james
v4.11-rc1 did introduce a patch series that rearranged the
sdio quirks into a header file. Unfortunately this did forget
to handle SDIO_VENDOR_ID_TI differently between wl1251 and
wl1271 with the result that although the wl1251 was found on
the sdio bus, the firmware did not load any more and there was
no interface registration.
This patch defines separate constants to be used by sdio quirks
and drivers.
Fixes: 884f38607897 ("mmc: core: move some sdio IDs out of quirks file")
Signed-off-by: H. Nikolaus Schaller <hns(a)goldelico.com>
Cc: <stable(a)vger.kernel.org> # 4.11.0
---
include/linux/mmc/sdio_ids.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/include/linux/mmc/sdio_ids.h b/include/linux/mmc/sdio_ids.h
index d1a5d5df02f5..08b25c02b5a1 100644
--- a/include/linux/mmc/sdio_ids.h
+++ b/include/linux/mmc/sdio_ids.h
@@ -71,6 +71,8 @@
#define SDIO_VENDOR_ID_TI 0x0097
#define SDIO_DEVICE_ID_TI_WL1271 0x4076
+#define SDIO_VENDOR_ID_TI_WL1251 0x104c
+#define SDIO_DEVICE_ID_TI_WL1251 0x9066
#define SDIO_VENDOR_ID_STE 0x0020
#define SDIO_DEVICE_ID_STE_CW1200 0x2280
--
2.19.1
Pandora_wl1251_init_card was used to do special pdata based
setup of the sdio mmc interface. This does no longer work with
v4.7 and later. A fix requires a device tree based mmc3 setup.
Therefore we move the special setup to omap_hsmmc.c instead
of calling some pdata supplied init_card function.
The new code checks for a DT child node compatible to wl1251
so it will not affect other MMC3 use cases.
Fixes: 81eef6ca9201 ("mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel")
Signed-off-by: H. Nikolaus Schaller <hns(a)goldelico.com>
Cc: <stable(a)vger.kernel.org> # 4.7.0
---
drivers/mmc/host/omap_hsmmc.c | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index 952fa4063ff8..03ba80bcf319 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -1512,6 +1512,27 @@ static void omap_hsmmc_init_card(struct mmc_host *mmc, struct mmc_card *card)
if (mmc_pdata(host)->init_card)
mmc_pdata(host)->init_card(card);
+ else if (card->type == MMC_TYPE_SDIO || card->type == MMC_TYPE_SD_COMBO) {
+ struct device_node *np = mmc_dev(mmc)->of_node;
+
+ np = of_get_compatible_child(np, "ti,wl1251");
+ if (np) {
+ /*
+ * We have TI wl1251 attached to MMC3. Pass this information to
+ * SDIO core because it can't be probed by normal methods.
+ */
+
+ dev_info(host->dev, "found wl1251\n");
+ card->quirks |= MMC_QUIRK_NONSTD_SDIO;
+ card->cccr.wide_bus = 1;
+ card->cis.vendor = 0x104c;
+ card->cis.device = 0x9066;
+ card->cis.blksize = 512;
+ card->cis.max_dtr = 24000000;
+ card->ocr = 0x80;
+ of_node_put(np);
+ }
+ }
}
static void omap_hsmmc_enable_sdio_irq(struct mmc_host *mmc, int enable)
--
2.19.1
On Wed, 16 Oct 2019 05:43:10 PDT (-0700), sashal(a)kernel.org wrote:
> Hi,
>
> [This is an automated email]
>
> This commit has been processed because it contains a -stable tag.
> The stable tag indicates that it's relevant for the following trees: all
>
> The bot has tested the following trees: v5.3.6, v5.2.21, v4.19.79, v4.14.149, v4.9.196, v4.4.196.
>
> v5.3.6: Build OK!
> v5.2.21: Build OK!
> v4.19.79: Failed to apply! Possible dependencies:
> 86c7cbf1e8d1d ("irqchip/sifive-plic: Pre-compute context hart base and enable base")
> cc9f04f9a84f7 ("irqchip/sifive-plic: Implement irq_set_affinity() for SMP host")
>
> v4.14.149: Failed to apply! Possible dependencies:
> 215f4cc0fb208 ("irqchip/meson: Add support for gpio interrupt controller")
> 33c57c0d3c67f ("RISC-V: Add a basic defconfig")
> 4235ff50cf98d ("irqchip/irq-goldfish-pic: Add Goldfish PIC driver")
> 4a632cec8884b ("RISC-V: Enable module support in defconfig")
> 8237f8bc4f6eb ("irqchip: add a SiFive PLIC driver")
> 86c7cbf1e8d1d ("irqchip/sifive-plic: Pre-compute context hart base and enable base")
> c2ba80af48055 ("dt-bindings/goldfish-pic: Add device tree binding for Goldfish PIC driver")
> c94fb639d5462 ("irqchip: Add Kconfig menu")
> cc9f04f9a84f7 ("irqchip/sifive-plic: Implement irq_set_affinity() for SMP host")
> f55c73aef8904 ("irqchip/pdc: Add PDC interrupt controller for QCOM SoCs")
>
> v4.9.196: Failed to apply! Possible dependencies:
> 215f4cc0fb208 ("irqchip/meson: Add support for gpio interrupt controller")
> 33c57c0d3c67f ("RISC-V: Add a basic defconfig")
> 4235ff50cf98d ("irqchip/irq-goldfish-pic: Add Goldfish PIC driver")
> 4a632cec8884b ("RISC-V: Enable module support in defconfig")
> 5ed34d3a4387c ("irqchip: Add UniPhier AIDET irqchip driver")
> 7a08de1d8fd27 ("dt-bindings: Add device tree binding for Goldfish RTC driver")
> 8237f8bc4f6eb ("irqchip: add a SiFive PLIC driver")
> 86c7cbf1e8d1d ("irqchip/sifive-plic: Pre-compute context hart base and enable base")
> c2ba80af48055 ("dt-bindings/goldfish-pic: Add device tree binding for Goldfish PIC driver")
> c94fb639d5462 ("irqchip: Add Kconfig menu")
> cc9f04f9a84f7 ("irqchip/sifive-plic: Implement irq_set_affinity() for SMP host")
> f20cc9b00c7b7 ("irqchip/qcom: Add IRQ combiner driver")
> f55c73aef8904 ("irqchip/pdc: Add PDC interrupt controller for QCOM SoCs")
>
> v4.4.196: Failed to apply! Possible dependencies:
> 215f4cc0fb208 ("irqchip/meson: Add support for gpio interrupt controller")
> 33c57c0d3c67f ("RISC-V: Add a basic defconfig")
> 4235ff50cf98d ("irqchip/irq-goldfish-pic: Add Goldfish PIC driver")
> 44df427c894a4 ("irqchip: add nps Internal and external irqchips")
> 4a632cec8884b ("RISC-V: Enable module support in defconfig")
> 5952884258e52 ("irqchip/aspeed-vic: Add irq controller for Aspeed")
> 5ed34d3a4387c ("irqchip: Add UniPhier AIDET irqchip driver")
> 7a08de1d8fd27 ("dt-bindings: Add device tree binding for Goldfish RTC driver")
> 8237f8bc4f6eb ("irqchip: add a SiFive PLIC driver")
> aaa8666ada780 ("IRQCHIP: irq-pic32-evic: Add support for PIC32 interrupt controller")
> c27f29bbbf021 ("irqchip/mvebu-odmi: Add new driver for platform MSI on Marvell 7K/8K")
> c2ba80af48055 ("dt-bindings/goldfish-pic: Add device tree binding for Goldfish PIC driver")
> c94fb639d5462 ("irqchip: Add Kconfig menu")
> cc9f04f9a84f7 ("irqchip/sifive-plic: Implement irq_set_affinity() for SMP host")
> d03c023e1ea6c ("MAINTAINERS: Add Android Ion as a separate entry")
> e072041688ca7 ("drivers/irqchip: Add STM32 external interrupts support")
> f20cc9b00c7b7 ("irqchip/qcom: Add IRQ combiner driver")
> f55c73aef8904 ("irqchip/pdc: Add PDC interrupt controller for QCOM SoCs")
>
>
> NOTE: The patch will not be queued to stable trees until it is upstream.
>
> How should we proceed with this patch?
I think it's fine to leave this out of 4.19, as I doubt we have anyone using it
on RISC-V systems as there were some pretty major kernel bugs back then.
The PLIC driver was merged in 4.19, so the older kernels are obvious
non-starters.
This is a note to let you know that I've just added the patch titled
USB: ldusb: fix read info leaks
to my usb git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
in the usb-linus branch.
The patch will show up in the next release of the linux-next tree
(usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the
next -rc kernel release.
If you have any questions about this process, please let me know.
>From 7a6f22d7479b7a0b68eadd308a997dd64dda7dae Mon Sep 17 00:00:00 2001
From: Johan Hovold <johan(a)kernel.org>
Date: Fri, 18 Oct 2019 17:19:54 +0200
Subject: USB: ldusb: fix read info leaks
Fix broken read implementation, which could be used to trigger slab info
leaks.
The driver failed to check if the custom ring buffer was still empty
when waking up after having waited for more data. This would happen on
every interrupt-in completion, even if no data had been added to the
ring buffer (e.g. on disconnect events).
Due to missing sanity checks and uninitialised (kmalloced) ring-buffer
entries, this meant that huge slab info leaks could easily be triggered.
Note that the empty-buffer check after wakeup is enough to fix the info
leak on disconnect, but let's clear the buffer on allocation and add a
sanity check to read() to prevent further leaks.
Fixes: 2824bd250f0b ("[PATCH] USB: add ldusb driver")
Cc: stable <stable(a)vger.kernel.org> # 2.6.13
Reported-by: syzbot+6fe95b826644f7f12b0b(a)syzkaller.appspotmail.com
Signed-off-by: Johan Hovold <johan(a)kernel.org>
Link: https://lore.kernel.org/r/20191018151955.25135-2-johan@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/misc/ldusb.c | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/drivers/usb/misc/ldusb.c b/drivers/usb/misc/ldusb.c
index 147c90c2a4e5..15b5f06fb0b3 100644
--- a/drivers/usb/misc/ldusb.c
+++ b/drivers/usb/misc/ldusb.c
@@ -464,7 +464,7 @@ static ssize_t ld_usb_read(struct file *file, char __user *buffer, size_t count,
/* wait for data */
spin_lock_irq(&dev->rbsl);
- if (dev->ring_head == dev->ring_tail) {
+ while (dev->ring_head == dev->ring_tail) {
dev->interrupt_in_done = 0;
spin_unlock_irq(&dev->rbsl);
if (file->f_flags & O_NONBLOCK) {
@@ -474,12 +474,17 @@ static ssize_t ld_usb_read(struct file *file, char __user *buffer, size_t count,
retval = wait_event_interruptible(dev->read_wait, dev->interrupt_in_done);
if (retval < 0)
goto unlock_exit;
- } else {
- spin_unlock_irq(&dev->rbsl);
+
+ spin_lock_irq(&dev->rbsl);
}
+ spin_unlock_irq(&dev->rbsl);
/* actual_buffer contains actual_length + interrupt_in_buffer */
actual_buffer = (size_t *)(dev->ring_buffer + dev->ring_tail * (sizeof(size_t)+dev->interrupt_in_endpoint_size));
+ if (*actual_buffer > dev->interrupt_in_endpoint_size) {
+ retval = -EIO;
+ goto unlock_exit;
+ }
bytes_to_read = min(count, *actual_buffer);
if (bytes_to_read < *actual_buffer)
dev_warn(&dev->intf->dev, "Read buffer overflow, %zd bytes dropped\n",
@@ -690,10 +695,9 @@ static int ld_usb_probe(struct usb_interface *intf, const struct usb_device_id *
dev_warn(&intf->dev, "Interrupt out endpoint not found (using control endpoint instead)\n");
dev->interrupt_in_endpoint_size = usb_endpoint_maxp(dev->interrupt_in_endpoint);
- dev->ring_buffer =
- kmalloc_array(ring_buffer_size,
- sizeof(size_t) + dev->interrupt_in_endpoint_size,
- GFP_KERNEL);
+ dev->ring_buffer = kcalloc(ring_buffer_size,
+ sizeof(size_t) + dev->interrupt_in_endpoint_size,
+ GFP_KERNEL);
if (!dev->ring_buffer)
goto error;
dev->interrupt_in_buffer = kmalloc(dev->interrupt_in_endpoint_size, GFP_KERNEL);
--
2.23.0
This is a note to let you know that I've just added the patch titled
USB: serial: ti_usb_3410_5052: fix port-close races
to my usb git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
in the usb-linus branch.
The patch will show up in the next release of the linux-next tree
(usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the
next -rc kernel release.
If you have any questions about this process, please let me know.
>From 6f1d1dc8d540a9aa6e39b9cb86d3a67bbc1c8d8d Mon Sep 17 00:00:00 2001
From: Johan Hovold <johan(a)kernel.org>
Date: Fri, 11 Oct 2019 11:57:35 +0200
Subject: USB: serial: ti_usb_3410_5052: fix port-close races
Fix races between closing a port and opening or closing another port on
the same device which could lead to a failure to start or stop the
shared interrupt URB. The latter could potentially cause a
use-after-free or worse in the completion handler on driver unbind.
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Cc: stable <stable(a)vger.kernel.org>
Signed-off-by: Johan Hovold <johan(a)kernel.org>
---
drivers/usb/serial/ti_usb_3410_5052.c | 10 +++-------
1 file changed, 3 insertions(+), 7 deletions(-)
diff --git a/drivers/usb/serial/ti_usb_3410_5052.c b/drivers/usb/serial/ti_usb_3410_5052.c
index dd0ad67aa71e..9174ba2e06da 100644
--- a/drivers/usb/serial/ti_usb_3410_5052.c
+++ b/drivers/usb/serial/ti_usb_3410_5052.c
@@ -776,7 +776,6 @@ static void ti_close(struct usb_serial_port *port)
struct ti_port *tport;
int port_number;
int status;
- int do_unlock;
unsigned long flags;
tdev = usb_get_serial_data(port->serial);
@@ -800,16 +799,13 @@ static void ti_close(struct usb_serial_port *port)
"%s - cannot send close port command, %d\n"
, __func__, status);
- /* if mutex_lock is interrupted, continue anyway */
- do_unlock = !mutex_lock_interruptible(&tdev->td_open_close_lock);
+ mutex_lock(&tdev->td_open_close_lock);
--tport->tp_tdev->td_open_port_count;
- if (tport->tp_tdev->td_open_port_count <= 0) {
+ if (tport->tp_tdev->td_open_port_count == 0) {
/* last port is closed, shut down interrupt urb */
usb_kill_urb(port->serial->port[0]->interrupt_in_urb);
- tport->tp_tdev->td_open_port_count = 0;
}
- if (do_unlock)
- mutex_unlock(&tdev->td_open_close_lock);
+ mutex_unlock(&tdev->td_open_close_lock);
}
--
2.23.0
Until a few years ago, this driver was only used with CS GPIO. The
only exception is CS0 on AT91RM9200 which has to use internal CS. A
limitation of the internal CS is that they don't support CS High.
So by using the CS GPIO the CS high configuration was available except
for the particular case CS0 on RM9200.
When the support for the internal chip-select was added, the check of
the CS high support was not updated. Due to this the driver accepts
this configuration for all the SPI controller v2 (used by all SoCs
excepting the AT91RM9200) whereas the hardware doesn't support it for
infernal CS.
This patch fixes the test to match the hardware capabilities.
Fixes: 4820303480a1 ("spi: atmel: add support for the internal chip-select of the spi controller")
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Gregory CLEMENT <gregory.clement(a)bootlin.com>
---
drivers/spi/spi-atmel.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/drivers/spi/spi-atmel.c b/drivers/spi/spi-atmel.c
index 7a17c3e2a8ee..6e08ae539bc0 100644
--- a/drivers/spi/spi-atmel.c
+++ b/drivers/spi/spi-atmel.c
@@ -1176,10 +1176,8 @@ static int atmel_spi_setup(struct spi_device *spi)
as = spi_master_get_devdata(spi->master);
/* see notes above re chipselect */
- if (!atmel_spi_is_v2(as)
- && spi->chip_select == 0
- && (spi->mode & SPI_CS_HIGH)) {
- dev_dbg(&spi->dev, "setup: can't be active-high\n");
+ if (!as->use_cs_gpios && (spi->mode & SPI_CS_HIGH)) {
+ dev_warn(&spi->dev, "setup: non GPIO CS can't be active-high\n");
return -EINVAL;
}
--
2.23.0
From: Junya Monden <jmonden(a)jp.adit-jv.com>
Unlike other format-related DAI parameters, rdai->bit_clk_inv flag
is not properly re-initialized when setting format for new stream
processing. The inversion, if requested, is then applied not to default,
but to a previous value, which leads to SCKP bit in SSICR register being
set incorrectly.
Fix this by re-setting the flag to its initial value, determined by format.
Fixes: 1a7889ca8aba3 ("ASoC: rsnd: fixup SND_SOC_DAIFMT_xB_xF behavior")
Cc: Andrew Gabbasov <andrew_gabbasov(a)mentor.com>
Cc: Jiada Wang <jiada_wang(a)mentor.com>
Cc: Timo Wischer <twischer(a)de.adit-jv.com>
Cc: stable(a)vger.kernel.org # v3.17+
Signed-off-by: Junya Monden <jmonden(a)jp.adit-jv.com>
Signed-off-by: Eugeniu Rosca <erosca(a)de.adit-jv.com>
---
sound/soc/sh/rcar/core.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/sound/soc/sh/rcar/core.c b/sound/soc/sh/rcar/core.c
index bda5b958d0dc..e9596c2096cd 100644
--- a/sound/soc/sh/rcar/core.c
+++ b/sound/soc/sh/rcar/core.c
@@ -761,6 +761,7 @@ static int rsnd_soc_dai_set_fmt(struct snd_soc_dai *dai, unsigned int fmt)
}
/* set format */
+ rdai->bit_clk_inv = 0;
switch (fmt & SND_SOC_DAIFMT_FORMAT_MASK) {
case SND_SOC_DAIFMT_I2S:
rdai->sys_delay = 0;
--
2.23.0
Fix broken read implementation, which could be used to trigger slab info
leaks.
The driver failed to check if the custom ring buffer was still empty
when waking up after having waited for more data. This would happen on
every interrupt-in completion, even if no data had been added to the
ring buffer (e.g. on disconnect events).
Due to missing sanity checks and uninitialised (kmalloced) ring-buffer
entries, this meant that huge slab info leaks could easily be triggered.
Note that the empty-buffer check after wakeup is enough to fix the info
leak on disconnect, but let's clear the buffer on allocation and add a
sanity check to read() to prevent further leaks.
Fixes: 2824bd250f0b ("[PATCH] USB: add ldusb driver")
Cc: stable <stable(a)vger.kernel.org> # 2.6.13
Reported-by: syzbot+6fe95b826644f7f12b0b(a)syzkaller.appspotmail.com
Signed-off-by: Johan Hovold <johan(a)kernel.org>
---
drivers/usb/misc/ldusb.c | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/drivers/usb/misc/ldusb.c b/drivers/usb/misc/ldusb.c
index 147c90c2a4e5..15b5f06fb0b3 100644
--- a/drivers/usb/misc/ldusb.c
+++ b/drivers/usb/misc/ldusb.c
@@ -464,7 +464,7 @@ static ssize_t ld_usb_read(struct file *file, char __user *buffer, size_t count,
/* wait for data */
spin_lock_irq(&dev->rbsl);
- if (dev->ring_head == dev->ring_tail) {
+ while (dev->ring_head == dev->ring_tail) {
dev->interrupt_in_done = 0;
spin_unlock_irq(&dev->rbsl);
if (file->f_flags & O_NONBLOCK) {
@@ -474,12 +474,17 @@ static ssize_t ld_usb_read(struct file *file, char __user *buffer, size_t count,
retval = wait_event_interruptible(dev->read_wait, dev->interrupt_in_done);
if (retval < 0)
goto unlock_exit;
- } else {
- spin_unlock_irq(&dev->rbsl);
+
+ spin_lock_irq(&dev->rbsl);
}
+ spin_unlock_irq(&dev->rbsl);
/* actual_buffer contains actual_length + interrupt_in_buffer */
actual_buffer = (size_t *)(dev->ring_buffer + dev->ring_tail * (sizeof(size_t)+dev->interrupt_in_endpoint_size));
+ if (*actual_buffer > dev->interrupt_in_endpoint_size) {
+ retval = -EIO;
+ goto unlock_exit;
+ }
bytes_to_read = min(count, *actual_buffer);
if (bytes_to_read < *actual_buffer)
dev_warn(&dev->intf->dev, "Read buffer overflow, %zd bytes dropped\n",
@@ -690,10 +695,9 @@ static int ld_usb_probe(struct usb_interface *intf, const struct usb_device_id *
dev_warn(&intf->dev, "Interrupt out endpoint not found (using control endpoint instead)\n");
dev->interrupt_in_endpoint_size = usb_endpoint_maxp(dev->interrupt_in_endpoint);
- dev->ring_buffer =
- kmalloc_array(ring_buffer_size,
- sizeof(size_t) + dev->interrupt_in_endpoint_size,
- GFP_KERNEL);
+ dev->ring_buffer = kcalloc(ring_buffer_size,
+ sizeof(size_t) + dev->interrupt_in_endpoint_size,
+ GFP_KERNEL);
if (!dev->ring_buffer)
goto error;
dev->interrupt_in_buffer = kmalloc(dev->interrupt_in_endpoint_size, GFP_KERNEL);
--
2.23.0
Fix broken read implementation, which could be used to trigger slab info
leaks.
The driver failed to check if the custom ring buffer was still empty
when waking up after having waited for more data. This would happen on
every interrupt-in completion, even if no data had been added to the
ring buffer (e.g. on disconnect events).
Due to missing sanity checks and uninitialised (kmalloced) ring-buffer
entries, this meant that huge slab info leaks could easily be triggered.
Note that the empty-buffer check after wakeup is enough to fix the info
leak on disconnect, but let's clear the buffer on allocation and add a
sanity check to read() to prevent further leaks.
Fixes: 2824bd250f0b ("[PATCH] USB: add ldusb driver")
Cc: stable <stable(a)vger.kernel.org> # 2.6.13
Reported-by: syzbot+6fe95b826644f7f12b0b(a)syzkaller.appspotmail.com
Signed-off-by: Johan Hovold <johan(a)kernel.org>
---
drivers/usb/misc/ldusb.c | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/drivers/usb/misc/ldusb.c b/drivers/usb/misc/ldusb.c
index 147c90c2a4e5..94780e14e95d 100644
--- a/drivers/usb/misc/ldusb.c
+++ b/drivers/usb/misc/ldusb.c
@@ -464,7 +464,7 @@ static ssize_t ld_usb_read(struct file *file, char __user *buffer, size_t count,
/* wait for data */
spin_lock_irq(&dev->rbsl);
- if (dev->ring_head == dev->ring_tail) {
+ while (dev->ring_head == dev->ring_tail) {
dev->interrupt_in_done = 0;
spin_unlock_irq(&dev->rbsl);
if (file->f_flags & O_NONBLOCK) {
@@ -474,12 +474,17 @@ static ssize_t ld_usb_read(struct file *file, char __user *buffer, size_t count,
retval = wait_event_interruptible(dev->read_wait, dev->interrupt_in_done);
if (retval < 0)
goto unlock_exit;
- } else {
- spin_unlock_irq(&dev->rbsl);
+
+ spin_lock_irq(&dev->rbsl);
}
+ spin_unlock_irq(&dev->rbsl);
/* actual_buffer contains actual_length + interrupt_in_buffer */
actual_buffer = (size_t *)(dev->ring_buffer + dev->ring_tail * (sizeof(size_t)+dev->interrupt_in_endpoint_size));
+ if (*actual_buffer > sizeof(size_t) + dev->interrupt_in_endpoint_size) {
+ retval = -EIO;
+ goto unlock_exit;
+ }
bytes_to_read = min(count, *actual_buffer);
if (bytes_to_read < *actual_buffer)
dev_warn(&dev->intf->dev, "Read buffer overflow, %zd bytes dropped\n",
@@ -690,10 +695,9 @@ static int ld_usb_probe(struct usb_interface *intf, const struct usb_device_id *
dev_warn(&intf->dev, "Interrupt out endpoint not found (using control endpoint instead)\n");
dev->interrupt_in_endpoint_size = usb_endpoint_maxp(dev->interrupt_in_endpoint);
- dev->ring_buffer =
- kmalloc_array(ring_buffer_size,
- sizeof(size_t) + dev->interrupt_in_endpoint_size,
- GFP_KERNEL);
+ dev->ring_buffer = kcalloc(ring_buffer_size,
+ sizeof(size_t) + dev->interrupt_in_endpoint_size,
+ GFP_KERNEL);
if (!dev->ring_buffer)
goto error;
dev->interrupt_in_buffer = kmalloc(dev->interrupt_in_endpoint_size, GFP_KERNEL);
--
2.23.0
The Primebook C11B uses the SIPODEV SP1064 touchpad. There are 2 versions
of this 2-in-1 and the touchpad in the older version does not supply
descriptors, so it has to be added to the override list.
Cc: stable(a)vger.kernel.org
Signed-off-by: Hans de Goede <hdegoede(a)redhat.com>
---
drivers/hid/i2c-hid/i2c-hid-dmi-quirks.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/drivers/hid/i2c-hid/i2c-hid-dmi-quirks.c b/drivers/hid/i2c-hid/i2c-hid-dmi-quirks.c
index 75078c83be1a..d31ea82b84c1 100644
--- a/drivers/hid/i2c-hid/i2c-hid-dmi-quirks.c
+++ b/drivers/hid/i2c-hid/i2c-hid-dmi-quirks.c
@@ -322,6 +322,25 @@ static const struct dmi_system_id i2c_hid_dmi_desc_override_table[] = {
},
.driver_data = (void *)&sipodev_desc
},
+ {
+ /*
+ * There are at least 2 Primebook C11B versions, the older
+ * version has a product-name of "Primebook C11B", and a
+ * bios version / release / firmware revision of:
+ * V2.1.2 / 05/03/2018 / 18.2
+ * The new version has "PRIMEBOOK C11B" as product-name and a
+ * bios version / release / firmware revision of:
+ * CFALKSW05_BIOS_V1.1.2 / 11/19/2018 / 19.2
+ * Only the older version needs this quirk, note the newer
+ * version will not match as it has a different product-name.
+ */
+ .ident = "Trekstor Primebook C11B",
+ .matches = {
+ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "TREKSTOR"),
+ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Primebook C11B"),
+ },
+ .driver_data = (void *)&sipodev_desc
+ },
{
.ident = "Direkt-Tek DTLAPY116-2",
.matches = {
--
2.23.0
The custom ring-buffer implementation was merged without any locking
whatsoever, but a spinlock was later added by commit 9d33efd9a791
("USB: ldusb bugfix").
The lock did not cover the loads from the ring-buffer-entry after
determining the buffer was non-empty, nor the update of the tail index
once the entry had been processed. The former could lead to stale data
being returned, while the latter could lead to memory corruption on
sufficiently weakly ordered architectures.
Fixes: 2824bd250f0b ("[PATCH] USB: add ldusb driver")
Fixes: 9d33efd9a791 ("USB: ldusb bugfix")
Cc: stable <stable(a)vger.kernel.org> # 2.6.13
Signed-off-by: Johan Hovold <johan(a)kernel.org>
---
drivers/usb/misc/ldusb.c | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/drivers/usb/misc/ldusb.c b/drivers/usb/misc/ldusb.c
index 94780e14e95d..c6cf2fa6cf4c 100644
--- a/drivers/usb/misc/ldusb.c
+++ b/drivers/usb/misc/ldusb.c
@@ -477,11 +477,11 @@ static ssize_t ld_usb_read(struct file *file, char __user *buffer, size_t count,
spin_lock_irq(&dev->rbsl);
}
- spin_unlock_irq(&dev->rbsl);
/* actual_buffer contains actual_length + interrupt_in_buffer */
actual_buffer = (size_t *)(dev->ring_buffer + dev->ring_tail * (sizeof(size_t)+dev->interrupt_in_endpoint_size));
if (*actual_buffer > sizeof(size_t) + dev->interrupt_in_endpoint_size) {
+ spin_unlock_irq(&dev->rbsl);
retval = -EIO;
goto unlock_exit;
}
@@ -489,17 +489,26 @@ static ssize_t ld_usb_read(struct file *file, char __user *buffer, size_t count,
if (bytes_to_read < *actual_buffer)
dev_warn(&dev->intf->dev, "Read buffer overflow, %zd bytes dropped\n",
*actual_buffer-bytes_to_read);
+ spin_unlock_irq(&dev->rbsl);
+
+ /*
+ * Pairs with spin_unlock_irqrestore() in
+ * ld_usb_interrupt_in_callback() and makes sure the ring-buffer entry
+ * has been updated before copy_to_user().
+ */
+ smp_rmb();
/* copy one interrupt_in_buffer from ring_buffer into userspace */
if (copy_to_user(buffer, actual_buffer+1, bytes_to_read)) {
retval = -EFAULT;
goto unlock_exit;
}
- dev->ring_tail = (dev->ring_tail+1) % ring_buffer_size;
-
retval = bytes_to_read;
spin_lock_irq(&dev->rbsl);
+
+ dev->ring_tail = (dev->ring_tail + 1) % ring_buffer_size;
+
if (dev->buffer_overflow) {
dev->buffer_overflow = 0;
spin_unlock_irq(&dev->rbsl);
--
2.23.0
This is the start of the stable review cycle for the 4.14.150 release.
There are 65 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.
Responses should be made by Fri 18 Oct 2019 09:43:41 PM UTC.
Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.14.150-r…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.14.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Linux 4.14.150-rc1
Dave Chinner <dchinner(a)redhat.com>
xfs: clear sb->s_fs_info on mount failure
Janakarajan Natarajan <Janakarajan.Natarajan(a)amd.com>
x86/asm: Fix MWAITX C-state hint value
Steven Rostedt (VMware) <rostedt(a)goodmis.org>
tracing: Get trace_array reference for available_tracers files
Steven Rostedt (VMware) <rostedt(a)goodmis.org>
ftrace: Get a reference counter for the trace_array on filter files
Srivatsa S. Bhat (VMware) <srivatsa(a)csail.mit.edu>
tracing/hwlat: Don't ignore outer-loop duration when calculating max_latency
Srivatsa S. Bhat (VMware) <srivatsa(a)csail.mit.edu>
tracing/hwlat: Report total time spent in all NMIs during the sample
Johan Hovold <johan(a)kernel.org>
media: stkwebcam: fix runtime PM after driver unbind
Al Viro <viro(a)zeniv.linux.org.uk>
Fix the locking in dcache_readdir() and friends
Paul Burton <paul.burton(a)mips.com>
MIPS: Disable Loongson MMI instructions for kernel build
Trond Myklebust <trondmy(a)gmail.com>
NFS: Fix O_DIRECT accounting of number of bytes read/written
Josef Bacik <josef(a)toxicpanda.com>
btrfs: fix incorrect updating of log root tree
Andreas Klinger <ak(a)it-klinger.de>
iio: adc: hx711: fix bug in sampling of data
Andreas Klinger <ak(a)it-klinger.de>
iio: hx711: add delay until DOUT is ready
Navid Emamdoost <navid.emamdoost(a)gmail.com>
Staging: fbtft: fix memory leak in fbtft_framebuffer_alloc
Bartosz Golaszewski <bgolaszewski(a)baylibre.com>
gpiolib: don't clear FLAG_IS_OUT when emulating open-drain/open-source
Brian Norris <briannorris(a)chromium.org>
firmware: google: increment VPD key_len properly
Michal Hocko <mhocko(a)suse.com>
kernel/sysctl.c: do not override max_threads provided by userspace
Pavel Shilovsky <piastryyy(a)gmail.com>
CIFS: Force reval dentry if LOOKUP_REVAL flag is set
Pavel Shilovsky <piastryyy(a)gmail.com>
CIFS: Force revalidate inode when dentry is stale
Pavel Shilovsky <piastryyy(a)gmail.com>
CIFS: Gracefully handle QueryInfo errors during open
Steve MacLean <Steve.MacLean(a)microsoft.com>
perf inject jit: Fix JIT_CODE_MOVE filename
Ian Rogers <irogers(a)google.com>
perf llvm: Don't access out-of-scope array
Ard Biesheuvel <ard.biesheuvel(a)linaro.org>
efivar/ssdt: Don't iterate over EFI vars if no SSDT override was specified
David Frey <dpfrey(a)gmail.com>
iio: light: opt3001: fix mutex unlock race
Hans de Goede <hdegoede(a)redhat.com>
iio: adc: axp288: Override TS pin bias current for some models
Marco Felsch <m.felsch(a)pengutronix.de>
iio: adc: ad799x: fix probe error handling
Navid Emamdoost <navid.emamdoost(a)gmail.com>
staging: vt6655: Fix memory leak in vt6655_probe
Johan Hovold <johan(a)kernel.org>
USB: legousbtower: fix use-after-free on release
Johan Hovold <johan(a)kernel.org>
USB: legousbtower: fix open after failed reset request
Johan Hovold <johan(a)kernel.org>
USB: legousbtower: fix potential NULL-deref on disconnect
Johan Hovold <johan(a)kernel.org>
USB: legousbtower: fix deadlock on disconnect
Johan Hovold <johan(a)kernel.org>
USB: legousbtower: fix slab info leak at probe
Yoshihiro Shimoda <yoshihiro.shimoda.uh(a)renesas.com>
usb: renesas_usbhs: gadget: Fix usb_ep_set_{halt,wedge}() behavior
Yoshihiro Shimoda <yoshihiro.shimoda.uh(a)renesas.com>
usb: renesas_usbhs: gadget: Do not discard queues in usb_ep_set_{halt,wedge}()
Jacky.Cao(a)sony.com <Jacky.Cao(a)sony.com>
USB: dummy-hcd: fix power budget for SuperSpeed mode
Johan Hovold <johan(a)kernel.org>
USB: microtek: fix info-leak at probe
Johan Hovold <johan(a)kernel.org>
USB: usblcd: fix I/O after disconnect
Johan Hovold <johan(a)kernel.org>
USB: serial: fix runtime PM after driver unbind
Reinhard Speyerer <rspmn(a)arcor.de>
USB: serial: option: add support for Cinterion CLS8 devices
Daniele Palmas <dnlplm(a)gmail.com>
USB: serial: option: add Telit FN980 compositions
Beni Mahler <beni.mahler(a)gmx.net>
USB: serial: ftdi_sio: add device IDs for Sienna and Echelon PL-20
Johan Hovold <johan(a)kernel.org>
USB: serial: keyspan: fix NULL-derefs on open() and write()
Randy Dunlap <rdunlap(a)infradead.org>
serial: uartlite: fix exit path null pointer
Johan Hovold <johan(a)kernel.org>
USB: ldusb: fix NULL-derefs on driver unbind
Johan Hovold <johan(a)kernel.org>
USB: chaoskey: fix use-after-free on release
Johan Hovold <johan(a)kernel.org>
USB: usblp: fix runtime PM after driver unbind
Johan Hovold <johan(a)kernel.org>
USB: iowarrior: fix use-after-free after driver unbind
Johan Hovold <johan(a)kernel.org>
USB: iowarrior: fix use-after-free on release
Johan Hovold <johan(a)kernel.org>
USB: iowarrior: fix use-after-free on disconnect
Johan Hovold <johan(a)kernel.org>
USB: adutux: fix use-after-free on release
Johan Hovold <johan(a)kernel.org>
USB: adutux: fix NULL-derefs on disconnect
Johan Hovold <johan(a)kernel.org>
USB: adutux: fix use-after-free on disconnect
Colin Ian King <colin.king(a)canonical.com>
USB: adutux: remove redundant variable minor
Kai-Heng Feng <kai.heng.feng(a)canonical.com>
xhci: Increase STS_SAVE timeout in xhci_suspend()
Rick Tseng <rtseng(a)nvidia.com>
usb: xhci: wait for CNR controller not ready bit in xhci resume
Jan Schmidt <jan(a)centricular.com>
xhci: Check all endpoints for LPM timeout
Mathias Nyman <mathias.nyman(a)linux.intel.com>
xhci: Prevent device initiated U1/U2 link pm if exit latency is too long
Mathias Nyman <mathias.nyman(a)linux.intel.com>
xhci: Fix false warning message about wrong bounce buffer write length
Johan Hovold <johan(a)kernel.org>
USB: usb-skeleton: fix NULL-deref on disconnect
Johan Hovold <johan(a)kernel.org>
USB: usb-skeleton: fix runtime PM after driver unbind
Johan Hovold <johan(a)kernel.org>
USB: yurex: fix NULL-derefs on disconnect
Alan Stern <stern(a)rowland.harvard.edu>
USB: yurex: Don't retry on unexpected errors
Bastien Nocera <hadess(a)hadess.net>
USB: rio500: Remove Rio 500 kernel driver
Icenowy Zheng <icenowy(a)aosc.io>
f2fs: use EINVAL for superblock with invalid magic
Will Deacon <will(a)kernel.org>
panic: ensure preemption is disabled during panic()
-------------
Diffstat:
Documentation/usb/rio.txt | 138 --------
MAINTAINERS | 7 -
Makefile | 4 +-
arch/arm/configs/badge4_defconfig | 1 -
arch/arm/configs/corgi_defconfig | 1 -
arch/arm/configs/pxa_defconfig | 1 -
arch/arm/configs/s3c2410_defconfig | 1 -
arch/arm/configs/spitz_defconfig | 1 -
arch/mips/configs/mtx1_defconfig | 1 -
arch/mips/configs/rm200_defconfig | 1 -
arch/mips/loongson64/Platform | 4 +
arch/mips/vdso/Makefile | 1 +
arch/x86/include/asm/mwait.h | 2 +-
arch/x86/lib/delay.c | 4 +-
drivers/firmware/efi/efi.c | 3 +
drivers/firmware/google/vpd_decode.c | 2 +-
drivers/gpio/gpiolib.c | 27 +-
drivers/iio/adc/ad799x.c | 4 +-
drivers/iio/adc/axp288_adc.c | 32 ++
drivers/iio/adc/hx711.c | 49 ++-
drivers/iio/light/opt3001.c | 6 +-
drivers/media/usb/stkwebcam/stk-webcam.c | 3 +-
drivers/staging/fbtft/fbtft-core.c | 7 +-
drivers/staging/vt6655/device_main.c | 4 +-
drivers/tty/serial/uartlite.c | 3 +-
drivers/usb/class/usblp.c | 8 +-
drivers/usb/gadget/udc/dummy_hcd.c | 3 +-
drivers/usb/host/xhci-ring.c | 4 +-
drivers/usb/host/xhci.c | 32 +-
drivers/usb/image/microtek.c | 4 +
drivers/usb/misc/Kconfig | 10 -
drivers/usb/misc/Makefile | 1 -
drivers/usb/misc/adutux.c | 26 +-
drivers/usb/misc/chaoskey.c | 5 +-
drivers/usb/misc/iowarrior.c | 16 +-
drivers/usb/misc/ldusb.c | 24 +-
drivers/usb/misc/legousbtower.c | 58 ++--
drivers/usb/misc/rio500.c | 574 -------------------------------
drivers/usb/misc/rio500_usb.h | 37 --
drivers/usb/misc/usblcd.c | 33 +-
drivers/usb/misc/yurex.c | 18 +-
drivers/usb/renesas_usbhs/common.h | 1 +
drivers/usb/renesas_usbhs/fifo.c | 2 +-
drivers/usb/renesas_usbhs/fifo.h | 1 +
drivers/usb/renesas_usbhs/mod_gadget.c | 18 +-
drivers/usb/renesas_usbhs/pipe.c | 15 +
drivers/usb/renesas_usbhs/pipe.h | 1 +
drivers/usb/serial/ftdi_sio.c | 3 +
drivers/usb/serial/ftdi_sio_ids.h | 9 +
drivers/usb/serial/keyspan.c | 4 +-
drivers/usb/serial/option.c | 11 +
drivers/usb/serial/usb-serial.c | 5 +-
drivers/usb/usb-skeleton.c | 15 +-
fs/btrfs/tree-log.c | 36 +-
fs/cifs/dir.c | 8 +-
fs/cifs/file.c | 6 +
fs/cifs/inode.c | 4 +
fs/f2fs/super.c | 36 +-
fs/libfs.c | 134 ++++----
fs/nfs/direct.c | 78 +++--
fs/xfs/xfs_super.c | 10 +
kernel/fork.c | 4 +-
kernel/panic.c | 1 +
kernel/trace/ftrace.c | 27 +-
kernel/trace/trace.c | 17 +-
kernel/trace/trace_hwlat.c | 4 +-
tools/perf/util/jitdump.c | 6 +-
tools/perf/util/llvm-utils.c | 6 +-
68 files changed, 567 insertions(+), 1055 deletions(-)
> On 17/10/2019 01:23, Greg Kroah-Hartman wrote:
> > On Wed, Oct 16, 2019 at 11:35:18PM +0100, Mark Brown wrote:
> >> On Wed, Oct 16, 2019 at 03:10:25PM -0700, Greg Kroah-Hartman wrote:
> >>> On Wed, Oct 16, 2019 at 11:00:44PM +0100, Mark Brown wrote:
> >>>> On Wed, Oct 16, 2019 at 02:51:44PM -0700, Greg Kroah-Hartman wrote:
> >>>>> From: Oleksandr Suvorov <oleksandr.suvorov(a)toradex.com>
> >>
> >>>>> commit 694b14554d75f2a1ae111202e71860d58b434a21 upstream.
> >>
> >>>>> This control mute/unmute the ADC input of SGTL5000
> >>>>> using its CHIP_ANA_CTRL register.
> >>
> >>>> This seems like a new feature and not an obvious candidate for stable?
> >>
> >>> there was a long email from Richard that said:
> >>> Upstream commit 631bc8f0134a ("ASoC: sgtl5000: Fix of unmute
> >>> outputs on probe"), which is e9f621efaebd in v5.3 replaced
> >>> snd_soc_component_write with snd_soc_component_update_bits and
> >>> therefore no longer cleared the MUTE_ADC flag. This caused the
> >>> ADC to stay muted and recording doesn't work any longer. This
> >>> patch fixes this problem by adding a Switch control for
> >>> MUTE_ADC.
> >>
> >>> That's why I took this. If this isn't true, I'll be glad to drop this.
> >>
> >> That's probably not an appropriate fix for stable - it's going to add a
> >> new control which users will need to manually set (or hope their
> >> userspace automatically figures out that it should set for them, more
> >> advanced userspaces like PulseAudio should) which isn't a drop in fix.
> >> You could either drop the backport that was done for zero cross or take
> >> a new patch that clears the MUTE_ADC flag (rather than punting to
> >> userspace to do so), or just be OK with what you've got at the minute
> >> which might be fine given the lack of user reports.
Mark, obviously this is not a NEW feature. This patch adds LOST
standard control.
Please look into other codecs:
$ grep -R 'SOC_SINGLE("Capture Switch"' sound/soc/
sound/soc/codecs/sgtl5000.c.orig: SOC_SINGLE("Capture Switch",
SGTL5000_CHIP_ANA_CTRL, 0, 1, 1),
sound/soc/codecs/wm9705.c: SOC_SINGLE("Capture Switch", AC97_REC_GAIN,
15, 1, 1),
sound/soc/codecs/wm9713.c:SOC_SINGLE("Capture Switch", AC97_CD, 15, 1, 1),
sound/soc/codecs/wm9712.c:SOC_SINGLE("Capture Switch", AC97_REC_GAIN, 15, 1, 1),
And even:
$ grep -R 'SOC_SINGLE(".*Capture Switch"' sound/soc/
sound/soc/codecs/lm49453.c: SOC_SINGLE("Port1 Capture Switch",
LM49453_P0_AUDIO_PORT1_BASIC_REG,
sound/soc/codecs/lm49453.c: SOC_SINGLE("Port2 Capture Switch",
LM49453_P0_AUDIO_PORT2_BASIC_REG,
sound/soc/codecs/sgtl5000.c.orig: SOC_SINGLE("Capture Switch",
SGTL5000_CHIP_ANA_CTRL, 0, 1, 1),
sound/soc/codecs/mc13783.c: SOC_SINGLE("Line in Capture Switch",
MC13783_AUDIO_RX1, 10, 1, 0),
sound/soc/codecs/ak4642.c: SOC_SINGLE("ALC Capture Switch", ALC_CTL1, 5, 1, 0),
sound/soc/codecs/adau1701.c: SOC_SINGLE("Master Capture Switch",
ADAU1701_DSPCTRL, 4, 1, 0),
sound/soc/codecs/alc5632.c: SOC_SINGLE("DMIC En Capture Switch",
sound/soc/codecs/alc5632.c: SOC_SINGLE("DMIC PreFilter Capture Switch",
sound/soc/codecs/wm9705.c: SOC_SINGLE("Capture Switch", AC97_REC_GAIN,
15, 1, 1),
sound/soc/codecs/adau1977.c: SOC_SINGLE("ADC" #x " Highpass-Filter
Capture Switch", \
sound/soc/codecs/adau1977.c: SOC_SINGLE("ADC" #x " DC Subtraction
Capture Switch", \
sound/soc/codecs/isabelle.c: SOC_SINGLE("ULATX12 Capture Switch",
ISABELLE_ULATX12_INTF_CFG_REG,
sound/soc/codecs/ad1980.c:SOC_SINGLE("PCM Capture Switch",
AC97_REC_GAIN, 15, 1, 1),
sound/soc/codecs/ad1980.c:SOC_SINGLE("Phone Capture Switch",
AC97_PHONE, 15, 1, 1),
sound/soc/codecs/wm8731.c:SOC_SINGLE("Mic Capture Switch",
WM8731_APANA, 1, 1, 1),
sound/soc/codecs/uda1380.c:/**/ SOC_SINGLE("ADC Capture Switch",
UDA1380_PGA, 15, 1, 1), /* MT_ADC */
sound/soc/codecs/wm9713.c:SOC_SINGLE("Capture Switch", AC97_CD, 15, 1, 1),
sound/soc/codecs/es8316.c: SOC_SINGLE("ALC Capture Switch",
ES8316_ADC_ALC1, 6, 1, 0),
sound/soc/codecs/sgtl5000.c: SOC_SINGLE("Capture Switch",
SGTL5000_CHIP_ANA_CTRL, 0, 1, 1),
sound/soc/codecs/tlv320aic31xx.c: SOC_SINGLE("ADC Capture Switch",
AIC31XX_ADCFGA, 7, 1, 1),
sound/soc/codecs/da7210.c: SOC_SINGLE("Aux2 Capture Switch",
DA7210_AUX2, 2, 1, 0),
sound/soc/codecs/wm9712.c:SOC_SINGLE("Capture Switch", AC97_REC_GAIN, 15, 1, 1),
git blame sound/soc/codecs/wm9705.c
...
927b0aea93bb3 (Ian Molton 2009-01-19 17:23:11 +0000 87)
SOC_SINGLE("Capture Switch", AC97_REC_GAIN, 15, 1, 1),
...
This control was added not later than 2009, so I doubt my patch could
break something in current user-land.
> >
> > Ok, I'll gladly go drop it, thanks!
>
> Mark, thanks for the clarification! I haven't thought of breaking
> anything with the backport as it worked fine for our application.
--
Best regards
Oleksandr Suvorov
Toradex AG
Altsagenstrasse 5 | 6048 Horw/Luzern | Switzerland | T: +41 41 500
4800 (main line)
The OMAP36xx and AM/DM37x TRMs say that the maximum divider for DSS fclk
(in CM_CLKSEL_DSS) is 32. Experimentation shows that this is not
correct, and using divider of 32 breaks DSS with a flood or underflows
and sync losts. Dividers up to 31 seem to work fine.
There is another patch to the DT files to limit the divider correctly,
but as the DSS driver also needs to know the maximum divider to be able
to iteratively find good rates, we also need to do the fix in the DSS
driver.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen(a)ti.com>
Cc: Adam Ford <aford173(a)gmail.com>
Cc: stable(a)vger.kernel.org
---
drivers/gpu/drm/omapdrm/dss/dss.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/omapdrm/dss/dss.c b/drivers/gpu/drm/omapdrm/dss/dss.c
index e226324adb69..4bdd63b57100 100644
--- a/drivers/gpu/drm/omapdrm/dss/dss.c
+++ b/drivers/gpu/drm/omapdrm/dss/dss.c
@@ -1083,7 +1083,7 @@ static const struct dss_features omap34xx_dss_feats = {
static const struct dss_features omap3630_dss_feats = {
.model = DSS_MODEL_OMAP3,
- .fck_div_max = 32,
+ .fck_div_max = 31,
.fck_freq_max = 173000000,
.dss_fck_multiplier = 1,
.parent_clk_name = "dpll4_ck",
--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
G920 device only advertises REPORT_ID_HIDPP_LONG and
REPORT_ID_HIDPP_VERY_LONG in its HID report descriptor, so querying
for REPORT_ID_HIDPP_SHORT with optional=false will always fail and
prevent G920 to be recognized as a valid HID++ device.
To fix this and improve some other aspects, modify
hidpp_validate_device() as follows:
- Inline the code of hidpp_validate_report() to simplify
distingushing between non-present and invalid report descriptors
- Drop the check for id >= HID_MAX_IDS || id < 0 since all of our
IDs are static and known to satisfy that at compile time
- Change the algorithms to check all possible report
types (including very long report) and deem the device as a valid
HID++ device if it supports at least one
- Treat invalid report length as a hard stop for the validation
algorithm, meaning that if any of the supported reports has
invalid length we assume the worst and treat the device as a
generic HID device.
- Fold initialization of hidpp->very_long_report_length into
hidpp_validate_device() since it already fetches very long report
length and validates its value
Fixes: fe3ee1ec007b ("HID: logitech-hidpp: allow non HID++ devices to be handled by this module")
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=204191
Reported-by: Sam Bazely <sambazley(a)fastmail.com>
Signed-off-by: Andrey Smirnov <andrew.smirnov(a)gmail.com>
Cc: Jiri Kosina <jikos(a)kernel.org>
Cc: Benjamin Tissoires <benjamin.tissoires(a)redhat.com>
Cc: Henrik Rydberg <rydberg(a)bitmath.org>
Cc: Pierre-Loup A. Griffais <pgriffais(a)valvesoftware.com>
Cc: Austin Palmer <austinp(a)valvesoftware.com>
Cc: linux-input(a)vger.kernel.org
Cc: linux-kernel(a)vger.kernel.org
Cc: stable(a)vger.kernel.org # 5.2+
---
drivers/hid/hid-logitech-hidpp.c | 54 ++++++++++++++++++--------------
1 file changed, 30 insertions(+), 24 deletions(-)
diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c
index 85911586b3b6..6e669eb7dc69 100644
--- a/drivers/hid/hid-logitech-hidpp.c
+++ b/drivers/hid/hid-logitech-hidpp.c
@@ -3498,34 +3498,45 @@ static int hidpp_get_report_length(struct hid_device *hdev, int id)
return report->field[0]->report_count + 1;
}
-static bool hidpp_validate_report(struct hid_device *hdev, int id,
- int expected_length, bool optional)
+static bool hidpp_validate_device(struct hid_device *hdev)
{
- int report_length;
+ struct hidpp_device *hidpp = hid_get_drvdata(hdev);
+ int id, report_length, supported_reports = 0;
+
+ id = REPORT_ID_HIDPP_SHORT;
+ report_length = hidpp_get_report_length(hdev, id);
+ if (report_length) {
+ if (report_length < HIDPP_REPORT_SHORT_LENGTH)
+ goto bad_device;
- if (id >= HID_MAX_IDS || id < 0) {
- hid_err(hdev, "invalid HID report id %u\n", id);
- return false;
+ supported_reports++;
}
+ id = REPORT_ID_HIDPP_LONG;
report_length = hidpp_get_report_length(hdev, id);
- if (!report_length)
- return optional;
+ if (report_length) {
+ if (report_length < HIDPP_REPORT_LONG_LENGTH)
+ goto bad_device;
- if (report_length < expected_length) {
- hid_warn(hdev, "not enough values in hidpp report %d\n", id);
- return false;
+ supported_reports++;
}
- return true;
-}
+ id = REPORT_ID_HIDPP_VERY_LONG;
+ report_length = hidpp_get_report_length(hdev, id);
+ if (report_length) {
+ if (report_length < HIDPP_REPORT_LONG_LENGTH ||
+ report_length > HIDPP_REPORT_VERY_LONG_MAX_LENGTH)
+ goto bad_device;
-static bool hidpp_validate_device(struct hid_device *hdev)
-{
- return hidpp_validate_report(hdev, REPORT_ID_HIDPP_SHORT,
- HIDPP_REPORT_SHORT_LENGTH, false) &&
- hidpp_validate_report(hdev, REPORT_ID_HIDPP_LONG,
- HIDPP_REPORT_LONG_LENGTH, true);
+ supported_reports++;
+ hidpp->very_long_report_length = report_length;
+ }
+
+ return supported_reports;
+
+bad_device:
+ hid_warn(hdev, "not enough values in hidpp report %d\n", id);
+ return false;
}
static bool hidpp_application_equals(struct hid_device *hdev,
@@ -3572,11 +3583,6 @@ static int hidpp_probe(struct hid_device *hdev, const struct hid_device_id *id)
return hid_hw_start(hdev, HID_CONNECT_DEFAULT);
}
- hidpp->very_long_report_length =
- hidpp_get_report_length(hdev, REPORT_ID_HIDPP_VERY_LONG);
- if (hidpp->very_long_report_length > HIDPP_REPORT_VERY_LONG_MAX_LENGTH)
- hidpp->very_long_report_length = HIDPP_REPORT_VERY_LONG_MAX_LENGTH;
-
if (id->group == HID_GROUP_LOGITECH_DJ_DEVICE)
hidpp->quirks |= HIDPP_QUIRK_UNIFYING;
--
2.21.0
On Thu, Oct 17, 2019 at 7:31 AM Sasha Levin <sashal(a)kernel.org> wrote:
>
> Hi,
>
> [This is an automated email]
>
> This commit has been processed because it contains a "Fixes:" tag,
> fixing commit: ff21a635dd1a9 HID: logitech-hidpp: Force feedback support for the Logitech G920.
>
> The bot has tested the following trees: v5.3.6, v4.19.79, v4.14.149, v4.9.196.
>
> v5.3.6: Build OK!
> v4.19.79: Failed to apply! Possible dependencies:
> 91cf9a98ae412 ("HID: logitech-hidpp: make .probe usbhid capable")
>
> v4.14.149: Failed to apply! Possible dependencies:
> 91cf9a98ae412 ("HID: logitech-hidpp: make .probe usbhid capable")
>
> v4.9.196: Failed to apply! Possible dependencies:
> 6bd4e65d521f9 ("HID: logitech-hidpp: remove HIDPP_QUIRK_CONNECT_EVENTS")
> 91cf9a98ae412 ("HID: logitech-hidpp: make .probe usbhid capable")
> a4bf6153b3177 ("HID: logitech-hidpp: add a sysfs file to tell we support power_supply")
>
>
> NOTE: The patch will not be queued to stable trees until it is upstream.
>
> How should we proceed with this patch?
Looks like I'd have to mark this one as 5.2+ as well. Please disregard
this series in favor of v3 that will be sent out shortly.
Thanks,
Andrey Smirnov
Hi,
[This is an automated email]
This commit has been processed because it contains a -stable tag.
The stable tag indicates that it's relevant for the following trees: all
The bot has tested the following trees: v5.3.6, v4.19.79, v4.14.149, v4.9.196, v4.4.196.
v5.3.6: Failed to apply! Possible dependencies:
18d9be1a970c3 ("io_uring: add io_queue_async_work() helper")
4fe2c963154c3 ("io_uring: add support for link with drain")
5262f567987d3 ("io_uring: IORING_OP_TIMEOUT support")
75b28affdd6ae ("io_uring: allocate the two rings together")
c576666863b78 ("io_uring: optimize submit_and_wait API")
v4.19.79: Failed to apply! Possible dependencies:
2b188cc1bb857 ("Add io_uring IO interface")
31b515106428b ("io_uring: allow workqueue item to handle multiple buffered requests")
4e21565b7fd4d ("asm-generic: add kexec_file_load system call to unistd.h")
5262f567987d3 ("io_uring: IORING_OP_TIMEOUT support")
6b06314c47e14 ("io_uring: add file set registration")
9a56a2323dbbd ("io_uring: use fget/fput_many() for file references")
c992fe2925d77 ("io_uring: add fsync support")
d530a402a114e ("io_uring: add prepped flag")
de0617e467171 ("io_uring: add support for marking commands as draining")
def596e9557c9 ("io_uring: support for IO polling")
edafccee56ff3 ("io_uring: add support for pre-mapped user IO buffers")
v4.14.149: Failed to apply! Possible dependencies:
05c17cedf85ba ("x86: Wire up restartable sequence system call")
1bd21c6c21e84 ("syscalls/core: Introduce CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y")
2b188cc1bb857 ("Add io_uring IO interface")
3c1c456f9b96c ("syscalls: sort syscall prototypes in include/linux/syscalls.h")
4ddb45db30851 ("x86/syscalls: Use COMPAT_SYSCALL_DEFINEx() macros for x86-only compat syscalls")
5262f567987d3 ("io_uring: IORING_OP_TIMEOUT support")
5ac9efa3c50d7 ("syscalls/core, syscalls/x86: Clean up compat syscall stub naming convention")
66f4e88cc69da ("x86/ioport: add ksys_ioperm() helper; remove in-kernel calls to sys_ioperm()")
7a074e96dee62 ("aio: implement io_pgetevents")
7c2178c1ff482 ("x86/syscalls: Use proper syscall definition for sys_ioperm()")
ab0d1e85bfd0c ("fs/quota: use COMPAT_SYSCALL_DEFINE for sys32_quotactl()")
af52201d99162 ("x86/entry: Do not special-case clone(2) in compat entry")
b411991e0ca88 ("x86/syscalls/32: Simplify $entry == $compat entries")
b51d3cdf44d5c ("x86: remove compat_sys_x86_waitpid()")
d53238cd51a80 ("kernel: open-code sys_rt_sigpending() in sys_sigpending()")
de0617e467171 ("io_uring: add support for marking commands as draining")
dfe64506c01e5 ("x86/syscalls: Don't pointlessly reload the system call number")
e145242ea0df6 ("syscalls/core, syscalls/x86: Clean up syscall stub naming convention")
ebeb8c82ffaf9 ("syscalls/x86: Use 'struct pt_regs' based syscall calling for IA32_EMULATION and x32")
fa697140f9a20 ("syscalls/x86: Use 'struct pt_regs' based syscall calling convention for 64-bit syscalls")
v4.9.196: Failed to apply! Possible dependencies:
05c17cedf85ba ("x86: Wire up restartable sequence system call")
2611dc1939569 ("Remove compat_sys_getdents64()")
2b188cc1bb857 ("Add io_uring IO interface")
3a404842547c9 ("x86/entry: define _TIF_ALLWORK_MASK flags explicitly")
499934898fcd1 ("x86/entry/64: Use ENTRY() instead of ALIGN+GLOBAL for stub32_clone()")
4ddb45db30851 ("x86/syscalls: Use COMPAT_SYSCALL_DEFINEx() macros for x86-only compat syscalls")
5262f567987d3 ("io_uring: IORING_OP_TIMEOUT support")
5ac9efa3c50d7 ("syscalls/core, syscalls/x86: Clean up compat syscall stub naming convention")
5ea0727b163cb ("x86/syscalls: Check address limit on user-mode return")
66f4e88cc69da ("x86/ioport: add ksys_ioperm() helper; remove in-kernel calls to sys_ioperm()")
7a074e96dee62 ("aio: implement io_pgetevents")
7c2178c1ff482 ("x86/syscalls: Use proper syscall definition for sys_ioperm()")
a528d35e8bfcc ("statx: Add a system call to make enhanced file info available")
ab0d1e85bfd0c ("fs/quota: use COMPAT_SYSCALL_DEFINE for sys32_quotactl()")
af52201d99162 ("x86/entry: Do not special-case clone(2) in compat entry")
afb94c9e0b413 ("livepatch/x86: add TIF_PATCH_PENDING thread flag")
b411991e0ca88 ("x86/syscalls/32: Simplify $entry == $compat entries")
b51d3cdf44d5c ("x86: remove compat_sys_x86_waitpid()")
de0617e467171 ("io_uring: add support for marking commands as draining")
dfe64506c01e5 ("x86/syscalls: Don't pointlessly reload the system call number")
e145242ea0df6 ("syscalls/core, syscalls/x86: Clean up syscall stub naming convention")
ebeb8c82ffaf9 ("syscalls/x86: Use 'struct pt_regs' based syscall calling for IA32_EMULATION and x32")
fa697140f9a20 ("syscalls/x86: Use 'struct pt_regs' based syscall calling convention for 64-bit syscalls")
v4.4.196: Failed to apply! Possible dependencies:
05c17cedf85ba ("x86: Wire up restartable sequence system call")
1e423bff959e4 ("x86/entry/64: Migrate the 64-bit syscall slow path to C")
2b188cc1bb857 ("Add io_uring IO interface")
302f5b260c322 ("x86/entry/64: Always run ptregs-using syscalls on the slow path")
3e65654e3db6d ("x86/syscalls: Move compat syscall entry handling into syscalltbl.sh")
46eabf06c04a6 ("x86/entry/64: Call all native slow-path syscalls with full pt-regs")
5262f567987d3 ("io_uring: IORING_OP_TIMEOUT support")
5ac9efa3c50d7 ("syscalls/core, syscalls/x86: Clean up compat syscall stub naming convention")
7a074e96dee62 ("aio: implement io_pgetevents")
95d97adb2bb85 ("x86/signal: Cleanup get_nr_restart_syscall()")
97245d00585d8 ("x86/entry: Get rid of pt_regs_to_thread_info()")
abfb9498ee132 ("x86/entry: Rename is_{ia32,x32}_task() to in_{ia32,x32}_syscall()")
c87a85177e7a7 ("x86/entry: Get rid of two-phase syscall entry work")
cfcbadb49dabb ("x86/syscalls: Add syscall entry qualifiers")
de0617e467171 ("io_uring: add support for marking commands as draining")
dfe64506c01e5 ("x86/syscalls: Don't pointlessly reload the system call number")
e145242ea0df6 ("syscalls/core, syscalls/x86: Clean up syscall stub naming convention")
ebeb8c82ffaf9 ("syscalls/x86: Use 'struct pt_regs' based syscall calling for IA32_EMULATION and x32")
fa697140f9a20 ("syscalls/x86: Use 'struct pt_regs' based syscall calling convention for 64-bit syscalls")
fba324744bfd2 ("x86/syscalls: Refactor syscalltbl.sh")
NOTE: The patch will not be queued to stable trees until it is upstream.
How should we proceed with this patch?
--
Thanks,
Sasha
From: Kaike Wan <kaike.wan(a)intel.com>
A TID RDMA READ request could be retried under one of the following
conditions:
- The RC retry timer expires;
- A later TID RDMA READ RESP packet is received before the next
expected one.
For the latter, under normal conditions, the PSN in IB space is used
for comparison. More specifically, the IB PSN in the incoming TID RDMA
READ RESP packet is compared with the last IB PSN of a given TID RDMA
READ request to determine if the request should be retried. This is
similar to the retry logic for noraml RDMA READ request.
However, if a TID RDMA READ RESP packet is lost due to congestion,
header suppresion will be disabled and each incoming packet will raise
an interrupt until the hardware flow is reloaded. Under this condition,
each packet KDETH PSN will be checked by software against r_next_psn
and a retry will be requested if the packet KDETH PSN is later than
r_next_psn. Since each TID RDMA READ segment could have up to 64
packets and each TID RDMA READ request could have many segments, we
could make far more retries under such conditions, and thus leading to
RETRY_EXC_ERR status.
This patch fixes the issue by removing the retry when the incoming
packet KDETH PSN is later than r_next_psn. Instead, it resorts to
RC timer and normal IB PSN comparison for any request retry.
Fixes: 9905bf06e890 ("IB/hfi1: Add functions to receive TID RDMA READ response")
Cc: <stable(a)vger.kernel.org>
Reviewed-by: Mike Marciniszyn <mike.marciniszyn(a)intel.com>
Signed-off-by: Kaike Wan <kaike.wan(a)intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro(a)intel.com>
---
drivers/infiniband/hw/hfi1/tid_rdma.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/drivers/infiniband/hw/hfi1/tid_rdma.c b/drivers/infiniband/hw/hfi1/tid_rdma.c
index b4dcc4d..f21fca3 100644
--- a/drivers/infiniband/hw/hfi1/tid_rdma.c
+++ b/drivers/infiniband/hw/hfi1/tid_rdma.c
@@ -2736,11 +2736,6 @@ static bool handle_read_kdeth_eflags(struct hfi1_ctxtdata *rcd,
diff = cmp_psn(psn,
flow->flow_state.r_next_psn);
if (diff > 0) {
- if (!(qp->r_flags & RVT_R_RDMAR_SEQ))
- restart_tid_rdma_read_req(rcd,
- qp,
- wqe);
-
/* Drop the packet.*/
goto s_unlock;
} else if (diff < 0) {
Hello,
We ran automated tests on a recent commit from this kernel tree:
Kernel repo: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
Commit: cbb18cd3e478 - Linux 5.3.7-rc1
The results of these automated tests are provided below.
Overall result: FAILED (see details below)
Merge: OK
Compile: OK
Tests: FAILED
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/229964
One or more kernel tests failed:
ppc64le:
❌ LTP lite
We hope that these logs can help you find the problem quickly. For the full
detail on our testing procedures, please scroll to the bottom of this message.
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ Memory function: memfd_create
✅ Memory function: kaslr
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking MACsec: sanity
✅ Networking socket: fuzz
✅ Networking sctp-auth: sockopts test
✅ Networking: igmp conformance test
✅ Networking TCP: keepalive test
✅ Networking UDP: socket
✅ Networking tunnel: gre basic
✅ L2TP basic test
✅ Networking tunnel: vxlan basic
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ ALSA PCM loopback test
✅ ALSA Control (mixer) Userspace Element test
✅ Usex - version 1.9-29
✅ storage: SCSI VPD
✅ stress: stress-ng
✅ trace: ftrace/tracer
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ Networking bridge: sanity
🚧 ✅ Networking route: pmtu
🚧 ✅ Networking tunnel: geneve basic test
🚧 ✅ Networking vnic: ipvlan/basic
🚧 ✅ storage: dm/common
🚧 ✅ Networking route_func: local
🚧 ✅ Networking route_func: forward
🚧 ✅ Networking ipsec: basic netns transport
🚧 ✅ Networking ipsec: basic netns tunnel
Host 2:
✅ Boot test
✅ xfstests: ext4
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
ppc64le:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
❌ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ Memory function: memfd_create
✅ Memory function: kaslr
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking MACsec: sanity
✅ Networking socket: fuzz
✅ Networking sctp-auth: sockopts test
✅ Networking TCP: keepalive test
✅ Networking UDP: socket
✅ Networking tunnel: gre basic
✅ L2TP basic test
✅ Networking tunnel: vxlan basic
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ ALSA PCM loopback test
✅ ALSA Control (mixer) Userspace Element test
✅ Usex - version 1.9-29
✅ trace: ftrace/tracer
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ Networking bridge: sanity
🚧 ✅ Networking route: pmtu
🚧 ✅ Networking tunnel: geneve basic test
🚧 ✅ Networking ipsec: basic netns tunnel
🚧 ✅ Networking vnic: ipvlan/basic
🚧 ✅ storage: dm/common
🚧 ✅ Networking route_func: local
🚧 ✅ Networking route_func: forward
Host 2:
✅ Boot test
✅ xfstests: ext4
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
x86_64:
Host 1:
✅ Boot test
✅ Storage SAN device stress - mpt3sas driver
Host 2:
✅ Boot test
✅ Storage SAN device stress - megaraid_sas
Host 3:
✅ Boot test
🚧 ✅ IPMI driver test
🚧 ✅ IPMItool loop stress test
Host 4:
✅ Boot test
✅ xfstests: ext4
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ IOMMU boot test
🚧 ✅ Storage blktests
Host 5:
⚡ Internal infrastructure issues prevented one or more tests (marked
with ⚡⚡⚡) from running on this architecture.
This is not the fault of the kernel that was tested.
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
⚡⚡⚡ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ Memory function: memfd_create
✅ Memory function: kaslr
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking MACsec: sanity
✅ Networking socket: fuzz
✅ Networking sctp-auth: sockopts test
✅ Networking: igmp conformance test
✅ Networking TCP: keepalive test
✅ Networking UDP: socket
✅ Networking tunnel: gre basic
✅ L2TP basic test
✅ Networking tunnel: vxlan basic
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ pciutils: sanity smoke test
✅ ALSA PCM loopback test
✅ ALSA Control (mixer) Userspace Element test
✅ Usex - version 1.9-29
✅ storage: SCSI VPD
✅ stress: stress-ng
✅ trace: ftrace/tracer
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ Networking bridge: sanity
🚧 ✅ Networking route: pmtu
🚧 ✅ Networking tunnel: geneve basic test
🚧 ✅ Networking vnic: ipvlan/basic
🚧 ✅ storage: dm/common
🚧 ✅ Networking route_func: local
🚧 ✅ Networking route_func: forward
🚧 ✅ Networking ipsec: basic netns transport
🚧 ✅ Networking ipsec: basic netns tunnel
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
Testing timeout
---------------
We aim to provide a report within reasonable timeframe. Tests that haven't
finished running are marked with ⏱. Reports for non-upstream kernels have
a Beaker recipe linked to next to each host.
From: Dave Chinner <dchinner(a)redhat.com>
commit c9fbd7bbc23dbdd73364be4d045e5d3612cf6e82 upstream.
We recently had an oops reported on a 4.14 kernel in
xfs_reclaim_inodes_count() where sb->s_fs_info pointed to garbage
and so the m_perag_tree lookup walked into lala land.
Essentially, the machine was under memory pressure when the mount
was being run, xfs_fs_fill_super() failed after allocating the
xfs_mount and attaching it to sb->s_fs_info. It then cleaned up and
freed the xfs_mount, but the sb->s_fs_info field still pointed to
the freed memory. Hence when the superblock shrinker then ran
it fell off the bad pointer.
With the superblock shrinker problem fixed at teh VFS level, this
stale s_fs_info pointer is still a problem - we use it
unconditionally in ->put_super when the superblock is being torn
down, and hence we can still trip over it after a ->fill_super
call failure. Hence we need to clear s_fs_info if
xfs-fs_fill_super() fails, and we need to check if it's valid in
the places it can potentially be dereferenced after a ->fill_super
failure.
Signed-Off-By: Dave Chinner <dchinner(a)redhat.com>
Reviewed-by: Darrick J. Wong <darrick.wong(a)oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong(a)oracle.com>
Signed-off-by: Ajay Kaher <akaher(a)vmware.com>
---
fs/xfs/xfs_super.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c
index 67d589e..b16ca13 100644
--- a/fs/xfs/xfs_super.c
+++ b/fs/xfs/xfs_super.c
@@ -1674,6 +1674,7 @@ xfs_fs_fill_super(
out_close_devices:
xfs_close_devices(mp);
out_free_fsname:
+ sb->s_fs_info = NULL;
xfs_free_fsname(mp);
kfree(mp);
out:
@@ -1691,6 +1692,10 @@ xfs_fs_put_super(
{
struct xfs_mount *mp = XFS_M(sb);
+ /* if ->fill_super failed, we have no mount to tear down */
+ if (!sb->s_fs_info)
+ return;
+
xfs_notice(mp, "Unmounting Filesystem");
xfs_filestream_unmount(mp);
xfs_unmountfs(mp);
@@ -1700,6 +1705,8 @@ xfs_fs_put_super(
xfs_destroy_percpu_counters(mp);
xfs_destroy_mount_workqueues(mp);
xfs_close_devices(mp);
+
+ sb->s_fs_info = NULL;
xfs_free_fsname(mp);
kfree(mp);
}
@@ -1719,6 +1726,9 @@ xfs_fs_nr_cached_objects(
struct super_block *sb,
struct shrink_control *sc)
{
+ /* Paranoia: catch incorrect calls during mount setup or teardown */
+ if (WARN_ON_ONCE(!sb->s_fs_info))
+ return 0;
return xfs_reclaim_inodes_count(XFS_M(sb));
}
--
2.7.4
Hello,
We ran automated tests on a recent commit from this kernel tree:
Kernel repo: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
Commit: de6c37e3b52c - Linux 5.3.7-rc1
The results of these automated tests are provided below.
Overall result: PASSED
Merge: OK
Compile: OK
Tests: OK
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/229830
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
✅ Boot test
✅ xfstests: ext4
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ Memory function: memfd_create
✅ Memory function: kaslr
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking MACsec: sanity
✅ Networking socket: fuzz
✅ Networking sctp-auth: sockopts test
✅ Networking: igmp conformance test
✅ Networking TCP: keepalive test
✅ Networking UDP: socket
✅ Networking tunnel: gre basic
✅ L2TP basic test
✅ Networking tunnel: vxlan basic
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ ALSA PCM loopback test
✅ ALSA Control (mixer) Userspace Element test
✅ Usex - version 1.9-29
✅ storage: SCSI VPD
✅ stress: stress-ng
✅ trace: ftrace/tracer
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ Networking bridge: sanity
🚧 ✅ Networking route: pmtu
🚧 ✅ Networking tunnel: geneve basic test
🚧 ✅ Networking vnic: ipvlan/basic
🚧 ✅ storage: dm/common
🚧 ✅ Networking route_func: local
🚧 ✅ Networking route_func: forward
🚧 ✅ Networking ipsec: basic netns transport
🚧 ✅ Networking ipsec: basic netns tunnel
ppc64le:
Host 1:
✅ Boot test
✅ xfstests: ext4
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ Memory function: memfd_create
✅ Memory function: kaslr
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking MACsec: sanity
✅ Networking socket: fuzz
✅ Networking sctp-auth: sockopts test
✅ Networking TCP: keepalive test
✅ Networking UDP: socket
✅ Networking tunnel: gre basic
✅ L2TP basic test
✅ Networking tunnel: vxlan basic
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ ALSA PCM loopback test
✅ ALSA Control (mixer) Userspace Element test
✅ Usex - version 1.9-29
✅ trace: ftrace/tracer
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ Networking bridge: sanity
🚧 ✅ Networking route: pmtu
🚧 ✅ Networking tunnel: geneve basic test
🚧 ✅ Networking ipsec: basic netns tunnel
🚧 ✅ Networking vnic: ipvlan/basic
🚧 ✅ storage: dm/common
🚧 ✅ Networking route_func: local
🚧 ✅ Networking route_func: forward
x86_64:
Host 1:
✅ Boot test
🚧 ✅ IPMI driver test
🚧 ✅ IPMItool loop stress test
Host 2:
✅ Boot test
✅ Storage SAN device stress - mpt3sas driver
Host 3:
✅ Boot test
✅ xfstests: ext4
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ IOMMU boot test
🚧 ✅ Storage blktests
Host 4:
✅ Boot test
✅ Storage SAN device stress - megaraid_sas
Host 5:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ Memory function: memfd_create
✅ Memory function: kaslr
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking MACsec: sanity
✅ Networking socket: fuzz
✅ Networking sctp-auth: sockopts test
✅ Networking: igmp conformance test
✅ Networking TCP: keepalive test
✅ Networking UDP: socket
✅ Networking tunnel: gre basic
✅ L2TP basic test
✅ Networking tunnel: vxlan basic
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ pciutils: sanity smoke test
✅ ALSA PCM loopback test
✅ ALSA Control (mixer) Userspace Element test
✅ Usex - version 1.9-29
✅ storage: SCSI VPD
✅ stress: stress-ng
✅ trace: ftrace/tracer
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ Networking bridge: sanity
🚧 ✅ Networking route: pmtu
🚧 ✅ Networking tunnel: geneve basic test
🚧 ✅ Networking vnic: ipvlan/basic
🚧 ✅ storage: dm/common
🚧 ✅ Networking route_func: local
🚧 ✅ Networking route_func: forward
🚧 ✅ Networking ipsec: basic netns transport
🚧 ✅ Networking ipsec: basic netns tunnel
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
Testing timeout
---------------
We aim to provide a report within reasonable timeframe. Tests that haven't
finished running are marked with ⏱. Reports for non-upstream kernels have
a Beaker recipe linked to next to each host.
G920 device only advertises REPORT_ID_HIDPP_LONG and
REPORT_ID_HIDPP_VERY_LONG in its HID report descriptor, so querying
for REPORT_ID_HIDPP_SHORT with optional=false will always fail and
prevent G920 to be recognized as a valid HID++ device.
To fix this and improve some other aspects, modify
hidpp_validate_device() as follows:
- Inline the code of hidpp_validate_report() to simplify
distingushing between non-present and invalid report descriptors
- Drop the check for id >= HID_MAX_IDS || id < 0 since all of our
IDs are static and known to satisfy that at compile time
- Change the algorithms to check all possible report
types (including very long report) and deem the device as a valid
HID++ device if it supports at least one
- Treat invalid report length as a hard stop for the validation
algorithm, meaning that if any of the supported reports has
invalid length we assume the worst and treat the device as a
generic HID device.
- Fold initialization of hidpp->very_long_report_length into
hidpp_validate_device() since it already fetches very long report
length and validates its value
Fixes: fe3ee1ec007b ("HID: logitech-hidpp: allow non HID++ devices to be handled by this module")
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=204191
Reported-by: Sam Bazely <sambazley(a)fastmail.com>
Signed-off-by: Andrey Smirnov <andrew.smirnov(a)gmail.com>
Cc: Jiri Kosina <jikos(a)kernel.org>
Cc: Benjamin Tissoires <benjamin.tissoires(a)redhat.com>
Cc: Henrik Rydberg <rydberg(a)bitmath.org>
Cc: Pierre-Loup A. Griffais <pgriffais(a)valvesoftware.com>
Cc: Austin Palmer <austinp(a)valvesoftware.com>
Cc: linux-input(a)vger.kernel.org
Cc: linux-kernel(a)vger.kernel.org
Cc: stable(a)vger.kernel.org # 5.2+
---
drivers/hid/hid-logitech-hidpp.c | 54 ++++++++++++++++++--------------
1 file changed, 30 insertions(+), 24 deletions(-)
diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c
index 85911586b3b6..8c4be991f387 100644
--- a/drivers/hid/hid-logitech-hidpp.c
+++ b/drivers/hid/hid-logitech-hidpp.c
@@ -3498,34 +3498,45 @@ static int hidpp_get_report_length(struct hid_device *hdev, int id)
return report->field[0]->report_count + 1;
}
-static bool hidpp_validate_report(struct hid_device *hdev, int id,
- int expected_length, bool optional)
+static bool hidpp_validate_device(struct hid_device *hdev)
{
- int report_length;
+ struct hidpp_device *hidpp = hid_get_drvdata(hdev);
+ int id, report_length, supported_reports = 0;
+
+ id = REPORT_ID_HIDPP_SHORT;
+ report_length = hidpp_get_report_length(hdev, id);
+ if (report_length) {
+ if (report_length < HIDPP_REPORT_SHORT_LENGTH)
+ goto bad_device;
- if (id >= HID_MAX_IDS || id < 0) {
- hid_err(hdev, "invalid HID report id %u\n", id);
- return false;
+ supported_reports++;
}
+ id = REPORT_ID_HIDPP_LONG;
report_length = hidpp_get_report_length(hdev, id);
- if (!report_length)
- return optional;
+ if (report_length) {
+ if (report_length < HIDPP_REPORT_LONG_LENGTH)
+ goto bad_device;
- if (report_length < expected_length) {
- hid_warn(hdev, "not enough values in hidpp report %d\n", id);
- return false;
+ supported_reports++;
}
- return true;
-}
+ id = REPORT_ID_HIDPP_VERY_LONG;
+ report_length = hidpp_get_report_length(hdev, id);
+ if (report_length) {
+ if (report_length > HIDPP_REPORT_LONG_LENGTH &&
+ report_length < HIDPP_REPORT_VERY_LONG_MAX_LENGTH)
+ goto bad_device;
-static bool hidpp_validate_device(struct hid_device *hdev)
-{
- return hidpp_validate_report(hdev, REPORT_ID_HIDPP_SHORT,
- HIDPP_REPORT_SHORT_LENGTH, false) &&
- hidpp_validate_report(hdev, REPORT_ID_HIDPP_LONG,
- HIDPP_REPORT_LONG_LENGTH, true);
+ supported_reports++;
+ hidpp->very_long_report_length = report_length;
+ }
+
+ return supported_reports;
+
+bad_device:
+ hid_warn(hdev, "not enough values in hidpp report %d\n", id);
+ return false;
}
static bool hidpp_application_equals(struct hid_device *hdev,
@@ -3572,11 +3583,6 @@ static int hidpp_probe(struct hid_device *hdev, const struct hid_device_id *id)
return hid_hw_start(hdev, HID_CONNECT_DEFAULT);
}
- hidpp->very_long_report_length =
- hidpp_get_report_length(hdev, REPORT_ID_HIDPP_VERY_LONG);
- if (hidpp->very_long_report_length > HIDPP_REPORT_VERY_LONG_MAX_LENGTH)
- hidpp->very_long_report_length = HIDPP_REPORT_VERY_LONG_MAX_LENGTH;
-
if (id->group == HID_GROUP_LOGITECH_DJ_DEVICE)
hidpp->quirks |= HIDPP_QUIRK_UNIFYING;
--
2.21.0
Hello,
We ran automated tests on a recent commit from this kernel tree:
Kernel repo: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
Commit: 38a3b9f512fa - Linux 5.3.7-rc1
The results of these automated tests are provided below.
Overall result: PASSED
Merge: OK
Compile: OK
Tests: OK
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/229323
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
✅ Boot test
✅ xfstests: ext4
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ Memory function: memfd_create
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ Networking sctp-auth: sockopts test
✅ Networking: igmp conformance test
✅ Networking TCP: keepalive test
✅ Networking UDP: socket
✅ Networking tunnel: gre basic
✅ Networking tunnel: vxlan basic
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
✅ storage: SCSI VPD
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ Memory function: kaslr
🚧 ✅ Networking bridge: sanity
🚧 ✅ Networking MACsec: sanity
🚧 ✅ Networking route: pmtu
🚧 ✅ Networking tunnel: geneve basic test
🚧 ✅ L2TP basic test
🚧 ✅ Networking vnic: ipvlan/basic
🚧 ✅ ALSA PCM loopback test
🚧 ✅ ALSA Control (mixer) Userspace Element test
🚧 ✅ storage: dm/common
🚧 ✅ trace: ftrace/tracer
🚧 ✅ Networking route_func: local
🚧 ✅ Networking route_func: forward
🚧 ✅ Networking ipsec: basic netns transport
🚧 ✅ Networking ipsec: basic netns tunnel
ppc64le:
Host 1:
✅ Boot test
✅ xfstests: ext4
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ❌ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ Memory function: memfd_create
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ Networking sctp-auth: sockopts test
✅ Networking TCP: keepalive test
✅ Networking UDP: socket
✅ Networking tunnel: gre basic
✅ Networking tunnel: vxlan basic
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ Memory function: kaslr
🚧 ✅ Networking bridge: sanity
🚧 ✅ Networking MACsec: sanity
🚧 ✅ Networking route: pmtu
🚧 ✅ Networking tunnel: geneve basic test
🚧 ✅ L2TP basic test
🚧 ✅ Networking ipsec: basic netns tunnel
🚧 ✅ Networking vnic: ipvlan/basic
🚧 ✅ ALSA PCM loopback test
🚧 ✅ ALSA Control (mixer) Userspace Element test
🚧 ✅ storage: dm/common
🚧 ✅ trace: ftrace/tracer
🚧 ✅ Networking route_func: local
🚧 ✅ Networking route_func: forward
x86_64:
Host 1:
⚡ Internal infrastructure issues prevented one or more tests (marked
with ⚡⚡⚡) from running on this architecture.
This is not the fault of the kernel that was tested.
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ Memory function: memfd_create
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ Networking sctp-auth: sockopts test
✅ Networking: igmp conformance test
✅ Networking TCP: keepalive test
✅ Networking UDP: socket
✅ Networking tunnel: gre basic
✅ Networking tunnel: vxlan basic
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ pciutils: sanity smoke test
✅ Usex - version 1.9-29
✅ storage: SCSI VPD
✅ stress: stress-ng
🚧 ⚡⚡⚡ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ❌ POSIX pjd-fstest suites
🚧 ⚡⚡⚡ Memory function: kaslr
🚧 ⚡⚡⚡ Networking bridge: sanity
🚧 ⚡⚡⚡ Networking MACsec: sanity
🚧 ⚡⚡⚡ Networking route: pmtu
🚧 ⚡⚡⚡ Networking tunnel: geneve basic test
🚧 ⚡⚡⚡ L2TP basic test
🚧 ⚡⚡⚡ Networking vnic: ipvlan/basic
🚧 ⚡⚡⚡ ALSA PCM loopback test
🚧 ⚡⚡⚡ ALSA Control (mixer) Userspace Element test
🚧 ⚡⚡⚡ storage: dm/common
🚧 ⚡⚡⚡ trace: ftrace/tracer
🚧 ⚡⚡⚡ Networking route_func: local
🚧 ⚡⚡⚡ Networking route_func: forward
🚧 ⚡⚡⚡ Networking ipsec: basic netns transport
🚧 ⚡⚡⚡ Networking ipsec: basic netns tunnel
Host 2:
✅ Boot test
✅ xfstests: ext4
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ IOMMU boot test
🚧 ✅ Storage blktests
Host 3:
✅ Boot test
✅ Storage SAN device stress - mpt3sas driver
Host 4:
✅ Boot test
✅ Storage SAN device stress - megaraid_sas
Host 5:
✅ Boot test
🚧 ✅ IPMI driver test
🚧 ❌ IPMItool loop stress test
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
Testing timeout
---------------
We aim to provide a report within reasonable timeframe. Tests that haven't
finished running are marked with ⏱. Reports for non-upstream kernels have
a Beaker recipe linked to next to each host.
Dear stable kernel maintainers,
can you please add the patch below into all stable kernels up until (and
including) kernel 4.16 ?
It's upstream patch b845f66f78bf which was merged in kernel 4.17.
It turned out, that this patch prevents multiple kernel crashes when
users add standard PCI cards (e.g. PCI USB cards) to parisc boxes and
expect them to simply work. Instead, without this patch, parisc kernels
prior to v4.17 will crash the box since the default PCI behaviour is to
fault if Linux drivers read/write to PCI memory regions which aren't
backed by real hardware. This happens e.g. when the Linux drivers poke
into PCI memory to check if a specific hardware revision was installed.
I got multiple reports from users which ran into this problem, and by
adding this patch to older kernels (which are still used as distribution
install kernels, e.g. v4.16 for debian) people will be able to install
Linux with such PCI cards without crashes and with working PCI cards.
Thanks!
Helge
______________
Subject: [PATCH] parisc/pci: Switch LBA PCI bus from Hard Fail to Soft Fail mode
Carlo Pisani noticed that his C3600 workstation behaved unstable during heavy
I/O on the PCI bus with a VIA VT6421 IDE/SATA PCI card.
To avoid such instability, this patch switches the LBA PCI bus from Hard Fail
mode into Soft Fail mode. In this mode the bus will return -1UL for timed out
MMIO transactions, which is exactly how the x86 (and most other architectures)
PCI busses behave.
This patch is based on a proposal by Grant Grundler and Kyle McMartin 10
years ago:
https://www.spinics.net/lists/linux-parisc/msg01027.html
Cc: Carlo Pisani <carlojpisani(a)gmail.com>
Cc: Kyle McMartin <kyle(a)mcmartin.ca>
Reviewed-by: Grant Grundler <grantgrundler(a)gmail.com>
Signed-off-by: Helge Deller <deller(a)gmx.de>
diff --git a/drivers/parisc/lba_pci.c b/drivers/parisc/lba_pci.c
index 41b740aed3a3..69bd98421eb1 100644
--- a/drivers/parisc/lba_pci.c
+++ b/drivers/parisc/lba_pci.c
@@ -1403,9 +1403,27 @@ lba_hw_init(struct lba_device *d)
WRITE_REG32(stat, d->hba.base_addr + LBA_ERROR_CONFIG);
}
- /* Set HF mode as the default (vs. -1 mode). */
+
+ /*
+ * Hard Fail vs. Soft Fail on PCI "Master Abort".
+ *
+ * "Master Abort" means the MMIO transaction timed out - usually due to
+ * the device not responding to an MMIO read. We would like HF to be
+ * enabled to find driver problems, though it means the system will
+ * crash with a HPMC.
+ *
+ * In SoftFail mode "~0L" is returned as a result of a timeout on the
+ * pci bus. This is like how PCI busses on x86 and most other
+ * architectures behave. In order to increase compatibility with
+ * existing (x86) PCI hardware and existing Linux drivers we enable
+ * Soft Faul mode on PA-RISC now too.
+ */
stat = READ_REG32(d->hba.base_addr + LBA_STAT_CTL);
+#if defined(ENABLE_HARDFAIL)
WRITE_REG32(stat | HF_ENABLE, d->hba.base_addr + LBA_STAT_CTL);
+#else
+ WRITE_REG32(stat & ~HF_ENABLE, d->hba.base_addr + LBA_STAT_CTL);
+#endif
/*
** Writing a zero to STAT_CTL.rf (bit 0) will clear reset signal
Hello,
We ran automated tests on a patchset that was proposed for merging into this
kernel tree. The patches were applied to:
Kernel repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
The results of these automated tests are provided below.
Overall result: PASSED
Merge: OK
Compile: OK
Tests: OK
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/229786
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Merge testing
-------------
We cloned this repository and checked out the following commit:
Repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
We grabbed the 533e667ddb12 commit of the stable queue repository.
We then merged the patchset with `git am`:
panic-ensure-preemption-is-disabled-during-panic.patch
usb-rio500-remove-rio-500-kernel-driver.patch
usb-yurex-don-t-retry-on-unexpected-errors.patch
usb-yurex-fix-null-derefs-on-disconnect.patch
usb-usb-skeleton-fix-runtime-pm-after-driver-unbind.patch
usb-usb-skeleton-fix-null-deref-on-disconnect.patch
xhci-fix-false-warning-message-about-wrong-bounce-buffer-write-length.patch
xhci-prevent-device-initiated-u1-u2-link-pm-if-exit-latency-is-too-long.patch
xhci-check-all-endpoints-for-lpm-timeout.patch
xhci-fix-usb-3.1-capability-detection-on-early-xhci-1.1-spec-based-hosts.patch
usb-xhci-wait-for-cnr-controller-not-ready-bit-in-xhci-resume.patch
xhci-prevent-deadlock-when-xhci-adapter-breaks-during-init.patch
xhci-increase-sts_save-timeout-in-xhci_suspend.patch
xhci-fix-null-pointer-dereference-in-xhci_clear_tt_buffer_complete.patch
usb-adutux-fix-use-after-free-on-disconnect.patch
usb-adutux-fix-null-derefs-on-disconnect.patch
usb-adutux-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-on-disconnect.patch
usb-iowarrior-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-after-driver-unbind.patch
usb-usblp-fix-runtime-pm-after-driver-unbind.patch
usb-chaoskey-fix-use-after-free-on-release.patch
usb-ldusb-fix-null-derefs-on-driver-unbind.patch
serial-uartlite-fix-exit-path-null-pointer.patch
serial-uartps-fix-uartps_major-handling.patch
usb-serial-keyspan-fix-null-derefs-on-open-and-write.patch
usb-serial-ftdi_sio-add-device-ids-for-sienna-and-echelon-pl-20.patch
usb-serial-option-add-telit-fn980-compositions.patch
usb-serial-option-add-support-for-cinterion-cls8-devices.patch
usb-serial-fix-runtime-pm-after-driver-unbind.patch
usb-usblcd-fix-i-o-after-disconnect.patch
usb-microtek-fix-info-leak-at-probe.patch
usb-dummy-hcd-fix-power-budget-for-superspeed-mode.patch
usb-renesas_usbhs-gadget-do-not-discard-queues-in-usb_ep_set_-halt-wedge.patch
usb-renesas_usbhs-gadget-fix-usb_ep_set_-halt-wedge-behavior.patch
usb-typec-tcpm-usb-typec-tcpm-fix-a-signedness-bug-in-tcpm_fw_get_caps.patch
usb-typec-ucsi-ccg-remove-run_isr-flag.patch
usb-typec-ucsi-displayport-fix-for-the-mode-entering-routine.patch
usb-legousbtower-fix-slab-info-leak-at-probe.patch
usb-legousbtower-fix-deadlock-on-disconnect.patch
usb-legousbtower-fix-potential-null-deref-on-disconnect.patch
usb-legousbtower-fix-open-after-failed-reset-request.patch
usb-legousbtower-fix-use-after-free-on-release.patch
mei-me-add-comet-point-lake-lp-device-ids.patch
mei-avoid-fw-version-request-on-ibex-peak-and-earlier.patch
gpio-eic-sprd-fix-the-incorrect-eic-offset-when-toggling.patch
staging-fbtft-depend-on-of.patch
staging-bcm2835-audio-fix-draining-behavior-regression.patch
staging-fbtft-fix-memory-leak-in-fbtft_framebuffer_alloc.patch
staging-rtl8188eu-fix-highestrate-check-in-odm_arfbrefresh_8188e.patch
staging-vt6655-fix-memory-leak-in-vt6655_probe.patch
iio-adc-hx711-fix-bug-in-sampling-of-data.patch
iio-adc-ad799x-fix-probe-error-handling.patch
iio-adc-axp288-override-ts-pin-bias-current-for-some-models.patch
iio-adc-stm32-adc-move-registers-definitions.patch
iio-adc-stm32-adc-fix-a-race-when-using-several-adcs-with-dma-and-irq.patch
iio-light-opt3001-fix-mutex-unlock-race.patch
iio-light-add-missing-vcnl4040-of_compatible.patch
iio-accel-adxl372-fix-remove-limitation-for-fifo-samples.patch
iio-accel-adxl372-fix-push-to-buffers-lost-samples.patch
iio-accel-adxl372-perform-a-reset-at-start-up.patch
efivar-ssdt-don-t-iterate-over-efi-vars-if-no-ssdt-override-was-specified.patch
efi-tpm-don-t-access-event-count-when-it-isn-t-mapped.patch
efi-tpm-don-t-traverse-an-event-log-with-no-events.patch
efi-tpm-only-set-efi_tpm_final_log_size-after-successful-event-log-parsing.patch
perf-llvm-don-t-access-out-of-scope-array.patch
perf-inject-jit-fix-jit_code_move-filename.patch
drm-i915-perform-ggtt-restore-much-earlier-during-resume.patch
blk-wbt-fix-performance-regression-in-wbt-scale_up-scale_down.patch
selinux-fix-context-string-corruption-in-convert_context.patch
cifs-gracefully-handle-queryinfo-errors-during-open.patch
cifs-force-revalidate-inode-when-dentry-is-stale.patch
cifs-force-reval-dentry-if-lookup_reval-flag-is-set.patch
cifs-use-cifsinodeinfo-open_file_lock-while-iterating-to-avoid-a-panic.patch
kernel-sysctl.c-do-not-override-max_threads-provided-by-userspace.patch
mm-z3fold.c-claim-page-in-the-beginning-of-free.patch
mm-page_alloc.c-fix-a-crash-in-free_pages_prepare.patch
mm-vmpressure.c-fix-a-signedness-bug-in-vmpressure_register_event.patch
ib-core-fix-wrong-iterating-on-ports.patch
firmware-google-increment-vpd-key_len-properly.patch
gpio-fix-getting-nonexclusive-gpiods-from-dt.patch
gpiolib-don-t-clear-flag_is_out-when-emulating-open-.patch
btrfs-relocation-fix-use-after-free-on-dead-relocation-roots.patch
btrfs-allocate-new-inode-in-nofs-context.patch
btrfs-fix-balance-convert-to-single-on-32-bit-host-cpus.patch
btrfs-fix-memory-leak-due-to-concurrent-append-writes-with-fiemap.patch
btrfs-fix-incorrect-updating-of-log-root-tree.patch
btrfs-fix-uninitialized-ret-in-ref-verify.patch
nfs-fix-o_direct-accounting-of-number-of-bytes-read-written.patch
mips-disable-loongson-mmi-instructions-for-kernel-build.patch
mips-elf_hwcap-export-userspace-ases.patch
rdma-vmw_pvrdma-free-srq-only-once.patch
acpi-pptt-add-support-for-acpi-6.3-thread-flag.patch
arm64-topology-use-pptt-to-determine-if-pe-is-a-thre.patch
iio-light-fix-vcnl4000-devicetree-hooks.patch
fix-the-locking-in-dcache_readdir-and-friends.patch
drm-i915-bump-skl-max-plane-width-to-5k-for-linear-x-tiled.patch
drm-i915-whitelist-common_slice_chicken2.patch
drm-i915-mark-contents-as-dirty-on-a-write-fault.patch
drm-msm-use-the-correct-dma_sync-calls-harder.patch
media-stkwebcam-fix-runtime-pm-after-driver-unbind.patch
arm64-sve-fix-wrong-free-for-task-thread.sve_state.patch
tracing-hwlat-report-total-time-spent-in-all-nmis-during-the-sample.patch
tracing-hwlat-don-t-ignore-outer-loop-duration-when-calculating-max_latency.patch
ftrace-get-a-reference-counter-for-the-trace_array-on-filter-files.patch
tracing-get-trace_array-reference-for-available_tracers-files.patch
hwmon-fix-hwmon_p_min_alarm-mask.patch
mtd-rawnand-au1550nd-fix-au_read_buf16-prototype.patch
x86-asm-fix-mwaitx-c-state-hint-value.patch
io_uring-only-flush-workqueues-on-fileset-removal.patch
efi-tpm-fix-sanity-check-of-unsigned-tbl_size-being-less-than-zero.patch
asoc-sgtl5000-add-adc-mute-control.patch
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ ALSA PCM loopback test
✅ ALSA Control (mixer) Userspace Element test
✅ Usex - version 1.9-29
✅ trace: ftrace/tracer
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
Host 2:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
ppc64le:
Host 1:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ ALSA PCM loopback test
✅ ALSA Control (mixer) Userspace Element test
✅ Usex - version 1.9-29
✅ trace: ftrace/tracer
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
x86_64:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ LTP lite
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ pciutils: sanity smoke test
✅ ALSA PCM loopback test
✅ ALSA Control (mixer) Userspace Element test
✅ Usex - version 1.9-29
✅ stress: stress-ng
✅ trace: ftrace/tracer
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
Host 2:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 3:
✅ Boot test
🚧 ✅ /kernel/infiniband/env_setup
🚧 ✅ /kernel/infiniband/sanity
Host 4:
✅ Boot test
🚧 ✅ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Host 5:
✅ Boot test
🚧 ❌ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Host 6:
✅ Boot test
🚧 ❌ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
Testing timeout
---------------
We aim to provide a report within reasonable timeframe. Tests that haven't
finished running are marked with ⏱. Reports for non-upstream kernels have
a Beaker recipe linked to next to each host.
Hello,
We ran automated tests on a recent commit from this kernel tree:
Kernel repo: git://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
Commit: 9e884edef8ae - USB: usblp: fix use-after-free on disconnect
The results of these automated tests are provided below.
Overall result: FAILED (see details below)
Merge: OK
Compile: OK
Tests: FAILED
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/229283
One or more kernel tests failed:
ppc64le:
❌ Boot test
❌ Boot test
x86_64:
❌ Boot test
❌ Boot test
❌ Boot test
❌ Boot test
❌ Boot test
We hope that these logs can help you find the problem quickly. For the full
detail on our testing procedures, please scroll to the bottom of this message.
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
⚡ Internal infrastructure issues prevented one or more tests (marked
with ⚡⚡⚡) from running on this architecture.
This is not the fault of the kernel that was tested.
ppc64le:
Host 1:
❌ Boot test
⚡⚡⚡ Podman system integration test (as root)
⚡⚡⚡ Podman system integration test (as user)
⚡⚡⚡ Loopdev Sanity
⚡⚡⚡ jvm test suite
⚡⚡⚡ Memory function: memfd_create
⚡⚡⚡ AMTU (Abstract Machine Test Utility)
⚡⚡⚡ LTP: openposix test suite
⚡⚡⚡ Ethernet drivers sanity
⚡⚡⚡ Networking socket: fuzz
⚡⚡⚡ Networking sctp-auth: sockopts test
⚡⚡⚡ Networking TCP: keepalive test
⚡⚡⚡ Networking UDP: socket
⚡⚡⚡ Networking tunnel: gre basic
⚡⚡⚡ Networking tunnel: vxlan basic
⚡⚡⚡ audit: audit testsuite test
⚡⚡⚡ httpd: mod_ssl smoke sanity
⚡⚡⚡ iotop: sanity
⚡⚡⚡ tuned: tune-processes-through-perf
⚡⚡⚡ Usex - version 1.9-29
🚧 ⚡⚡⚡ LTP lite
🚧 ⚡⚡⚡ CIFS Connectathon
🚧 ⚡⚡⚡ POSIX pjd-fstest suites
🚧 ⚡⚡⚡ Memory function: kaslr
🚧 ⚡⚡⚡ Networking bridge: sanity
🚧 ⚡⚡⚡ Networking MACsec: sanity
🚧 ⚡⚡⚡ Networking route: pmtu
🚧 ⚡⚡⚡ Networking tunnel: geneve basic test
🚧 ⚡⚡⚡ L2TP basic test
🚧 ⚡⚡⚡ Networking ipsec: basic netns tunnel
🚧 ⚡⚡⚡ Networking vnic: ipvlan/basic
🚧 ⚡⚡⚡ ALSA PCM loopback test
🚧 ⚡⚡⚡ ALSA Control (mixer) Userspace Element test
🚧 ⚡⚡⚡ storage: dm/common
🚧 ⚡⚡⚡ trace: ftrace/tracer
🚧 ⚡⚡⚡ Networking route_func: local
🚧 ⚡⚡⚡ Networking route_func: forward
Host 2:
❌ Boot test
⚡⚡⚡ xfstests: ext4
⚡⚡⚡ xfstests: xfs
⚡⚡⚡ selinux-policy: serge-testsuite
⚡⚡⚡ lvm thinp sanity
⚡⚡⚡ storage: software RAID testing
🚧 ⚡⚡⚡ Storage blktests
x86_64:
Host 1:
❌ Boot test
⚡⚡⚡ Storage SAN device stress - mpt3sas driver
Host 2:
❌ Boot test
⚡⚡⚡ xfstests: ext4
⚡⚡⚡ xfstests: xfs
⚡⚡⚡ selinux-policy: serge-testsuite
⚡⚡⚡ lvm thinp sanity
⚡⚡⚡ storage: software RAID testing
🚧 ⚡⚡⚡ IOMMU boot test
🚧 ⚡⚡⚡ Storage blktests
Host 3:
❌ Boot test
🚧 ⚡⚡⚡ IPMI driver test
🚧 ⚡⚡⚡ IPMItool loop stress test
Host 4:
❌ Boot test
⚡⚡⚡ Podman system integration test (as root)
⚡⚡⚡ Podman system integration test (as user)
⚡⚡⚡ Loopdev Sanity
⚡⚡⚡ jvm test suite
⚡⚡⚡ Memory function: memfd_create
⚡⚡⚡ AMTU (Abstract Machine Test Utility)
⚡⚡⚡ LTP: openposix test suite
⚡⚡⚡ Ethernet drivers sanity
⚡⚡⚡ Networking socket: fuzz
⚡⚡⚡ Networking sctp-auth: sockopts test
⚡⚡⚡ Networking: igmp conformance test
⚡⚡⚡ Networking TCP: keepalive test
⚡⚡⚡ Networking UDP: socket
⚡⚡⚡ Networking tunnel: gre basic
⚡⚡⚡ Networking tunnel: vxlan basic
⚡⚡⚡ audit: audit testsuite test
⚡⚡⚡ httpd: mod_ssl smoke sanity
⚡⚡⚡ iotop: sanity
⚡⚡⚡ tuned: tune-processes-through-perf
⚡⚡⚡ pciutils: sanity smoke test
⚡⚡⚡ Usex - version 1.9-29
⚡⚡⚡ storage: SCSI VPD
⚡⚡⚡ stress: stress-ng
🚧 ⚡⚡⚡ LTP lite
🚧 ⚡⚡⚡ CIFS Connectathon
🚧 ⚡⚡⚡ POSIX pjd-fstest suites
🚧 ⚡⚡⚡ Memory function: kaslr
🚧 ⚡⚡⚡ Networking bridge: sanity
🚧 ⚡⚡⚡ Networking MACsec: sanity
🚧 ⚡⚡⚡ Networking route: pmtu
🚧 ⚡⚡⚡ Networking tunnel: geneve basic test
🚧 ⚡⚡⚡ L2TP basic test
🚧 ⚡⚡⚡ Networking vnic: ipvlan/basic
🚧 ⚡⚡⚡ ALSA PCM loopback test
🚧 ⚡⚡⚡ ALSA Control (mixer) Userspace Element test
🚧 ⚡⚡⚡ storage: dm/common
🚧 ⚡⚡⚡ trace: ftrace/tracer
🚧 ⚡⚡⚡ Networking route_func: local
🚧 ⚡⚡⚡ Networking route_func: forward
🚧 ⚡⚡⚡ Networking ipsec: basic netns transport
🚧 ⚡⚡⚡ Networking ipsec: basic netns tunnel
Host 5:
❌ Boot test
⚡⚡⚡ Storage SAN device stress - megaraid_sas
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
Testing timeout
---------------
We aim to provide a report within reasonable timeframe. Tests that haven't
finished running are marked with ⏱. Reports for non-upstream kernels have
a Beaker recipe linked to next to each host.
Hello,
We ran automated tests on a recent commit from this kernel tree:
Kernel repo: git://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
Commit: 9e884edef8ae - USB: usblp: fix use-after-free on disconnect
The results of these automated tests are provided below.
Overall result: FAILED (see details below)
Merge: OK
Compile: OK
Tests: FAILED
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/229284
One or more kernel tests failed:
ppc64le:
❌ Boot test
❌ Boot test
aarch64:
❌ Boot test
❌ Boot test
x86_64:
❌ Boot test
❌ Boot test
❌ Boot test
❌ Boot test
❌ Boot test
We hope that these logs can help you find the problem quickly. For the full
detail on our testing procedures, please scroll to the bottom of this message.
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
❌ Boot test
⚡⚡⚡ Podman system integration test (as root)
⚡⚡⚡ Podman system integration test (as user)
⚡⚡⚡ Loopdev Sanity
⚡⚡⚡ jvm test suite
⚡⚡⚡ Memory function: memfd_create
⚡⚡⚡ AMTU (Abstract Machine Test Utility)
⚡⚡⚡ LTP: openposix test suite
⚡⚡⚡ Ethernet drivers sanity
⚡⚡⚡ Networking socket: fuzz
⚡⚡⚡ Networking sctp-auth: sockopts test
⚡⚡⚡ Networking: igmp conformance test
⚡⚡⚡ Networking TCP: keepalive test
⚡⚡⚡ Networking UDP: socket
⚡⚡⚡ Networking tunnel: gre basic
⚡⚡⚡ Networking tunnel: vxlan basic
⚡⚡⚡ audit: audit testsuite test
⚡⚡⚡ httpd: mod_ssl smoke sanity
⚡⚡⚡ iotop: sanity
⚡⚡⚡ tuned: tune-processes-through-perf
⚡⚡⚡ Usex - version 1.9-29
⚡⚡⚡ storage: SCSI VPD
⚡⚡⚡ stress: stress-ng
🚧 ⚡⚡⚡ LTP lite
🚧 ⚡⚡⚡ CIFS Connectathon
🚧 ⚡⚡⚡ POSIX pjd-fstest suites
🚧 ⚡⚡⚡ Memory function: kaslr
🚧 ⚡⚡⚡ Networking bridge: sanity
🚧 ⚡⚡⚡ Networking MACsec: sanity
🚧 ⚡⚡⚡ Networking route: pmtu
🚧 ⚡⚡⚡ Networking tunnel: geneve basic test
🚧 ⚡⚡⚡ L2TP basic test
🚧 ⚡⚡⚡ Networking vnic: ipvlan/basic
🚧 ⚡⚡⚡ ALSA PCM loopback test
🚧 ⚡⚡⚡ ALSA Control (mixer) Userspace Element test
🚧 ⚡⚡⚡ storage: dm/common
🚧 ⚡⚡⚡ trace: ftrace/tracer
🚧 ⚡⚡⚡ Networking route_func: local
🚧 ⚡⚡⚡ Networking route_func: forward
🚧 ⚡⚡⚡ Networking ipsec: basic netns transport
🚧 ⚡⚡⚡ Networking ipsec: basic netns tunnel
Host 2:
❌ Boot test
⚡⚡⚡ xfstests: ext4
⚡⚡⚡ xfstests: xfs
⚡⚡⚡ selinux-policy: serge-testsuite
⚡⚡⚡ lvm thinp sanity
⚡⚡⚡ storage: software RAID testing
🚧 ⚡⚡⚡ Storage blktests
ppc64le:
Host 1:
❌ Boot test
⚡⚡⚡ Podman system integration test (as root)
⚡⚡⚡ Podman system integration test (as user)
⚡⚡⚡ Loopdev Sanity
⚡⚡⚡ jvm test suite
⚡⚡⚡ Memory function: memfd_create
⚡⚡⚡ AMTU (Abstract Machine Test Utility)
⚡⚡⚡ LTP: openposix test suite
⚡⚡⚡ Ethernet drivers sanity
⚡⚡⚡ Networking socket: fuzz
⚡⚡⚡ Networking sctp-auth: sockopts test
⚡⚡⚡ Networking TCP: keepalive test
⚡⚡⚡ Networking UDP: socket
⚡⚡⚡ Networking tunnel: gre basic
⚡⚡⚡ Networking tunnel: vxlan basic
⚡⚡⚡ audit: audit testsuite test
⚡⚡⚡ httpd: mod_ssl smoke sanity
⚡⚡⚡ iotop: sanity
⚡⚡⚡ tuned: tune-processes-through-perf
⚡⚡⚡ Usex - version 1.9-29
🚧 ⚡⚡⚡ LTP lite
🚧 ⚡⚡⚡ CIFS Connectathon
🚧 ⚡⚡⚡ POSIX pjd-fstest suites
🚧 ⚡⚡⚡ Memory function: kaslr
🚧 ⚡⚡⚡ Networking bridge: sanity
🚧 ⚡⚡⚡ Networking MACsec: sanity
🚧 ⚡⚡⚡ Networking route: pmtu
🚧 ⚡⚡⚡ Networking tunnel: geneve basic test
🚧 ⚡⚡⚡ L2TP basic test
🚧 ⚡⚡⚡ Networking ipsec: basic netns tunnel
🚧 ⚡⚡⚡ Networking vnic: ipvlan/basic
🚧 ⚡⚡⚡ ALSA PCM loopback test
🚧 ⚡⚡⚡ ALSA Control (mixer) Userspace Element test
🚧 ⚡⚡⚡ storage: dm/common
🚧 ⚡⚡⚡ trace: ftrace/tracer
🚧 ⚡⚡⚡ Networking route_func: local
🚧 ⚡⚡⚡ Networking route_func: forward
Host 2:
❌ Boot test
⚡⚡⚡ xfstests: ext4
⚡⚡⚡ xfstests: xfs
⚡⚡⚡ selinux-policy: serge-testsuite
⚡⚡⚡ lvm thinp sanity
⚡⚡⚡ storage: software RAID testing
🚧 ⚡⚡⚡ Storage blktests
x86_64:
Host 1:
❌ Boot test
🚧 ⚡⚡⚡ IPMI driver test
🚧 ⚡⚡⚡ IPMItool loop stress test
Host 2:
❌ Boot test
⚡⚡⚡ Podman system integration test (as root)
⚡⚡⚡ Podman system integration test (as user)
⚡⚡⚡ Loopdev Sanity
⚡⚡⚡ jvm test suite
⚡⚡⚡ Memory function: memfd_create
⚡⚡⚡ AMTU (Abstract Machine Test Utility)
⚡⚡⚡ LTP: openposix test suite
⚡⚡⚡ Ethernet drivers sanity
⚡⚡⚡ Networking socket: fuzz
⚡⚡⚡ Networking sctp-auth: sockopts test
⚡⚡⚡ Networking: igmp conformance test
⚡⚡⚡ Networking TCP: keepalive test
⚡⚡⚡ Networking UDP: socket
⚡⚡⚡ Networking tunnel: gre basic
⚡⚡⚡ Networking tunnel: vxlan basic
⚡⚡⚡ audit: audit testsuite test
⚡⚡⚡ httpd: mod_ssl smoke sanity
⚡⚡⚡ iotop: sanity
⚡⚡⚡ tuned: tune-processes-through-perf
⚡⚡⚡ pciutils: sanity smoke test
⚡⚡⚡ Usex - version 1.9-29
⚡⚡⚡ storage: SCSI VPD
⚡⚡⚡ stress: stress-ng
🚧 ⚡⚡⚡ LTP lite
🚧 ⚡⚡⚡ CIFS Connectathon
🚧 ⚡⚡⚡ POSIX pjd-fstest suites
🚧 ⚡⚡⚡ Memory function: kaslr
🚧 ⚡⚡⚡ Networking bridge: sanity
🚧 ⚡⚡⚡ Networking MACsec: sanity
🚧 ⚡⚡⚡ Networking route: pmtu
🚧 ⚡⚡⚡ Networking tunnel: geneve basic test
🚧 ⚡⚡⚡ L2TP basic test
🚧 ⚡⚡⚡ Networking vnic: ipvlan/basic
🚧 ⚡⚡⚡ ALSA PCM loopback test
🚧 ⚡⚡⚡ ALSA Control (mixer) Userspace Element test
🚧 ⚡⚡⚡ storage: dm/common
🚧 ⚡⚡⚡ trace: ftrace/tracer
🚧 ⚡⚡⚡ Networking route_func: local
🚧 ⚡⚡⚡ Networking route_func: forward
🚧 ⚡⚡⚡ Networking ipsec: basic netns transport
🚧 ⚡⚡⚡ Networking ipsec: basic netns tunnel
Host 3:
❌ Boot test
⚡⚡⚡ Storage SAN device stress - mpt3sas driver
Host 4:
❌ Boot test
⚡⚡⚡ Storage SAN device stress - megaraid_sas
Host 5:
❌ Boot test
⚡⚡⚡ xfstests: ext4
⚡⚡⚡ xfstests: xfs
⚡⚡⚡ selinux-policy: serge-testsuite
⚡⚡⚡ lvm thinp sanity
⚡⚡⚡ storage: software RAID testing
🚧 ⚡⚡⚡ IOMMU boot test
🚧 ⚡⚡⚡ Storage blktests
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
Testing timeout
---------------
We aim to provide a report within reasonable timeframe. Tests that haven't
finished running are marked with ⏱. Reports for non-upstream kernels have
a Beaker recipe linked to next to each host.
Hello,
We ran automated tests on a patchset that was proposed for merging into this
kernel tree. The patches were applied to:
Kernel repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
The results of these automated tests are provided below.
Overall result: PASSED
Merge: OK
Compile: OK
Tests: OK
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/229557
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Merge testing
-------------
We cloned this repository and checked out the following commit:
Repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
We grabbed the 85c345ddec1f commit of the stable queue repository.
We then merged the patchset with `git am`:
panic-ensure-preemption-is-disabled-during-panic.patch
usb-rio500-remove-rio-500-kernel-driver.patch
usb-yurex-don-t-retry-on-unexpected-errors.patch
usb-yurex-fix-null-derefs-on-disconnect.patch
usb-usb-skeleton-fix-runtime-pm-after-driver-unbind.patch
usb-usb-skeleton-fix-null-deref-on-disconnect.patch
xhci-fix-false-warning-message-about-wrong-bounce-buffer-write-length.patch
xhci-prevent-device-initiated-u1-u2-link-pm-if-exit-latency-is-too-long.patch
xhci-check-all-endpoints-for-lpm-timeout.patch
xhci-fix-usb-3.1-capability-detection-on-early-xhci-1.1-spec-based-hosts.patch
usb-xhci-wait-for-cnr-controller-not-ready-bit-in-xhci-resume.patch
xhci-prevent-deadlock-when-xhci-adapter-breaks-during-init.patch
xhci-increase-sts_save-timeout-in-xhci_suspend.patch
xhci-fix-null-pointer-dereference-in-xhci_clear_tt_buffer_complete.patch
usb-adutux-fix-use-after-free-on-disconnect.patch
usb-adutux-fix-null-derefs-on-disconnect.patch
usb-adutux-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-on-disconnect.patch
usb-iowarrior-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-after-driver-unbind.patch
usb-usblp-fix-runtime-pm-after-driver-unbind.patch
usb-chaoskey-fix-use-after-free-on-release.patch
usb-ldusb-fix-null-derefs-on-driver-unbind.patch
serial-uartlite-fix-exit-path-null-pointer.patch
serial-uartps-fix-uartps_major-handling.patch
usb-serial-keyspan-fix-null-derefs-on-open-and-write.patch
usb-serial-ftdi_sio-add-device-ids-for-sienna-and-echelon-pl-20.patch
usb-serial-option-add-telit-fn980-compositions.patch
usb-serial-option-add-support-for-cinterion-cls8-devices.patch
usb-serial-fix-runtime-pm-after-driver-unbind.patch
usb-usblcd-fix-i-o-after-disconnect.patch
usb-microtek-fix-info-leak-at-probe.patch
usb-dummy-hcd-fix-power-budget-for-superspeed-mode.patch
usb-renesas_usbhs-gadget-do-not-discard-queues-in-usb_ep_set_-halt-wedge.patch
usb-renesas_usbhs-gadget-fix-usb_ep_set_-halt-wedge-behavior.patch
usb-typec-tcpm-usb-typec-tcpm-fix-a-signedness-bug-in-tcpm_fw_get_caps.patch
usb-typec-ucsi-ccg-remove-run_isr-flag.patch
usb-typec-ucsi-displayport-fix-for-the-mode-entering-routine.patch
usb-legousbtower-fix-slab-info-leak-at-probe.patch
usb-legousbtower-fix-deadlock-on-disconnect.patch
usb-legousbtower-fix-potential-null-deref-on-disconnect.patch
usb-legousbtower-fix-open-after-failed-reset-request.patch
usb-legousbtower-fix-use-after-free-on-release.patch
mei-me-add-comet-point-lake-lp-device-ids.patch
mei-avoid-fw-version-request-on-ibex-peak-and-earlier.patch
gpio-eic-sprd-fix-the-incorrect-eic-offset-when-toggling.patch
staging-fbtft-depend-on-of.patch
staging-bcm2835-audio-fix-draining-behavior-regression.patch
staging-fbtft-fix-memory-leak-in-fbtft_framebuffer_alloc.patch
staging-rtl8188eu-fix-highestrate-check-in-odm_arfbrefresh_8188e.patch
staging-vt6655-fix-memory-leak-in-vt6655_probe.patch
iio-adc-hx711-fix-bug-in-sampling-of-data.patch
iio-adc-ad799x-fix-probe-error-handling.patch
iio-adc-axp288-override-ts-pin-bias-current-for-some-models.patch
iio-adc-stm32-adc-move-registers-definitions.patch
iio-adc-stm32-adc-fix-a-race-when-using-several-adcs-with-dma-and-irq.patch
iio-light-opt3001-fix-mutex-unlock-race.patch
iio-light-add-missing-vcnl4040-of_compatible.patch
iio-accel-adxl372-fix-remove-limitation-for-fifo-samples.patch
iio-accel-adxl372-fix-push-to-buffers-lost-samples.patch
iio-accel-adxl372-perform-a-reset-at-start-up.patch
efivar-ssdt-don-t-iterate-over-efi-vars-if-no-ssdt-override-was-specified.patch
efi-tpm-don-t-access-event-count-when-it-isn-t-mapped.patch
efi-tpm-don-t-traverse-an-event-log-with-no-events.patch
efi-tpm-only-set-efi_tpm_final_log_size-after-successful-event-log-parsing.patch
perf-llvm-don-t-access-out-of-scope-array.patch
perf-inject-jit-fix-jit_code_move-filename.patch
drm-i915-perform-ggtt-restore-much-earlier-during-resume.patch
blk-wbt-fix-performance-regression-in-wbt-scale_up-scale_down.patch
selinux-fix-context-string-corruption-in-convert_context.patch
cifs-gracefully-handle-queryinfo-errors-during-open.patch
cifs-force-revalidate-inode-when-dentry-is-stale.patch
cifs-force-reval-dentry-if-lookup_reval-flag-is-set.patch
cifs-use-cifsinodeinfo-open_file_lock-while-iterating-to-avoid-a-panic.patch
kernel-sysctl.c-do-not-override-max_threads-provided-by-userspace.patch
mm-z3fold.c-claim-page-in-the-beginning-of-free.patch
mm-page_alloc.c-fix-a-crash-in-free_pages_prepare.patch
mm-vmpressure.c-fix-a-signedness-bug-in-vmpressure_register_event.patch
ib-core-fix-wrong-iterating-on-ports.patch
firmware-google-increment-vpd-key_len-properly.patch
gpio-fix-getting-nonexclusive-gpiods-from-dt.patch
gpiolib-don-t-clear-flag_is_out-when-emulating-open-.patch
btrfs-relocation-fix-use-after-free-on-dead-relocation-roots.patch
btrfs-allocate-new-inode-in-nofs-context.patch
btrfs-fix-balance-convert-to-single-on-32-bit-host-cpus.patch
btrfs-fix-memory-leak-due-to-concurrent-append-writes-with-fiemap.patch
btrfs-fix-incorrect-updating-of-log-root-tree.patch
btrfs-fix-uninitialized-ret-in-ref-verify.patch
nfs-fix-o_direct-accounting-of-number-of-bytes-read-written.patch
mips-disable-loongson-mmi-instructions-for-kernel-build.patch
mips-elf_hwcap-export-userspace-ases.patch
rdma-vmw_pvrdma-free-srq-only-once.patch
acpi-pptt-add-support-for-acpi-6.3-thread-flag.patch
arm64-topology-use-pptt-to-determine-if-pe-is-a-thre.patch
iio-light-fix-vcnl4000-devicetree-hooks.patch
fix-the-locking-in-dcache_readdir-and-friends.patch
drm-i915-bump-skl-max-plane-width-to-5k-for-linear-x-tiled.patch
drm-i915-whitelist-common_slice_chicken2.patch
drm-i915-mark-contents-as-dirty-on-a-write-fault.patch
drm-msm-use-the-correct-dma_sync-calls-harder.patch
media-stkwebcam-fix-runtime-pm-after-driver-unbind.patch
arm64-sve-fix-wrong-free-for-task-thread.sve_state.patch
tracing-hwlat-report-total-time-spent-in-all-nmis-during-the-sample.patch
tracing-hwlat-don-t-ignore-outer-loop-duration-when-calculating-max_latency.patch
ftrace-get-a-reference-counter-for-the-trace_array-on-filter-files.patch
tracing-get-trace_array-reference-for-available_tracers-files.patch
hwmon-fix-hwmon_p_min_alarm-mask.patch
mtd-rawnand-au1550nd-fix-au_read_buf16-prototype.patch
x86-asm-fix-mwaitx-c-state-hint-value.patch
io_uring-only-flush-workqueues-on-fileset-removal.patch
efi-tpm-fix-sanity-check-of-unsigned-tbl_size-being-less-than-zero.patch
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
✅ stress: stress-ng
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ trace: ftrace/tracer
Host 2:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
ppc64le:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ trace: ftrace/tracer
Host 2:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
x86_64:
Host 1:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ pciutils: sanity smoke test
✅ Usex - version 1.9-29
✅ stress: stress-ng
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ trace: ftrace/tracer
Host 3:
✅ Boot test
🚧 ✅ /kernel/infiniband/env_setup
🚧 ✅ /kernel/infiniband/sanity
Host 4:
✅ Boot test
🚧 ✅ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Host 5:
✅ Boot test
🚧 ❌ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Host 6:
✅ Boot test
🚧 ❌ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
Testing timeout
---------------
We aim to provide a report within reasonable timeframe. Tests that haven't
finished running are marked with ⏱. Reports for non-upstream kernels have
a Beaker recipe linked to next to each host.
Hello,
We ran automated tests on a recent commit from this kernel tree:
Kernel repo: git://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
Commit: 9e884edef8ae - USB: usblp: fix use-after-free on disconnect
The results of these automated tests are provided below.
Overall result: FAILED (see details below)
Merge: OK
Compile: OK
Tests: FAILED
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/229277
One or more kernel tests failed:
ppc64le:
❌ Boot test
❌ Boot test
aarch64:
❌ Boot test
❌ Boot test
x86_64:
❌ Boot test
❌ Boot test
❌ Boot test
❌ Boot test
❌ Boot test
We hope that these logs can help you find the problem quickly. For the full
detail on our testing procedures, please scroll to the bottom of this message.
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
❌ Boot test
⚡⚡⚡ Podman system integration test (as root)
⚡⚡⚡ Podman system integration test (as user)
⚡⚡⚡ Loopdev Sanity
⚡⚡⚡ jvm test suite
⚡⚡⚡ Memory function: memfd_create
⚡⚡⚡ AMTU (Abstract Machine Test Utility)
⚡⚡⚡ LTP: openposix test suite
⚡⚡⚡ Ethernet drivers sanity
⚡⚡⚡ Networking socket: fuzz
⚡⚡⚡ Networking sctp-auth: sockopts test
⚡⚡⚡ Networking: igmp conformance test
⚡⚡⚡ Networking TCP: keepalive test
⚡⚡⚡ Networking UDP: socket
⚡⚡⚡ Networking tunnel: gre basic
⚡⚡⚡ Networking tunnel: vxlan basic
⚡⚡⚡ audit: audit testsuite test
⚡⚡⚡ httpd: mod_ssl smoke sanity
⚡⚡⚡ iotop: sanity
⚡⚡⚡ tuned: tune-processes-through-perf
⚡⚡⚡ Usex - version 1.9-29
⚡⚡⚡ storage: SCSI VPD
⚡⚡⚡ stress: stress-ng
🚧 ⚡⚡⚡ LTP lite
🚧 ⚡⚡⚡ CIFS Connectathon
🚧 ⚡⚡⚡ POSIX pjd-fstest suites
🚧 ⚡⚡⚡ Memory function: kaslr
🚧 ⚡⚡⚡ Networking bridge: sanity
🚧 ⚡⚡⚡ Networking MACsec: sanity
🚧 ⚡⚡⚡ Networking route: pmtu
🚧 ⚡⚡⚡ Networking tunnel: geneve basic test
🚧 ⚡⚡⚡ L2TP basic test
🚧 ⚡⚡⚡ Networking vnic: ipvlan/basic
🚧 ⚡⚡⚡ ALSA PCM loopback test
🚧 ⚡⚡⚡ ALSA Control (mixer) Userspace Element test
🚧 ⚡⚡⚡ storage: dm/common
🚧 ⚡⚡⚡ trace: ftrace/tracer
🚧 ⚡⚡⚡ Networking route_func: local
🚧 ⚡⚡⚡ Networking route_func: forward
🚧 ⚡⚡⚡ Networking ipsec: basic netns transport
🚧 ⚡⚡⚡ Networking ipsec: basic netns tunnel
Host 2:
❌ Boot test
⚡⚡⚡ xfstests: ext4
⚡⚡⚡ xfstests: xfs
⚡⚡⚡ selinux-policy: serge-testsuite
⚡⚡⚡ lvm thinp sanity
⚡⚡⚡ storage: software RAID testing
🚧 ⚡⚡⚡ Storage blktests
ppc64le:
Host 1:
❌ Boot test
⚡⚡⚡ Podman system integration test (as root)
⚡⚡⚡ Podman system integration test (as user)
⚡⚡⚡ Loopdev Sanity
⚡⚡⚡ jvm test suite
⚡⚡⚡ Memory function: memfd_create
⚡⚡⚡ AMTU (Abstract Machine Test Utility)
⚡⚡⚡ LTP: openposix test suite
⚡⚡⚡ Ethernet drivers sanity
⚡⚡⚡ Networking socket: fuzz
⚡⚡⚡ Networking sctp-auth: sockopts test
⚡⚡⚡ Networking TCP: keepalive test
⚡⚡⚡ Networking UDP: socket
⚡⚡⚡ Networking tunnel: gre basic
⚡⚡⚡ Networking tunnel: vxlan basic
⚡⚡⚡ audit: audit testsuite test
⚡⚡⚡ httpd: mod_ssl smoke sanity
⚡⚡⚡ iotop: sanity
⚡⚡⚡ tuned: tune-processes-through-perf
⚡⚡⚡ Usex - version 1.9-29
🚧 ⚡⚡⚡ LTP lite
🚧 ⚡⚡⚡ CIFS Connectathon
🚧 ⚡⚡⚡ POSIX pjd-fstest suites
🚧 ⚡⚡⚡ Memory function: kaslr
🚧 ⚡⚡⚡ Networking bridge: sanity
🚧 ⚡⚡⚡ Networking MACsec: sanity
🚧 ⚡⚡⚡ Networking route: pmtu
🚧 ⚡⚡⚡ Networking tunnel: geneve basic test
🚧 ⚡⚡⚡ L2TP basic test
🚧 ⚡⚡⚡ Networking ipsec: basic netns tunnel
🚧 ⚡⚡⚡ Networking vnic: ipvlan/basic
🚧 ⚡⚡⚡ ALSA PCM loopback test
🚧 ⚡⚡⚡ ALSA Control (mixer) Userspace Element test
🚧 ⚡⚡⚡ storage: dm/common
🚧 ⚡⚡⚡ trace: ftrace/tracer
🚧 ⚡⚡⚡ Networking route_func: local
🚧 ⚡⚡⚡ Networking route_func: forward
Host 2:
❌ Boot test
⚡⚡⚡ xfstests: ext4
⚡⚡⚡ xfstests: xfs
⚡⚡⚡ selinux-policy: serge-testsuite
⚡⚡⚡ lvm thinp sanity
⚡⚡⚡ storage: software RAID testing
🚧 ⚡⚡⚡ Storage blktests
x86_64:
Host 1:
❌ Boot test
⚡⚡⚡ xfstests: ext4
⚡⚡⚡ xfstests: xfs
⚡⚡⚡ selinux-policy: serge-testsuite
⚡⚡⚡ lvm thinp sanity
⚡⚡⚡ storage: software RAID testing
🚧 ⚡⚡⚡ IOMMU boot test
🚧 ⚡⚡⚡ Storage blktests
Host 2:
❌ Boot test
⚡⚡⚡ Storage SAN device stress - megaraid_sas
Host 3:
❌ Boot test
⚡⚡⚡ Storage SAN device stress - mpt3sas driver
Host 4:
❌ Boot test
🚧 ⚡⚡⚡ IPMI driver test
🚧 ⚡⚡⚡ IPMItool loop stress test
Host 5:
❌ Boot test
⚡⚡⚡ Podman system integration test (as root)
⚡⚡⚡ Podman system integration test (as user)
⚡⚡⚡ Loopdev Sanity
⚡⚡⚡ jvm test suite
⚡⚡⚡ Memory function: memfd_create
⚡⚡⚡ AMTU (Abstract Machine Test Utility)
⚡⚡⚡ LTP: openposix test suite
⚡⚡⚡ Ethernet drivers sanity
⚡⚡⚡ Networking socket: fuzz
⚡⚡⚡ Networking sctp-auth: sockopts test
⚡⚡⚡ Networking: igmp conformance test
⚡⚡⚡ Networking TCP: keepalive test
⚡⚡⚡ Networking UDP: socket
⚡⚡⚡ Networking tunnel: gre basic
⚡⚡⚡ Networking tunnel: vxlan basic
⚡⚡⚡ audit: audit testsuite test
⚡⚡⚡ httpd: mod_ssl smoke sanity
⚡⚡⚡ iotop: sanity
⚡⚡⚡ tuned: tune-processes-through-perf
⚡⚡⚡ pciutils: sanity smoke test
⚡⚡⚡ Usex - version 1.9-29
⚡⚡⚡ storage: SCSI VPD
⚡⚡⚡ stress: stress-ng
🚧 ⚡⚡⚡ LTP lite
🚧 ⚡⚡⚡ CIFS Connectathon
🚧 ⚡⚡⚡ POSIX pjd-fstest suites
🚧 ⚡⚡⚡ Memory function: kaslr
🚧 ⚡⚡⚡ Networking bridge: sanity
🚧 ⚡⚡⚡ Networking MACsec: sanity
🚧 ⚡⚡⚡ Networking route: pmtu
🚧 ⚡⚡⚡ Networking tunnel: geneve basic test
🚧 ⚡⚡⚡ L2TP basic test
🚧 ⚡⚡⚡ Networking vnic: ipvlan/basic
🚧 ⚡⚡⚡ ALSA PCM loopback test
🚧 ⚡⚡⚡ ALSA Control (mixer) Userspace Element test
🚧 ⚡⚡⚡ storage: dm/common
🚧 ⚡⚡⚡ trace: ftrace/tracer
🚧 ⚡⚡⚡ Networking route_func: local
🚧 ⚡⚡⚡ Networking route_func: forward
🚧 ⚡⚡⚡ Networking ipsec: basic netns transport
🚧 ⚡⚡⚡ Networking ipsec: basic netns tunnel
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
Testing timeout
---------------
We aim to provide a report within reasonable timeframe. Tests that haven't
finished running are marked with ⏱. Reports for non-upstream kernels have
a Beaker recipe linked to next to each host.
Hello,
We ran automated tests on a patchset that was proposed for merging into this
kernel tree. The patches were applied to:
Kernel repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
The results of these automated tests are provided below.
Overall result: PASSED
Merge: OK
Compile: OK
Tests: OK
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/229378
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Merge testing
-------------
We cloned this repository and checked out the following commit:
Repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
We grabbed the 95e0f5b96920 commit of the stable queue repository.
We then merged the patchset with `git am`:
panic-ensure-preemption-is-disabled-during-panic.patch
usb-rio500-remove-rio-500-kernel-driver.patch
usb-yurex-don-t-retry-on-unexpected-errors.patch
usb-yurex-fix-null-derefs-on-disconnect.patch
usb-usb-skeleton-fix-runtime-pm-after-driver-unbind.patch
usb-usb-skeleton-fix-null-deref-on-disconnect.patch
xhci-fix-false-warning-message-about-wrong-bounce-buffer-write-length.patch
xhci-prevent-device-initiated-u1-u2-link-pm-if-exit-latency-is-too-long.patch
xhci-check-all-endpoints-for-lpm-timeout.patch
xhci-fix-usb-3.1-capability-detection-on-early-xhci-1.1-spec-based-hosts.patch
usb-xhci-wait-for-cnr-controller-not-ready-bit-in-xhci-resume.patch
xhci-prevent-deadlock-when-xhci-adapter-breaks-during-init.patch
xhci-increase-sts_save-timeout-in-xhci_suspend.patch
xhci-fix-null-pointer-dereference-in-xhci_clear_tt_buffer_complete.patch
usb-adutux-fix-use-after-free-on-disconnect.patch
usb-adutux-fix-null-derefs-on-disconnect.patch
usb-adutux-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-on-disconnect.patch
usb-iowarrior-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-after-driver-unbind.patch
usb-usblp-fix-runtime-pm-after-driver-unbind.patch
usb-chaoskey-fix-use-after-free-on-release.patch
usb-ldusb-fix-null-derefs-on-driver-unbind.patch
serial-uartlite-fix-exit-path-null-pointer.patch
serial-uartps-fix-uartps_major-handling.patch
usb-serial-keyspan-fix-null-derefs-on-open-and-write.patch
usb-serial-ftdi_sio-add-device-ids-for-sienna-and-echelon-pl-20.patch
usb-serial-option-add-telit-fn980-compositions.patch
usb-serial-option-add-support-for-cinterion-cls8-devices.patch
usb-serial-fix-runtime-pm-after-driver-unbind.patch
usb-usblcd-fix-i-o-after-disconnect.patch
usb-microtek-fix-info-leak-at-probe.patch
usb-dummy-hcd-fix-power-budget-for-superspeed-mode.patch
usb-renesas_usbhs-gadget-do-not-discard-queues-in-usb_ep_set_-halt-wedge.patch
usb-renesas_usbhs-gadget-fix-usb_ep_set_-halt-wedge-behavior.patch
usb-typec-tcpm-usb-typec-tcpm-fix-a-signedness-bug-in-tcpm_fw_get_caps.patch
usb-typec-ucsi-ccg-remove-run_isr-flag.patch
usb-typec-ucsi-displayport-fix-for-the-mode-entering-routine.patch
usb-legousbtower-fix-slab-info-leak-at-probe.patch
usb-legousbtower-fix-deadlock-on-disconnect.patch
usb-legousbtower-fix-potential-null-deref-on-disconnect.patch
usb-legousbtower-fix-open-after-failed-reset-request.patch
usb-legousbtower-fix-use-after-free-on-release.patch
mei-me-add-comet-point-lake-lp-device-ids.patch
mei-avoid-fw-version-request-on-ibex-peak-and-earlier.patch
gpio-eic-sprd-fix-the-incorrect-eic-offset-when-toggling.patch
staging-fbtft-depend-on-of.patch
staging-bcm2835-audio-fix-draining-behavior-regression.patch
staging-fbtft-fix-memory-leak-in-fbtft_framebuffer_alloc.patch
staging-rtl8188eu-fix-highestrate-check-in-odm_arfbrefresh_8188e.patch
staging-vt6655-fix-memory-leak-in-vt6655_probe.patch
iio-adc-hx711-fix-bug-in-sampling-of-data.patch
iio-adc-ad799x-fix-probe-error-handling.patch
iio-adc-axp288-override-ts-pin-bias-current-for-some-models.patch
iio-adc-stm32-adc-move-registers-definitions.patch
iio-adc-stm32-adc-fix-a-race-when-using-several-adcs-with-dma-and-irq.patch
iio-light-opt3001-fix-mutex-unlock-race.patch
iio-light-add-missing-vcnl4040-of_compatible.patch
iio-accel-adxl372-fix-remove-limitation-for-fifo-samples.patch
iio-accel-adxl372-fix-push-to-buffers-lost-samples.patch
iio-accel-adxl372-perform-a-reset-at-start-up.patch
efivar-ssdt-don-t-iterate-over-efi-vars-if-no-ssdt-override-was-specified.patch
efi-tpm-don-t-access-event-count-when-it-isn-t-mapped.patch
efi-tpm-don-t-traverse-an-event-log-with-no-events.patch
efi-tpm-only-set-efi_tpm_final_log_size-after-successful-event-log-parsing.patch
perf-llvm-don-t-access-out-of-scope-array.patch
perf-inject-jit-fix-jit_code_move-filename.patch
drm-i915-perform-ggtt-restore-much-earlier-during-resume.patch
blk-wbt-fix-performance-regression-in-wbt-scale_up-scale_down.patch
selinux-fix-context-string-corruption-in-convert_context.patch
cifs-gracefully-handle-queryinfo-errors-during-open.patch
cifs-force-revalidate-inode-when-dentry-is-stale.patch
cifs-force-reval-dentry-if-lookup_reval-flag-is-set.patch
cifs-use-cifsinodeinfo-open_file_lock-while-iterating-to-avoid-a-panic.patch
kernel-sysctl.c-do-not-override-max_threads-provided-by-userspace.patch
mm-z3fold.c-claim-page-in-the-beginning-of-free.patch
mm-page_alloc.c-fix-a-crash-in-free_pages_prepare.patch
mm-vmpressure.c-fix-a-signedness-bug-in-vmpressure_register_event.patch
ib-core-fix-wrong-iterating-on-ports.patch
firmware-google-increment-vpd-key_len-properly.patch
gpio-fix-getting-nonexclusive-gpiods-from-dt.patch
gpiolib-don-t-clear-flag_is_out-when-emulating-open-.patch
btrfs-relocation-fix-use-after-free-on-dead-relocation-roots.patch
btrfs-allocate-new-inode-in-nofs-context.patch
btrfs-fix-balance-convert-to-single-on-32-bit-host-cpus.patch
btrfs-fix-memory-leak-due-to-concurrent-append-writes-with-fiemap.patch
btrfs-fix-incorrect-updating-of-log-root-tree.patch
btrfs-fix-uninitialized-ret-in-ref-verify.patch
nfs-fix-o_direct-accounting-of-number-of-bytes-read-written.patch
mips-disable-loongson-mmi-instructions-for-kernel-build.patch
mips-elf_hwcap-export-userspace-ases.patch
rdma-vmw_pvrdma-free-srq-only-once.patch
acpi-pptt-add-support-for-acpi-6.3-thread-flag.patch
arm64-topology-use-pptt-to-determine-if-pe-is-a-thre.patch
iio-light-fix-vcnl4000-devicetree-hooks.patch
fix-the-locking-in-dcache_readdir-and-friends.patch
drm-i915-bump-skl-max-plane-width-to-5k-for-linear-x-tiled.patch
drm-i915-whitelist-common_slice_chicken2.patch
drm-i915-mark-contents-as-dirty-on-a-write-fault.patch
drm-msm-use-the-correct-dma_sync-calls-harder.patch
media-stkwebcam-fix-runtime-pm-after-driver-unbind.patch
arm64-sve-fix-wrong-free-for-task-thread.sve_state.patch
tracing-hwlat-report-total-time-spent-in-all-nmis-during-the-sample.patch
tracing-hwlat-don-t-ignore-outer-loop-duration-when-calculating-max_latency.patch
ftrace-get-a-reference-counter-for-the-trace_array-on-filter-files.patch
tracing-get-trace_array-reference-for-available_tracers-files.patch
hwmon-fix-hwmon_p_min_alarm-mask.patch
mtd-rawnand-au1550nd-fix-au_read_buf16-prototype.patch
x86-asm-fix-mwaitx-c-state-hint-value.patch
io_uring-only-flush-workqueues-on-fileset-removal.patch
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ trace: ftrace/tracer
Host 2:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
ppc64le:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ trace: ftrace/tracer
Host 2:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
x86_64:
Host 1:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ pciutils: sanity smoke test
✅ Usex - version 1.9-29
✅ stress: stress-ng
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ trace: ftrace/tracer
Host 3:
✅ Boot test
🚧 ❌ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Host 4:
✅ Boot test
🚧 ❌ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Host 5:
✅ Boot test
🚧 ✅ /kernel/infiniband/env_setup
🚧 ✅ /kernel/infiniband/sanity
Host 6:
✅ Boot test
🚧 ✅ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
Testing timeout
---------------
We aim to provide a report within reasonable timeframe. Tests that haven't
finished running are marked with ⏱. Reports for non-upstream kernels have
a Beaker recipe linked to next to each host.
Hello,
We ran automated tests on a patchset that was proposed for merging into this
kernel tree. The patches were applied to:
Kernel repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
The results of these automated tests are provided below.
Overall result: PASSED
Merge: OK
Compile: OK
Tests: OK
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/229324
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Merge testing
-------------
We cloned this repository and checked out the following commit:
Repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
We grabbed the 09aa22322bfd commit of the stable queue repository.
We then merged the patchset with `git am`:
panic-ensure-preemption-is-disabled-during-panic.patch
usb-rio500-remove-rio-500-kernel-driver.patch
usb-yurex-don-t-retry-on-unexpected-errors.patch
usb-yurex-fix-null-derefs-on-disconnect.patch
usb-usb-skeleton-fix-runtime-pm-after-driver-unbind.patch
usb-usb-skeleton-fix-null-deref-on-disconnect.patch
xhci-fix-false-warning-message-about-wrong-bounce-buffer-write-length.patch
xhci-prevent-device-initiated-u1-u2-link-pm-if-exit-latency-is-too-long.patch
xhci-check-all-endpoints-for-lpm-timeout.patch
xhci-fix-usb-3.1-capability-detection-on-early-xhci-1.1-spec-based-hosts.patch
usb-xhci-wait-for-cnr-controller-not-ready-bit-in-xhci-resume.patch
xhci-prevent-deadlock-when-xhci-adapter-breaks-during-init.patch
xhci-increase-sts_save-timeout-in-xhci_suspend.patch
xhci-fix-null-pointer-dereference-in-xhci_clear_tt_buffer_complete.patch
usb-adutux-fix-use-after-free-on-disconnect.patch
usb-adutux-fix-null-derefs-on-disconnect.patch
usb-adutux-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-on-disconnect.patch
usb-iowarrior-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-after-driver-unbind.patch
usb-usblp-fix-runtime-pm-after-driver-unbind.patch
usb-chaoskey-fix-use-after-free-on-release.patch
usb-ldusb-fix-null-derefs-on-driver-unbind.patch
serial-uartlite-fix-exit-path-null-pointer.patch
serial-uartps-fix-uartps_major-handling.patch
usb-serial-keyspan-fix-null-derefs-on-open-and-write.patch
usb-serial-ftdi_sio-add-device-ids-for-sienna-and-echelon-pl-20.patch
usb-serial-option-add-telit-fn980-compositions.patch
usb-serial-option-add-support-for-cinterion-cls8-devices.patch
usb-serial-fix-runtime-pm-after-driver-unbind.patch
usb-usblcd-fix-i-o-after-disconnect.patch
usb-microtek-fix-info-leak-at-probe.patch
usb-dummy-hcd-fix-power-budget-for-superspeed-mode.patch
usb-renesas_usbhs-gadget-do-not-discard-queues-in-usb_ep_set_-halt-wedge.patch
usb-renesas_usbhs-gadget-fix-usb_ep_set_-halt-wedge-behavior.patch
usb-typec-tcpm-usb-typec-tcpm-fix-a-signedness-bug-in-tcpm_fw_get_caps.patch
usb-typec-ucsi-ccg-remove-run_isr-flag.patch
usb-typec-ucsi-displayport-fix-for-the-mode-entering-routine.patch
usb-legousbtower-fix-slab-info-leak-at-probe.patch
usb-legousbtower-fix-deadlock-on-disconnect.patch
usb-legousbtower-fix-potential-null-deref-on-disconnect.patch
usb-legousbtower-fix-open-after-failed-reset-request.patch
usb-legousbtower-fix-use-after-free-on-release.patch
mei-me-add-comet-point-lake-lp-device-ids.patch
mei-avoid-fw-version-request-on-ibex-peak-and-earlier.patch
gpio-eic-sprd-fix-the-incorrect-eic-offset-when-toggling.patch
staging-fbtft-depend-on-of.patch
staging-bcm2835-audio-fix-draining-behavior-regression.patch
staging-fbtft-fix-memory-leak-in-fbtft_framebuffer_alloc.patch
staging-rtl8188eu-fix-highestrate-check-in-odm_arfbrefresh_8188e.patch
staging-vt6655-fix-memory-leak-in-vt6655_probe.patch
iio-adc-hx711-fix-bug-in-sampling-of-data.patch
iio-adc-ad799x-fix-probe-error-handling.patch
iio-adc-axp288-override-ts-pin-bias-current-for-some-models.patch
iio-adc-stm32-adc-move-registers-definitions.patch
iio-adc-stm32-adc-fix-a-race-when-using-several-adcs-with-dma-and-irq.patch
iio-light-opt3001-fix-mutex-unlock-race.patch
iio-light-add-missing-vcnl4040-of_compatible.patch
iio-accel-adxl372-fix-remove-limitation-for-fifo-samples.patch
iio-accel-adxl372-fix-push-to-buffers-lost-samples.patch
iio-accel-adxl372-perform-a-reset-at-start-up.patch
efivar-ssdt-don-t-iterate-over-efi-vars-if-no-ssdt-override-was-specified.patch
efi-tpm-don-t-access-event-count-when-it-isn-t-mapped.patch
efi-tpm-don-t-traverse-an-event-log-with-no-events.patch
efi-tpm-only-set-efi_tpm_final_log_size-after-successful-event-log-parsing.patch
perf-llvm-don-t-access-out-of-scope-array.patch
perf-inject-jit-fix-jit_code_move-filename.patch
drm-i915-perform-ggtt-restore-much-earlier-during-resume.patch
blk-wbt-fix-performance-regression-in-wbt-scale_up-scale_down.patch
selinux-fix-context-string-corruption-in-convert_context.patch
cifs-gracefully-handle-queryinfo-errors-during-open.patch
cifs-force-revalidate-inode-when-dentry-is-stale.patch
cifs-force-reval-dentry-if-lookup_reval-flag-is-set.patch
cifs-use-cifsinodeinfo-open_file_lock-while-iterating-to-avoid-a-panic.patch
kernel-sysctl.c-do-not-override-max_threads-provided-by-userspace.patch
mm-z3fold.c-claim-page-in-the-beginning-of-free.patch
mm-page_alloc.c-fix-a-crash-in-free_pages_prepare.patch
mm-vmpressure.c-fix-a-signedness-bug-in-vmpressure_register_event.patch
ib-core-fix-wrong-iterating-on-ports.patch
firmware-google-increment-vpd-key_len-properly.patch
gpio-fix-getting-nonexclusive-gpiods-from-dt.patch
gpiolib-don-t-clear-flag_is_out-when-emulating-open-.patch
btrfs-relocation-fix-use-after-free-on-dead-relocation-roots.patch
btrfs-allocate-new-inode-in-nofs-context.patch
btrfs-fix-balance-convert-to-single-on-32-bit-host-cpus.patch
btrfs-fix-memory-leak-due-to-concurrent-append-writes-with-fiemap.patch
btrfs-fix-incorrect-updating-of-log-root-tree.patch
btrfs-fix-uninitialized-ret-in-ref-verify.patch
nfs-fix-o_direct-accounting-of-number-of-bytes-read-written.patch
mips-disable-loongson-mmi-instructions-for-kernel-build.patch
mips-elf_hwcap-export-userspace-ases.patch
rdma-vmw_pvrdma-free-srq-only-once.patch
acpi-pptt-add-support-for-acpi-6.3-thread-flag.patch
arm64-topology-use-pptt-to-determine-if-pe-is-a-thre.patch
iio-light-fix-vcnl4000-devicetree-hooks.patch
fix-the-locking-in-dcache_readdir-and-friends.patch
drm-i915-bump-skl-max-plane-width-to-5k-for-linear-x-tiled.patch
drm-i915-whitelist-common_slice_chicken2.patch
drm-i915-mark-contents-as-dirty-on-a-write-fault.patch
drm-msm-use-the-correct-dma_sync-calls-harder.patch
media-stkwebcam-fix-runtime-pm-after-driver-unbind.patch
arm64-sve-fix-wrong-free-for-task-thread.sve_state.patch
tracing-hwlat-report-total-time-spent-in-all-nmis-during-the-sample.patch
tracing-hwlat-don-t-ignore-outer-loop-duration-when-calculating-max_latency.patch
ftrace-get-a-reference-counter-for-the-trace_array-on-filter-files.patch
tracing-get-trace_array-reference-for-available_tracers-files.patch
hwmon-fix-hwmon_p_min_alarm-mask.patch
mtd-rawnand-au1550nd-fix-au_read_buf16-prototype.patch
x86-asm-fix-mwaitx-c-state-hint-value.patch
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
✅ stress: stress-ng
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ trace: ftrace/tracer
ppc64le:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ trace: ftrace/tracer
Host 2:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
x86_64:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ pciutils: sanity smoke test
✅ Usex - version 1.9-29
✅ stress: stress-ng
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ trace: ftrace/tracer
Host 2:
✅ Boot test
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 3:
✅ Boot test
🚧 ❌ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Host 4:
✅ Boot test
🚧 ❌ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Host 5:
✅ Boot test
🚧 ✅ /kernel/infiniband/env_setup
🚧 ✅ /kernel/infiniband/sanity
Host 6:
✅ Boot test
🚧 ✅ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
Testing timeout
---------------
We aim to provide a report within reasonable timeframe. Tests that haven't
finished running are marked with ⏱. Reports for non-upstream kernels have
a Beaker recipe linked to next to each host.
Hi,
On Thu, Sep 5, 2019 at 11:01 PM Mark-PK Tsai <mark-pk.tsai(a)mediatek.com> wrote:
>
> If we disable the compiler's auto-initialization feature
> (-fplugin-arg-structleak_plugin-byref or -ftrivial-auto-var-init=pattern)
> is disabled, arch_hw_breakpoint may be used before initialization after
> the change 9a4903dde2c86.
> (perf/hw_breakpoint: Split attribute parse and commit)
>
> On our arm platform, the struct step_ctrl in arch_hw_breakpoint, which
> used to be zero-initialized by kzalloc, may be used in
> arch_install_hw_breakpoint without initialization.
>
> Signed-off-by: Mark-PK Tsai <mark-pk.tsai(a)mediatek.com>
> Cc: YJ Chiang <yj.chiang(a)mediatek.com>
> Cc: Alix Wu <alix.wu(a)mediatek.com>
> ---
> kernel/events/hw_breakpoint.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
Stable should pick this up, please. It landed in mainline as commit
310aa0a25b33 ("perf/hw_breakpoint: Fix arch_hw_breakpoint
use-before-initialization").
* I have confirmed that it cleanly applies to and fixes a kernel based
on v4.19.75, so picking it back to kernels 4.19+ is the easiest.
* I have confirmed that my test shows that hardware breakpoints fail
on my arm32 test machine on v4.18.20 and on v4.17.0. They last worked
on 4.16. Picking this patch alone is not sufficient to make 4.17 and
4.18 work again. Bisecting shows that the first breakage was the
merge resolution that happened in commit 2d074918fb15 ("Merge branch
'perf/urgent' into perf/core"). Specifically both parents of that
merge passed my test but the result of the merge didn't pass my test.
If anyone cares about 4.17 and 4.18 at this point, I will leave it as
an exercise to them to try to get them working again.
-Doug
From: Oleksandr Suvorov <oleksandr.suvorov(a)toradex.com>
Upstream commit 631bc8f0134a ("ASoC: sgtl5000: Fix of unmute outputs on
probe"), which is e9f621efaebd in v5.3 replaced snd_soc_component_write
with snd_soc_component_update_bits and therefore no longer cleared the
MUTE_ADC flag. This caused the ADC to stay muted and recording doesn't
work any longer. This patch fixes this problem by adding a Switch control
for MUTE_ADC.
commit 694b14554d75 ("ASoC: sgtl5000: add ADC mute control") upstream
This control mute/unmute the ADC input of SGTL5000
using its CHIP_ANA_CTRL register.
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov(a)toradex.com>
Reviewed-by: Marcel Ziswiler <marcel.ziswiler(a)toradex.com>
Reviewed-by: Igor Opaniuk <igor.opaniuk(a)toradex.com>
Reviewed-by: Fabio Estevam <festevam(a)gmail.com>
Link: https://lore.kernel.org/r/20190719100524.23300-5-oleksandr.suvorov@toradex.…
Signed-off-by: Mark Brown <broonie(a)kernel.org>
Signed-off-by: Richard Leitner <richard.leitner(a)skidata.com>
Fixes: e9f621efaebd ("ASoC: sgtl5000: Fix of unmute outputs on probe")
---
sound/soc/codecs/sgtl5000.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/sound/soc/codecs/sgtl5000.c b/sound/soc/codecs/sgtl5000.c
index 3f28e7862b5b..b65232521ea8 100644
--- a/sound/soc/codecs/sgtl5000.c
+++ b/sound/soc/codecs/sgtl5000.c
@@ -720,6 +720,7 @@ static const struct snd_kcontrol_new sgtl5000_snd_controls[] = {
SGTL5000_CHIP_ANA_ADC_CTRL,
8, 1, 0, capture_6db_attenuate),
SOC_SINGLE("Capture ZC Switch", SGTL5000_CHIP_ANA_CTRL, 1, 1, 0),
+ SOC_SINGLE("Capture Switch", SGTL5000_CHIP_ANA_CTRL, 0, 1, 1),
SOC_DOUBLE_TLV("Headphone Playback Volume",
SGTL5000_CHIP_ANA_HP_CTRL,
--
2.21.0
From: Long Li <longli(a)microsoft.com>
While it's not friendly to fail user processes that issue more iovs
than we support, at least we should return the correct error code so the
user process gets a chance to retry with smaller number of iovs.
Signed-off-by: Long Li <longli(a)microsoft.com>
Cc: stable(a)vger.kernel.org
---
fs/cifs/smbdirect.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/cifs/smbdirect.c b/fs/cifs/smbdirect.c
index cd07e5301d42..d41a9345f90d 100644
--- a/fs/cifs/smbdirect.c
+++ b/fs/cifs/smbdirect.c
@@ -1069,7 +1069,7 @@ static int smbd_post_send_data(
if (n_vec > SMBDIRECT_MAX_SGE) {
cifs_dbg(VFS, "Can't fit data to SGL, n_vec=%d\n", n_vec);
- return -ENOMEM;
+ return -EINVAL;
}
sg_init_table(sgl, n_vec);
--
2.17.1
From: Long Li <longli(a)microsoft.com>
On reconnect, the transport data structure is NULL and its information is not
available.
Signed-off-by: Long Li <longli(a)microsoft.com>
Cc: stable(a)vger.kernel.org
---
fs/cifs/cifs_debug.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/fs/cifs/cifs_debug.c b/fs/cifs/cifs_debug.c
index 0b4eee3bed66..efb2928ff6c8 100644
--- a/fs/cifs/cifs_debug.c
+++ b/fs/cifs/cifs_debug.c
@@ -256,6 +256,11 @@ static int cifs_debug_data_proc_show(struct seq_file *m, void *v)
if (!server->rdma)
goto skip_rdma;
+ if (!server->smbd_conn) {
+ seq_printf(m, "\nSMBDirect transport not available");
+ goto skip_rdma;
+ }
+
seq_printf(m, "\nSMBDirect (in hex) protocol version: %x "
"transport status: %x",
server->smbd_conn->protocol,
--
2.17.1
Hello,
We ran automated tests on a recent commit from this kernel tree:
Kernel repo: git://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
Commit: d6c2c23a29f4 - Merge branch 'stable-next' of ssh://chubbybox:/home/sasha/data/next into stable-next
The results of these automated tests are provided below.
Overall result: FAILED (see details below)
Merge: OK
Compile: OK
Tests: FAILED
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/223563
One or more kernel tests failed:
aarch64:
❌ LTP: openposix test suite
We hope that these logs can help you find the problem quickly. For the full
detail on our testing procedures, please scroll to the bottom of this message.
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
✅ Boot test
✅ xfstests: ext4
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ Memory function: memfd_create
✅ AMTU (Abstract Machine Test Utility)
❌ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ Networking sctp-auth: sockopts test
✅ Networking: igmp conformance test
✅ Networking TCP: keepalive test
✅ Networking UDP: socket
✅ Networking tunnel: gre basic
✅ Networking tunnel: vxlan basic
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
✅ storage: SCSI VPD
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ Memory function: kaslr
🚧 ✅ Networking bridge: sanity
🚧 ✅ Networking MACsec: sanity
🚧 ✅ Networking route: pmtu
🚧 ✅ Networking tunnel: geneve basic test
🚧 ✅ L2TP basic test
🚧 ✅ Networking vnic: ipvlan/basic
🚧 ✅ ALSA PCM loopback test
🚧 ✅ ALSA Control (mixer) Userspace Element test
🚧 ✅ storage: dm/common
🚧 ✅ trace: ftrace/tracer
🚧 ✅ Networking route_func: local
🚧 ✅ Networking route_func: forward
🚧 ✅ Networking ipsec: basic netns transport
🚧 ✅ Networking ipsec: basic netns tunnel
ppc64le:
Host 1:
✅ Boot test
✅ xfstests: ext4
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ Memory function: memfd_create
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ Networking sctp-auth: sockopts test
✅ Networking TCP: keepalive test
✅ Networking UDP: socket
✅ Networking tunnel: gre basic
✅ Networking tunnel: vxlan basic
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ Memory function: kaslr
🚧 ✅ Networking bridge: sanity
🚧 ✅ Networking MACsec: sanity
🚧 ✅ Networking route: pmtu
🚧 ✅ Networking tunnel: geneve basic test
🚧 ✅ L2TP basic test
🚧 ✅ Networking ipsec: basic netns tunnel
🚧 ✅ Networking vnic: ipvlan/basic
🚧 ✅ ALSA PCM loopback test
🚧 ✅ ALSA Control (mixer) Userspace Element test
🚧 ✅ storage: dm/common
🚧 ✅ trace: ftrace/tracer
🚧 ✅ Networking route_func: local
🚧 ✅ Networking route_func: forward
x86_64:
Host 1:
✅ Boot test
🚧 ✅ IPMI driver test
🚧 ✅ IPMItool loop stress test
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ Memory function: memfd_create
✅ AMTU (Abstract Machine Test Utility)
✅ LTP: openposix test suite
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ Networking sctp-auth: sockopts test
✅ Networking: igmp conformance test
✅ Networking TCP: keepalive test
✅ Networking UDP: socket
✅ Networking tunnel: gre basic
✅ Networking tunnel: vxlan basic
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ pciutils: sanity smoke test
✅ Usex - version 1.9-29
✅ storage: SCSI VPD
✅ stress: stress-ng
🚧 ✅ LTP lite
🚧 ✅ CIFS Connectathon
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ Memory function: kaslr
🚧 ✅ Networking bridge: sanity
🚧 ✅ Networking MACsec: sanity
🚧 ✅ Networking route: pmtu
🚧 ✅ Networking tunnel: geneve basic test
🚧 ✅ L2TP basic test
🚧 ✅ Networking vnic: ipvlan/basic
🚧 ✅ ALSA PCM loopback test
🚧 ✅ ALSA Control (mixer) Userspace Element test
🚧 ✅ storage: dm/common
🚧 ✅ trace: ftrace/tracer
🚧 ✅ Networking route_func: local
🚧 ✅ Networking route_func: forward
🚧 ✅ Networking ipsec: basic netns transport
🚧 ✅ Networking ipsec: basic netns tunnel
Host 3:
✅ Boot test
✅ Storage SAN device stress - megaraid_sas
Host 4:
✅ Boot test
✅ Storage SAN device stress - mpt3sas driver
Host 5:
✅ Boot test
✅ xfstests: ext4
✅ xfstests: xfs
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ IOMMU boot test
🚧 ✅ Storage blktests
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
bpf stackmap with build-id lookup (BPF_F_STACK_BUILD_ID) can trigger A-A
deadlock on rq_lock():
rcu: INFO: rcu_sched detected stalls on CPUs/tasks:
[...]
Call Trace:
try_to_wake_up+0x1ad/0x590
wake_up_q+0x54/0x80
rwsem_wake+0x8a/0xb0
bpf_get_stack+0x13c/0x150
bpf_prog_fbdaf42eded9fe46_on_event+0x5e3/0x1000
bpf_overflow_handler+0x60/0x100
__perf_event_overflow+0x4f/0xf0
perf_swevent_overflow+0x99/0xc0
___perf_sw_event+0xe7/0x120
__schedule+0x47d/0x620
schedule+0x29/0x90
futex_wait_queue_me+0xb9/0x110
futex_wait+0x139/0x230
do_futex+0x2ac/0xa50
__x64_sys_futex+0x13c/0x180
do_syscall_64+0x42/0x100
entry_SYSCALL_64_after_hwframe+0x44/0xa9
This can be reproduced by:
1. Start a multi-thread program that does parallel mmap() and malloc();
2. taskset the program to 2 CPUs;
3. Attach bpf program to trace_sched_switch and gather stackmap with
build-id, e.g. with trace.py from bcc tools:
trace.py -U -p <pid> -s <some-bin,some-lib> t:sched:sched_switch
A sample reproducer is attached at the end.
This could also trigger deadlock with other locks that are nested with
rq_lock.
Fix this by checking whether irqs are disabled. Since rq_lock and all
other nested locks are irq safe, it is safe to do up_read() when irqs are
not disable. If the irqs are disabled, postpone up_read() in irq_work.
Fixes: commit 615755a77b24 ("bpf: extend stackmap to save binary_build_id+offset instead of address")
Cc: stable(a)vger.kernel.org # v4.17+
Cc: Peter Zijlstra <peterz(a)infradead.org>
Cc: Alexei Starovoitov <ast(a)kernel.org>
Cc: Daniel Borkmann <daniel(a)iogearbox.net>
Signed-off-by: Song Liu <songliubraving(a)fb.com>
Reproducer:
============================ 8< ============================
char *filename;
void *worker(void *p)
{
void *ptr;
int fd;
char *pptr;
fd = open(filename, O_RDONLY);
if (fd < 0)
return NULL;
while (1) {
struct timespec ts = {0, 1000 + rand() % 2000};
ptr = mmap(NULL, 4096 * 64, PROT_READ, MAP_PRIVATE, fd, 0);
usleep(1);
if (ptr == MAP_FAILED) {
printf("failed to mmap\n");
break;
}
munmap(ptr, 4096 * 64);
usleep(1);
pptr = malloc(1);
usleep(1);
pptr[0] = 1;
usleep(1);
free(pptr);
usleep(1);
nanosleep(&ts, NULL);
}
close(fd);
return NULL;
}
int main(int argc, char *argv[])
{
void *ptr;
int i;
pthread_t threads[THREAD_COUNT];
if (argc < 2)
return 0;
filename = argv[1];
for (i = 0; i < THREAD_COUNT; i++) {
if (pthread_create(threads + i, NULL, worker, NULL)) {
fprintf(stderr, "Error creating thread\n");
return 0;
}
}
for (i = 0; i < THREAD_COUNT; i++)
pthread_join(threads[i], NULL);
return 0;
}
============================ 8< ============================
---
Changes v1 => v2:
1. Drop (1/1) and cover letter;
2. Check irqs_disabled() instead of this_rq_is_locked()
---
kernel/bpf/stackmap.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/kernel/bpf/stackmap.c b/kernel/bpf/stackmap.c
index 052580c33d26..173e983619d7 100644
--- a/kernel/bpf/stackmap.c
+++ b/kernel/bpf/stackmap.c
@@ -287,7 +287,7 @@ static void stack_map_get_build_id_offset(struct bpf_stack_build_id *id_offs,
bool irq_work_busy = false;
struct stack_map_irq_work *work = NULL;
- if (in_nmi()) {
+ if (irqs_disabled()) {
work = this_cpu_ptr(&up_read_work);
if (work->irq_work.flags & IRQ_WORK_BUSY)
/* cannot queue more up_read, fallback */
@@ -295,8 +295,9 @@ static void stack_map_get_build_id_offset(struct bpf_stack_build_id *id_offs,
}
/*
- * We cannot do up_read() in nmi context. To do build_id lookup
- * in nmi context, we need to run up_read() in irq_work. We use
+ * We cannot do up_read() when the irq is disabled, because of
+ * risk to deadlock with rq_lock. To do build_id lookup when the
+ * irqs are disabled, we need to run up_read() in irq_work. We use
* a percpu variable to do the irq_work. If the irq_work is
* already used by another lookup, we fall back to report ips.
*
--
2.17.1
Hello,
We ran automated tests on a patchset that was proposed for merging into this
kernel tree. The patches were applied to:
Kernel repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: 52020d3f6633 - Linux 5.3.5
The results of these automated tests are provided below.
Overall result: FAILED (see details below)
Merge: OK
Compile: OK
Tests: FAILED
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/214657
One or more kernel tests failed:
x86_64:
❌ Boot test
❌ Boot test
❌ Boot test
❌ Boot test
We hope that these logs can help you find the problem quickly. For the full
detail on our testing procedures, please scroll to the bottom of this message.
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Merge testing
-------------
We cloned this repository and checked out the following commit:
Repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: 52020d3f6633 - Linux 5.3.5
We grabbed the d2473cc15a9d commit of the stable queue repository.
We then merged the patchset with `git am`:
s390-process-avoid-potential-reading-of-freed-stack.patch
s390-sclp-fix-bit-checked-for-has_sipl.patch
kvm-s390-test-for-bad-access-register-and-size-at-the-start-of-s390_mem_op.patch
s390-topology-avoid-firing-events-before-kobjs-are-created.patch
s390-cio-avoid-calling-strlen-on-null-pointer.patch
s390-cio-exclude-subchannels-with-no-parent-from-pseudo-check.patch
s390-dasd-fix-error-handling-during-online-processing.patch
revert-s390-dasd-add-discard-support-for-ese-volumes.patch
kvm-s390-fix-__insn32_query-inline-assembly.patch
kvm-ppc-book3s-enable-xive-native-capability-only-if-opal-has-required-functions.patch
kvm-ppc-book3s-hv-xive-free-escalation-interrupts-before-disabling-the-vp.patch
kvm-ppc-book3s-hv-don-t-push-xive-context-when-not-using-xive-device.patch
kvm-ppc-book3s-hv-fix-race-in-re-enabling-xive-escalation-interrupts.patch
kvm-ppc-book3s-hv-check-for-mmu-ready-on-piggybacked-virtual-cores.patch
kvm-ppc-book3s-hv-don-t-lose-pending-doorbell-request-on-migration-on-p9.patch
kvm-x86-fix-userspace-set-invalid-cr4.patch
nbd-fix-max-number-of-supported-devs.patch
pm-devfreq-tegra-fix-khz-to-hz-conversion.patch
asoc-define-a-set-of-dapm-pre-post-up-events.patch
asoc-sgtl5000-improve-vag-power-and-mute-control.patch
powerpc-xive-implement-get_irqchip_state-method-for-xive-to-fix-shutdown-race.patch
powerpc-mce-fix-mce-handling-for-huge-pages.patch
powerpc-mce-schedule-work-from-irq_work.patch
powerpc-603-fix-handling-of-the-dirty-flag.patch
powerpc-32s-fix-boot-failure-with-debug_pagealloc-without-kasan.patch
powerpc-ptdump-fix-addresses-display-on-ppc32.patch
powerpc-powernv-restrict-opal-symbol-map-to-only-be-readable-by-root.patch
powerpc-pseries-fix-cpu_hotplug_lock-acquisition-in-resize_hpt.patch
powerpc-powernv-ioda-fix-race-in-tce-level-allocation.patch
powerpc-kasan-fix-parallel-loading-of-modules.patch
powerpc-kasan-fix-shadow-area-set-up-for-modules.patch
powerpc-book3s64-mm-don-t-do-tlbie-fixup-for-some-hardware-revisions.patch
powerpc-book3s64-radix-rename-cpu_ftr_p9_tlbie_bug-feature-flag.patch
powerpc-mm-add-a-helper-to-select-page_kernel_ro-or-page_readonly.patch
powerpc-mm-fix-an-oops-in-kasan_mmu_init.patch
powerpc-mm-fixup-tlbie-vs-mtpidr-mtlpidr-ordering-issue-on-power9.patch
can-mcp251x-mcp251x_hw_reset-allow-more-time-after-a-reset.patch
tools-lib-traceevent-fix-robust-test-of-do_generate_dynamic_list_file.patch
tools-lib-traceevent-do-not-free-tep-cmdlines-in-add_new_comm-on-failure.patch
crypto-qat-silence-smp_processor_id-warning.patch
crypto-skcipher-unmap-pages-after-an-external-error.patch
crypto-cavium-zip-add-missing-single_release.patch
crypto-caam-qi-fix-error-handling-in-ern-handler.patch
crypto-caam-fix-concurrency-issue-in-givencrypt-descriptor.patch
crypto-ccree-account-for-tee-not-ready-to-report.patch
crypto-ccree-use-the-full-crypt-length-value.patch
mips-treat-loongson-extensions-as-ases.patch
power-supply-sbs-battery-use-correct-flags-field.patch
power-supply-sbs-battery-only-return-health-when-battery-present.patch
tracing-make-sure-variable-reference-alias-has-correct-var_ref_idx.patch
usercopy-avoid-highmem-pfn-warning.patch
timer-read-jiffies-once-when-forwarding-base-clk.patch
pci-vmd-fix-config-addressing-when-using-bus-offsets.patch
pci-hv-avoid-use-of-hv_pci_dev-pci_slot-after-freeing-it.patch
pci-vmd-fix-shadow-offsets-to-reflect-spec-changes.patch
pci-restore-resizable-bar-size-bits-correctly-for-1mb-bars.patch
selftests-tpm2-add-the-missing-test_files-assignment.patch
selftests-pidfd-fix-undefined-reference-to-pthread_create.patch
watchdog-imx2_wdt-fix-min-calculation-in-imx2_wdt_set_timeout.patch
perf-tools-fix-segfault-in-cpu_cache_level__read.patch
perf-stat-fix-a-segmentation-fault-when-using-repeat-forever.patch
drm-i915-dp-fix-dsc-bpp-calculations-v5.patch
drm-atomic-reject-flip_async-unconditionally.patch
drm-atomic-take-the-atomic-toys-away-from-x.patch
drm-mali-dp-mark-expected-switch-fall-through.patch
drm-omap-fix-max-fclk-divider-for-omap36xx.patch
drm-msm-dsi-fix-return-value-check-for-clk_get_parent.patch
drm-nouveau-kms-nv50-don-t-create-mstms-for-edp-connectors.patch
drm-amd-powerplay-change-metrics-update-period-from-1ms-to-100ms.patch
drm-i915-gvt-update-vgpu-workload-head-pointer-correctly.patch
drm-i915-userptr-acquire-the-page-lock-around-set_page_dirty.patch
drm-i915-to-make-vgpu-ppgtt-notificaiton-as-atomic-operation.patch
mac80211-keep-bhs-disabled-while-calling-drv_tx_wake_queue.patch
mmc-tegra-implement-set_dma_mask.patch
mmc-sdhci-improve-adma-error-reporting.patch
mmc-sdhci-of-esdhc-set-dma-snooping-based-on-dma-coherence.patch
mmc-sdhci-let-drivers-define-their-dma-mask.patch
revert-locking-pvqspinlock-don-t-wait-if-vcpu-is-preempted.patch
libnvdimm-altmap-track-namespace-boundaries-in-altmap.patch
sched-add-__assembly__-guards-around-struct-clone_args.patch
dts-arm-gta04-introduce-legacy-spi-cs-high-to-make-display-work-again.patch
xen-balloon-set-pages-pageoffline-in-balloon_add_region.patch
xen-xenbus-fix-self-deadlock-after-killing-user-process.patch
ieee802154-atusb-fix-use-after-free-at-disconnect.patch
nl80211-validate-beacon-head.patch
cfg80211-validate-ssid-mbssid-element-ordering-assumption.patch
cfg80211-initialize-on-stack-chandefs.patch
drivers-thermal-qcom-tsens-fix-memory-leak-from-qfpr.patch
ima-always-return-negative-code-for-error.patch
ima-fix-freeing-ongoing-ahash_request.patch
fs-nfs-fix-possible-null-pointer-dereferences-in-enc.patch
xprtrdma-toggle-xprt_congested-in-xprtrdma-s-slot-me.patch
xprtrdma-send-queue-size-grows-after-a-reconnect.patch
9p-transport-error-uninitialized.patch
9p-avoid-attaching-writeback_fid-on-mmap-with-type-p.patch
xen-pci-reserve-mcfg-areas-earlier.patch
fuse-fix-request-limit.patch
ceph-fix-directories-inode-i_blkbits-initialization.patch
ceph-fetch-cap_gen-under-spinlock-in-ceph_add_cap.patch
ceph-reconnect-connection-if-session-hang-in-opening.patch
sunrpc-rpc-level-errors-should-always-set-task-tk_rp.patch
watchdog-aspeed-add-support-for-ast2600.patch
netfilter-nf_tables-allow-lookups-in-dynamic-sets.patch
drm-amdgpu-fix-kfd-related-kernel-oops-on-hawaii.patch
drm-amdgpu-check-for-valid-number-of-registers-to-re.patch
perf-probe-fix-to-clear-tev-nargs-in-clear_probe_tra.patch
pnfs-ensure-we-do-clear-the-return-on-close-layout-s.patch
sunrpc-don-t-try-to-parse-incomplete-rpc-messages.patch
pwm-stm32-lp-add-check-in-case-requested-period-cann.patch
selftests-seccomp-fix-build-on-older-kernels.patch
x86-purgatory-disable-the-stackleak-gcc-plugin-for-t.patch
ntb-point-to-right-memory-window-index.patch
thermal-fix-use-after-free-when-unregistering-therma.patch
thermal_hwmon-sanitize-thermal_zone-type.patch
iommu-amd-fix-downgrading-default-page-sizes-in-allo.patch
libnvdimm-region-initialize-bad-block-for-volatile-n.patch
libnvdimm-fix-endian-conversion-issues.patch
fuse-fix-memleak-in-cuse_channel_open.patch
libnvdimm-nfit_test-fix-acpi_handle-redefinition.patch
sched-membarrier-call-sync_core-only-before-usermode.patch
sched-membarrier-fix-private-expedited-registration-.patch
sched-core-fix-migration-to-invalid-cpu-in-__set_cpu.patch
perf-build-add-detection-of-java-11-openjdk-devel-pa.patch
include-trace-events-writeback.h-fix-wstringop-trunc.patch
selftests-bpf-adjust-strobemeta-loop-to-satisfy-late.patch
kernel-elfcore.c-include-proper-prototypes.patch
libbpf-fix-false-uninitialized-variable-warning.patch
blk-mq-move-lockdep_assert_held-into-elevator_exit.patch
bpf-fix-bpf_event_output-re-entry-issue.patch
net-dsa-microchip-always-set-regmap-stride-to-1.patch
i2c-qcom-geni-disable-dma-processing-on-the-lenovo-y.patch
perf-unwind-fix-libunwind-build-failure-on-i386-syst.patch
mlxsw-spectrum_flower-fail-in-case-user-specifies-mu.patch
nfp-abm-fix-memory-leak-in-nfp_abm_u32_knode_replace.patch
drm-radeon-bail-earlier-when-radeon.cik_-si_support-.patch
btrfs-fix-selftests-failure-due-to-uninitialized-i_m.patch
kvm-nvmx-fix-consistency-check-on-injected-exception.patch
tick-broadcast-hrtimer-fix-a-race-in-bc_set_next.patch
perf-stat-reset-previous-counts-on-repeat-with-inter.patch
riscv-avoid-interrupts-being-erroneously-enabled-in-.patch
Compile testing
---------------
We compiled the kernel for 3 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hardware testing
----------------
We booted each kernel and ran the following tests:
aarch64:
Host 1:
✅ Boot test
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
Host 2:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
✅ stress: stress-ng
🚧 ❌ LTP lite
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ ALSA PCM loopback test
🚧 ✅ ALSA Control (mixer) Userspace Element test
🚧 ✅ trace: ftrace/tracer
ppc64le:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ Usex - version 1.9-29
🚧 ✅ LTP lite
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ ALSA PCM loopback test
🚧 ✅ ALSA Control (mixer) Userspace Element test
🚧 ✅ trace: ftrace/tracer
Host 2:
✅ Boot test
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ Storage blktests
x86_64:
Host 1:
✅ Boot test
✅ Podman system integration test (as root)
✅ Podman system integration test (as user)
✅ Loopdev Sanity
✅ jvm test suite
✅ AMTU (Abstract Machine Test Utility)
✅ Ethernet drivers sanity
✅ Networking socket: fuzz
✅ audit: audit testsuite test
✅ httpd: mod_ssl smoke sanity
✅ iotop: sanity
✅ tuned: tune-processes-through-perf
✅ pciutils: sanity smoke test
✅ Usex - version 1.9-29
✅ stress: stress-ng
🚧 ✅ LTP lite
🚧 ✅ POSIX pjd-fstest suites
🚧 ✅ ALSA PCM loopback test
🚧 ✅ ALSA Control (mixer) Userspace Element test
🚧 ✅ trace: ftrace/tracer
Host 2:
✅ Boot test
✅ selinux-policy: serge-testsuite
✅ lvm thinp sanity
✅ storage: software RAID testing
🚧 ✅ IOMMU boot test
🚧 ✅ Storage blktests
Host 3:
❌ Boot test
🚧 ❌ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Host 4:
❌ Boot test
🚧 ❌ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Host 5:
❌ Boot test
🚧 ❌ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Host 6:
❌ Boot test
🚧 ❌ /kernel/infiniband/env_setup
🚧 ❌ /kernel/infiniband/sanity
Test sources: https://github.com/CKI-project/tests-beaker
💚 Pull requests are welcome for new tests or improvements to existing tests!
Waived tests
------------
If the test run included waived tests, they are marked with 🚧. Such tests are
executed but their results are not taken into account. Tests are waived when
their results are not reliable enough, e.g. when they're just introduced or are
being fixed.
The patch below does not apply to the 5.3-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 8a99734081775c012a4a6c442fdef0379fe52bdf Mon Sep 17 00:00:00 2001
From: Jens Axboe <axboe(a)kernel.dk>
Date: Wed, 9 Oct 2019 14:40:13 -0600
Subject: [PATCH] io_uring: only flush workqueues on fileset removal
We should not remove the workqueue, we just need to ensure that the
workqueues are synced. The workqueues are torn down on ctx removal.
Cc: stable(a)vger.kernel.org
Fixes: 6b06314c47e1 ("io_uring: add file set registration")
Reported-by: Stefan Hajnoczi <stefanha(a)redhat.com>
Signed-off-by: Jens Axboe <axboe(a)kernel.dk>
diff --git a/fs/io_uring.c b/fs/io_uring.c
index ceb3497bdd2a..2c44648217bd 100644
--- a/fs/io_uring.c
+++ b/fs/io_uring.c
@@ -2866,8 +2866,12 @@ static void io_finish_async(struct io_ring_ctx *ctx)
static void io_destruct_skb(struct sk_buff *skb)
{
struct io_ring_ctx *ctx = skb->sk->sk_user_data;
+ int i;
+
+ for (i = 0; i < ARRAY_SIZE(ctx->sqo_wq); i++)
+ if (ctx->sqo_wq[i])
+ flush_workqueue(ctx->sqo_wq[i]);
- io_finish_async(ctx);
unix_destruct_scm(skb);
}
stable-rc/linux-5.3.y build: 208 builds: 178 failed, 30 passed, 1068 errors, 162 warnings (v5.3.6-111-gd8fee438c028)
Full Build Summary: https://kernelci.org/build/stable-rc/branch/linux-5.3.y/kernel/v5.3.6-111-g…
Tree: stable-rc
Branch: linux-5.3.y
Git Describe: v5.3.6-111-gd8fee438c028
Git Commit: d8fee438c02867cd53e85dcb6cc7d3475b222483
Git URL: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
Built: 7 unique architectures
Build Failures Detected:
arc:
axs103_defconfig: (gcc-8) FAIL
axs103_smp_defconfig: (gcc-8) FAIL
haps_hs_defconfig: (gcc-8) FAIL
haps_hs_smp_defconfig: (gcc-8) FAIL
hsdk_defconfig: (gcc-8) FAIL
nsim_hs_defconfig: (gcc-8) FAIL
nsim_hs_smp_defconfig: (gcc-8) FAIL
nsimosci_hs_defconfig: (gcc-8) FAIL
nsimosci_hs_smp_defconfig: (gcc-8) FAIL
vdk_hs38_defconfig: (gcc-8) FAIL
vdk_hs38_smp_defconfig: (gcc-8) FAIL
arm64:
defconfig: (gcc-8) FAIL
arm:
acs5k_defconfig: (gcc-8) FAIL
acs5k_tiny_defconfig: (gcc-8) FAIL
am200epdkit_defconfig: (gcc-8) FAIL
aspeed_g4_defconfig: (gcc-8) FAIL
aspeed_g5_defconfig: (gcc-8) FAIL
assabet_defconfig: (gcc-8) FAIL
at91_dt_defconfig: (gcc-8) FAIL
axm55xx_defconfig: (gcc-8) FAIL
badge4_defconfig: (gcc-8) FAIL
bcm2835_defconfig: (gcc-8) FAIL
cerfcube_defconfig: (gcc-8) FAIL
clps711x_defconfig: (gcc-8) FAIL
cm_x2xx_defconfig: (gcc-8) FAIL
cm_x300_defconfig: (gcc-8) FAIL
colibri_pxa270_defconfig: (gcc-8) FAIL
colibri_pxa300_defconfig: (gcc-8) FAIL
collie_defconfig: (gcc-8) FAIL
corgi_defconfig: (gcc-8) FAIL
davinci_all_defconfig: (gcc-8) FAIL
dove_defconfig: (gcc-8) FAIL
ebsa110_defconfig: (gcc-8) FAIL
efm32_defconfig: (gcc-8) FAIL
em_x270_defconfig: (gcc-8) FAIL
ep93xx_defconfig: (gcc-8) FAIL
eseries_pxa_defconfig: (gcc-8) FAIL
exynos_defconfig: (gcc-8) FAIL
ezx_defconfig: (gcc-8) FAIL
footbridge_defconfig: (gcc-8) FAIL
gemini_defconfig: (gcc-8) FAIL
h3600_defconfig: (gcc-8) FAIL
h5000_defconfig: (gcc-8) FAIL
hackkit_defconfig: (gcc-8) FAIL
hisi_defconfig: (gcc-8) FAIL
imote2_defconfig: (gcc-8) FAIL
imx_v4_v5_defconfig: (gcc-8) FAIL
imx_v6_v7_defconfig: (gcc-8) FAIL
integrator_defconfig: (gcc-8) FAIL
iop13xx_defconfig: (gcc-8) FAIL
iop32x_defconfig: (gcc-8) FAIL
iop33x_defconfig: (gcc-8) FAIL
ixp4xx_defconfig: (gcc-8) FAIL
jornada720_defconfig: (gcc-8) FAIL
keystone_defconfig: (gcc-8) FAIL
ks8695_defconfig: (gcc-8) FAIL
lart_defconfig: (gcc-8) FAIL
lpc18xx_defconfig: (gcc-8) FAIL
lpc32xx_defconfig: (gcc-8) FAIL
lpd270_defconfig: (gcc-8) FAIL
lubbock_defconfig: (gcc-8) FAIL
magician_defconfig: (gcc-8) FAIL
mainstone_defconfig: (gcc-8) FAIL
mini2440_defconfig: (gcc-8) FAIL
mmp2_defconfig: (gcc-8) FAIL
moxart_defconfig: (gcc-8) FAIL
mps2_defconfig: (gcc-8) FAIL
multi_v5_defconfig: (gcc-8) FAIL
multi_v7_defconfig: (gcc-8) FAIL
mv78xx0_defconfig: (gcc-8) FAIL
mvebu_v5_defconfig: (gcc-8) FAIL
mvebu_v7_defconfig: (gcc-8) FAIL
mxs_defconfig: (gcc-8) FAIL
neponset_defconfig: (gcc-8) FAIL
netwinder_defconfig: (gcc-8) FAIL
nhk8815_defconfig: (gcc-8) FAIL
omap1_defconfig: (gcc-8) FAIL
omap2plus_defconfig: (gcc-8) FAIL
orion5x_defconfig: (gcc-8) FAIL
oxnas_v6_defconfig: (gcc-8) FAIL
palmz72_defconfig: (gcc-8) FAIL
pcm027_defconfig: (gcc-8) FAIL
pleb_defconfig: (gcc-8) FAIL
pxa168_defconfig: (gcc-8) FAIL
pxa255-idp_defconfig: (gcc-8) FAIL
pxa3xx_defconfig: (gcc-8) FAIL
pxa910_defconfig: (gcc-8) FAIL
pxa_defconfig: (gcc-8) FAIL
qcom_defconfig: (gcc-8) FAIL
realview_defconfig: (gcc-8) FAIL
rpc_defconfig: (gcc-8) FAIL
s3c2410_defconfig: (gcc-8) FAIL
s5pv210_defconfig: (gcc-8) FAIL
sama5_defconfig: (gcc-8) FAIL
shannon_defconfig: (gcc-8) FAIL
shmobile_defconfig: (gcc-8) FAIL
simpad_defconfig: (gcc-8) FAIL
socfpga_defconfig: (gcc-8) FAIL
spear13xx_defconfig: (gcc-8) FAIL
spitz_defconfig: (gcc-8) FAIL
sunxi_defconfig: (gcc-8) FAIL
tango4_defconfig: (gcc-8) FAIL
tct_hammer_defconfig: (gcc-8) FAIL
tegra_defconfig: (gcc-8) FAIL
trizeps4_defconfig: (gcc-8) FAIL
u8500_defconfig: (gcc-8) FAIL
versatile_defconfig: (gcc-8) FAIL
vexpress_defconfig: (gcc-8) FAIL
viper_defconfig: (gcc-8) FAIL
vt8500_v6_v7_defconfig: (gcc-8) FAIL
xcep_defconfig: (gcc-8) FAIL
zeus_defconfig: (gcc-8) FAIL
i386:
i386_defconfig: (gcc-8) FAIL
mips:
32r2el_defconfig: (gcc-8) FAIL
ar7_defconfig: (gcc-8) FAIL
ath25_defconfig: (gcc-8) FAIL
ath79_defconfig: (gcc-8) FAIL
bcm47xx_defconfig: (gcc-8) FAIL
bcm63xx_defconfig: (gcc-8) FAIL
bigsur_defconfig: (gcc-8) FAIL
bmips_be_defconfig: (gcc-8) FAIL
bmips_stb_defconfig: (gcc-8) FAIL
capcella_defconfig: (gcc-8) FAIL
cavium_octeon_defconfig: (gcc-8) FAIL
ci20_defconfig: (gcc-8) FAIL
cobalt_defconfig: (gcc-8) FAIL
db1xxx_defconfig: (gcc-8) FAIL
decstation_64_defconfig: (gcc-8) FAIL
decstation_defconfig: (gcc-8) FAIL
decstation_r4k_defconfig: (gcc-8) FAIL
fuloong2e_defconfig: (gcc-8) FAIL
gcw0_defconfig: (gcc-8) FAIL
gpr_defconfig: (gcc-8) FAIL
ip22_defconfig: (gcc-8) FAIL
ip27_defconfig: (gcc-8) FAIL
ip28_defconfig: (gcc-8) FAIL
ip32_defconfig: (gcc-8) FAIL
jazz_defconfig: (gcc-8) FAIL
jmr3927_defconfig: (gcc-8) FAIL
lasat_defconfig: (gcc-8) FAIL
lemote2f_defconfig: (gcc-8) FAIL
loongson1b_defconfig: (gcc-8) FAIL
loongson1c_defconfig: (gcc-8) FAIL
loongson3_defconfig: (gcc-8) FAIL
malta_defconfig: (gcc-8) FAIL
malta_kvm_defconfig: (gcc-8) FAIL
malta_kvm_guest_defconfig: (gcc-8) FAIL
malta_qemu_32r6_defconfig: (gcc-8) FAIL
maltaaprp_defconfig: (gcc-8) FAIL
maltasmvp_defconfig: (gcc-8) FAIL
maltasmvp_eva_defconfig: (gcc-8) FAIL
maltaup_defconfig: (gcc-8) FAIL
maltaup_xpa_defconfig: (gcc-8) FAIL
markeins_defconfig: (gcc-8) FAIL
mips_paravirt_defconfig: (gcc-8) FAIL
mpc30x_defconfig: (gcc-8) FAIL
msp71xx_defconfig: (gcc-8) FAIL
mtx1_defconfig: (gcc-8) FAIL
nlm_xlp_defconfig: (gcc-8) FAIL
nlm_xlr_defconfig: (gcc-8) FAIL
omega2p_defconfig: (gcc-8) FAIL
pistachio_defconfig: (gcc-8) FAIL
pnx8335_stb225_defconfig: (gcc-8) FAIL
qi_lb60_defconfig: (gcc-8) FAIL
rb532_defconfig: (gcc-8) FAIL
rbtx49xx_defconfig: (gcc-8) FAIL
rm200_defconfig: (gcc-8) FAIL
rt305x_defconfig: (gcc-8) FAIL
sb1250_swarm_defconfig: (gcc-8) FAIL
tb0219_defconfig: (gcc-8) FAIL
tb0226_defconfig: (gcc-8) FAIL
tb0287_defconfig: (gcc-8) FAIL
vocore2_defconfig: (gcc-8) FAIL
workpad_defconfig: (gcc-8) FAIL
xway_defconfig: (gcc-8) FAIL
riscv:
defconfig: (gcc-8) FAIL
rv32_defconfig: (gcc-8) FAIL
x86_64:
x86_64_defconfig: (gcc-8) FAIL
Errors and Warnings Detected:
arc:
allnoconfig (gcc-8): 1 warning
axs103_defconfig (gcc-8): 6 errors, 1 warning
axs103_smp_defconfig (gcc-8): 6 errors, 1 warning
haps_hs_defconfig (gcc-8): 6 errors, 1 warning
haps_hs_smp_defconfig (gcc-8): 6 errors, 1 warning
hsdk_defconfig (gcc-8): 6 errors, 1 warning
nsim_hs_defconfig (gcc-8): 6 errors, 1 warning
nsim_hs_smp_defconfig (gcc-8): 6 errors, 1 warning
nsimosci_hs_defconfig (gcc-8): 6 errors, 1 warning
nsimosci_hs_smp_defconfig (gcc-8): 6 errors, 1 warning
tinyconfig (gcc-8): 1 warning
vdk_hs38_defconfig (gcc-8): 6 errors, 1 warning
vdk_hs38_smp_defconfig (gcc-8): 6 errors, 1 warning
arm64:
defconfig (gcc-8): 6 errors, 3 warnings
arm:
acs5k_defconfig (gcc-8): 6 errors
acs5k_tiny_defconfig (gcc-8): 6 errors
am200epdkit_defconfig (gcc-8): 6 errors
aspeed_g4_defconfig (gcc-8): 6 errors
aspeed_g5_defconfig (gcc-8): 6 errors
assabet_defconfig (gcc-8): 6 errors
at91_dt_defconfig (gcc-8): 6 errors, 4 warnings
axm55xx_defconfig (gcc-8): 6 errors
badge4_defconfig (gcc-8): 6 errors
bcm2835_defconfig (gcc-8): 6 errors
cerfcube_defconfig (gcc-8): 6 errors
clps711x_defconfig (gcc-8): 6 errors
cm_x2xx_defconfig (gcc-8): 6 errors
cm_x300_defconfig (gcc-8): 6 errors
colibri_pxa270_defconfig (gcc-8): 6 errors
colibri_pxa300_defconfig (gcc-8): 6 errors
collie_defconfig (gcc-8): 6 errors
corgi_defconfig (gcc-8): 6 errors
davinci_all_defconfig (gcc-8): 6 errors
dove_defconfig (gcc-8): 6 errors
ebsa110_defconfig (gcc-8): 6 errors
efm32_defconfig (gcc-8): 6 errors
em_x270_defconfig (gcc-8): 6 errors
ep93xx_defconfig (gcc-8): 6 errors
eseries_pxa_defconfig (gcc-8): 6 errors
exynos_defconfig (gcc-8): 6 errors
ezx_defconfig (gcc-8): 6 errors
footbridge_defconfig (gcc-8): 6 errors
gemini_defconfig (gcc-8): 6 errors
h3600_defconfig (gcc-8): 6 errors
h5000_defconfig (gcc-8): 6 errors
hackkit_defconfig (gcc-8): 6 errors
hisi_defconfig (gcc-8): 6 errors
imote2_defconfig (gcc-8): 6 errors
imx_v4_v5_defconfig (gcc-8): 6 errors, 1 warning
imx_v6_v7_defconfig (gcc-8): 6 errors
integrator_defconfig (gcc-8): 6 errors
iop13xx_defconfig (gcc-8): 6 errors
iop32x_defconfig (gcc-8): 6 errors
iop33x_defconfig (gcc-8): 6 errors
ixp4xx_defconfig (gcc-8): 6 errors
jornada720_defconfig (gcc-8): 6 errors
keystone_defconfig (gcc-8): 6 errors
ks8695_defconfig (gcc-8): 6 errors
lart_defconfig (gcc-8): 6 errors
lpc18xx_defconfig (gcc-8): 6 errors
lpc32xx_defconfig (gcc-8): 6 errors
lpd270_defconfig (gcc-8): 6 errors
lubbock_defconfig (gcc-8): 6 errors
magician_defconfig (gcc-8): 6 errors
mainstone_defconfig (gcc-8): 6 errors
mini2440_defconfig (gcc-8): 6 errors, 2 warnings
mmp2_defconfig (gcc-8): 6 errors
moxart_defconfig (gcc-8): 6 errors
mps2_defconfig (gcc-8): 6 errors
multi_v5_defconfig (gcc-8): 6 errors, 3 warnings
multi_v7_defconfig (gcc-8): 6 errors, 16 warnings
mv78xx0_defconfig (gcc-8): 6 errors
mvebu_v5_defconfig (gcc-8): 6 errors
mvebu_v7_defconfig (gcc-8): 6 errors
mxs_defconfig (gcc-8): 6 errors
neponset_defconfig (gcc-8): 6 errors
netwinder_defconfig (gcc-8): 6 errors
nhk8815_defconfig (gcc-8): 6 errors
omap1_defconfig (gcc-8): 6 errors
omap2plus_defconfig (gcc-8): 6 errors, 1 warning
orion5x_defconfig (gcc-8): 6 errors
oxnas_v6_defconfig (gcc-8): 6 errors
palmz72_defconfig (gcc-8): 6 errors
pcm027_defconfig (gcc-8): 6 errors
pleb_defconfig (gcc-8): 6 errors
pxa168_defconfig (gcc-8): 6 errors
pxa255-idp_defconfig (gcc-8): 6 errors
pxa3xx_defconfig (gcc-8): 6 errors
pxa910_defconfig (gcc-8): 6 errors
pxa_defconfig (gcc-8): 6 errors
qcom_defconfig (gcc-8): 6 errors, 2 warnings
realview_defconfig (gcc-8): 6 errors
rpc_defconfig (gcc-8): 6 errors
s3c2410_defconfig (gcc-8): 6 errors
s3c6400_defconfig (gcc-8): 1 warning
s5pv210_defconfig (gcc-8): 6 errors, 1 warning
sama5_defconfig (gcc-8): 6 errors, 4 warnings
shannon_defconfig (gcc-8): 6 errors
shmobile_defconfig (gcc-8): 6 errors, 2 warnings
simpad_defconfig (gcc-8): 6 errors
socfpga_defconfig (gcc-8): 6 errors
spear13xx_defconfig (gcc-8): 6 errors
spitz_defconfig (gcc-8): 6 errors
sunxi_defconfig (gcc-8): 6 errors
tango4_defconfig (gcc-8): 6 errors
tct_hammer_defconfig (gcc-8): 6 errors, 2 warnings
tegra_defconfig (gcc-8): 6 errors
trizeps4_defconfig (gcc-8): 6 errors
u8500_defconfig (gcc-8): 6 errors, 6 warnings
versatile_defconfig (gcc-8): 6 errors
vexpress_defconfig (gcc-8): 6 errors
viper_defconfig (gcc-8): 6 errors
vt8500_v6_v7_defconfig (gcc-8): 6 errors
xcep_defconfig (gcc-8): 6 errors
zeus_defconfig (gcc-8): 6 errors
i386:
i386_defconfig (gcc-8): 6 errors
mips:
32r2el_defconfig (gcc-8): 6 errors, 1 warning
allnoconfig (gcc-8): 1 warning
ar7_defconfig (gcc-8): 6 errors, 1 warning
ath25_defconfig (gcc-8): 6 errors, 1 warning
ath79_defconfig (gcc-8): 6 errors, 1 warning
bcm47xx_defconfig (gcc-8): 6 errors, 1 warning
bcm63xx_defconfig (gcc-8): 6 errors, 1 warning
bigsur_defconfig (gcc-8): 6 errors, 3 warnings
bmips_be_defconfig (gcc-8): 6 errors, 1 warning
bmips_stb_defconfig (gcc-8): 6 errors, 1 warning
capcella_defconfig (gcc-8): 6 errors, 1 warning
cavium_octeon_defconfig (gcc-8): 6 errors, 3 warnings
ci20_defconfig (gcc-8): 6 errors, 2 warnings
cobalt_defconfig (gcc-8): 6 errors, 1 warning
db1xxx_defconfig (gcc-8): 6 errors, 1 warning
decstation_64_defconfig (gcc-8): 6 errors, 3 warnings
decstation_defconfig (gcc-8): 6 errors, 1 warning
decstation_r4k_defconfig (gcc-8): 6 errors, 1 warning
e55_defconfig (gcc-8): 2 warnings
fuloong2e_defconfig (gcc-8): 6 errors, 3 warnings
gcw0_defconfig (gcc-8): 6 errors, 1 warning
gpr_defconfig (gcc-8): 6 errors, 1 warning
ip22_defconfig (gcc-8): 6 errors, 2 warnings
ip27_defconfig (gcc-8): 6 errors, 3 warnings
ip28_defconfig (gcc-8): 6 errors, 4 warnings
ip32_defconfig (gcc-8): 6 errors, 3 warnings
jazz_defconfig (gcc-8): 6 errors, 1 warning
jmr3927_defconfig (gcc-8): 6 errors, 1 warning
lasat_defconfig (gcc-8): 6 errors, 1 warning
lemote2f_defconfig (gcc-8): 6 errors, 3 warnings
loongson1b_defconfig (gcc-8): 6 errors, 1 warning
loongson1c_defconfig (gcc-8): 6 errors, 1 warning
loongson3_defconfig (gcc-8): 6 errors, 3 warnings
malta_defconfig (gcc-8): 6 errors, 1 warning
malta_kvm_defconfig (gcc-8): 6 errors, 1 warning
malta_kvm_guest_defconfig (gcc-8): 6 errors, 1 warning
malta_qemu_32r6_defconfig (gcc-8): 6 errors, 2 warnings
maltaaprp_defconfig (gcc-8): 6 errors, 1 warning
maltasmvp_defconfig (gcc-8): 6 errors, 1 warning
maltasmvp_eva_defconfig (gcc-8): 6 errors, 1 warning
maltaup_defconfig (gcc-8): 6 errors, 1 warning
maltaup_xpa_defconfig (gcc-8): 6 errors, 1 warning
markeins_defconfig (gcc-8): 6 errors, 1 warning
mips_paravirt_defconfig (gcc-8): 6 errors, 3 warnings
mpc30x_defconfig (gcc-8): 6 errors, 1 warning
msp71xx_defconfig (gcc-8): 6 errors, 1 warning
mtx1_defconfig (gcc-8): 6 errors, 1 warning
nlm_xlp_defconfig (gcc-8): 6 errors, 3 warnings
nlm_xlr_defconfig (gcc-8): 6 errors, 1 warning
omega2p_defconfig (gcc-8): 6 errors, 1 warning
pic32mzda_defconfig (gcc-8): 2 warnings
pistachio_defconfig (gcc-8): 6 errors, 1 warning
pnx8335_stb225_defconfig (gcc-8): 6 errors, 1 warning
qi_lb60_defconfig (gcc-8): 6 errors, 3 warnings
rb532_defconfig (gcc-8): 6 errors, 1 warning
rbtx49xx_defconfig (gcc-8): 6 errors, 1 warning
rm200_defconfig (gcc-8): 6 errors, 1 warning
rt305x_defconfig (gcc-8): 6 errors, 1 warning
sb1250_swarm_defconfig (gcc-8): 6 errors, 2 warnings
tb0219_defconfig (gcc-8): 6 errors, 1 warning
tb0226_defconfig (gcc-8): 6 errors, 1 warning
tb0287_defconfig (gcc-8): 6 errors, 1 warning
tinyconfig (gcc-8): 1 warning
vocore2_defconfig (gcc-8): 6 errors, 1 warning
workpad_defconfig (gcc-8): 6 errors, 1 warning
xway_defconfig (gcc-8): 6 errors, 1 warning
riscv:
defconfig (gcc-8): 6 errors
rv32_defconfig (gcc-8): 6 errors, 3 warnings
x86_64:
tinyconfig (gcc-8): 1 warning
x86_64_defconfig (gcc-8): 6 errors
Errors summary:
178 include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
178 include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
178 include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
178 include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
178 fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
178 fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
Warnings summary:
105 <stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
4 drivers/mmc/host/atmel-mci.c:2426:40: warning: this statement may fall through [-Wimplicit-fallthrough=]
4 drivers/mmc/host/atmel-mci.c:2422:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
4 drivers/mmc/host/atmel-mci.c:2415:30: warning: this statement may fall through [-Wimplicit-fallthrough=]
3 drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:820:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
3 drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:815:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
3 drivers/mmc/host/sdhci-s3c.c:613:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/watchdog/jz4740_wdt.c:165:6: warning: unused variable 'ret' [-Wunused-variable]
2 drivers/video/fbdev/sh_mobile_lcdcfb.c:2086:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/video/fbdev/sh_mobile_lcdcfb.c:1596:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/phy/phy-ab8500-usb.c:459:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/phy/phy-ab8500-usb.c:440:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/phy/phy-ab8500-usb.c:424:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/phy/phy-ab8500-usb.c:370:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/phy/phy-ab8500-usb.c:352:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/phy/phy-ab8500-usb.c:332:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/gadget/udc/s3c2410_udc.c:418:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/gadget/udc/s3c2410_udc.c:314:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/gadget/udc/atmel_usba_udc.c:329:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/scsi/wd33c93.c:1856:11: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/pinctrl/pinctrl-rockchip.c:2783:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/dma/imx-dma.c:542:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
1 {standard input}:131: Warning: macro instruction expanded into multiple instructions
1 drivers/video/fbdev/jz4740_fb.c:300:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
1 drivers/cpufreq/ti-cpufreq.c:79:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
1 <stdin>:830:2: warning: #warning syscall fstat64 not implemented [-Wcpp]
1 <stdin>:1127:2: warning: #warning syscall fstatat64 not implemented [-Wcpp]
1 .config:1168:warning: override: UNWINDER_GUESS changes choice state
================================================================================
Detailed per-defconfig build reports:
--------------------------------------------------------------------------------
32r2el_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
acs5k_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
acs5k_tiny_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
allnoconfig (arc, gcc-8) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
allnoconfig (arm64, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (riscv, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (mips, gcc-8) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
allnoconfig (i386, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (x86_64, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
am200epdkit_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
ar7_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
aspeed_g4_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
aspeed_g5_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
assabet_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
at91_dt_defconfig (arm, gcc-8) — FAIL, 6 errors, 4 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/mmc/host/atmel-mci.c:2415:30: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2422:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2426:40: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/gadget/udc/atmel_usba_udc.c:329:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
ath25_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
ath79_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
axm55xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
axs103_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
axs103_smp_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
badge4_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
bcm2835_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
bcm47xx_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
bcm63xx_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
bigsur_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
bmips_be_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
bmips_stb_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
capcella_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
cavium_octeon_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
cerfcube_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
ci20_defconfig (mips, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
drivers/watchdog/jz4740_wdt.c:165:6: warning: unused variable 'ret' [-Wunused-variable]
--------------------------------------------------------------------------------
clps711x_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
cm_x2xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
cm_x300_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
cns3420vb_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cobalt_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
colibri_pxa270_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
colibri_pxa300_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
collie_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
corgi_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
davinci_all_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
db1xxx_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
decstation_64_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
decstation_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
decstation_r4k_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
defconfig (riscv, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
defconfig (arm64, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:815:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:820:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/pinctrl/pinctrl-rockchip.c:2783:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
dove_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
e55_defconfig (mips, gcc-8) — PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
ebsa110_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
efm32_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
em_x270_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
ep93xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
eseries_pxa_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
exynos_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
ezx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
footbridge_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
fuloong2e_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
gcw0_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
gemini_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
gpr_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
h3600_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
h5000_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
hackkit_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
haps_hs_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
haps_hs_smp_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
hisi_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
hsdk_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
i386_defconfig (i386, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
imote2_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
imx_v4_v5_defconfig (arm, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/dma/imx-dma.c:542:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
imx_v6_v7_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
integrator_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
iop13xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
iop32x_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
iop33x_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
ip22_defconfig (mips, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
drivers/scsi/wd33c93.c:1856:11: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
ip27_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
ip28_defconfig (mips, gcc-8) — FAIL, 6 errors, 4 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
drivers/scsi/wd33c93.c:1856:11: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
ip32_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
ixp4xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
jazz_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
jmr3927_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
jornada720_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
keystone_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
ks8695_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
lart_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
lasat_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
lemote2f_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
loongson1b_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
loongson1c_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
loongson3_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
lpc18xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
lpc32xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
lpd270_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
lubbock_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
magician_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
mainstone_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
malta_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
malta_kvm_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
malta_kvm_guest_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
malta_qemu_32r6_defconfig (mips, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
{standard input}:131: Warning: macro instruction expanded into multiple instructions
--------------------------------------------------------------------------------
maltaaprp_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
maltasmvp_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
maltasmvp_eva_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
maltaup_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
maltaup_xpa_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
markeins_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
milbeaut_m10v_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mini2440_defconfig (arm, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/usb/gadget/udc/s3c2410_udc.c:314:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/gadget/udc/s3c2410_udc.c:418:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
mips_paravirt_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
mmp2_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
moxart_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
mpc30x_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
mps2_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
msp71xx_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
mtx1_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
multi_v4t_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v5_defconfig (arm, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/mmc/host/atmel-mci.c:2415:30: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2422:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2426:40: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
multi_v7_defconfig (arm, gcc-8) — FAIL, 6 errors, 16 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/dma/imx-dma.c:542:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/sdhci-s3c.c:613:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2415:30: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2422:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2426:40: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:815:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:820:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/pinctrl/pinctrl-rockchip.c:2783:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/video/fbdev/sh_mobile_lcdcfb.c:2086:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/video/fbdev/sh_mobile_lcdcfb.c:1596:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:424:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:440:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:459:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:332:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:352:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:370:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
mv78xx0_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
mvebu_v5_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
mvebu_v7_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
mxs_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
neponset_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
netwinder_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
nhk8815_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
nlm_xlp_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
nlm_xlr_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
nsim_hs_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
nsim_hs_smp_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
nsimosci_hs_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
nsimosci_hs_smp_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
nuc910_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nuc950_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nuc960_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omap1_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
omap2plus_defconfig (arm, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/cpufreq/ti-cpufreq.c:79:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
omega2p_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
orion5x_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
oxnas_v6_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
palmz72_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pcm027_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pic32mzda_defconfig (mips, gcc-8) — PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
pistachio_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
pleb_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pnx8335_stb225_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
prima2_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa168_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pxa255-idp_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pxa3xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pxa910_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pxa_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
qcom_defconfig (arm, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:815:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:820:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
qi_lb60_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
drivers/watchdog/jz4740_wdt.c:165:6: warning: unused variable 'ret' [-Wunused-variable]
drivers/video/fbdev/jz4740_fb.c:300:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
rb532_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
rbtx49xx_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
realview_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
rm200_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
rpc_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
rt305x_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
rv32_defconfig (riscv, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:830:2: warning: #warning syscall fstat64 not implemented [-Wcpp]
<stdin>:1127:2: warning: #warning syscall fstatat64 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
s3c2410_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
s3c6400_defconfig (arm, gcc-8) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
drivers/mmc/host/sdhci-s3c.c:613:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
s5pv210_defconfig (arm, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/mmc/host/sdhci-s3c.c:613:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
sama5_defconfig (arm, gcc-8) — FAIL, 6 errors, 4 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/mmc/host/atmel-mci.c:2415:30: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2422:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2426:40: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/gadget/udc/atmel_usba_udc.c:329:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
sb1250_swarm_defconfig (mips, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
shannon_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
shmobile_defconfig (arm, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/video/fbdev/sh_mobile_lcdcfb.c:2086:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/video/fbdev/sh_mobile_lcdcfb.c:1596:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
simpad_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
socfpga_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
spear13xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
spear3xx_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear6xx_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spitz_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
stm32_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sunxi_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
tango4_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
tb0219_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
tb0226_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
tb0287_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
tct_hammer_defconfig (arm, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/usb/gadget/udc/s3c2410_udc.c:314:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/gadget/udc/s3c2410_udc.c:418:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
tegra_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
tinyconfig (i386, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (arm64, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (x86_64, gcc-8) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
.config:1168:warning: override: UNWINDER_GUESS changes choice state
--------------------------------------------------------------------------------
tinyconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (mips, gcc-8) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
tinyconfig (riscv, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (arc, gcc-8) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
trizeps4_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
u300_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
u8500_defconfig (arm, gcc-8) — FAIL, 6 errors, 6 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/usb/phy/phy-ab8500-usb.c:424:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:440:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:459:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:332:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:352:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:370:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
vdk_hs38_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
vdk_hs38_smp_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
versatile_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
vexpress_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
vf610m4_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
viper_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
vocore2_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
vt8500_v6_v7_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
workpad_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
x86_64_defconfig (x86_64, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
xcep_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
xway_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
zeus_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
zx_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
---
For more info write to <info(a)kernelci.org>
Because pids->limit can be changed concurrently (but we don't want to
take a lock because it would be needlessly expensive), use the
appropriate memory barriers.
Fixes: commit 49b786ea146f ("cgroup: implement the PIDs subsystem")
Cc: stable(a)vger.kernel.org # v4.3+
Signed-off-by: Aleksa Sarai <cyphar(a)cyphar.com>
---
kernel/cgroup/pids.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/kernel/cgroup/pids.c b/kernel/cgroup/pids.c
index 8e513a573fe9..a726e4a20177 100644
--- a/kernel/cgroup/pids.c
+++ b/kernel/cgroup/pids.c
@@ -152,7 +152,7 @@ static int pids_try_charge(struct pids_cgroup *pids, int num)
* p->limit is %PIDS_MAX then we know that this test will never
* fail.
*/
- if (new > p->limit)
+ if (new > READ_ONCE(p->limit))
goto revert;
}
@@ -277,7 +277,7 @@ static ssize_t pids_max_write(struct kernfs_open_file *of, char *buf,
* Limit updates don't need to be mutex'd, since it isn't
* critical that any racing fork()s follow the new limit.
*/
- pids->limit = limit;
+ WRITE_ONCE(pids->limit, limit);
return nbytes;
}
@@ -285,7 +285,7 @@ static int pids_max_show(struct seq_file *sf, void *v)
{
struct cgroup_subsys_state *css = seq_css(sf);
struct pids_cgroup *pids = css_pids(css);
- int64_t limit = pids->limit;
+ int64_t limit = READ_ONCE(pids->limit);
if (limit >= PIDS_MAX)
seq_printf(sf, "%s\n", PIDS_MAX_STR);
--
2.23.0
Hello,
We ran automated tests on a recent commit from this kernel tree:
Kernel repo: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
Commit: d8fee438c028 - Linux 5.3.7-rc1
The results of these automated tests are provided below.
Overall result: FAILED (see details below)
Merge: OK
Compile: FAILED
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/229110
We attempted to compile the kernel for multiple architectures, but the compile
failed on one or more architectures:
aarch64: FAILED (see build-aarch64.log.xz attachment)
ppc64le: FAILED (see build-ppc64le.log.xz attachment)
s390x: FAILED (see build-s390x.log.xz attachment)
x86_64: FAILED (see build-x86_64.log.xz attachment)
We hope that these logs can help you find the problem quickly. For the full
detail on our testing procedures, please scroll to the bottom of this message.
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Compile testing
---------------
We compiled the kernel for 4 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
s390x:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hello,
We ran automated tests on a patchset that was proposed for merging into this
kernel tree. The patches were applied to:
Kernel repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
The results of these automated tests are provided below.
Overall result: FAILED (see details below)
Merge: OK
Compile: FAILED
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/229091
We attempted to compile the kernel for multiple architectures, but the compile
failed on one or more architectures:
aarch64: FAILED (see build-aarch64.log.xz attachment)
ppc64le: FAILED (see build-ppc64le.log.xz attachment)
s390x: FAILED (see build-s390x.log.xz attachment)
x86_64: FAILED (see build-x86_64.log.xz attachment)
We hope that these logs can help you find the problem quickly. For the full
detail on our testing procedures, please scroll to the bottom of this message.
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Merge testing
-------------
We cloned this repository and checked out the following commit:
Repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
We grabbed the 62b9a201a516 commit of the stable queue repository.
We then merged the patchset with `git am`:
panic-ensure-preemption-is-disabled-during-panic.patch
usb-rio500-remove-rio-500-kernel-driver.patch
usb-yurex-don-t-retry-on-unexpected-errors.patch
usb-yurex-fix-null-derefs-on-disconnect.patch
usb-usb-skeleton-fix-runtime-pm-after-driver-unbind.patch
usb-usb-skeleton-fix-null-deref-on-disconnect.patch
xhci-fix-false-warning-message-about-wrong-bounce-buffer-write-length.patch
xhci-prevent-device-initiated-u1-u2-link-pm-if-exit-latency-is-too-long.patch
xhci-check-all-endpoints-for-lpm-timeout.patch
xhci-fix-usb-3.1-capability-detection-on-early-xhci-1.1-spec-based-hosts.patch
usb-xhci-wait-for-cnr-controller-not-ready-bit-in-xhci-resume.patch
xhci-prevent-deadlock-when-xhci-adapter-breaks-during-init.patch
xhci-increase-sts_save-timeout-in-xhci_suspend.patch
xhci-fix-null-pointer-dereference-in-xhci_clear_tt_buffer_complete.patch
usb-adutux-fix-use-after-free-on-disconnect.patch
usb-adutux-fix-null-derefs-on-disconnect.patch
usb-adutux-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-on-disconnect.patch
usb-iowarrior-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-after-driver-unbind.patch
usb-usblp-fix-runtime-pm-after-driver-unbind.patch
usb-chaoskey-fix-use-after-free-on-release.patch
usb-ldusb-fix-null-derefs-on-driver-unbind.patch
serial-uartlite-fix-exit-path-null-pointer.patch
serial-uartps-fix-uartps_major-handling.patch
usb-serial-keyspan-fix-null-derefs-on-open-and-write.patch
usb-serial-ftdi_sio-add-device-ids-for-sienna-and-echelon-pl-20.patch
usb-serial-option-add-telit-fn980-compositions.patch
usb-serial-option-add-support-for-cinterion-cls8-devices.patch
usb-serial-fix-runtime-pm-after-driver-unbind.patch
usb-usblcd-fix-i-o-after-disconnect.patch
usb-microtek-fix-info-leak-at-probe.patch
usb-dummy-hcd-fix-power-budget-for-superspeed-mode.patch
usb-renesas_usbhs-gadget-do-not-discard-queues-in-usb_ep_set_-halt-wedge.patch
usb-renesas_usbhs-gadget-fix-usb_ep_set_-halt-wedge-behavior.patch
usb-typec-tcpm-usb-typec-tcpm-fix-a-signedness-bug-in-tcpm_fw_get_caps.patch
usb-typec-ucsi-ccg-remove-run_isr-flag.patch
usb-typec-ucsi-displayport-fix-for-the-mode-entering-routine.patch
usb-legousbtower-fix-slab-info-leak-at-probe.patch
usb-legousbtower-fix-deadlock-on-disconnect.patch
usb-legousbtower-fix-potential-null-deref-on-disconnect.patch
usb-legousbtower-fix-open-after-failed-reset-request.patch
usb-legousbtower-fix-use-after-free-on-release.patch
mei-me-add-comet-point-lake-lp-device-ids.patch
mei-avoid-fw-version-request-on-ibex-peak-and-earlier.patch
gpio-eic-sprd-fix-the-incorrect-eic-offset-when-toggling.patch
staging-fbtft-depend-on-of.patch
staging-bcm2835-audio-fix-draining-behavior-regression.patch
staging-fbtft-fix-memory-leak-in-fbtft_framebuffer_alloc.patch
staging-rtl8188eu-fix-highestrate-check-in-odm_arfbrefresh_8188e.patch
staging-vt6655-fix-memory-leak-in-vt6655_probe.patch
iio-adc-hx711-fix-bug-in-sampling-of-data.patch
iio-adc-ad799x-fix-probe-error-handling.patch
iio-adc-axp288-override-ts-pin-bias-current-for-some-models.patch
iio-adc-stm32-adc-move-registers-definitions.patch
iio-adc-stm32-adc-fix-a-race-when-using-several-adcs-with-dma-and-irq.patch
iio-light-opt3001-fix-mutex-unlock-race.patch
iio-light-add-missing-vcnl4040-of_compatible.patch
iio-accel-adxl372-fix-remove-limitation-for-fifo-samples.patch
iio-accel-adxl372-fix-push-to-buffers-lost-samples.patch
iio-accel-adxl372-perform-a-reset-at-start-up.patch
efivar-ssdt-don-t-iterate-over-efi-vars-if-no-ssdt-override-was-specified.patch
efi-tpm-don-t-access-event-count-when-it-isn-t-mapped.patch
efi-tpm-don-t-traverse-an-event-log-with-no-events.patch
efi-tpm-only-set-efi_tpm_final_log_size-after-successful-event-log-parsing.patch
perf-llvm-don-t-access-out-of-scope-array.patch
perf-inject-jit-fix-jit_code_move-filename.patch
drm-i915-perform-ggtt-restore-much-earlier-during-resume.patch
blk-wbt-fix-performance-regression-in-wbt-scale_up-scale_down.patch
selinux-fix-context-string-corruption-in-convert_context.patch
io_uring-only-flush-workqueues-on-fileset-removal.patch
cifs-gracefully-handle-queryinfo-errors-during-open.patch
cifs-force-revalidate-inode-when-dentry-is-stale.patch
cifs-force-reval-dentry-if-lookup_reval-flag-is-set.patch
cifs-use-cifsinodeinfo-open_file_lock-while-iterating-to-avoid-a-panic.patch
kernel-sysctl.c-do-not-override-max_threads-provided-by-userspace.patch
mm-z3fold.c-claim-page-in-the-beginning-of-free.patch
mm-page_alloc.c-fix-a-crash-in-free_pages_prepare.patch
mm-vmpressure.c-fix-a-signedness-bug-in-vmpressure_register_event.patch
ib-core-fix-wrong-iterating-on-ports.patch
firmware-google-increment-vpd-key_len-properly.patch
gpio-fix-getting-nonexclusive-gpiods-from-dt.patch
gpiolib-don-t-clear-flag_is_out-when-emulating-open-.patch
btrfs-relocation-fix-use-after-free-on-dead-relocation-roots.patch
btrfs-allocate-new-inode-in-nofs-context.patch
btrfs-fix-balance-convert-to-single-on-32-bit-host-cpus.patch
btrfs-fix-memory-leak-due-to-concurrent-append-writes-with-fiemap.patch
btrfs-fix-incorrect-updating-of-log-root-tree.patch
btrfs-fix-uninitialized-ret-in-ref-verify.patch
nfs-fix-o_direct-accounting-of-number-of-bytes-read-written.patch
mips-disable-loongson-mmi-instructions-for-kernel-build.patch
mips-elf_hwcap-export-userspace-ases.patch
rdma-vmw_pvrdma-free-srq-only-once.patch
acpi-pptt-add-support-for-acpi-6.3-thread-flag.patch
arm64-topology-use-pptt-to-determine-if-pe-is-a-thre.patch
iio-light-fix-vcnl4000-devicetree-hooks.patch
fix-the-locking-in-dcache_readdir-and-friends.patch
drm-i915-bump-skl-max-plane-width-to-5k-for-linear-x-tiled.patch
drm-i915-whitelist-common_slice_chicken2.patch
drm-i915-mark-contents-as-dirty-on-a-write-fault.patch
drm-msm-use-the-correct-dma_sync-calls-harder.patch
media-stkwebcam-fix-runtime-pm-after-driver-unbind.patch
arm64-sve-fix-wrong-free-for-task-thread.sve_state.patch
tracing-hwlat-report-total-time-spent-in-all-nmis-during-the-sample.patch
tracing-hwlat-don-t-ignore-outer-loop-duration-when-calculating-max_latency.patch
ftrace-get-a-reference-counter-for-the-trace_array-on-filter-files.patch
tracing-get-trace_array-reference-for-available_tracers-files.patch
hwmon-fix-hwmon_p_min_alarm-mask.patch
mtd-rawnand-au1550nd-fix-au_read_buf16-prototype.patch
x86-asm-fix-mwaitx-c-state-hint-value.patch
Compile testing
---------------
We compiled the kernel for 4 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
s390x:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
Hello,
We ran automated tests on a patchset that was proposed for merging into this
kernel tree. The patches were applied to:
Kernel repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
The results of these automated tests are provided below.
Overall result: FAILED (see details below)
Merge: OK
Compile: FAILED
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/229078
We attempted to compile the kernel for multiple architectures, but the compile
failed on one or more architectures:
aarch64: FAILED (see build-aarch64.log.xz attachment)
ppc64le: FAILED (see build-ppc64le.log.xz attachment)
s390x: FAILED (see build-s390x.log.xz attachment)
x86_64: FAILED (see build-x86_64.log.xz attachment)
We hope that these logs can help you find the problem quickly. For the full
detail on our testing procedures, please scroll to the bottom of this message.
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Merge testing
-------------
We cloned this repository and checked out the following commit:
Repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
We grabbed the 7528b45349fa commit of the stable queue repository.
We then merged the patchset with `git am`:
panic-ensure-preemption-is-disabled-during-panic.patch
usb-rio500-remove-rio-500-kernel-driver.patch
usb-yurex-don-t-retry-on-unexpected-errors.patch
usb-yurex-fix-null-derefs-on-disconnect.patch
usb-usb-skeleton-fix-runtime-pm-after-driver-unbind.patch
usb-usb-skeleton-fix-null-deref-on-disconnect.patch
xhci-fix-false-warning-message-about-wrong-bounce-buffer-write-length.patch
xhci-prevent-device-initiated-u1-u2-link-pm-if-exit-latency-is-too-long.patch
xhci-check-all-endpoints-for-lpm-timeout.patch
xhci-fix-usb-3.1-capability-detection-on-early-xhci-1.1-spec-based-hosts.patch
usb-xhci-wait-for-cnr-controller-not-ready-bit-in-xhci-resume.patch
xhci-prevent-deadlock-when-xhci-adapter-breaks-during-init.patch
xhci-increase-sts_save-timeout-in-xhci_suspend.patch
xhci-fix-null-pointer-dereference-in-xhci_clear_tt_buffer_complete.patch
usb-adutux-fix-use-after-free-on-disconnect.patch
usb-adutux-fix-null-derefs-on-disconnect.patch
usb-adutux-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-on-disconnect.patch
usb-iowarrior-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-after-driver-unbind.patch
usb-usblp-fix-runtime-pm-after-driver-unbind.patch
usb-chaoskey-fix-use-after-free-on-release.patch
usb-ldusb-fix-null-derefs-on-driver-unbind.patch
serial-uartlite-fix-exit-path-null-pointer.patch
serial-uartps-fix-uartps_major-handling.patch
usb-serial-keyspan-fix-null-derefs-on-open-and-write.patch
usb-serial-ftdi_sio-add-device-ids-for-sienna-and-echelon-pl-20.patch
usb-serial-option-add-telit-fn980-compositions.patch
usb-serial-option-add-support-for-cinterion-cls8-devices.patch
usb-serial-fix-runtime-pm-after-driver-unbind.patch
usb-usblcd-fix-i-o-after-disconnect.patch
usb-microtek-fix-info-leak-at-probe.patch
usb-dummy-hcd-fix-power-budget-for-superspeed-mode.patch
usb-renesas_usbhs-gadget-do-not-discard-queues-in-usb_ep_set_-halt-wedge.patch
usb-renesas_usbhs-gadget-fix-usb_ep_set_-halt-wedge-behavior.patch
usb-typec-tcpm-usb-typec-tcpm-fix-a-signedness-bug-in-tcpm_fw_get_caps.patch
usb-typec-ucsi-ccg-remove-run_isr-flag.patch
usb-typec-ucsi-displayport-fix-for-the-mode-entering-routine.patch
usb-legousbtower-fix-slab-info-leak-at-probe.patch
usb-legousbtower-fix-deadlock-on-disconnect.patch
usb-legousbtower-fix-potential-null-deref-on-disconnect.patch
usb-legousbtower-fix-open-after-failed-reset-request.patch
usb-legousbtower-fix-use-after-free-on-release.patch
mei-me-add-comet-point-lake-lp-device-ids.patch
mei-avoid-fw-version-request-on-ibex-peak-and-earlier.patch
gpio-eic-sprd-fix-the-incorrect-eic-offset-when-toggling.patch
staging-fbtft-depend-on-of.patch
staging-bcm2835-audio-fix-draining-behavior-regression.patch
staging-fbtft-fix-memory-leak-in-fbtft_framebuffer_alloc.patch
staging-rtl8188eu-fix-highestrate-check-in-odm_arfbrefresh_8188e.patch
staging-vt6655-fix-memory-leak-in-vt6655_probe.patch
iio-adc-hx711-fix-bug-in-sampling-of-data.patch
iio-adc-ad799x-fix-probe-error-handling.patch
iio-adc-axp288-override-ts-pin-bias-current-for-some-models.patch
iio-adc-stm32-adc-move-registers-definitions.patch
iio-adc-stm32-adc-fix-a-race-when-using-several-adcs-with-dma-and-irq.patch
iio-light-opt3001-fix-mutex-unlock-race.patch
iio-light-add-missing-vcnl4040-of_compatible.patch
iio-accel-adxl372-fix-remove-limitation-for-fifo-samples.patch
iio-accel-adxl372-fix-push-to-buffers-lost-samples.patch
iio-accel-adxl372-perform-a-reset-at-start-up.patch
efivar-ssdt-don-t-iterate-over-efi-vars-if-no-ssdt-override-was-specified.patch
efi-tpm-don-t-access-event-count-when-it-isn-t-mapped.patch
efi-tpm-don-t-traverse-an-event-log-with-no-events.patch
efi-tpm-only-set-efi_tpm_final_log_size-after-successful-event-log-parsing.patch
perf-llvm-don-t-access-out-of-scope-array.patch
perf-inject-jit-fix-jit_code_move-filename.patch
drm-i915-perform-ggtt-restore-much-earlier-during-resume.patch
blk-wbt-fix-performance-regression-in-wbt-scale_up-scale_down.patch
selinux-fix-context-string-corruption-in-convert_context.patch
io_uring-only-flush-workqueues-on-fileset-removal.patch
cifs-gracefully-handle-queryinfo-errors-during-open.patch
cifs-force-revalidate-inode-when-dentry-is-stale.patch
cifs-force-reval-dentry-if-lookup_reval-flag-is-set.patch
cifs-use-cifsinodeinfo-open_file_lock-while-iterating-to-avoid-a-panic.patch
kernel-sysctl.c-do-not-override-max_threads-provided-by-userspace.patch
mm-z3fold.c-claim-page-in-the-beginning-of-free.patch
mm-page_alloc.c-fix-a-crash-in-free_pages_prepare.patch
mm-vmpressure.c-fix-a-signedness-bug-in-vmpressure_register_event.patch
ib-core-fix-wrong-iterating-on-ports.patch
firmware-google-increment-vpd-key_len-properly.patch
gpio-fix-getting-nonexclusive-gpiods-from-dt.patch
gpiolib-don-t-clear-flag_is_out-when-emulating-open-.patch
btrfs-relocation-fix-use-after-free-on-dead-relocation-roots.patch
btrfs-allocate-new-inode-in-nofs-context.patch
btrfs-fix-balance-convert-to-single-on-32-bit-host-cpus.patch
btrfs-fix-memory-leak-due-to-concurrent-append-writes-with-fiemap.patch
btrfs-fix-incorrect-updating-of-log-root-tree.patch
btrfs-fix-uninitialized-ret-in-ref-verify.patch
nfs-fix-o_direct-accounting-of-number-of-bytes-read-written.patch
mips-disable-loongson-mmi-instructions-for-kernel-build.patch
mips-elf_hwcap-export-userspace-ases.patch
rdma-vmw_pvrdma-free-srq-only-once.patch
acpi-pptt-add-support-for-acpi-6.3-thread-flag.patch
arm64-topology-use-pptt-to-determine-if-pe-is-a-thre.patch
iio-light-fix-vcnl4000-devicetree-hooks.patch
Compile testing
---------------
We compiled the kernel for 4 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
s390x:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
The patch below does not apply to the 4.19-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From dcb10920179ab74caf88a6f2afadecfc2743b910 Mon Sep 17 00:00:00 2001
From: Fabrice Gasnier <fabrice.gasnier(a)st.com>
Date: Tue, 17 Sep 2019 14:38:16 +0200
Subject: [PATCH] iio: adc: stm32-adc: fix a race when using several adcs with
dma and irq
End of conversion may be handled by using IRQ or DMA. There may be a
race when two conversions complete at the same time on several ADCs.
EOC can be read as 'set' for several ADCs, with:
- an ADC configured to use IRQs. EOCIE bit is set. The handler is normally
called in this case.
- an ADC configured to use DMA. EOCIE bit isn't set. EOC triggers the DMA
request instead. It's then automatically cleared by DMA read. But the
handler gets called due to status bit is temporarily set (IRQ triggered
by the other ADC).
So both EOC status bit in CSR and EOCIE control bit must be checked
before invoking the interrupt handler (e.g. call ISR only for
IRQ-enabled ADCs).
Fixes: 2763ea0585c9 ("iio: adc: stm32: add optional dma support")
Signed-off-by: Fabrice Gasnier <fabrice.gasnier(a)st.com>
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
diff --git a/drivers/iio/adc/stm32-adc-core.c b/drivers/iio/adc/stm32-adc-core.c
index 84ac326bb714..93a096a91f8c 100644
--- a/drivers/iio/adc/stm32-adc-core.c
+++ b/drivers/iio/adc/stm32-adc-core.c
@@ -44,6 +44,8 @@
* @eoc1: adc1 end of conversion flag in @csr
* @eoc2: adc2 end of conversion flag in @csr
* @eoc3: adc3 end of conversion flag in @csr
+ * @ier: interrupt enable register offset for each adc
+ * @eocie_msk: end of conversion interrupt enable mask in @ier
*/
struct stm32_adc_common_regs {
u32 csr;
@@ -51,6 +53,8 @@ struct stm32_adc_common_regs {
u32 eoc1_msk;
u32 eoc2_msk;
u32 eoc3_msk;
+ u32 ier;
+ u32 eocie_msk;
};
struct stm32_adc_priv;
@@ -276,6 +280,8 @@ static const struct stm32_adc_common_regs stm32f4_adc_common_regs = {
.eoc1_msk = STM32F4_EOC1,
.eoc2_msk = STM32F4_EOC2,
.eoc3_msk = STM32F4_EOC3,
+ .ier = STM32F4_ADC_CR1,
+ .eocie_msk = STM32F4_EOCIE,
};
/* STM32H7 common registers definitions */
@@ -284,8 +290,24 @@ static const struct stm32_adc_common_regs stm32h7_adc_common_regs = {
.ccr = STM32H7_ADC_CCR,
.eoc1_msk = STM32H7_EOC_MST,
.eoc2_msk = STM32H7_EOC_SLV,
+ .ier = STM32H7_ADC_IER,
+ .eocie_msk = STM32H7_EOCIE,
};
+static const unsigned int stm32_adc_offset[STM32_ADC_MAX_ADCS] = {
+ 0, STM32_ADC_OFFSET, STM32_ADC_OFFSET * 2,
+};
+
+static unsigned int stm32_adc_eoc_enabled(struct stm32_adc_priv *priv,
+ unsigned int adc)
+{
+ u32 ier, offset = stm32_adc_offset[adc];
+
+ ier = readl_relaxed(priv->common.base + offset + priv->cfg->regs->ier);
+
+ return ier & priv->cfg->regs->eocie_msk;
+}
+
/* ADC common interrupt for all instances */
static void stm32_adc_irq_handler(struct irq_desc *desc)
{
@@ -296,13 +318,28 @@ static void stm32_adc_irq_handler(struct irq_desc *desc)
chained_irq_enter(chip, desc);
status = readl_relaxed(priv->common.base + priv->cfg->regs->csr);
- if (status & priv->cfg->regs->eoc1_msk)
+ /*
+ * End of conversion may be handled by using IRQ or DMA. There may be a
+ * race here when two conversions complete at the same time on several
+ * ADCs. EOC may be read 'set' for several ADCs, with:
+ * - an ADC configured to use DMA (EOC triggers the DMA request, and
+ * is then automatically cleared by DR read in hardware)
+ * - an ADC configured to use IRQs (EOCIE bit is set. The handler must
+ * be called in this case)
+ * So both EOC status bit in CSR and EOCIE control bit must be checked
+ * before invoking the interrupt handler (e.g. call ISR only for
+ * IRQ-enabled ADCs).
+ */
+ if (status & priv->cfg->regs->eoc1_msk &&
+ stm32_adc_eoc_enabled(priv, 0))
generic_handle_irq(irq_find_mapping(priv->domain, 0));
- if (status & priv->cfg->regs->eoc2_msk)
+ if (status & priv->cfg->regs->eoc2_msk &&
+ stm32_adc_eoc_enabled(priv, 1))
generic_handle_irq(irq_find_mapping(priv->domain, 1));
- if (status & priv->cfg->regs->eoc3_msk)
+ if (status & priv->cfg->regs->eoc3_msk &&
+ stm32_adc_eoc_enabled(priv, 2))
generic_handle_irq(irq_find_mapping(priv->domain, 2));
chained_irq_exit(chip, desc);
diff --git a/drivers/iio/adc/stm32-adc-core.h b/drivers/iio/adc/stm32-adc-core.h
index 94aa2d2577dc..2579d514c2a3 100644
--- a/drivers/iio/adc/stm32-adc-core.h
+++ b/drivers/iio/adc/stm32-adc-core.h
@@ -25,6 +25,7 @@
* --------------------------------------------------------
*/
#define STM32_ADC_MAX_ADCS 3
+#define STM32_ADC_OFFSET 0x100
#define STM32_ADCX_COMN_OFFSET 0x300
/* STM32F4 - Registers for each ADC instance */
The patch below does not apply to the 4.19-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 11a19a90870ea5496a8ded69b86f5b476b6d3355 Mon Sep 17 00:00:00 2001
From: Josef Bacik <josef(a)toxicpanda.com>
Date: Mon, 9 Sep 2019 10:12:04 -0400
Subject: [PATCH] btrfs: allocate new inode in NOFS context
A user reported a lockdep splat
======================================================
WARNING: possible circular locking dependency detected
5.2.11-gentoo #2 Not tainted
------------------------------------------------------
kswapd0/711 is trying to acquire lock:
000000007777a663 (sb_internal){.+.+}, at: start_transaction+0x3a8/0x500
but task is already holding lock:
000000000ba86300 (fs_reclaim){+.+.}, at: __fs_reclaim_acquire+0x0/0x30
which lock already depends on the new lock.
the existing dependency chain (in reverse order) is:
-> #1 (fs_reclaim){+.+.}:
kmem_cache_alloc+0x1f/0x1c0
btrfs_alloc_inode+0x1f/0x260
alloc_inode+0x16/0xa0
new_inode+0xe/0xb0
btrfs_new_inode+0x70/0x610
btrfs_symlink+0xd0/0x420
vfs_symlink+0x9c/0x100
do_symlinkat+0x66/0xe0
do_syscall_64+0x55/0x1c0
entry_SYSCALL_64_after_hwframe+0x49/0xbe
-> #0 (sb_internal){.+.+}:
__sb_start_write+0xf6/0x150
start_transaction+0x3a8/0x500
btrfs_commit_inode_delayed_inode+0x59/0x110
btrfs_evict_inode+0x19e/0x4c0
evict+0xbc/0x1f0
inode_lru_isolate+0x113/0x190
__list_lru_walk_one.isra.4+0x5c/0x100
list_lru_walk_one+0x32/0x50
prune_icache_sb+0x36/0x80
super_cache_scan+0x14a/0x1d0
do_shrink_slab+0x131/0x320
shrink_node+0xf7/0x380
balance_pgdat+0x2d5/0x640
kswapd+0x2ba/0x5e0
kthread+0x147/0x160
ret_from_fork+0x24/0x30
other info that might help us debug this:
Possible unsafe locking scenario:
CPU0 CPU1
---- ----
lock(fs_reclaim);
lock(sb_internal);
lock(fs_reclaim);
lock(sb_internal);
*** DEADLOCK ***
3 locks held by kswapd0/711:
#0: 000000000ba86300 (fs_reclaim){+.+.}, at: __fs_reclaim_acquire+0x0/0x30
#1: 000000004a5100f8 (shrinker_rwsem){++++}, at: shrink_node+0x9a/0x380
#2: 00000000f956fa46 (&type->s_umount_key#30){++++}, at: super_cache_scan+0x35/0x1d0
stack backtrace:
CPU: 7 PID: 711 Comm: kswapd0 Not tainted 5.2.11-gentoo #2
Hardware name: Dell Inc. Precision Tower 3620/0MWYPT, BIOS 2.4.2 09/29/2017
Call Trace:
dump_stack+0x85/0xc7
print_circular_bug.cold.40+0x1d9/0x235
__lock_acquire+0x18b1/0x1f00
lock_acquire+0xa6/0x170
? start_transaction+0x3a8/0x500
__sb_start_write+0xf6/0x150
? start_transaction+0x3a8/0x500
start_transaction+0x3a8/0x500
btrfs_commit_inode_delayed_inode+0x59/0x110
btrfs_evict_inode+0x19e/0x4c0
? var_wake_function+0x20/0x20
evict+0xbc/0x1f0
inode_lru_isolate+0x113/0x190
? discard_new_inode+0xc0/0xc0
__list_lru_walk_one.isra.4+0x5c/0x100
? discard_new_inode+0xc0/0xc0
list_lru_walk_one+0x32/0x50
prune_icache_sb+0x36/0x80
super_cache_scan+0x14a/0x1d0
do_shrink_slab+0x131/0x320
shrink_node+0xf7/0x380
balance_pgdat+0x2d5/0x640
kswapd+0x2ba/0x5e0
? __wake_up_common_lock+0x90/0x90
kthread+0x147/0x160
? balance_pgdat+0x640/0x640
? __kthread_create_on_node+0x160/0x160
ret_from_fork+0x24/0x30
This is because btrfs_new_inode() calls new_inode() under the
transaction. We could probably move the new_inode() outside of this but
for now just wrap it in memalloc_nofs_save().
Reported-by: Zdenek Sojka <zsojka(a)seznam.cz>
Fixes: 712e36c5f2a7 ("btrfs: use GFP_KERNEL in btrfs_alloc_inode")
CC: stable(a)vger.kernel.org # 4.16+
Reviewed-by: Filipe Manana <fdmanana(a)suse.com>
Signed-off-by: Josef Bacik <josef(a)toxicpanda.com>
Reviewed-by: David Sterba <dsterba(a)suse.com>
Signed-off-by: David Sterba <dsterba(a)suse.com>
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index a0546401bc0a..0f2754eaa05b 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -6305,13 +6305,16 @@ static struct inode *btrfs_new_inode(struct btrfs_trans_handle *trans,
u32 sizes[2];
int nitems = name ? 2 : 1;
unsigned long ptr;
+ unsigned int nofs_flag;
int ret;
path = btrfs_alloc_path();
if (!path)
return ERR_PTR(-ENOMEM);
+ nofs_flag = memalloc_nofs_save();
inode = new_inode(fs_info->sb);
+ memalloc_nofs_restore(nofs_flag);
if (!inode) {
btrfs_free_path(path);
return ERR_PTR(-ENOMEM);
The patch below does not apply to the 4.4-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 4203e968947071586a98b5314fd7ffdea3b4f971 Mon Sep 17 00:00:00 2001
From: Josef Bacik <josef(a)toxicpanda.com>
Date: Mon, 30 Sep 2019 16:27:25 -0400
Subject: [PATCH] btrfs: fix incorrect updating of log root tree
We've historically had reports of being unable to mount file systems
because the tree log root couldn't be read. Usually this is the "parent
transid failure", but could be any of the related errors, including
"fsid mismatch" or "bad tree block", depending on which block got
allocated.
The modification of the individual log root items are serialized on the
per-log root root_mutex. This means that any modification to the
per-subvol log root_item is completely protected.
However we update the root item in the log root tree outside of the log
root tree log_mutex. We do this in order to allow multiple subvolumes
to be updated in each log transaction.
This is problematic however because when we are writing the log root
tree out we update the super block with the _current_ log root node
information. Since these two operations happen independently of each
other, you can end up updating the log root tree in between writing out
the dirty blocks and setting the super block to point at the current
root.
This means we'll point at the new root node that hasn't been written
out, instead of the one we should be pointing at. Thus whatever garbage
or old block we end up pointing at complains when we mount the file
system later and try to replay the log.
Fix this by copying the log's root item into a local root item copy.
Then once we're safely under the log_root_tree->log_mutex we update the
root item in the log_root_tree. This way we do not modify the
log_root_tree while we're committing it, fixing the problem.
CC: stable(a)vger.kernel.org # 4.4+
Reviewed-by: Chris Mason <clm(a)fb.com>
Reviewed-by: Filipe Manana <fdmanana(a)suse.com>
Signed-off-by: Josef Bacik <josef(a)toxicpanda.com>
Signed-off-by: David Sterba <dsterba(a)suse.com>
diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c
index 77b6797fcac3..2488eb4b70fc 100644
--- a/fs/btrfs/tree-log.c
+++ b/fs/btrfs/tree-log.c
@@ -2932,7 +2932,8 @@ static int walk_log_tree(struct btrfs_trans_handle *trans,
* in the tree of log roots
*/
static int update_log_root(struct btrfs_trans_handle *trans,
- struct btrfs_root *log)
+ struct btrfs_root *log,
+ struct btrfs_root_item *root_item)
{
struct btrfs_fs_info *fs_info = log->fs_info;
int ret;
@@ -2940,10 +2941,10 @@ static int update_log_root(struct btrfs_trans_handle *trans,
if (log->log_transid == 1) {
/* insert root item on the first sync */
ret = btrfs_insert_root(trans, fs_info->log_root_tree,
- &log->root_key, &log->root_item);
+ &log->root_key, root_item);
} else {
ret = btrfs_update_root(trans, fs_info->log_root_tree,
- &log->root_key, &log->root_item);
+ &log->root_key, root_item);
}
return ret;
}
@@ -3041,6 +3042,7 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
struct btrfs_fs_info *fs_info = root->fs_info;
struct btrfs_root *log = root->log_root;
struct btrfs_root *log_root_tree = fs_info->log_root_tree;
+ struct btrfs_root_item new_root_item;
int log_transid = 0;
struct btrfs_log_ctx root_log_ctx;
struct blk_plug plug;
@@ -3104,17 +3106,25 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
goto out;
}
+ /*
+ * We _must_ update under the root->log_mutex in order to make sure we
+ * have a consistent view of the log root we are trying to commit at
+ * this moment.
+ *
+ * We _must_ copy this into a local copy, because we are not holding the
+ * log_root_tree->log_mutex yet. This is important because when we
+ * commit the log_root_tree we must have a consistent view of the
+ * log_root_tree when we update the super block to point at the
+ * log_root_tree bytenr. If we update the log_root_tree here we'll race
+ * with the commit and possibly point at the new block which we may not
+ * have written out.
+ */
btrfs_set_root_node(&log->root_item, log->node);
+ memcpy(&new_root_item, &log->root_item, sizeof(new_root_item));
root->log_transid++;
log->log_transid = root->log_transid;
root->log_start_pid = 0;
- /*
- * Update or create log root item under the root's log_mutex to prevent
- * races with concurrent log syncs that can lead to failure to update
- * log root item because it was not created yet.
- */
- ret = update_log_root(trans, log);
/*
* IO has been started, blocks of the log tree have WRITTEN flag set
* in their headers. new modifications of the log will be written to
@@ -3135,6 +3145,14 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
mutex_unlock(&log_root_tree->log_mutex);
mutex_lock(&log_root_tree->log_mutex);
+
+ /*
+ * Now we are safe to update the log_root_tree because we're under the
+ * log_mutex, and we're a current writer so we're holding the commit
+ * open until we drop the log_mutex.
+ */
+ ret = update_log_root(trans, log, &new_root_item);
+
if (atomic_dec_and_test(&log_root_tree->log_writers)) {
/* atomic_dec_and_test implies a barrier */
cond_wake_up_nomb(&log_root_tree->log_writer_wait);
The patch below does not apply to the 4.9-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 4203e968947071586a98b5314fd7ffdea3b4f971 Mon Sep 17 00:00:00 2001
From: Josef Bacik <josef(a)toxicpanda.com>
Date: Mon, 30 Sep 2019 16:27:25 -0400
Subject: [PATCH] btrfs: fix incorrect updating of log root tree
We've historically had reports of being unable to mount file systems
because the tree log root couldn't be read. Usually this is the "parent
transid failure", but could be any of the related errors, including
"fsid mismatch" or "bad tree block", depending on which block got
allocated.
The modification of the individual log root items are serialized on the
per-log root root_mutex. This means that any modification to the
per-subvol log root_item is completely protected.
However we update the root item in the log root tree outside of the log
root tree log_mutex. We do this in order to allow multiple subvolumes
to be updated in each log transaction.
This is problematic however because when we are writing the log root
tree out we update the super block with the _current_ log root node
information. Since these two operations happen independently of each
other, you can end up updating the log root tree in between writing out
the dirty blocks and setting the super block to point at the current
root.
This means we'll point at the new root node that hasn't been written
out, instead of the one we should be pointing at. Thus whatever garbage
or old block we end up pointing at complains when we mount the file
system later and try to replay the log.
Fix this by copying the log's root item into a local root item copy.
Then once we're safely under the log_root_tree->log_mutex we update the
root item in the log_root_tree. This way we do not modify the
log_root_tree while we're committing it, fixing the problem.
CC: stable(a)vger.kernel.org # 4.4+
Reviewed-by: Chris Mason <clm(a)fb.com>
Reviewed-by: Filipe Manana <fdmanana(a)suse.com>
Signed-off-by: Josef Bacik <josef(a)toxicpanda.com>
Signed-off-by: David Sterba <dsterba(a)suse.com>
diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c
index 77b6797fcac3..2488eb4b70fc 100644
--- a/fs/btrfs/tree-log.c
+++ b/fs/btrfs/tree-log.c
@@ -2932,7 +2932,8 @@ static int walk_log_tree(struct btrfs_trans_handle *trans,
* in the tree of log roots
*/
static int update_log_root(struct btrfs_trans_handle *trans,
- struct btrfs_root *log)
+ struct btrfs_root *log,
+ struct btrfs_root_item *root_item)
{
struct btrfs_fs_info *fs_info = log->fs_info;
int ret;
@@ -2940,10 +2941,10 @@ static int update_log_root(struct btrfs_trans_handle *trans,
if (log->log_transid == 1) {
/* insert root item on the first sync */
ret = btrfs_insert_root(trans, fs_info->log_root_tree,
- &log->root_key, &log->root_item);
+ &log->root_key, root_item);
} else {
ret = btrfs_update_root(trans, fs_info->log_root_tree,
- &log->root_key, &log->root_item);
+ &log->root_key, root_item);
}
return ret;
}
@@ -3041,6 +3042,7 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
struct btrfs_fs_info *fs_info = root->fs_info;
struct btrfs_root *log = root->log_root;
struct btrfs_root *log_root_tree = fs_info->log_root_tree;
+ struct btrfs_root_item new_root_item;
int log_transid = 0;
struct btrfs_log_ctx root_log_ctx;
struct blk_plug plug;
@@ -3104,17 +3106,25 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
goto out;
}
+ /*
+ * We _must_ update under the root->log_mutex in order to make sure we
+ * have a consistent view of the log root we are trying to commit at
+ * this moment.
+ *
+ * We _must_ copy this into a local copy, because we are not holding the
+ * log_root_tree->log_mutex yet. This is important because when we
+ * commit the log_root_tree we must have a consistent view of the
+ * log_root_tree when we update the super block to point at the
+ * log_root_tree bytenr. If we update the log_root_tree here we'll race
+ * with the commit and possibly point at the new block which we may not
+ * have written out.
+ */
btrfs_set_root_node(&log->root_item, log->node);
+ memcpy(&new_root_item, &log->root_item, sizeof(new_root_item));
root->log_transid++;
log->log_transid = root->log_transid;
root->log_start_pid = 0;
- /*
- * Update or create log root item under the root's log_mutex to prevent
- * races with concurrent log syncs that can lead to failure to update
- * log root item because it was not created yet.
- */
- ret = update_log_root(trans, log);
/*
* IO has been started, blocks of the log tree have WRITTEN flag set
* in their headers. new modifications of the log will be written to
@@ -3135,6 +3145,14 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
mutex_unlock(&log_root_tree->log_mutex);
mutex_lock(&log_root_tree->log_mutex);
+
+ /*
+ * Now we are safe to update the log_root_tree because we're under the
+ * log_mutex, and we're a current writer so we're holding the commit
+ * open until we drop the log_mutex.
+ */
+ ret = update_log_root(trans, log, &new_root_item);
+
if (atomic_dec_and_test(&log_root_tree->log_writers)) {
/* atomic_dec_and_test implies a barrier */
cond_wake_up_nomb(&log_root_tree->log_writer_wait);
The patch below does not apply to the 4.19-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From c67d970f0ea8dcc423e112137d34334fa0abb8ec Mon Sep 17 00:00:00 2001
From: Filipe Manana <fdmanana(a)suse.com>
Date: Mon, 30 Sep 2019 10:20:25 +0100
Subject: [PATCH] Btrfs: fix memory leak due to concurrent append writes with
fiemap
When we have a buffered write that starts at an offset greater than or
equals to the file's size happening concurrently with a full ranged
fiemap, we can end up leaking an extent state structure.
Suppose we have a file with a size of 1Mb, and before the buffered write
and fiemap are performed, it has a single extent state in its io tree
representing the range from 0 to 1Mb, with the EXTENT_DELALLOC bit set.
The following sequence diagram shows how the memory leak happens if a
fiemap a buffered write, starting at offset 1Mb and with a length of
4Kb, are performed concurrently.
CPU 1 CPU 2
extent_fiemap()
--> it's a full ranged fiemap
range from 0 to LLONG_MAX - 1
(9223372036854775807)
--> locks range in the inode's
io tree
--> after this we have 2 extent
states in the io tree:
--> 1 for range [0, 1Mb[ with
the bits EXTENT_LOCKED and
EXTENT_DELALLOC_BITS set
--> 1 for the range
[1Mb, LLONG_MAX[ with
the EXTENT_LOCKED bit set
--> start buffered write at offset
1Mb with a length of 4Kb
btrfs_file_write_iter()
btrfs_buffered_write()
--> cached_state is NULL
lock_and_cleanup_extent_if_need()
--> returns 0 and does not lock
range because it starts
at current i_size / eof
--> cached_state remains NULL
btrfs_dirty_pages()
btrfs_set_extent_delalloc()
(...)
__set_extent_bit()
--> splits extent state for range
[1Mb, LLONG_MAX[ and now we
have 2 extent states:
--> one for the range
[1Mb, 1Mb + 4Kb[ with
EXTENT_LOCKED set
--> another one for the range
[1Mb + 4Kb, LLONG_MAX[ with
EXTENT_LOCKED set as well
--> sets EXTENT_DELALLOC on the
extent state for the range
[1Mb, 1Mb + 4Kb[
--> caches extent state
[1Mb, 1Mb + 4Kb[ into
@cached_state because it has
the bit EXTENT_LOCKED set
--> btrfs_buffered_write() ends up
with a non-NULL cached_state and
never calls anything to release its
reference on it, resulting in a
memory leak
Fix this by calling free_extent_state() on cached_state if the range was
not locked by lock_and_cleanup_extent_if_need().
The same issue can happen if anything else other than fiemap locks a range
that covers eof and beyond.
This could be triggered, sporadically, by test case generic/561 from the
fstests suite, which makes duperemove run concurrently with fsstress, and
duperemove does plenty of calls to fiemap. When CONFIG_BTRFS_DEBUG is set
the leak is reported in dmesg/syslog when removing the btrfs module with
a message like the following:
[77100.039461] BTRFS: state leak: start 6574080 end 6582271 state 16402 in tree 0 refs 1
Otherwise (CONFIG_BTRFS_DEBUG not set) detectable with kmemleak.
CC: stable(a)vger.kernel.org # 4.16+
Reviewed-by: Josef Bacik <josef(a)toxicpanda.com>
Signed-off-by: Filipe Manana <fdmanana(a)suse.com>
Reviewed-by: David Sterba <dsterba(a)suse.com>
Signed-off-by: David Sterba <dsterba(a)suse.com>
diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c
index 8fe4eb7e5045..27e5b269e729 100644
--- a/fs/btrfs/file.c
+++ b/fs/btrfs/file.c
@@ -1591,7 +1591,6 @@ static noinline ssize_t btrfs_buffered_write(struct kiocb *iocb,
struct btrfs_fs_info *fs_info = btrfs_sb(inode->i_sb);
struct btrfs_root *root = BTRFS_I(inode)->root;
struct page **pages = NULL;
- struct extent_state *cached_state = NULL;
struct extent_changeset *data_reserved = NULL;
u64 release_bytes = 0;
u64 lockstart;
@@ -1611,6 +1610,7 @@ static noinline ssize_t btrfs_buffered_write(struct kiocb *iocb,
return -ENOMEM;
while (iov_iter_count(i) > 0) {
+ struct extent_state *cached_state = NULL;
size_t offset = offset_in_page(pos);
size_t sector_offset;
size_t write_bytes = min(iov_iter_count(i),
@@ -1758,9 +1758,20 @@ static noinline ssize_t btrfs_buffered_write(struct kiocb *iocb,
if (copied > 0)
ret = btrfs_dirty_pages(inode, pages, dirty_pages,
pos, copied, &cached_state);
+
+ /*
+ * If we have not locked the extent range, because the range's
+ * start offset is >= i_size, we might still have a non-NULL
+ * cached extent state, acquired while marking the extent range
+ * as delalloc through btrfs_dirty_pages(). Therefore free any
+ * possible cached extent state to avoid a memory leak.
+ */
if (extents_locked)
unlock_extent_cached(&BTRFS_I(inode)->io_tree,
lockstart, lockend, &cached_state);
+ else
+ free_extent_state(cached_state);
+
btrfs_delalloc_release_extents(BTRFS_I(inode), reserve_bytes,
true);
if (ret) {
From: Marco Felsch <m.felsch(a)pengutronix.de>
Since commit ec757001c818 ("gpio: Enable nonexclusive gpiods from DT
nodes") we are able to get GPIOD_FLAGS_BIT_NONEXCLUSIVE marked gpios.
Currently the gpiolib uses the wrong flags variable for the check. We
need to check the gpiod_flags instead of the of_gpio_flags else we
return -EBUSY for GPIOD_FLAGS_BIT_NONEXCLUSIVE marked and requested
gpiod's.
Fixes: ec757001c818 gpio: Enable nonexclusive gpiods from DT nodes
Cc: stable(a)vger.kernel.org
Signed-off-by: Marco Felsch <m.felsch(a)pengutronix.de>
[Bartosz: the function was moved to gpiolib-of.c so updated the patch]
Signed-off-by: Bartosz Golaszewski <bgolaszewski(a)baylibre.com>
[Bartosz: backported to v5.3.y]
Signed-off-by: Bartosz Golaszewski <bgolaszewski(a)baylibre.com>
---
drivers/gpio/gpiolib.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index d9074191edef..e4203c1eb869 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -4303,7 +4303,7 @@ struct gpio_desc *gpiod_get_from_of_node(struct device_node *node,
transitory = flags & OF_GPIO_TRANSITORY;
ret = gpiod_request(desc, label);
- if (ret == -EBUSY && (flags & GPIOD_FLAGS_BIT_NONEXCLUSIVE))
+ if (ret == -EBUSY && (dflags & GPIOD_FLAGS_BIT_NONEXCLUSIVE))
return desc;
if (ret)
return ERR_PTR(ret);
--
2.23.0
The patch below does not apply to the 5.3-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 1436a78c63495dd94c8d4f84a76d78d5317d481b Mon Sep 17 00:00:00 2001
From: Marco Felsch <m.felsch(a)pengutronix.de>
Date: Tue, 17 Sep 2019 16:56:36 +0200
Subject: [PATCH] iio: light: fix vcnl4000 devicetree hooks
Since commit ebd457d55911 ("iio: light: vcnl4000 add devicetree hooks")
the of_match_table is supported but the data shouldn't be a string.
Instead it shall be one of 'enum vcnl4000_device_ids'. Also the matching
logic for the vcnl4020 was wrong. Since the data retrieve mechanism is
still based on the i2c_device_id no failures did appeared till now.
Fixes: ebd457d55911 ("iio: light: vcnl4000 add devicetree hooks")
Signed-off-by: Marco Felsch <m.felsch(a)pengutronix.de>
Reviewed-by: Angus Ainslie (Purism) angus(a)akkea.ca
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
diff --git a/drivers/iio/light/vcnl4000.c b/drivers/iio/light/vcnl4000.c
index 51421ac32517..f522cb863e8c 100644
--- a/drivers/iio/light/vcnl4000.c
+++ b/drivers/iio/light/vcnl4000.c
@@ -398,19 +398,19 @@ static int vcnl4000_probe(struct i2c_client *client,
static const struct of_device_id vcnl_4000_of_match[] = {
{
.compatible = "vishay,vcnl4000",
- .data = "VCNL4000",
+ .data = (void *)VCNL4000,
},
{
.compatible = "vishay,vcnl4010",
- .data = "VCNL4010",
+ .data = (void *)VCNL4010,
},
{
- .compatible = "vishay,vcnl4010",
- .data = "VCNL4020",
+ .compatible = "vishay,vcnl4020",
+ .data = (void *)VCNL4010,
},
{
.compatible = "vishay,vcnl4200",
- .data = "VCNL4200",
+ .data = (void *)VCNL4200,
},
{},
};
Hello,
We ran automated tests on a patchset that was proposed for merging into this
kernel tree. The patches were applied to:
Kernel repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
The results of these automated tests are provided below.
Overall result: FAILED (see details below)
Merge: OK
Compile: FAILED
All kernel binaries, config files, and logs are available for download here:
https://artifacts.cki-project.org/pipelines/227878
We attempted to compile the kernel for multiple architectures, but the compile
failed on one or more architectures:
aarch64: FAILED (see build-aarch64.log.xz attachment)
ppc64le: FAILED (see build-ppc64le.log.xz attachment)
s390x: FAILED (see build-s390x.log.xz attachment)
x86_64: FAILED (see build-x86_64.log.xz attachment)
We hope that these logs can help you find the problem quickly. For the full
detail on our testing procedures, please scroll to the bottom of this message.
Please reply to this email if you have any questions about the tests that we
ran or if you have any suggestions on how to make future tests more effective.
,-. ,-.
( C ) ( K ) Continuous
`-',-.`-' Kernel
( I ) Integration
`-'
______________________________________________________________________________
Merge testing
-------------
We cloned this repository and checked out the following commit:
Repo: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Commit: d980f67059db - Linux 5.3.6
We grabbed the c0708e42c6a2 commit of the stable queue repository.
We then merged the patchset with `git am`:
panic-ensure-preemption-is-disabled-during-panic.patch
usb-rio500-remove-rio-500-kernel-driver.patch
usb-yurex-don-t-retry-on-unexpected-errors.patch
usb-yurex-fix-null-derefs-on-disconnect.patch
usb-usb-skeleton-fix-runtime-pm-after-driver-unbind.patch
usb-usb-skeleton-fix-null-deref-on-disconnect.patch
xhci-fix-false-warning-message-about-wrong-bounce-buffer-write-length.patch
xhci-prevent-device-initiated-u1-u2-link-pm-if-exit-latency-is-too-long.patch
xhci-check-all-endpoints-for-lpm-timeout.patch
xhci-fix-usb-3.1-capability-detection-on-early-xhci-1.1-spec-based-hosts.patch
usb-xhci-wait-for-cnr-controller-not-ready-bit-in-xhci-resume.patch
xhci-prevent-deadlock-when-xhci-adapter-breaks-during-init.patch
xhci-increase-sts_save-timeout-in-xhci_suspend.patch
xhci-fix-null-pointer-dereference-in-xhci_clear_tt_buffer_complete.patch
usb-adutux-fix-use-after-free-on-disconnect.patch
usb-adutux-fix-null-derefs-on-disconnect.patch
usb-adutux-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-on-disconnect.patch
usb-iowarrior-fix-use-after-free-on-release.patch
usb-iowarrior-fix-use-after-free-after-driver-unbind.patch
usb-usblp-fix-runtime-pm-after-driver-unbind.patch
usb-chaoskey-fix-use-after-free-on-release.patch
usb-ldusb-fix-null-derefs-on-driver-unbind.patch
serial-uartlite-fix-exit-path-null-pointer.patch
serial-uartps-fix-uartps_major-handling.patch
usb-serial-keyspan-fix-null-derefs-on-open-and-write.patch
usb-serial-ftdi_sio-add-device-ids-for-sienna-and-echelon-pl-20.patch
usb-serial-option-add-telit-fn980-compositions.patch
usb-serial-option-add-support-for-cinterion-cls8-devices.patch
usb-serial-fix-runtime-pm-after-driver-unbind.patch
usb-usblcd-fix-i-o-after-disconnect.patch
usb-microtek-fix-info-leak-at-probe.patch
usb-dummy-hcd-fix-power-budget-for-superspeed-mode.patch
usb-renesas_usbhs-gadget-do-not-discard-queues-in-usb_ep_set_-halt-wedge.patch
usb-renesas_usbhs-gadget-fix-usb_ep_set_-halt-wedge-behavior.patch
usb-typec-tcpm-usb-typec-tcpm-fix-a-signedness-bug-in-tcpm_fw_get_caps.patch
usb-typec-ucsi-ccg-remove-run_isr-flag.patch
usb-typec-ucsi-displayport-fix-for-the-mode-entering-routine.patch
usb-legousbtower-fix-slab-info-leak-at-probe.patch
usb-legousbtower-fix-deadlock-on-disconnect.patch
usb-legousbtower-fix-potential-null-deref-on-disconnect.patch
usb-legousbtower-fix-open-after-failed-reset-request.patch
usb-legousbtower-fix-use-after-free-on-release.patch
mei-me-add-comet-point-lake-lp-device-ids.patch
mei-avoid-fw-version-request-on-ibex-peak-and-earlier.patch
gpio-eic-sprd-fix-the-incorrect-eic-offset-when-toggling.patch
staging-fbtft-depend-on-of.patch
staging-bcm2835-audio-fix-draining-behavior-regression.patch
staging-fbtft-fix-memory-leak-in-fbtft_framebuffer_alloc.patch
staging-rtl8188eu-fix-highestrate-check-in-odm_arfbrefresh_8188e.patch
staging-vt6655-fix-memory-leak-in-vt6655_probe.patch
iio-adc-hx711-fix-bug-in-sampling-of-data.patch
iio-adc-ad799x-fix-probe-error-handling.patch
iio-adc-axp288-override-ts-pin-bias-current-for-some-models.patch
iio-adc-stm32-adc-move-registers-definitions.patch
iio-adc-stm32-adc-fix-a-race-when-using-several-adcs-with-dma-and-irq.patch
iio-light-opt3001-fix-mutex-unlock-race.patch
iio-light-add-missing-vcnl4040-of_compatible.patch
iio-accel-adxl372-fix-remove-limitation-for-fifo-samples.patch
iio-accel-adxl372-fix-push-to-buffers-lost-samples.patch
iio-accel-adxl372-perform-a-reset-at-start-up.patch
efivar-ssdt-don-t-iterate-over-efi-vars-if-no-ssdt-override-was-specified.patch
efi-tpm-don-t-access-event-count-when-it-isn-t-mapped.patch
efi-tpm-don-t-traverse-an-event-log-with-no-events.patch
efi-tpm-only-set-efi_tpm_final_log_size-after-successful-event-log-parsing.patch
perf-llvm-don-t-access-out-of-scope-array.patch
perf-inject-jit-fix-jit_code_move-filename.patch
drm-i915-perform-ggtt-restore-much-earlier-during-resume.patch
blk-wbt-fix-performance-regression-in-wbt-scale_up-scale_down.patch
selinux-fix-context-string-corruption-in-convert_context.patch
io_uring-only-flush-workqueues-on-fileset-removal.patch
cifs-gracefully-handle-queryinfo-errors-during-open.patch
cifs-force-revalidate-inode-when-dentry-is-stale.patch
cifs-force-reval-dentry-if-lookup_reval-flag-is-set.patch
cifs-use-cifsinodeinfo-open_file_lock-while-iterating-to-avoid-a-panic.patch
kernel-sysctl.c-do-not-override-max_threads-provided-by-userspace.patch
mm-z3fold.c-claim-page-in-the-beginning-of-free.patch
mm-page_alloc.c-fix-a-crash-in-free_pages_prepare.patch
mm-vmpressure.c-fix-a-signedness-bug-in-vmpressure_register_event.patch
ib-core-fix-wrong-iterating-on-ports.patch
firmware-google-increment-vpd-key_len-properly.patch
gpio-fix-getting-nonexclusive-gpiods-from-dt.patch
gpiolib-don-t-clear-flag_is_out-when-emulating-open-.patch
acpi-pptt-add-support-for-acpi-6.3-thread-flag.patch
arm64-topology-use-pptt-to-determine-if-pe-is-a-thre.patch
iio-light-fix-vcnl4000-devicetree-hooks.patch
Compile testing
---------------
We compiled the kernel for 4 architectures:
aarch64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
ppc64le:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
s390x:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
x86_64:
make options: -j30 INSTALL_MOD_STRIP=1 targz-pkg
This series is a backport of the ACPI PPTT 6.3 thread flag feature for
supporting arm64 systems.
The background is that some arm64 implementations are broken, in that they
incorrectly advertise that a CPU is mutli-threaded, when it is not - the
HiSilicon Taishanv110 rev 2, aka tsv110, being an example.
This leads to the system topology being incorrect. The reason being that
arm64 topology code uses a combination of ACPI PPTT (Processor Properties
Topology Table) and the system MPIDR (Multiprocessor Affinity Register) MT
bit to determine the topology.
Until ACPI 6.3, the PPTT did not have any method to determine whether
a CPU was multi-threaded, so only the MT bit is used - hence the
broken topology for some systems.
In ACPI 6.3, a PPTT thread flag was introduced, which - when supported -
would be used by the kernel to determine really if a CPU is multi-threaded
or not, so that we don't get incorrect topology.
RFC originally sent for 4.19: https://lkml.org/lkml/2019/10/10/724
Jeremy Linton (2):
ACPI/PPTT: Add support for ACPI 6.3 thread flag
arm64: topology: Use PPTT to determine if PE is a thread
arch/arm64/kernel/topology.c | 19 ++++++++++---
drivers/acpi/pptt.c | 52 ++++++++++++++++++++++++++++++++++++
include/linux/acpi.h | 5 ++++
3 files changed, 72 insertions(+), 4 deletions(-)
--
2.17.1
Commit c312ef176399 "libata/ahci: Drop PCS quirk for Denverton and
beyond" got the polarity wrong on the check for which board-ids should
have the quirk applied. The board type board_ahci_pcs7 is defined at the
end of the list such that "pcs7" boards can be special cased in the
future if they need the quirk. All prior Intel board ids "<
board_ahci_pcs7" should proceed with applying the quirk.
Reported-by: Andreas Friedrich <afrie(a)gmx.net>
Reported-by: Stephen Douthit <stephend(a)silicom-usa.com>
Fixes: c312ef176399 ("libata/ahci: Drop PCS quirk for Denverton and beyond")
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Dan Williams <dan.j.williams(a)intel.com>
---
drivers/ata/ahci.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
index dd92faf197d5..05c2b32dcc4d 100644
--- a/drivers/ata/ahci.c
+++ b/drivers/ata/ahci.c
@@ -1600,7 +1600,9 @@ static void ahci_intel_pcs_quirk(struct pci_dev *pdev, struct ahci_host_priv *hp
*/
if (!id || id->vendor != PCI_VENDOR_ID_INTEL)
return;
- if (((enum board_ids) id->driver_data) < board_ahci_pcs7)
+
+ /* Skip applying the quirk on Denverton and beyond */
+ if (((enum board_ids) id->driver_data) >= board_ahci_pcs7)
return;
/*
The patch titled
Subject: zram: fix race between backing_dev_show and backing_dev_store
has been added to the -mm tree. Its filename is
zram-fix-race-between-backing_dev_show-and-backing_dev_store.patch
This patch should soon appear at
http://ozlabs.org/~akpm/mmots/broken-out/zram-fix-race-between-backing_dev_…
and later at
http://ozlabs.org/~akpm/mmotm/broken-out/zram-fix-race-between-backing_dev_…
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next and is updated
there every 3-4 working days
------------------------------------------------------
From: Chenwandun <chenwandun(a)huawei.com>
Subject: zram: fix race between backing_dev_show and backing_dev_store
CPU0: CPU1:
backing_dev_show backing_dev_store
...... ......
file = zram->backing_dev;
down_read(&zram->init_lock); down_read(&zram->init_init_lock)
file_path(file, ...); zram->backing_dev = backing_dev;
up_read(&zram->init_lock); up_read(&zram->init_lock);
gets the value of zram->backing_dev too early in backing_dev_show, which
resultin the value being NULL at the beginning, and not NULL later.
backtrace:
[<ffffff8570e0f3ec>] d_path+0xcc/0x174
[<ffffff8570decd90>] file_path+0x10/0x18
[<ffffff85712f7630>] backing_dev_show+0x40/0xb4
[<ffffff85712c776c>] dev_attr_show+0x20/0x54
[<ffffff8570e835e4>] sysfs_kf_seq_show+0x9c/0x10c
[<ffffff8570e82b98>] kernfs_seq_show+0x28/0x30
[<ffffff8570e1c580>] seq_read+0x184/0x488
[<ffffff8570e81ec4>] kernfs_fop_read+0x5c/0x1a4
[<ffffff8570dee0fc>] __vfs_read+0x44/0x128
[<ffffff8570dee310>] vfs_read+0xa0/0x138
[<ffffff8570dee860>] SyS_read+0x54/0xb4
Link: http://lkml.kernel.org/r/1571046839-16814-1-git-send-email-chenwandun@huawe…
Signed-off-by: Chenwandun <chenwandun(a)huawei.com>
Acked-by: Minchan Kim <minchan(a)kernel.org>
Cc: Sergey Senozhatsky <sergey.senozhatsky.work(a)gmail.com>
Cc: Jens Axboe <axboe(a)kernel.dk>
Cc: <stable(a)vger.kernel.org> [4.14+]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
drivers/block/zram/zram_drv.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
--- a/drivers/block/zram/zram_drv.c~zram-fix-race-between-backing_dev_show-and-backing_dev_store
+++ a/drivers/block/zram/zram_drv.c
@@ -413,13 +413,14 @@ static void reset_bdev(struct zram *zram
static ssize_t backing_dev_show(struct device *dev,
struct device_attribute *attr, char *buf)
{
+ struct file *file;
struct zram *zram = dev_to_zram(dev);
- struct file *file = zram->backing_dev;
char *p;
ssize_t ret;
down_read(&zram->init_lock);
- if (!zram->backing_dev) {
+ file = zram->backing_dev;
+ if (!file) {
memcpy(buf, "none\n", 5);
up_read(&zram->init_lock);
return 5;
_
Patches currently in -mm which might be from chenwandun(a)huawei.com are
zram-fix-race-between-backing_dev_show-and-backing_dev_store.patch
On Mon, Oct 14, 2019 at 05:53:59PM +0800, Chen Wandun wrote:
> From: Chenwandun <chenwandun(a)huawei.com>
>
> CPU0: CPU1:
> backing_dev_show backing_dev_store
> ...... ......
> file = zram->backing_dev;
> down_read(&zram->init_lock); down_read(&zram->init_init_lock)
> file_path(file, ...); zram->backing_dev = backing_dev;
> up_read(&zram->init_lock); up_read(&zram->init_lock);
>
> get the value of zram->backing_dev too early in backing_dev_show,
> that will result the value may be NULL at the begining, and not
> NULL later.
>
> backtrace:
> [<ffffff8570e0f3ec>] d_path+0xcc/0x174
> [<ffffff8570decd90>] file_path+0x10/0x18
> [<ffffff85712f7630>] backing_dev_show+0x40/0xb4
> [<ffffff85712c776c>] dev_attr_show+0x20/0x54
> [<ffffff8570e835e4>] sysfs_kf_seq_show+0x9c/0x10c
> [<ffffff8570e82b98>] kernfs_seq_show+0x28/0x30
> [<ffffff8570e1c580>] seq_read+0x184/0x488
> [<ffffff8570e81ec4>] kernfs_fop_read+0x5c/0x1a4
> [<ffffff8570dee0fc>] __vfs_read+0x44/0x128
> [<ffffff8570dee310>] vfs_read+0xa0/0x138
> [<ffffff8570dee860>] SyS_read+0x54/0xb4
>
> Signed-off-by: Chenwandun <chenwandun(a)huawei.com>
It should be stable material.
Cc: <stable(a)vger.kernel.org> [4.14+]
Acked-by: Minchan Kim <minchan(a)kernel.org>
Thanks!
On Mon, 14 Oct 2019, Sasha Levin wrote:
> Hi,
>
> [This is an automated email]
>
> This commit has been processed because it contains a -stable tag.
> The stable tag indicates that it's relevant for the following trees: all
>
> The bot has tested the following trees: v5.3.5, v5.2.20, v4.19.78, v4.14.148, v4.9.196, v4.4.196.
>
> v5.3.5: Build OK!
> v5.2.20: Build OK!
> v4.19.78: Build OK!
> v4.14.148: Build OK!
> v4.9.196: Build OK!
> v4.4.196: Failed to apply! Possible dependencies:
> Unable to calculate
>
>
> NOTE: The patch will not be queued to stable trees until it is upstream.
>
> How should we proceed with this patch?
As far as I'm concerned, it's probably not worth the effort of
backporting this to 4.4.y.
Alan Stern
The patch titled
Subject: ocfs2: fix panic due to ocfs2_wq is null
has been added to the -mm tree. Its filename is
ocfs2-fix-panic-due-to-ocfs2_wq-is-null.patch
This patch should soon appear at
http://ozlabs.org/~akpm/mmots/broken-out/ocfs2-fix-panic-due-to-ocfs2_wq-is…
and later at
http://ozlabs.org/~akpm/mmotm/broken-out/ocfs2-fix-panic-due-to-ocfs2_wq-is…
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next and is updated
there every 3-4 working days
------------------------------------------------------
From: Yi Li <yilikernel(a)gmail.com>
Subject: ocfs2: fix panic due to ocfs2_wq is null
mount.ocfs2 failed when reading ocfs2 filesystem superblock encounters an
error. ocfs2_initialize_super() returns before allocating ocfs2_wq.
ocfs2_dismount_volume() triggers the following panic.
Oct 15 16:09:27 cnwarekv-205120 kernel: On-disk corruption
discovered.Please run fsck.ocfs2 once the filesystem is unmounted.
Oct 15 16:09:27 cnwarekv-205120 kernel: (mount.ocfs2,22804,44):
ocfs2_read_locked_inode:537 ERROR: status = -30
Oct 15 16:09:27 cnwarekv-205120 kernel: (mount.ocfs2,22804,44):
ocfs2_init_global_system_inodes:458 ERROR: status = -30
Oct 15 16:09:27 cnwarekv-205120 kernel: (mount.ocfs2,22804,44):
ocfs2_init_global_system_inodes:491 ERROR: status = -30
Oct 15 16:09:27 cnwarekv-205120 kernel: (mount.ocfs2,22804,44):
ocfs2_initialize_super:2313 ERROR: status = -30
Oct 15 16:09:27 cnwarekv-205120 kernel: (mount.ocfs2,22804,44):
ocfs2_fill_super:1033 ERROR: status = -30
------------[ cut here ]------------
Oops: 0002 [#1] SMP NOPTI
Modules linked in: ocfs2 rpcsec_gss_krb5 auth_rpcgss nfsv4 nfs fscache
lockd grace ocfs2_dlmfs ocfs2_stack_o2cb ocfs2_dlm ocfs2_nodemanager
ocfs2_stackglue configfs sunrpc ipt_REJECT nf_reject_ipv4
nf_conntrack_ipv4 nf_defrag_ipv4 iptable_filter ip_tables ip6t_REJECT
nf_reject_ipv6 nf_conntrack_ipv6 nf_defrag_ipv6 xt_state nf_conntrack
ip6table_filter ip6_tables ib_ipoib rdma_ucm ib_ucm ib_uverbs ib_umad
rdma_cm ib_cm iw_cm ib_sa ib_mad ib_core ib_addr ipv6 ovmapi ppdev
parport_pc parport fb_sys_fops sysimgblt sysfillrect syscopyarea
acpi_cpufreq pcspkr i2c_piix4 i2c_core sg ext4 jbd2 mbcache2 sr_mod cdrom
CPU: 1 PID: 11753 Comm: mount.ocfs2 Tainted: G E
4.14.148-200.ckv.x86_64 #1
Hardware name: Sugon H320-G30/35N16-US, BIOS 0SSDX017 12/21/2018
task: ffff967af0520000 task.stack: ffffa5f05484000
RIP: 0010:mutex_lock+0x19/0x20
Call Trace:
flush_workqueue+0x81/0x460
ocfs2_shutdown_local_alloc+0x47/0x440 [ocfs2]
ocfs2_dismount_volume+0x84/0x400 [ocfs2]
ocfs2_fill_super+0xa4/0x1270 [ocfs2]
? ocfs2_initialize_super.isa.211+0xf20/0xf20 [ocfs2]
mount_bdev+0x17f/0x1c0
mount_fs+0x3a/0x160
Link: http://lkml.kernel.org/r/1571139611-24107-1-git-send-email-yili@winhong.com
Signed-off-by: Yi Li <yilikernel(a)gmail.com>
Reviewed-by: Joseph Qi <joseph.qi(a)linux.alibaba.com>
Cc: Mark Fasheh <mark(a)fasheh.com>
Cc: Joel Becker <jlbec(a)evilplan.org>
Cc: Junxiao Bi <junxiao.bi(a)oracle.com>
Cc: Changwei Ge <gechangwei(a)live.cn>
Cc: Gang He <ghe(a)suse.com>
Cc: Jun Piao <piaojun(a)huawei.com>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
fs/ocfs2/journal.c | 3 ++-
fs/ocfs2/localalloc.c | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
--- a/fs/ocfs2/journal.c~ocfs2-fix-panic-due-to-ocfs2_wq-is-null
+++ a/fs/ocfs2/journal.c
@@ -217,7 +217,8 @@ void ocfs2_recovery_exit(struct ocfs2_su
/* At this point, we know that no more recovery threads can be
* launched, so wait for any recovery completion work to
* complete. */
- flush_workqueue(osb->ocfs2_wq);
+ if (osb->ocfs2_wq)
+ flush_workqueue(osb->ocfs2_wq);
/*
* Now that recovery is shut down, and the osb is about to be
--- a/fs/ocfs2/localalloc.c~ocfs2-fix-panic-due-to-ocfs2_wq-is-null
+++ a/fs/ocfs2/localalloc.c
@@ -377,7 +377,8 @@ void ocfs2_shutdown_local_alloc(struct o
struct ocfs2_dinode *alloc = NULL;
cancel_delayed_work(&osb->la_enable_wq);
- flush_workqueue(osb->ocfs2_wq);
+ if (osb->ocfs2_wq)
+ flush_workqueue(osb->ocfs2_wq);
if (osb->local_alloc_state == OCFS2_LA_UNUSED)
goto out;
_
Patches currently in -mm which might be from yilikernel(a)gmail.com are
ocfs2-fix-panic-due-to-ocfs2_wq-is-null.patch
The patch titled
Subject: hugetlbfs: don't access uninitialized memmaps in pfn_range_valid_gigantic()
has been added to the -mm tree. Its filename is
hugetlbfs-dont-access-uninitialized-memmaps-in-pfn_range_valid_gigantic.patch
This patch should soon appear at
http://ozlabs.org/~akpm/mmots/broken-out/hugetlbfs-dont-access-uninitialize…
and later at
http://ozlabs.org/~akpm/mmotm/broken-out/hugetlbfs-dont-access-uninitialize…
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next and is updated
there every 3-4 working days
------------------------------------------------------
From: David Hildenbrand <david(a)redhat.com>
Subject: hugetlbfs: don't access uninitialized memmaps in pfn_range_valid_gigantic()
Uninitialized memmaps contain garbage and in the worst case trigger kernel
BUGs, especially with CONFIG_PAGE_POISONING. They should not get touched.
Let's make sure that we only consider online memory (managed by the buddy)
that has initialized memmaps. ZONE_DEVICE is not applicable.
page_zone() will call page_to_nid(), which will trigger
VM_BUG_ON_PGFLAGS(PagePoisoned(page), page) with CONFIG_PAGE_POISONING and
CONFIG_DEBUG_VM_PGFLAGS when called on uninitialized memmaps. This can be
the case when an offline memory block (e.g., never onlined) is spanned by
a zone.
Note: As explained by Michal in [1], alloc_contig_range() will verify the
range. So it boils down to the wrong access in this function.
[1] http://lkml.kernel.org/r/20180423000943.GO17484@dhcp22.suse.cz
Link: http://lkml.kernel.org/r/20191015120717.4858-1-david@redhat.com
Fixes: f1dd2cd13c4b ("mm, memory_hotplug: do not associate hotadded memory to zones until online") [visible after d0dc12e86b319]
Signed-off-by: David Hildenbrand <david(a)redhat.com>
Reported-by: Michal Hocko <mhocko(a)kernel.org>
Acked-by: Michal Hocko <mhocko(a)suse.com>
Cc: Anshuman Khandual <anshuman.khandual(a)arm.com>
Cc: Mike Kravetz <mike.kravetz(a)oracle.com>
Cc: <stable(a)vger.kernel.org> [4.13+]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/hugetlb.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
--- a/mm/hugetlb.c~hugetlbfs-dont-access-uninitialized-memmaps-in-pfn_range_valid_gigantic
+++ a/mm/hugetlb.c
@@ -1084,11 +1084,10 @@ static bool pfn_range_valid_gigantic(str
struct page *page;
for (i = start_pfn; i < end_pfn; i++) {
- if (!pfn_valid(i))
+ page = pfn_to_online_page(i);
+ if (!page)
return false;
- page = pfn_to_page(i);
-
if (page_zone(page) != z)
return false;
_
Patches currently in -mm which might be from david(a)redhat.com are
drivers-base-memoryc-dont-access-uninitialized-memmaps-in-soft_offline_page_store.patch
mm-dont-access-uninitialized-memmaps-in-fs-proc-pagec.patch
mm-memory-failurec-dont-access-uninitialized-memmaps-in-memory_failure.patch
mm-memory_hotplug-dont-access-uninitialized-memmaps-in-shrink_pgdat_span.patch
hugetlbfs-dont-access-uninitialized-memmaps-in-pfn_range_valid_gigantic.patch
mm-memory_hotplug-export-generic_online_page.patch
hv_balloon-use-generic_online_page.patch
mm-memory_hotplug-remove-__online_page_free-and-__online_page_increment_counters.patch
mm-memory_hotplug-dont-access-uninitialized-memmaps-in-shrink_zone_span.patch
mm-memory_hotplug-shrink-zones-when-offlining-memory.patch
mm-memory_hotplug-poison-memmap-in-remove_pfn_range_from_zone.patch
mm-memory_hotplug-we-always-have-a-zone-in-find_smallestbiggest_section_pfn.patch
mm-memory_hotplug-dont-check-for-all-holes-in-shrink_zone_span.patch
mm-memory_hotplug-drop-local-variables-in-shrink_zone_span.patch
mm-memory_hotplug-cleanup-__remove_pages.patch
Uninitialized memmaps contain garbage and in the worst case trigger
kernel BUGs, especially with CONFIG_PAGE_POISONING. They should not get
touched.
Let's make sure that we only consider online memory (managed by the
buddy) that has initialized memmaps. ZONE_DEVICE is not applicable.
page_zone() will call page_to_nid(), which will trigger
VM_BUG_ON_PGFLAGS(PagePoisoned(page), page) with CONFIG_PAGE_POISONING
and CONFIG_DEBUG_VM_PGFLAGS when called on uninitialized memmaps. This
can be the case when an offline memory block (e.g., never onlined) is
spanned by a zone.
Note: As explained by Michal in [1], alloc_contig_range() will verify
the range. So it boils down to the wrong access in this function.
[1] http://lkml.kernel.org/r/20180423000943.GO17484@dhcp22.suse.cz
Reported-by: Michal Hocko <mhocko(a)kernel.org>
Fixes: f1dd2cd13c4b ("mm, memory_hotplug: do not associate hotadded memory to zones until online") # visible after d0dc12e86b319
Cc: stable(a)vger.kernel.org # v4.13+
Cc: Anshuman Khandual <anshuman.khandual(a)arm.com>
Cc: Mike Kravetz <mike.kravetz(a)oracle.com>
Cc: Andrew Morton <akpm(a)linux-foundation.org>
Cc: Michal Hocko <mhocko(a)kernel.org>
Signed-off-by: David Hildenbrand <david(a)redhat.com>
---
mm/hugetlb.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index ef37c85423a5..b45a95363a84 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -1084,11 +1084,10 @@ static bool pfn_range_valid_gigantic(struct zone *z,
struct page *page;
for (i = start_pfn; i < end_pfn; i++) {
- if (!pfn_valid(i))
+ page = pfn_to_online_page(i);
+ if (!page)
return false;
- page = pfn_to_page(i);
-
if (page_zone(page) != z)
return false;
--
2.21.0
This is a note to let you know that I've just added the patch titled
USB: usblp: fix use-after-free on disconnect
to my usb git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
in the usb-linus branch.
The patch will show up in the next release of the linux-next tree
(usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the
next -rc kernel release.
If you have any questions about this process, please let me know.
>From 7a759197974894213621aa65f0571b51904733d6 Mon Sep 17 00:00:00 2001
From: Johan Hovold <johan(a)kernel.org>
Date: Tue, 15 Oct 2019 19:55:22 +0200
Subject: USB: usblp: fix use-after-free on disconnect
A recent commit addressing a runtime PM use-count regression, introduced
a use-after-free by not making sure we held a reference to the struct
usb_interface for the lifetime of the driver data.
Fixes: 9a31535859bf ("USB: usblp: fix runtime PM after driver unbind")
Cc: stable <stable(a)vger.kernel.org>
Reported-by: syzbot+cd24df4d075c319ebfc5(a)syzkaller.appspotmail.com
Signed-off-by: Johan Hovold <johan(a)kernel.org>
Link: https://lore.kernel.org/r/20191015175522.18490-1-johan@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/class/usblp.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/class/usblp.c b/drivers/usb/class/usblp.c
index fb8bd60c83f4..0d8e3f3804a3 100644
--- a/drivers/usb/class/usblp.c
+++ b/drivers/usb/class/usblp.c
@@ -445,6 +445,7 @@ static void usblp_cleanup(struct usblp *usblp)
kfree(usblp->readbuf);
kfree(usblp->device_id_string);
kfree(usblp->statusbuf);
+ usb_put_intf(usblp->intf);
kfree(usblp);
}
@@ -1113,7 +1114,7 @@ static int usblp_probe(struct usb_interface *intf,
init_waitqueue_head(&usblp->wwait);
init_usb_anchor(&usblp->urbs);
usblp->ifnum = intf->cur_altsetting->desc.bInterfaceNumber;
- usblp->intf = intf;
+ usblp->intf = usb_get_intf(intf);
/* Malloc device ID string buffer to the largest expected length,
* since we can re-query it on an ioctl and a dynamic string
@@ -1198,6 +1199,7 @@ static int usblp_probe(struct usb_interface *intf,
kfree(usblp->readbuf);
kfree(usblp->statusbuf);
kfree(usblp->device_id_string);
+ usb_put_intf(usblp->intf);
kfree(usblp);
abort_ret:
return retval;
--
2.23.0
The patch titled
Subject: mm/memory-failure: poison read receives SIGKILL instead of SIGBUS if mmaped more than once
has been removed from the -mm tree. Its filename was
mm-memory-failure-poison-read-receives-sigkill-instead-of-sigbus-if-mmaped-more-than-once.patch
This patch was dropped because it was merged into mainline or a subsystem tree
------------------------------------------------------
From: Jane Chu <jane.chu(a)oracle.com>
Subject: mm/memory-failure: poison read receives SIGKILL instead of SIGBUS if mmaped more than once
Mmap /dev/dax more than once, then read the poison location using address
from one of the mappings. The other mappings due to not having the page
mapped in will cause SIGKILLs delivered to the process. SIGKILL succeeds
over SIGBUS, so user process loses the opportunity to handle the UE.
Although one may add MAP_POPULATE to mmap(2) to work around the issue,
MAP_POPULATE makes mapping 128GB of pmem several magnitudes slower, so
isn't always an option.
Details -
ndctl inject-error --block=10 --count=1 namespace6.0
./read_poison -x dax6.0 -o 5120 -m 2
mmaped address 0x7f5bb6600000
mmaped address 0x7f3cf3600000
doing local read at address 0x7f3cf3601400
Killed
Console messages in instrumented kernel -
mce: Uncorrected hardware memory error in user-access at edbe201400
Memory failure: tk->addr = 7f5bb6601000
Memory failure: address edbe201: call dev_pagemap_mapping_shift
dev_pagemap_mapping_shift: page edbe201: no PUD
Memory failure: tk->size_shift == 0
Memory failure: Unable to find user space address edbe201 in read_poison
Memory failure: tk->addr = 7f3cf3601000
Memory failure: address edbe201: call dev_pagemap_mapping_shift
Memory failure: tk->size_shift = 21
Memory failure: 0xedbe201: forcibly killing read_poison:22434 because of failure to unmap corrupted page
=> to deliver SIGKILL
Memory failure: 0xedbe201: Killing read_poison:22434 due to hardware memory corruption
=> to deliver SIGBUS
Link: http://lkml.kernel.org/r/1565112345-28754-3-git-send-email-jane.chu@oracle.…
Signed-off-by: Jane Chu <jane.chu(a)oracle.com>
Suggested-by: Naoya Horiguchi <n-horiguchi(a)ah.jp.nec.com>
Reviewed-by: Dan Williams <dan.j.williams(a)intel.com>
Acked-by: Naoya Horiguchi <n-horiguchi(a)ah.jp.nec.com>
Cc: Michal Hocko <mhocko(a)kernel.org>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/memory-failure.c | 22 +++++++++++++---------
1 file changed, 13 insertions(+), 9 deletions(-)
--- a/mm/memory-failure.c~mm-memory-failure-poison-read-receives-sigkill-instead-of-sigbus-if-mmaped-more-than-once
+++ a/mm/memory-failure.c
@@ -199,7 +199,6 @@ struct to_kill {
struct task_struct *tsk;
unsigned long addr;
short size_shift;
- char addr_valid;
};
/*
@@ -324,22 +323,27 @@ static void add_to_kill(struct task_stru
}
}
tk->addr = page_address_in_vma(p, vma);
- tk->addr_valid = 1;
if (is_zone_device_page(p))
tk->size_shift = dev_pagemap_mapping_shift(p, vma);
else
tk->size_shift = compound_order(compound_head(p)) + PAGE_SHIFT;
/*
- * In theory we don't have to kill when the page was
- * munmaped. But it could be also a mremap. Since that's
- * likely very rare kill anyways just out of paranoia, but use
- * a SIGKILL because the error is not contained anymore.
+ * Send SIGKILL if "tk->addr == -EFAULT". Also, as
+ * "tk->size_shift" is always non-zero for !is_zone_device_page(),
+ * so "tk->size_shift == 0" effectively checks no mapping on
+ * ZONE_DEVICE. Indeed, when a devdax page is mmapped N times
+ * to a process' address space, it's possible not all N VMAs
+ * contain mappings for the page, but at least one VMA does.
+ * Only deliver SIGBUS with payload derived from the VMA that
+ * has a mapping for the page.
*/
- if (tk->addr == -EFAULT || tk->size_shift == 0) {
+ if (tk->addr == -EFAULT) {
pr_info("Memory failure: Unable to find user space address %lx in %s\n",
page_to_pfn(p), tsk->comm);
- tk->addr_valid = 0;
+ } else if (tk->size_shift == 0) {
+ kfree(tk);
+ return;
}
get_task_struct(tsk);
tk->tsk = tsk;
@@ -366,7 +370,7 @@ static void kill_procs(struct list_head
* make sure the process doesn't catch the
* signal and then access the memory. Just kill it.
*/
- if (fail || tk->addr_valid == 0) {
+ if (fail || tk->addr == -EFAULT) {
pr_err("Memory failure: %#lx: forcibly killing %s:%d because of failure to unmap corrupted page\n",
pfn, tk->tsk->comm, tk->tsk->pid);
do_send_sig_info(SIGKILL, SEND_SIG_PRIV,
_
Patches currently in -mm which might be from jane.chu(a)oracle.com are
mm-memory-failurec-clean-up-around-tk-pre-allocation.patch
The patch titled
Subject: mm, compaction: fix wrong pfn handling in __reset_isolation_pfn()
has been removed from the -mm tree. Its filename was
mm-compaction-fix-wrong-pfn-handling-in-__reset_isolation_pfn.patch
This patch was dropped because it was merged into mainline or a subsystem tree
------------------------------------------------------
From: Vlastimil Babka <vbabka(a)suse.cz>
Subject: mm, compaction: fix wrong pfn handling in __reset_isolation_pfn()
Florian and Dave reported [1] a NULL pointer dereference in
__reset_isolation_pfn(). While the exact cause is unclear, staring at the
code revealed two bugs, which might be related.
One bug is that if zone starts in the middle of pageblock, block_page
might correspond to different pfn than block_pfn, and then the
pfn_valid_within() checks will check different pfn's than those accessed
via struct page. This might result in acessing an unitialized page in
CONFIG_HOLES_IN_ZONE configs.
The other bug is that end_page refers to the first page of next pageblock
and not last page of current pageblock. The online and valid check is
then wrong and with sections, the while (page < end_page) loop might
wander off actual struct page arrays.
[1] https://lore.kernel.org/linux-xfs/87o8z1fvqu.fsf@mid.deneb.enyo.de/
Link: http://lkml.kernel.org/r/20191008152915.24704-1-vbabka@suse.cz
Fixes: 6b0868c820ff ("mm/compaction.c: correct zone boundary handling when resetting pageblock skip hints")
Signed-off-by: Vlastimil Babka <vbabka(a)suse.cz>
Reported-by: Florian Weimer <fw(a)deneb.enyo.de>
Reported-by: Dave Chinner <david(a)fromorbit.com>
Acked-by: Mel Gorman <mgorman(a)techsingularity.net>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/compaction.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
--- a/mm/compaction.c~mm-compaction-fix-wrong-pfn-handling-in-__reset_isolation_pfn
+++ a/mm/compaction.c
@@ -270,14 +270,15 @@ __reset_isolation_pfn(struct zone *zone,
/* Ensure the start of the pageblock or zone is online and valid */
block_pfn = pageblock_start_pfn(pfn);
- block_page = pfn_to_online_page(max(block_pfn, zone->zone_start_pfn));
+ block_pfn = max(block_pfn, zone->zone_start_pfn);
+ block_page = pfn_to_online_page(block_pfn);
if (block_page) {
page = block_page;
pfn = block_pfn;
}
/* Ensure the end of the pageblock or zone is online and valid */
- block_pfn += pageblock_nr_pages;
+ block_pfn = pageblock_end_pfn(pfn) - 1;
block_pfn = min(block_pfn, zone_end_pfn(zone) - 1);
end_page = pfn_to_online_page(block_pfn);
if (!end_page)
@@ -303,7 +304,7 @@ __reset_isolation_pfn(struct zone *zone,
page += (1 << PAGE_ALLOC_COSTLY_ORDER);
pfn += (1 << PAGE_ALLOC_COSTLY_ORDER);
- } while (page < end_page);
+ } while (page <= end_page);
return false;
}
_
Patches currently in -mm which might be from vbabka(a)suse.cz are
The patch titled
Subject: mm/slub: fix a deadlock in show_slab_objects()
has been removed from the -mm tree. Its filename was
mm-slub-fix-a-deadlock-in-show_slab_objects.patch
This patch was dropped because it was merged into mainline or a subsystem tree
------------------------------------------------------
From: Qian Cai <cai(a)lca.pw>
Subject: mm/slub: fix a deadlock in show_slab_objects()
A long time ago we fixed a similar deadlock in show_slab_objects() [1].
However, it is apparently due to the commits like 01fb58bcba63 ("slab:
remove synchronous synchronize_sched() from memcg cache deactivation
path") and 03afc0e25f7f ("slab: get_online_mems for
kmem_cache_{create,destroy,shrink}"), this kind of deadlock is back by
just reading files in /sys/kernel/slab which will generate a lockdep splat
below.
Since the "mem_hotplug_lock" here is only to obtain a stable online node
mask while racing with NUMA node hotplug, in the worst case, the results
may me miscalculated while doing NUMA node hotplug, but they shall be
corrected by later reads of the same files.
WARNING: possible circular locking dependency detected
------------------------------------------------------
cat/5224 is trying to acquire lock:
ffff900012ac3120 (mem_hotplug_lock.rw_sem){++++}, at:
show_slab_objects+0x94/0x3a8
but task is already holding lock:
b8ff009693eee398 (kn->count#45){++++}, at: kernfs_seq_start+0x44/0xf0
which lock already depends on the new lock.
the existing dependency chain (in reverse order) is:
-> #2 (kn->count#45){++++}:
lock_acquire+0x31c/0x360
__kernfs_remove+0x290/0x490
kernfs_remove+0x30/0x44
sysfs_remove_dir+0x70/0x88
kobject_del+0x50/0xb0
sysfs_slab_unlink+0x2c/0x38
shutdown_cache+0xa0/0xf0
kmemcg_cache_shutdown_fn+0x1c/0x34
kmemcg_workfn+0x44/0x64
process_one_work+0x4f4/0x950
worker_thread+0x390/0x4bc
kthread+0x1cc/0x1e8
ret_from_fork+0x10/0x18
-> #1 (slab_mutex){+.+.}:
lock_acquire+0x31c/0x360
__mutex_lock_common+0x16c/0xf78
mutex_lock_nested+0x40/0x50
memcg_create_kmem_cache+0x38/0x16c
memcg_kmem_cache_create_func+0x3c/0x70
process_one_work+0x4f4/0x950
worker_thread+0x390/0x4bc
kthread+0x1cc/0x1e8
ret_from_fork+0x10/0x18
-> #0 (mem_hotplug_lock.rw_sem){++++}:
validate_chain+0xd10/0x2bcc
__lock_acquire+0x7f4/0xb8c
lock_acquire+0x31c/0x360
get_online_mems+0x54/0x150
show_slab_objects+0x94/0x3a8
total_objects_show+0x28/0x34
slab_attr_show+0x38/0x54
sysfs_kf_seq_show+0x198/0x2d4
kernfs_seq_show+0xa4/0xcc
seq_read+0x30c/0x8a8
kernfs_fop_read+0xa8/0x314
__vfs_read+0x88/0x20c
vfs_read+0xd8/0x10c
ksys_read+0xb0/0x120
__arm64_sys_read+0x54/0x88
el0_svc_handler+0x170/0x240
el0_svc+0x8/0xc
other info that might help us debug this:
Chain exists of:
mem_hotplug_lock.rw_sem --> slab_mutex --> kn->count#45
Possible unsafe locking scenario:
CPU0 CPU1
---- ----
lock(kn->count#45);
lock(slab_mutex);
lock(kn->count#45);
lock(mem_hotplug_lock.rw_sem);
*** DEADLOCK ***
3 locks held by cat/5224:
#0: 9eff00095b14b2a0 (&p->lock){+.+.}, at: seq_read+0x4c/0x8a8
#1: 0eff008997041480 (&of->mutex){+.+.}, at: kernfs_seq_start+0x34/0xf0
#2: b8ff009693eee398 (kn->count#45){++++}, at:
kernfs_seq_start+0x44/0xf0
stack backtrace:
Call trace:
dump_backtrace+0x0/0x248
show_stack+0x20/0x2c
dump_stack+0xd0/0x140
print_circular_bug+0x368/0x380
check_noncircular+0x248/0x250
validate_chain+0xd10/0x2bcc
__lock_acquire+0x7f4/0xb8c
lock_acquire+0x31c/0x360
get_online_mems+0x54/0x150
show_slab_objects+0x94/0x3a8
total_objects_show+0x28/0x34
slab_attr_show+0x38/0x54
sysfs_kf_seq_show+0x198/0x2d4
kernfs_seq_show+0xa4/0xcc
seq_read+0x30c/0x8a8
kernfs_fop_read+0xa8/0x314
__vfs_read+0x88/0x20c
vfs_read+0xd8/0x10c
ksys_read+0xb0/0x120
__arm64_sys_read+0x54/0x88
el0_svc_handler+0x170/0x240
el0_svc+0x8/0xc
I think it is important to mention that this doesn't expose the
show_slab_objects to use-after-free. There is only a single path that
might really race here and that is the slab hotplug notifier callback
__kmem_cache_shrink (via slab_mem_going_offline_callback) but that path
doesn't really destroy kmem_cache_node data structures.
[1] http://lkml.iu.edu/hypermail/linux/kernel/1101.0/02850.html
[akpm(a)linux-foundation.org: add comment explaining why we don't need mem_hotplug_lock]
Link: http://lkml.kernel.org/r/1570192309-10132-1-git-send-email-cai@lca.pw
Fixes: 01fb58bcba63 ("slab: remove synchronous synchronize_sched() from memcg cache deactivation path")
Fixes: 03afc0e25f7f ("slab: get_online_mems for kmem_cache_{create,destroy,shrink}")
Signed-off-by: Qian Cai <cai(a)lca.pw>
Acked-by: Michal Hocko <mhocko(a)suse.com>
Cc: Christoph Lameter <cl(a)linux.com>
Cc: Pekka Enberg <penberg(a)kernel.org>
Cc: David Rientjes <rientjes(a)google.com>
Cc: Joonsoo Kim <iamjoonsoo.kim(a)lge.com>
Cc: Tejun Heo <tj(a)kernel.org>
Cc: Vladimir Davydov <vdavydov.dev(a)gmail.com>
Cc: Roman Gushchin <guro(a)fb.com>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/slub.c | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
--- a/mm/slub.c~mm-slub-fix-a-deadlock-in-show_slab_objects
+++ a/mm/slub.c
@@ -4846,7 +4846,17 @@ static ssize_t show_slab_objects(struct
}
}
- get_online_mems();
+ /*
+ * It is impossible to take "mem_hotplug_lock" here with "kernfs_mutex"
+ * already held which will conflict with an existing lock order:
+ *
+ * mem_hotplug_lock->slab_mutex->kernfs_mutex
+ *
+ * We don't really need mem_hotplug_lock (to hold off
+ * slab_mem_going_offline_callback) here because slab's memory hot
+ * unplug code doesn't destroy the kmem_cache->node[] data.
+ */
+
#ifdef CONFIG_SLUB_DEBUG
if (flags & SO_ALL) {
struct kmem_cache_node *n;
@@ -4887,7 +4897,6 @@ static ssize_t show_slab_objects(struct
x += sprintf(buf + x, " N%d=%lu",
node, nodes[node]);
#endif
- put_online_mems();
kfree(nodes);
return x + sprintf(buf + x, "\n");
}
_
Patches currently in -mm which might be from cai(a)lca.pw are
mm-page_owner-dont-access-uninitialized-memmaps-when-reading-proc-pagetypeinfo.patch
z3fold-add-inter-page-compaction-fix.patch
hugetlb-remove-unused-hstate-in-hugetlb_fault_mutex_hash-fix-fix.patch
This is a note to let you know that I've just added the patch titled
USB: legousbtower: fix memleak on disconnect
to my usb git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
in the usb-linus branch.
The patch will show up in the next release of the linux-next tree
(usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the
next -rc kernel release.
If you have any questions about this process, please let me know.
>From b6c03e5f7b463efcafd1ce141bd5a8fc4e583ae2 Mon Sep 17 00:00:00 2001
From: Johan Hovold <johan(a)kernel.org>
Date: Thu, 10 Oct 2019 14:58:35 +0200
Subject: USB: legousbtower: fix memleak on disconnect
If disconnect() races with release() after a process has been
interrupted, release() could end up returning early and the driver would
fail to free its driver data.
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Cc: stable <stable(a)vger.kernel.org>
Signed-off-by: Johan Hovold <johan(a)kernel.org>
Link: https://lore.kernel.org/r/20191010125835.27031-3-johan@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/misc/legousbtower.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/drivers/usb/misc/legousbtower.c b/drivers/usb/misc/legousbtower.c
index 9d4c52a7ebe0..62dab2441ec4 100644
--- a/drivers/usb/misc/legousbtower.c
+++ b/drivers/usb/misc/legousbtower.c
@@ -419,10 +419,7 @@ static int tower_release (struct inode *inode, struct file *file)
goto exit;
}
- if (mutex_lock_interruptible(&dev->lock)) {
- retval = -ERESTARTSYS;
- goto exit;
- }
+ mutex_lock(&dev->lock);
if (dev->open_count != 1) {
dev_dbg(&dev->udev->dev, "%s: device not opened exactly once\n",
--
2.23.0
This is a note to let you know that I've just added the patch titled
USB: ldusb: fix memleak on disconnect
to my usb git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
in the usb-linus branch.
The patch will show up in the next release of the linux-next tree
(usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the
next -rc kernel release.
If you have any questions about this process, please let me know.
>From b14a39048c1156cfee76228bf449852da2f14df8 Mon Sep 17 00:00:00 2001
From: Johan Hovold <johan(a)kernel.org>
Date: Thu, 10 Oct 2019 14:58:34 +0200
Subject: USB: ldusb: fix memleak on disconnect
If disconnect() races with release() after a process has been
interrupted, release() could end up returning early and the driver would
fail to free its driver data.
Fixes: 2824bd250f0b ("[PATCH] USB: add ldusb driver")
Cc: stable <stable(a)vger.kernel.org> # 2.6.13
Signed-off-by: Johan Hovold <johan(a)kernel.org>
Link: https://lore.kernel.org/r/20191010125835.27031-2-johan@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/misc/ldusb.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/drivers/usb/misc/ldusb.c b/drivers/usb/misc/ldusb.c
index f3108d85e768..147c90c2a4e5 100644
--- a/drivers/usb/misc/ldusb.c
+++ b/drivers/usb/misc/ldusb.c
@@ -380,10 +380,7 @@ static int ld_usb_release(struct inode *inode, struct file *file)
goto exit;
}
- if (mutex_lock_interruptible(&dev->mutex)) {
- retval = -ERESTARTSYS;
- goto exit;
- }
+ mutex_lock(&dev->mutex);
if (dev->open_count != 1) {
retval = -ENODEV;
--
2.23.0
A recent commit addressing a runtime PM use-count regression, introduced
a use-after-free by not making sure we held a reference to the struct
usb_interface for the lifetime of the driver data.
Fixes: 9a31535859bf ("USB: usblp: fix runtime PM after driver unbind")
Cc: stable <stable(a)vger.kernel.org>
Reported-by: syzbot+cd24df4d075c319ebfc5(a)syzkaller.appspotmail.com
Signed-off-by: Johan Hovold <johan(a)kernel.org>
---
drivers/usb/class/usblp.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/class/usblp.c b/drivers/usb/class/usblp.c
index fb8bd60c83f4..0d8e3f3804a3 100644
--- a/drivers/usb/class/usblp.c
+++ b/drivers/usb/class/usblp.c
@@ -445,6 +445,7 @@ static void usblp_cleanup(struct usblp *usblp)
kfree(usblp->readbuf);
kfree(usblp->device_id_string);
kfree(usblp->statusbuf);
+ usb_put_intf(usblp->intf);
kfree(usblp);
}
@@ -1113,7 +1114,7 @@ static int usblp_probe(struct usb_interface *intf,
init_waitqueue_head(&usblp->wwait);
init_usb_anchor(&usblp->urbs);
usblp->ifnum = intf->cur_altsetting->desc.bInterfaceNumber;
- usblp->intf = intf;
+ usblp->intf = usb_get_intf(intf);
/* Malloc device ID string buffer to the largest expected length,
* since we can re-query it on an ioctl and a dynamic string
@@ -1198,6 +1199,7 @@ static int usblp_probe(struct usb_interface *intf,
kfree(usblp->readbuf);
kfree(usblp->statusbuf);
kfree(usblp->device_id_string);
+ usb_put_intf(usblp->intf);
kfree(usblp);
abort_ret:
return retval;
--
2.23.0
While the static key is correctly initialized as being disabled, it will
remain forever enabled once turned on. This means that if we start with an
asymmetric system and hotplug out enough CPUs to end up with an SMP system,
the static key will remain set - which is obviously wrong. We should detect
this and turn off things like misfit migration and capacity aware wakeups.
As Quentin pointed out, having separate root domains makes this slightly
trickier. We could have exclusive cpusets that create an SMP island - IOW,
the domains within this root domain will not see any asymmetry. This means
we need to count how many asymmetric root domains we have.
Change the simple key enablement to an increment, and decrement the key
counter when destroying domains that cover asymmetric CPUs.
Cc: <stable(a)vger.kernel.org>
Fixes: df054e8445a4 ("sched/topology: Add static_key for asymmetric CPU capacity optimizations")
Signed-off-by: Valentin Schneider <valentin.schneider(a)arm.com>
---
Changes since v1:
Use static_branch_{inc,dec} rather than enable/disable
---
kernel/sched/topology.c | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
index b5667a273bf6..79944e969bcf 100644
--- a/kernel/sched/topology.c
+++ b/kernel/sched/topology.c
@@ -2026,7 +2026,7 @@ build_sched_domains(const struct cpumask *cpu_map, struct sched_domain_attr *att
rcu_read_unlock();
if (has_asym)
- static_branch_enable_cpuslocked(&sched_asym_cpucapacity);
+ static_branch_inc_cpuslocked(&sched_asym_cpucapacity);
if (rq && sched_debug_enabled) {
pr_info("root domain span: %*pbl (max cpu_capacity = %lu)\n",
@@ -2124,8 +2124,17 @@ static void detach_destroy_domains(const struct cpumask *cpu_map)
int i;
rcu_read_lock();
+
+ if (static_key_enabled(&sched_asym_cpucapacity)) {
+ unsigned int cpu = cpumask_any(cpu_map);
+
+ if (rcu_dereference(per_cpu(sd_asym_cpucapacity, cpu)))
+ static_branch_dec_cpuslocked(&sched_asym_cpucapacity);
+ }
+
for_each_cpu(i, cpu_map)
cpu_attach_domain(NULL, &def_root_domain, i);
+
rcu_read_unlock();
}
--
2.22.0
While the static key is correctly initialized as being disabled, it will
remain forever enabled once turned on. This means that if we start with an
asymmetric system and hotplug out enough CPUs to end up with an SMP system,
the static key will remain set - which is obviously wrong. We should detect
this and turn off things like misfit migration and EAS wakeups.
Having that key enabled should also mandate
per_cpu(sd_asym_cpucapacity, cpu) != NULL
for all CPUs, but this is obviously not true with the above.
On top of that, sched domain rebuilds first lead to attaching the NULL
domain to the affected CPUs, which means there will be a window where the
static key is set but the sd_asym_cpucapacity shortcut points to NULL even
if asymmetry hasn't been hotplugged out.
Disable the static key when destroying domains, and let
build_sched_domains() (re) enable it as needed.
Cc: <stable(a)vger.kernel.org>
Fixes: df054e8445a4 ("sched/topology: Add static_key for asymmetric CPU capacity optimizations")
Signed-off-by: Valentin Schneider <valentin.schneider(a)arm.com>
---
kernel/sched/topology.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
index b5667a273bf6..c49ae57a0611 100644
--- a/kernel/sched/topology.c
+++ b/kernel/sched/topology.c
@@ -2123,7 +2123,8 @@ static void detach_destroy_domains(const struct cpumask *cpu_map)
{
int i;
+ static_branch_disable_cpuslocked(&sched_asym_cpucapacity);
+
rcu_read_lock();
for_each_cpu(i, cpu_map)
cpu_attach_domain(NULL, &def_root_domain, i);
--
2.22.0
The device cannot be probed on !ACPI and gives this warning:
drivers/soundwire/slave.c:16:12: warning: ‘sdw_slave_add’ defined but
not used [-Wunused-function]
static int sdw_slave_add(struct sdw_bus *bus,
^~~~~~~~~~~~~
Cc: stable(a)vger.kernel.org
Fixes: 7c3cd189b86d ("soundwire: Add Master registration")
Signed-off-by: Michal Suchanek <msuchanek(a)suse.de>
---
drivers/soundwire/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/soundwire/Kconfig b/drivers/soundwire/Kconfig
index f518273cfbe3..c73bfbaa2659 100644
--- a/drivers/soundwire/Kconfig
+++ b/drivers/soundwire/Kconfig
@@ -5,6 +5,7 @@
menuconfig SOUNDWIRE
tristate "SoundWire support"
+ depends on ACPI
help
SoundWire is a 2-Pin interface with data and clock line ratified
by the MIPI Alliance. SoundWire is used for transporting data
--
2.23.0
stable-rc/linux-5.3.y build: 208 builds: 178 failed, 30 passed, 1068 errors, 164 warnings (v5.3.6-84-g973b124921fc)
Full Build Summary: https://kernelci.org/build/stable-rc/branch/linux-5.3.y/kernel/v5.3.6-84-g9…
Tree: stable-rc
Branch: linux-5.3.y
Git Describe: v5.3.6-84-g973b124921fc
Git Commit: 973b124921fc639825ae455aa91ed9ce15167584
Git URL: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
Built: 7 unique architectures
Build Failures Detected:
arc:
axs103_defconfig: (gcc-8) FAIL
axs103_smp_defconfig: (gcc-8) FAIL
haps_hs_defconfig: (gcc-8) FAIL
haps_hs_smp_defconfig: (gcc-8) FAIL
hsdk_defconfig: (gcc-8) FAIL
nsim_hs_defconfig: (gcc-8) FAIL
nsim_hs_smp_defconfig: (gcc-8) FAIL
nsimosci_hs_defconfig: (gcc-8) FAIL
nsimosci_hs_smp_defconfig: (gcc-8) FAIL
vdk_hs38_defconfig: (gcc-8) FAIL
vdk_hs38_smp_defconfig: (gcc-8) FAIL
arm64:
defconfig: (gcc-8) FAIL
arm:
acs5k_defconfig: (gcc-8) FAIL
acs5k_tiny_defconfig: (gcc-8) FAIL
am200epdkit_defconfig: (gcc-8) FAIL
aspeed_g4_defconfig: (gcc-8) FAIL
aspeed_g5_defconfig: (gcc-8) FAIL
assabet_defconfig: (gcc-8) FAIL
at91_dt_defconfig: (gcc-8) FAIL
axm55xx_defconfig: (gcc-8) FAIL
badge4_defconfig: (gcc-8) FAIL
bcm2835_defconfig: (gcc-8) FAIL
cerfcube_defconfig: (gcc-8) FAIL
clps711x_defconfig: (gcc-8) FAIL
cm_x2xx_defconfig: (gcc-8) FAIL
cm_x300_defconfig: (gcc-8) FAIL
colibri_pxa270_defconfig: (gcc-8) FAIL
colibri_pxa300_defconfig: (gcc-8) FAIL
collie_defconfig: (gcc-8) FAIL
corgi_defconfig: (gcc-8) FAIL
davinci_all_defconfig: (gcc-8) FAIL
dove_defconfig: (gcc-8) FAIL
ebsa110_defconfig: (gcc-8) FAIL
efm32_defconfig: (gcc-8) FAIL
em_x270_defconfig: (gcc-8) FAIL
ep93xx_defconfig: (gcc-8) FAIL
eseries_pxa_defconfig: (gcc-8) FAIL
exynos_defconfig: (gcc-8) FAIL
ezx_defconfig: (gcc-8) FAIL
footbridge_defconfig: (gcc-8) FAIL
gemini_defconfig: (gcc-8) FAIL
h3600_defconfig: (gcc-8) FAIL
h5000_defconfig: (gcc-8) FAIL
hackkit_defconfig: (gcc-8) FAIL
hisi_defconfig: (gcc-8) FAIL
imote2_defconfig: (gcc-8) FAIL
imx_v4_v5_defconfig: (gcc-8) FAIL
imx_v6_v7_defconfig: (gcc-8) FAIL
integrator_defconfig: (gcc-8) FAIL
iop13xx_defconfig: (gcc-8) FAIL
iop32x_defconfig: (gcc-8) FAIL
iop33x_defconfig: (gcc-8) FAIL
ixp4xx_defconfig: (gcc-8) FAIL
jornada720_defconfig: (gcc-8) FAIL
keystone_defconfig: (gcc-8) FAIL
ks8695_defconfig: (gcc-8) FAIL
lart_defconfig: (gcc-8) FAIL
lpc18xx_defconfig: (gcc-8) FAIL
lpc32xx_defconfig: (gcc-8) FAIL
lpd270_defconfig: (gcc-8) FAIL
lubbock_defconfig: (gcc-8) FAIL
magician_defconfig: (gcc-8) FAIL
mainstone_defconfig: (gcc-8) FAIL
mini2440_defconfig: (gcc-8) FAIL
mmp2_defconfig: (gcc-8) FAIL
moxart_defconfig: (gcc-8) FAIL
mps2_defconfig: (gcc-8) FAIL
multi_v5_defconfig: (gcc-8) FAIL
multi_v7_defconfig: (gcc-8) FAIL
mv78xx0_defconfig: (gcc-8) FAIL
mvebu_v5_defconfig: (gcc-8) FAIL
mvebu_v7_defconfig: (gcc-8) FAIL
mxs_defconfig: (gcc-8) FAIL
neponset_defconfig: (gcc-8) FAIL
netwinder_defconfig: (gcc-8) FAIL
nhk8815_defconfig: (gcc-8) FAIL
omap1_defconfig: (gcc-8) FAIL
omap2plus_defconfig: (gcc-8) FAIL
orion5x_defconfig: (gcc-8) FAIL
oxnas_v6_defconfig: (gcc-8) FAIL
palmz72_defconfig: (gcc-8) FAIL
pcm027_defconfig: (gcc-8) FAIL
pleb_defconfig: (gcc-8) FAIL
pxa168_defconfig: (gcc-8) FAIL
pxa255-idp_defconfig: (gcc-8) FAIL
pxa3xx_defconfig: (gcc-8) FAIL
pxa910_defconfig: (gcc-8) FAIL
pxa_defconfig: (gcc-8) FAIL
qcom_defconfig: (gcc-8) FAIL
realview_defconfig: (gcc-8) FAIL
rpc_defconfig: (gcc-8) FAIL
s3c2410_defconfig: (gcc-8) FAIL
s5pv210_defconfig: (gcc-8) FAIL
sama5_defconfig: (gcc-8) FAIL
shannon_defconfig: (gcc-8) FAIL
shmobile_defconfig: (gcc-8) FAIL
simpad_defconfig: (gcc-8) FAIL
socfpga_defconfig: (gcc-8) FAIL
spear13xx_defconfig: (gcc-8) FAIL
spitz_defconfig: (gcc-8) FAIL
sunxi_defconfig: (gcc-8) FAIL
tango4_defconfig: (gcc-8) FAIL
tct_hammer_defconfig: (gcc-8) FAIL
tegra_defconfig: (gcc-8) FAIL
trizeps4_defconfig: (gcc-8) FAIL
u8500_defconfig: (gcc-8) FAIL
versatile_defconfig: (gcc-8) FAIL
vexpress_defconfig: (gcc-8) FAIL
viper_defconfig: (gcc-8) FAIL
vt8500_v6_v7_defconfig: (gcc-8) FAIL
xcep_defconfig: (gcc-8) FAIL
zeus_defconfig: (gcc-8) FAIL
i386:
i386_defconfig: (gcc-8) FAIL
mips:
32r2el_defconfig: (gcc-8) FAIL
ar7_defconfig: (gcc-8) FAIL
ath25_defconfig: (gcc-8) FAIL
ath79_defconfig: (gcc-8) FAIL
bcm47xx_defconfig: (gcc-8) FAIL
bcm63xx_defconfig: (gcc-8) FAIL
bigsur_defconfig: (gcc-8) FAIL
bmips_be_defconfig: (gcc-8) FAIL
bmips_stb_defconfig: (gcc-8) FAIL
capcella_defconfig: (gcc-8) FAIL
cavium_octeon_defconfig: (gcc-8) FAIL
ci20_defconfig: (gcc-8) FAIL
cobalt_defconfig: (gcc-8) FAIL
db1xxx_defconfig: (gcc-8) FAIL
decstation_64_defconfig: (gcc-8) FAIL
decstation_defconfig: (gcc-8) FAIL
decstation_r4k_defconfig: (gcc-8) FAIL
fuloong2e_defconfig: (gcc-8) FAIL
gcw0_defconfig: (gcc-8) FAIL
gpr_defconfig: (gcc-8) FAIL
ip22_defconfig: (gcc-8) FAIL
ip27_defconfig: (gcc-8) FAIL
ip28_defconfig: (gcc-8) FAIL
ip32_defconfig: (gcc-8) FAIL
jazz_defconfig: (gcc-8) FAIL
jmr3927_defconfig: (gcc-8) FAIL
lasat_defconfig: (gcc-8) FAIL
lemote2f_defconfig: (gcc-8) FAIL
loongson1b_defconfig: (gcc-8) FAIL
loongson1c_defconfig: (gcc-8) FAIL
loongson3_defconfig: (gcc-8) FAIL
malta_defconfig: (gcc-8) FAIL
malta_kvm_defconfig: (gcc-8) FAIL
malta_kvm_guest_defconfig: (gcc-8) FAIL
malta_qemu_32r6_defconfig: (gcc-8) FAIL
maltaaprp_defconfig: (gcc-8) FAIL
maltasmvp_defconfig: (gcc-8) FAIL
maltasmvp_eva_defconfig: (gcc-8) FAIL
maltaup_defconfig: (gcc-8) FAIL
maltaup_xpa_defconfig: (gcc-8) FAIL
markeins_defconfig: (gcc-8) FAIL
mips_paravirt_defconfig: (gcc-8) FAIL
mpc30x_defconfig: (gcc-8) FAIL
msp71xx_defconfig: (gcc-8) FAIL
mtx1_defconfig: (gcc-8) FAIL
nlm_xlp_defconfig: (gcc-8) FAIL
nlm_xlr_defconfig: (gcc-8) FAIL
omega2p_defconfig: (gcc-8) FAIL
pistachio_defconfig: (gcc-8) FAIL
pnx8335_stb225_defconfig: (gcc-8) FAIL
qi_lb60_defconfig: (gcc-8) FAIL
rb532_defconfig: (gcc-8) FAIL
rbtx49xx_defconfig: (gcc-8) FAIL
rm200_defconfig: (gcc-8) FAIL
rt305x_defconfig: (gcc-8) FAIL
sb1250_swarm_defconfig: (gcc-8) FAIL
tb0219_defconfig: (gcc-8) FAIL
tb0226_defconfig: (gcc-8) FAIL
tb0287_defconfig: (gcc-8) FAIL
vocore2_defconfig: (gcc-8) FAIL
workpad_defconfig: (gcc-8) FAIL
xway_defconfig: (gcc-8) FAIL
riscv:
defconfig: (gcc-8) FAIL
rv32_defconfig: (gcc-8) FAIL
x86_64:
x86_64_defconfig: (gcc-8) FAIL
Errors and Warnings Detected:
arc:
allnoconfig (gcc-8): 1 warning
axs103_defconfig (gcc-8): 6 errors, 1 warning
axs103_smp_defconfig (gcc-8): 6 errors, 1 warning
haps_hs_defconfig (gcc-8): 6 errors, 1 warning
haps_hs_smp_defconfig (gcc-8): 6 errors, 1 warning
hsdk_defconfig (gcc-8): 6 errors, 1 warning
nsim_hs_defconfig (gcc-8): 6 errors, 1 warning
nsim_hs_smp_defconfig (gcc-8): 6 errors, 1 warning
nsimosci_hs_defconfig (gcc-8): 6 errors, 1 warning
nsimosci_hs_smp_defconfig (gcc-8): 6 errors, 1 warning
tinyconfig (gcc-8): 1 warning
vdk_hs38_defconfig (gcc-8): 6 errors, 1 warning
vdk_hs38_smp_defconfig (gcc-8): 6 errors, 1 warning
arm64:
defconfig (gcc-8): 6 errors, 3 warnings
arm:
acs5k_defconfig (gcc-8): 6 errors
acs5k_tiny_defconfig (gcc-8): 6 errors
am200epdkit_defconfig (gcc-8): 6 errors
aspeed_g4_defconfig (gcc-8): 6 errors
aspeed_g5_defconfig (gcc-8): 6 errors
assabet_defconfig (gcc-8): 6 errors
at91_dt_defconfig (gcc-8): 6 errors, 4 warnings
axm55xx_defconfig (gcc-8): 6 errors
badge4_defconfig (gcc-8): 6 errors
bcm2835_defconfig (gcc-8): 6 errors
cerfcube_defconfig (gcc-8): 6 errors
clps711x_defconfig (gcc-8): 6 errors
cm_x2xx_defconfig (gcc-8): 6 errors
cm_x300_defconfig (gcc-8): 6 errors
colibri_pxa270_defconfig (gcc-8): 6 errors
colibri_pxa300_defconfig (gcc-8): 6 errors
collie_defconfig (gcc-8): 6 errors
corgi_defconfig (gcc-8): 6 errors
davinci_all_defconfig (gcc-8): 6 errors
dove_defconfig (gcc-8): 6 errors
ebsa110_defconfig (gcc-8): 6 errors
efm32_defconfig (gcc-8): 6 errors
em_x270_defconfig (gcc-8): 6 errors
ep93xx_defconfig (gcc-8): 6 errors
eseries_pxa_defconfig (gcc-8): 6 errors
exynos_defconfig (gcc-8): 6 errors, 1 warning
ezx_defconfig (gcc-8): 6 errors
footbridge_defconfig (gcc-8): 6 errors
gemini_defconfig (gcc-8): 6 errors
h3600_defconfig (gcc-8): 6 errors
h5000_defconfig (gcc-8): 6 errors
hackkit_defconfig (gcc-8): 6 errors
hisi_defconfig (gcc-8): 6 errors
imote2_defconfig (gcc-8): 6 errors
imx_v4_v5_defconfig (gcc-8): 6 errors, 1 warning
imx_v6_v7_defconfig (gcc-8): 6 errors
integrator_defconfig (gcc-8): 6 errors
iop13xx_defconfig (gcc-8): 6 errors
iop32x_defconfig (gcc-8): 6 errors
iop33x_defconfig (gcc-8): 6 errors
ixp4xx_defconfig (gcc-8): 6 errors
jornada720_defconfig (gcc-8): 6 errors
keystone_defconfig (gcc-8): 6 errors
ks8695_defconfig (gcc-8): 6 errors
lart_defconfig (gcc-8): 6 errors
lpc18xx_defconfig (gcc-8): 6 errors
lpc32xx_defconfig (gcc-8): 6 errors
lpd270_defconfig (gcc-8): 6 errors
lubbock_defconfig (gcc-8): 6 errors
magician_defconfig (gcc-8): 6 errors
mainstone_defconfig (gcc-8): 6 errors
mini2440_defconfig (gcc-8): 6 errors, 2 warnings
mmp2_defconfig (gcc-8): 6 errors
moxart_defconfig (gcc-8): 6 errors
mps2_defconfig (gcc-8): 6 errors
multi_v5_defconfig (gcc-8): 6 errors, 3 warnings
multi_v7_defconfig (gcc-8): 6 errors, 16 warnings
mv78xx0_defconfig (gcc-8): 6 errors
mvebu_v5_defconfig (gcc-8): 6 errors
mvebu_v7_defconfig (gcc-8): 6 errors
mxs_defconfig (gcc-8): 6 errors
neponset_defconfig (gcc-8): 6 errors
netwinder_defconfig (gcc-8): 6 errors
nhk8815_defconfig (gcc-8): 6 errors
omap1_defconfig (gcc-8): 6 errors
omap2plus_defconfig (gcc-8): 6 errors, 1 warning
orion5x_defconfig (gcc-8): 6 errors
oxnas_v6_defconfig (gcc-8): 6 errors
palmz72_defconfig (gcc-8): 6 errors
pcm027_defconfig (gcc-8): 6 errors
pleb_defconfig (gcc-8): 6 errors
pxa168_defconfig (gcc-8): 6 errors
pxa255-idp_defconfig (gcc-8): 6 errors
pxa3xx_defconfig (gcc-8): 6 errors
pxa910_defconfig (gcc-8): 6 errors
pxa_defconfig (gcc-8): 6 errors
qcom_defconfig (gcc-8): 6 errors, 2 warnings
realview_defconfig (gcc-8): 6 errors
rpc_defconfig (gcc-8): 6 errors
s3c2410_defconfig (gcc-8): 6 errors
s3c6400_defconfig (gcc-8): 1 warning
s5pv210_defconfig (gcc-8): 6 errors, 1 warning
sama5_defconfig (gcc-8): 6 errors, 4 warnings
shannon_defconfig (gcc-8): 6 errors
shmobile_defconfig (gcc-8): 6 errors, 2 warnings
simpad_defconfig (gcc-8): 6 errors
socfpga_defconfig (gcc-8): 6 errors
spear13xx_defconfig (gcc-8): 6 errors
spitz_defconfig (gcc-8): 6 errors
sunxi_defconfig (gcc-8): 6 errors
tango4_defconfig (gcc-8): 6 errors
tct_hammer_defconfig (gcc-8): 6 errors, 2 warnings
tegra_defconfig (gcc-8): 6 errors
trizeps4_defconfig (gcc-8): 6 errors
u8500_defconfig (gcc-8): 6 errors, 6 warnings
versatile_defconfig (gcc-8): 6 errors
vexpress_defconfig (gcc-8): 6 errors
viper_defconfig (gcc-8): 6 errors
vt8500_v6_v7_defconfig (gcc-8): 6 errors
xcep_defconfig (gcc-8): 6 errors
zeus_defconfig (gcc-8): 6 errors
i386:
i386_defconfig (gcc-8): 6 errors
mips:
32r2el_defconfig (gcc-8): 6 errors, 1 warning
allnoconfig (gcc-8): 1 warning
ar7_defconfig (gcc-8): 6 errors, 1 warning
ath25_defconfig (gcc-8): 6 errors, 1 warning
ath79_defconfig (gcc-8): 6 errors, 1 warning
bcm47xx_defconfig (gcc-8): 6 errors, 1 warning
bcm63xx_defconfig (gcc-8): 6 errors, 1 warning
bigsur_defconfig (gcc-8): 6 errors, 3 warnings
bmips_be_defconfig (gcc-8): 6 errors, 1 warning
bmips_stb_defconfig (gcc-8): 6 errors, 1 warning
capcella_defconfig (gcc-8): 6 errors, 1 warning
cavium_octeon_defconfig (gcc-8): 6 errors, 3 warnings
ci20_defconfig (gcc-8): 6 errors, 2 warnings
cobalt_defconfig (gcc-8): 6 errors, 1 warning
db1xxx_defconfig (gcc-8): 6 errors, 2 warnings
decstation_64_defconfig (gcc-8): 6 errors, 3 warnings
decstation_defconfig (gcc-8): 6 errors, 1 warning
decstation_r4k_defconfig (gcc-8): 6 errors, 1 warning
e55_defconfig (gcc-8): 2 warnings
fuloong2e_defconfig (gcc-8): 6 errors, 3 warnings
gcw0_defconfig (gcc-8): 6 errors, 1 warning
gpr_defconfig (gcc-8): 6 errors, 1 warning
ip22_defconfig (gcc-8): 6 errors, 2 warnings
ip27_defconfig (gcc-8): 6 errors, 3 warnings
ip28_defconfig (gcc-8): 6 errors, 4 warnings
ip32_defconfig (gcc-8): 6 errors, 3 warnings
jazz_defconfig (gcc-8): 6 errors, 1 warning
jmr3927_defconfig (gcc-8): 6 errors, 1 warning
lasat_defconfig (gcc-8): 6 errors, 1 warning
lemote2f_defconfig (gcc-8): 6 errors, 3 warnings
loongson1b_defconfig (gcc-8): 6 errors, 1 warning
loongson1c_defconfig (gcc-8): 6 errors, 1 warning
loongson3_defconfig (gcc-8): 6 errors, 3 warnings
malta_defconfig (gcc-8): 6 errors, 1 warning
malta_kvm_defconfig (gcc-8): 6 errors, 1 warning
malta_kvm_guest_defconfig (gcc-8): 6 errors, 1 warning
malta_qemu_32r6_defconfig (gcc-8): 6 errors, 2 warnings
maltaaprp_defconfig (gcc-8): 6 errors, 1 warning
maltasmvp_defconfig (gcc-8): 6 errors, 1 warning
maltasmvp_eva_defconfig (gcc-8): 6 errors, 1 warning
maltaup_defconfig (gcc-8): 6 errors, 1 warning
maltaup_xpa_defconfig (gcc-8): 6 errors, 1 warning
markeins_defconfig (gcc-8): 6 errors, 1 warning
mips_paravirt_defconfig (gcc-8): 6 errors, 3 warnings
mpc30x_defconfig (gcc-8): 6 errors, 1 warning
msp71xx_defconfig (gcc-8): 6 errors, 1 warning
mtx1_defconfig (gcc-8): 6 errors, 1 warning
nlm_xlp_defconfig (gcc-8): 6 errors, 3 warnings
nlm_xlr_defconfig (gcc-8): 6 errors, 1 warning
omega2p_defconfig (gcc-8): 6 errors, 1 warning
pic32mzda_defconfig (gcc-8): 2 warnings
pistachio_defconfig (gcc-8): 6 errors, 1 warning
pnx8335_stb225_defconfig (gcc-8): 6 errors, 1 warning
qi_lb60_defconfig (gcc-8): 6 errors, 3 warnings
rb532_defconfig (gcc-8): 6 errors, 1 warning
rbtx49xx_defconfig (gcc-8): 6 errors, 1 warning
rm200_defconfig (gcc-8): 6 errors, 1 warning
rt305x_defconfig (gcc-8): 6 errors, 1 warning
sb1250_swarm_defconfig (gcc-8): 6 errors, 2 warnings
tb0219_defconfig (gcc-8): 6 errors, 1 warning
tb0226_defconfig (gcc-8): 6 errors, 1 warning
tb0287_defconfig (gcc-8): 6 errors, 1 warning
tinyconfig (gcc-8): 1 warning
vocore2_defconfig (gcc-8): 6 errors, 1 warning
workpad_defconfig (gcc-8): 6 errors, 1 warning
xway_defconfig (gcc-8): 6 errors, 1 warning
riscv:
defconfig (gcc-8): 6 errors
rv32_defconfig (gcc-8): 6 errors, 3 warnings
x86_64:
tinyconfig (gcc-8): 1 warning
x86_64_defconfig (gcc-8): 6 errors
Errors summary:
178 include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
178 include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
178 include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
178 include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
178 fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
178 fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
Warnings summary:
105 <stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
4 drivers/mmc/host/sdhci-s3c.c:613:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
4 drivers/mmc/host/atmel-mci.c:2426:40: warning: this statement may fall through [-Wimplicit-fallthrough=]
4 drivers/mmc/host/atmel-mci.c:2422:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
4 drivers/mmc/host/atmel-mci.c:2415:30: warning: this statement may fall through [-Wimplicit-fallthrough=]
3 drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:820:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
3 drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:815:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/watchdog/jz4740_wdt.c:165:6: warning: unused variable 'ret' [-Wunused-variable]
2 drivers/video/fbdev/sh_mobile_lcdcfb.c:2086:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/video/fbdev/sh_mobile_lcdcfb.c:1596:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/phy/phy-ab8500-usb.c:459:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/phy/phy-ab8500-usb.c:440:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/phy/phy-ab8500-usb.c:424:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/phy/phy-ab8500-usb.c:370:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/phy/phy-ab8500-usb.c:352:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/phy/phy-ab8500-usb.c:332:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/gadget/udc/s3c2410_udc.c:418:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/gadget/udc/s3c2410_udc.c:314:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/usb/gadget/udc/atmel_usba_udc.c:329:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/scsi/wd33c93.c:1856:11: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/pinctrl/pinctrl-rockchip.c:2783:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
2 drivers/dma/imx-dma.c:542:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
1 {standard input}:131: Warning: macro instruction expanded into multiple instructions
1 drivers/video/fbdev/jz4740_fb.c:300:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
1 drivers/mtd/nand/raw/au1550nd.c:443:57: warning: pointer type mismatch in conditional expression
1 drivers/cpufreq/ti-cpufreq.c:79:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
1 <stdin>:830:2: warning: #warning syscall fstat64 not implemented [-Wcpp]
1 <stdin>:1127:2: warning: #warning syscall fstatat64 not implemented [-Wcpp]
1 .config:1168:warning: override: UNWINDER_GUESS changes choice state
================================================================================
Detailed per-defconfig build reports:
--------------------------------------------------------------------------------
32r2el_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
acs5k_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
acs5k_tiny_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
allnoconfig (arc, gcc-8) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
allnoconfig (arm64, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (mips, gcc-8) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
allnoconfig (riscv, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (i386, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (x86_64, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
am200epdkit_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
ar7_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
aspeed_g4_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
aspeed_g5_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
assabet_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
at91_dt_defconfig (arm, gcc-8) — FAIL, 6 errors, 4 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/mmc/host/atmel-mci.c:2415:30: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2422:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2426:40: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/gadget/udc/atmel_usba_udc.c:329:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
ath25_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
ath79_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
axm55xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
axs103_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
axs103_smp_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
badge4_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
bcm2835_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
bcm47xx_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
bcm63xx_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
bigsur_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
bmips_be_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
bmips_stb_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
capcella_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
cavium_octeon_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
cerfcube_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
ci20_defconfig (mips, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
drivers/watchdog/jz4740_wdt.c:165:6: warning: unused variable 'ret' [-Wunused-variable]
--------------------------------------------------------------------------------
clps711x_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
cm_x2xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
cm_x300_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
cns3420vb_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cobalt_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
colibri_pxa270_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
colibri_pxa300_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
collie_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
corgi_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
davinci_all_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
db1xxx_defconfig (mips, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
drivers/mtd/nand/raw/au1550nd.c:443:57: warning: pointer type mismatch in conditional expression
--------------------------------------------------------------------------------
decstation_64_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
decstation_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
decstation_r4k_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
defconfig (riscv, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
defconfig (arm64, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:815:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:820:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/pinctrl/pinctrl-rockchip.c:2783:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
dove_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
e55_defconfig (mips, gcc-8) — PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
ebsa110_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
efm32_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
em_x270_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
ep93xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
eseries_pxa_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
exynos_defconfig (arm, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/mmc/host/sdhci-s3c.c:613:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
ezx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
footbridge_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
fuloong2e_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
gcw0_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
gemini_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
gpr_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
h3600_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
h5000_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
hackkit_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
haps_hs_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
haps_hs_smp_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
hisi_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
hsdk_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
i386_defconfig (i386, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
imote2_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
imx_v4_v5_defconfig (arm, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/dma/imx-dma.c:542:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
imx_v6_v7_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
integrator_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
iop13xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
iop32x_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
iop33x_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
ip22_defconfig (mips, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
drivers/scsi/wd33c93.c:1856:11: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
ip27_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
ip28_defconfig (mips, gcc-8) — FAIL, 6 errors, 4 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
drivers/scsi/wd33c93.c:1856:11: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
ip32_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
ixp4xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
jazz_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
jmr3927_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
jornada720_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
keystone_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
ks8695_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
lart_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
lasat_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
lemote2f_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
loongson1b_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
loongson1c_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
loongson3_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
lpc18xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
lpc32xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
lpd270_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
lubbock_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
magician_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
mainstone_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
malta_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
malta_kvm_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
malta_kvm_guest_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
malta_qemu_32r6_defconfig (mips, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
{standard input}:131: Warning: macro instruction expanded into multiple instructions
--------------------------------------------------------------------------------
maltaaprp_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
maltasmvp_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
maltasmvp_eva_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
maltaup_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
maltaup_xpa_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
markeins_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
milbeaut_m10v_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mini2440_defconfig (arm, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/usb/gadget/udc/s3c2410_udc.c:314:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/gadget/udc/s3c2410_udc.c:418:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
mips_paravirt_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
mmp2_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
moxart_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
mpc30x_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
mps2_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
msp71xx_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
mtx1_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
multi_v4t_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v5_defconfig (arm, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/mmc/host/atmel-mci.c:2415:30: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2422:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2426:40: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
multi_v7_defconfig (arm, gcc-8) — FAIL, 6 errors, 16 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/dma/imx-dma.c:542:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/sdhci-s3c.c:613:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2415:30: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2422:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2426:40: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:815:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:820:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/pinctrl/pinctrl-rockchip.c:2783:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/video/fbdev/sh_mobile_lcdcfb.c:2086:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/video/fbdev/sh_mobile_lcdcfb.c:1596:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:424:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:440:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:459:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:332:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:352:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:370:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
mv78xx0_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
mvebu_v5_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
mvebu_v7_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
mxs_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
neponset_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
netwinder_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
nhk8815_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
nlm_xlp_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
nlm_xlr_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
nsim_hs_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
nsim_hs_smp_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
nsimosci_hs_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
nsimosci_hs_smp_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
nuc910_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nuc950_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nuc960_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omap1_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
omap2plus_defconfig (arm, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/cpufreq/ti-cpufreq.c:79:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
omega2p_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
orion5x_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
oxnas_v6_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
palmz72_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pcm027_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pic32mzda_defconfig (mips, gcc-8) — PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
pistachio_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
pleb_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pnx8335_stb225_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
prima2_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa168_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pxa255-idp_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pxa3xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pxa910_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
pxa_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
qcom_defconfig (arm, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:815:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c:820:20: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
qi_lb60_defconfig (mips, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
drivers/video/fbdev/jz4740_fb.c:300:8: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/watchdog/jz4740_wdt.c:165:6: warning: unused variable 'ret' [-Wunused-variable]
--------------------------------------------------------------------------------
rb532_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
rbtx49xx_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
realview_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
rm200_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
rpc_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
rt305x_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
rv32_defconfig (riscv, gcc-8) — FAIL, 6 errors, 3 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:830:2: warning: #warning syscall fstat64 not implemented [-Wcpp]
<stdin>:1127:2: warning: #warning syscall fstatat64 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
s3c2410_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
s3c6400_defconfig (arm, gcc-8) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
drivers/mmc/host/sdhci-s3c.c:613:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
s5pv210_defconfig (arm, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/mmc/host/sdhci-s3c.c:613:19: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
sama5_defconfig (arm, gcc-8) — FAIL, 6 errors, 4 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/mmc/host/atmel-mci.c:2415:30: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2422:28: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/mmc/host/atmel-mci.c:2426:40: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/gadget/udc/atmel_usba_udc.c:329:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
sb1250_swarm_defconfig (mips, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
shannon_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
shmobile_defconfig (arm, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/video/fbdev/sh_mobile_lcdcfb.c:2086:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/video/fbdev/sh_mobile_lcdcfb.c:1596:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
simpad_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
socfpga_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
spear13xx_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
spear3xx_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear6xx_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spitz_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
stm32_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sunxi_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
tango4_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
tb0219_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
tb0226_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
tb0287_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
tct_hammer_defconfig (arm, gcc-8) — FAIL, 6 errors, 2 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/usb/gadget/udc/s3c2410_udc.c:314:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/gadget/udc/s3c2410_udc.c:418:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
tegra_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
tinyconfig (i386, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (arm64, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (x86_64, gcc-8) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
.config:1168:warning: override: UNWINDER_GUESS changes choice state
--------------------------------------------------------------------------------
tinyconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (mips, gcc-8) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
tinyconfig (riscv, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (arc, gcc-8) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
trizeps4_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
u300_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
u8500_defconfig (arm, gcc-8) — FAIL, 6 errors, 6 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
drivers/usb/phy/phy-ab8500-usb.c:424:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:440:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:459:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:332:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:352:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
drivers/usb/phy/phy-ab8500-usb.c:370:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
--------------------------------------------------------------------------------
vdk_hs38_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
vdk_hs38_smp_defconfig (arc, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
versatile_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
vexpress_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
vf610m4_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
viper_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
vocore2_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
vt8500_v6_v7_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
workpad_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
x86_64_defconfig (x86_64, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
xcep_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
xway_defconfig (mips, gcc-8) — FAIL, 6 errors, 1 warning, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
Warnings:
<stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
--------------------------------------------------------------------------------
zeus_defconfig (arm, gcc-8) — FAIL, 6 errors, 0 warnings, 0 section mismatches
Errors:
include/linux/kernel.h:47:52: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/kernel.h:47:52: error: dereferencing pointer to incomplete type 'struct workqueue_struct'
include/linux/compiler.h:357:67: error: invalid use of undefined type 'struct workqueue_struct'
include/linux/build_bug.h:16:45: error: bit-field '<anonymous>' width not an integer constant
fs/io_uring.c:2571:18: error: invalid use of undefined type 'struct workqueue_struct'
fs/io_uring.c:2572:31: error: invalid use of undefined type 'struct workqueue_struct'
--------------------------------------------------------------------------------
zx_defconfig (arm, gcc-8) — PASS, 0 errors, 0 warnings, 0 section mismatches
---
For more info write to <info(a)kernelci.org>