Make sure to also limit the amount of soft reset retries for transaction
errors on streams in cases where the transaction error event doesn't point
to any specific TRB.
In these cases we don't know the TRB or stream ring, but we do know which
endpoint had the error.
To keep error counting simple and functional, move the current err_count
from ring structure to endpoint structure.
Cc: stable(a)vger.kernel.org
Signed-off-by: Mathias Nyman <mathias.nyman(a)linux.intel.com>
---
drivers/usb/host/xhci-ring.c | 14 ++++++++++----
drivers/usb/host/xhci.h | 2 +-
2 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c
index f6af479188e8..039ec9734fcd 100644
--- a/drivers/usb/host/xhci-ring.c
+++ b/drivers/usb/host/xhci-ring.c
@@ -2458,7 +2458,7 @@ static int process_bulk_intr_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
switch (trb_comp_code) {
case COMP_SUCCESS:
- ep_ring->err_count = 0;
+ ep->err_count = 0;
/* handle success with untransferred data as short packet */
if (ep_trb != td->last_trb || remaining) {
xhci_warn(xhci, "WARN Successful completion on short TX\n");
@@ -2484,7 +2484,7 @@ static int process_bulk_intr_td(struct xhci_hcd *xhci, struct xhci_virt_ep *ep,
break;
case COMP_USB_TRANSACTION_ERROR:
if (xhci->quirks & XHCI_NO_SOFT_RETRY ||
- (ep_ring->err_count++ > MAX_SOFT_RETRY) ||
+ (ep->err_count++ > MAX_SOFT_RETRY) ||
le32_to_cpu(slot_ctx->tt_info) & TT_SLOT)
break;
@@ -2565,8 +2565,14 @@ static int handle_tx_event(struct xhci_hcd *xhci,
case COMP_USB_TRANSACTION_ERROR:
case COMP_INVALID_STREAM_TYPE_ERROR:
case COMP_INVALID_STREAM_ID_ERROR:
- xhci_handle_halted_endpoint(xhci, ep, 0, NULL,
- EP_SOFT_RESET);
+ xhci_dbg(xhci, "Stream transaction error ep %u no id\n",
+ ep_index);
+ if (ep->err_count++ > MAX_SOFT_RETRY)
+ xhci_handle_halted_endpoint(xhci, ep, 0, NULL,
+ EP_HARD_RESET);
+ else
+ xhci_handle_halted_endpoint(xhci, ep, 0, NULL,
+ EP_SOFT_RESET);
goto cleanup;
case COMP_RING_UNDERRUN:
case COMP_RING_OVERRUN:
diff --git a/drivers/usb/host/xhci.h b/drivers/usb/host/xhci.h
index cc084d9505cd..c9f06c5e4e9d 100644
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -933,6 +933,7 @@ struct xhci_virt_ep {
* have to restore the device state to the previous state
*/
struct xhci_ring *new_ring;
+ unsigned int err_count;
unsigned int ep_state;
#define SET_DEQ_PENDING (1 << 0)
#define EP_HALTED (1 << 1) /* For stall handling */
@@ -1627,7 +1628,6 @@ struct xhci_ring {
* if we own the TRB (if we are the consumer). See section 4.9.1.
*/
u32 cycle_state;
- unsigned int err_count;
unsigned int stream_id;
unsigned int num_segs;
unsigned int num_trbs_free;
--
2.25.1
From: Reka Norman <rekanorman(a)chromium.org>
ADL-N systems have the same issue as ADL-P, where a large boot firmware
delay is seen if USB ports are left in U3 at shutdown. So apply the
XHCI_RESET_TO_DEFAULT quirk to ADL-N as well.
This patch depends on commit 34cd2db408d5 ("xhci: Add quirk to reset
host back to default state at shutdown").
The issue it fixes is a ~20s boot time delay when booting from S5. It
affects ADL-N devices, and ADL-N support was added starting from v5.16.
Cc: stable(a)vger.kernel.org
Signed-off-by: Reka Norman <rekanorman(a)chromium.org>
Signed-off-by: Mathias Nyman <mathias.nyman(a)linux.intel.com>
---
drivers/usb/host/xhci-pci.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
index 7bccbe50bab1..f98cf30a3c1a 100644
--- a/drivers/usb/host/xhci-pci.c
+++ b/drivers/usb/host/xhci-pci.c
@@ -59,6 +59,7 @@
#define PCI_DEVICE_ID_INTEL_TIGER_LAKE_XHCI 0x9a13
#define PCI_DEVICE_ID_INTEL_MAPLE_RIDGE_XHCI 0x1138
#define PCI_DEVICE_ID_INTEL_ALDER_LAKE_PCH_XHCI 0x51ed
+#define PCI_DEVICE_ID_INTEL_ALDER_LAKE_N_PCH_XHCI 0x54ed
#define PCI_DEVICE_ID_AMD_RENOIR_XHCI 0x1639
#define PCI_DEVICE_ID_AMD_PROMONTORYA_4 0x43b9
@@ -246,7 +247,8 @@ static void xhci_pci_quirks(struct device *dev, struct xhci_hcd *xhci)
xhci->quirks |= XHCI_MISSING_CAS;
if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
- pdev->device == PCI_DEVICE_ID_INTEL_ALDER_LAKE_PCH_XHCI)
+ (pdev->device == PCI_DEVICE_ID_INTEL_ALDER_LAKE_PCH_XHCI ||
+ pdev->device == PCI_DEVICE_ID_INTEL_ALDER_LAKE_N_PCH_XHCI))
xhci->quirks |= XHCI_RESET_TO_DEFAULT;
if (pdev->vendor == PCI_VENDOR_ID_INTEL &&
--
2.25.1
by Haute Fox | Contemporary and Plus Size Wholesaler
Dear hwxСчacтbя_вam_15675rubl
https://telegra.ph/KF-730148-11-27#,
Thank you for your interest in shopping with us!
To complete the www.hautefox.com registration process, please email a legible copy/photo of your seller’s permit or business license to showroom(a)hautefox.com. You may also fax it to 213-493-4291. We will send an approval notification upon verification.
If you have registered with www.hautefox.com in the past and are having trouble accessing the account, please email us the registered company name, the contact name, and email address. We will get back to you after reviewing your account.
International retailers registering for the first time, please email us your website URL, invoices from other wholesalers, or a copy of your business card, instead of the seller�s permit.
If you have any questions, please do not hesitate to contact us at showroom(a)hautefox.com. It is our pleasure to help you!
Have a great day!
On Wed, Oct 26, 2022 at 11:44 AM Michele Jr De Candia
<mdecandia(a)gmail.com> wrote:
>
> Hi Greg,
> sorry for the confusion.
>
> I'm running a container-based app on top of Ubuntu Linux 20.04 and linux kernel 5.4 always updated with latest patches.
>
> Updating from 5.4.210 to 5.4.211 we faced the hang up issue and searching for the cause we have tested that
> hangup occurs only with this patch
>
> https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=…
>
> While understanding root cause, wt the moment we reverted it and hang up does not occurs (actually we are running 5.4.219 without that patch).
>
> Michele
>
Hi Michele, can you try the latest upstream kernel and see if the
issue repro ther? Also is it possible to provide a simplified repro of
the issue?
Shakeel
Hello!
Would the stable maintainers please consider backporting the following
commit to the 4.9 and 4.14 stable branches?
commit e3b03bf29d6b99fab7001fb20c33fe54928c157a
Author: Masahiro Yamada <yamada.masahiro(a)socionext.com>
Date: Sat Dec 16 00:28:42 2017 +0900
kconfig: display recursive dependency resolution hint just once
The following failures are found with Clang's `-Wmisleading-indentation`:
-----8<----------8<----------8<-----
In file included from scripts/kconfig/zconf.tab.c:2470:
/builds/linux/scripts/kconfig/symbol.c:1153:4: warning: misleading
indentation; statement is not part of the previous 'if'
[-Wmisleading-indentation]
fprintf(stderr, "For a resolution refer to
Documentation/kbuild/kconfig-language.txt\n");
^
/builds/linux/scripts/kconfig/symbol.c:1150:3: note: previous statement is here
if (stack->sym == last_sym)
^
1 warning generated.
----->8---------->8---------->8-----
Thanks and greetings!
Daniel Díaz
daniel.diaz(a)linaro.org
I think the patch 50b2e8711462409cd368c41067405aa446dfa2af ("wifi:
mac80211: fix memory free error when registering wiphy fail") should be
backported to 5.15 as its fixing memory handling. Already run-tested
with OpenWrt on 5.15 kernel.
Bests
Nick
After commit a020f22a4ff5 ("pwm: jz4740: Make PWM start with the active part"),
the trick to set duty > period to properly shut down TCU2 channels did
not work anymore, because of the polarity inversion.
Address this issue by restoring the proper polarity before disabling the
channels.
Fixes: a020f22a4ff5 ("pwm: jz4740: Make PWM start with the active part")
Signed-off-by: Paul Cercueil <paul(a)crapouillou.net>
Cc: stable(a)vger.kernel.org
---
drivers/pwm/pwm-jz4740.c | 62 ++++++++++++++++++++++++++--------------
1 file changed, 40 insertions(+), 22 deletions(-)
diff --git a/drivers/pwm/pwm-jz4740.c b/drivers/pwm/pwm-jz4740.c
index 228eb104bf1e..65462a0052af 100644
--- a/drivers/pwm/pwm-jz4740.c
+++ b/drivers/pwm/pwm-jz4740.c
@@ -97,6 +97,19 @@ static int jz4740_pwm_enable(struct pwm_chip *chip, struct pwm_device *pwm)
return 0;
}
+static void jz4740_pwm_set_polarity(struct jz4740_pwm_chip *jz,
+ unsigned int hwpwm,
+ enum pwm_polarity polarity)
+{
+ unsigned int value = 0;
+
+ if (polarity == PWM_POLARITY_INVERSED)
+ value = TCU_TCSR_PWM_INITL_HIGH;
+
+ regmap_update_bits(jz->map, TCU_REG_TCSRc(hwpwm),
+ TCU_TCSR_PWM_INITL_HIGH, value);
+}
+
static void jz4740_pwm_disable(struct pwm_chip *chip, struct pwm_device *pwm)
{
struct jz4740_pwm_chip *jz = to_jz4740(chip);
@@ -130,6 +143,7 @@ static int jz4740_pwm_apply(struct pwm_chip *chip, struct pwm_device *pwm,
unsigned long long tmp = 0xffffull * NSEC_PER_SEC;
struct clk *clk = pwm_get_chip_data(pwm);
unsigned long period, duty;
+ enum pwm_polarity polarity;
long rate;
int err;
@@ -169,6 +183,9 @@ static int jz4740_pwm_apply(struct pwm_chip *chip, struct pwm_device *pwm,
if (duty >= period)
duty = period - 1;
+ /* Restore regular polarity before disabling the channel. */
+ jz4740_pwm_set_polarity(jz4740, pwm->hwpwm, state->polarity);
+
jz4740_pwm_disable(chip, pwm);
err = clk_set_rate(clk, rate);
@@ -190,29 +207,30 @@ static int jz4740_pwm_apply(struct pwm_chip *chip, struct pwm_device *pwm,
regmap_update_bits(jz4740->map, TCU_REG_TCSRc(pwm->hwpwm),
TCU_TCSR_PWM_SD, TCU_TCSR_PWM_SD);
- /*
- * Set polarity.
- *
- * The PWM starts in inactive state until the internal timer reaches the
- * duty value, then becomes active until the timer reaches the period
- * value. In theory, we should then use (period - duty) as the real duty
- * value, as a high duty value would otherwise result in the PWM pin
- * being inactive most of the time.
- *
- * Here, we don't do that, and instead invert the polarity of the PWM
- * when it is active. This trick makes the PWM start with its active
- * state instead of its inactive state.
- */
- if ((state->polarity == PWM_POLARITY_NORMAL) ^ state->enabled)
- regmap_update_bits(jz4740->map, TCU_REG_TCSRc(pwm->hwpwm),
- TCU_TCSR_PWM_INITL_HIGH, 0);
- else
- regmap_update_bits(jz4740->map, TCU_REG_TCSRc(pwm->hwpwm),
- TCU_TCSR_PWM_INITL_HIGH,
- TCU_TCSR_PWM_INITL_HIGH);
-
- if (state->enabled)
+ if (state->enabled) {
+ /*
+ * Set polarity.
+ *
+ * The PWM starts in inactive state until the internal timer
+ * reaches the duty value, then becomes active until the timer
+ * reaches the period value. In theory, we should then use
+ * (period - duty) as the real duty value, as a high duty value
+ * would otherwise result in the PWM pin being inactive most of
+ * the time.
+ *
+ * Here, we don't do that, and instead invert the polarity of
+ * the PWM when it is active. This trick makes the PWM start
+ * with its active state instead of its inactive state.
+ */
+ if (state->polarity == PWM_POLARITY_NORMAL)
+ polarity = PWM_POLARITY_INVERSED;
+ else
+ polarity = PWM_POLARITY_NORMAL;
+
+ jz4740_pwm_set_polarity(jz4740, pwm->hwpwm, polarity);
+
jz4740_pwm_enable(chip, pwm);
+ }
return 0;
}
--
2.35.1
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>.
Possible dependencies:
f6b1a1cf1c3e ("ext4: fix use-after-free in ext4_ext_shift_extents")
1811bc401aa5 ("ext4: refresh the ext4_ext_path struct after dropping i_data_sem.")
4268496e48dc ("ext4: ensure enough credits in ext4_ext_shift_path_extents")
4756ee183f25 ("ext4: use true,false for bool variable")
83448bdfb597 ("ext4: Reserve revoke credits for freed blocks")
fdc3ef882a5d ("jbd2: Reserve space for revoke descriptor blocks")
ec8b6f600e49 ("jbd2: Factor out common parts of stopping and restarting a handle")
5559b2d81b51 ("jbd2: Drop pointless wakeup from jbd2_journal_stop()")
dfaf5ffda227 ("jbd2: Reorganize jbd2_journal_stop()")
a9a8344ee171 ("ext4, jbd2: Provide accessor function for handle credits")
a413036791d0 ("ext4: Provide function to handle transaction restarts")
6cb367c2d1f8 ("ext4: Use ext4_journal_extend() instead of jbd2_journal_extend()")
538bcaa6261b ("jbd2: fix race when writing superblock")
32ea275008d8 ("jbd2: update locking documentation for transaction_t")
fb265c9cb49e ("ext4: add ext4_sb_bread() to disambiguate ENOMEM cases")
53692ec074d0 ("ext4: fix buffer leak in ext4_expand_extra_isize_ea() on error path")
4f32c38b4662 ("ext4: avoid possible double brelse() in add_new_gdb() on error path")
0b02f4c0d6d9 ("ext4: fix reserved cluster accounting at delayed write time")
1dc0aa46e74a ("ext4: add new pending reservation mechanism")
ad431025aecd ("ext4: generalize extents status tree search functions")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From f6b1a1cf1c3ee430d3f5e47847047ce789a690aa Mon Sep 17 00:00:00 2001
From: Baokun Li <libaokun1(a)huawei.com>
Date: Thu, 22 Sep 2022 20:04:34 +0800
Subject: [PATCH] ext4: fix use-after-free in ext4_ext_shift_extents
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
If the starting position of our insert range happens to be in the hole
between the two ext4_extent_idx, because the lblk of the ext4_extent in
the previous ext4_extent_idx is always less than the start, which leads
to the "extent" variable access across the boundary, the following UAF is
triggered:
==================================================================
BUG: KASAN: use-after-free in ext4_ext_shift_extents+0x257/0x790
Read of size 4 at addr ffff88819807a008 by task fallocate/8010
CPU: 3 PID: 8010 Comm: fallocate Tainted: G E 5.10.0+ #492
Call Trace:
dump_stack+0x7d/0xa3
print_address_description.constprop.0+0x1e/0x220
kasan_report.cold+0x67/0x7f
ext4_ext_shift_extents+0x257/0x790
ext4_insert_range+0x5b6/0x700
ext4_fallocate+0x39e/0x3d0
vfs_fallocate+0x26f/0x470
ksys_fallocate+0x3a/0x70
__x64_sys_fallocate+0x4f/0x60
do_syscall_64+0x33/0x40
entry_SYSCALL_64_after_hwframe+0x44/0xa9
==================================================================
For right shifts, we can divide them into the following situations:
1. When the first ee_block of ext4_extent_idx is greater than or equal to
start, make right shifts directly from the first ee_block.
1) If it is greater than start, we need to continue searching in the
previous ext4_extent_idx.
2) If it is equal to start, we can exit the loop (iterator=NULL).
2. When the first ee_block of ext4_extent_idx is less than start, then
traverse from the last extent to find the first extent whose ee_block
is less than start.
1) If extent is still the last extent after traversal, it means that
the last ee_block of ext4_extent_idx is less than start, that is,
start is located in the hole between idx and (idx+1), so we can
exit the loop directly (break) without right shifts.
2) Otherwise, make right shifts at the corresponding position of the
found extent, and then exit the loop (iterator=NULL).
Fixes: 331573febb6a ("ext4: Add support FALLOC_FL_INSERT_RANGE for fallocate")
Cc: stable(a)vger.kernel.org # v4.2+
Signed-off-by: Zhihao Cheng <chengzhihao1(a)huawei.com>
Signed-off-by: Baokun Li <libaokun1(a)huawei.com>
Link: https://lore.kernel.org/r/20220922120434.1294789-1-libaokun1@huawei.com
Signed-off-by: Theodore Ts'o <tytso(a)mit.edu>
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
index f1956288307f..6c399a8b22b3 100644
--- a/fs/ext4/extents.c
+++ b/fs/ext4/extents.c
@@ -5184,6 +5184,7 @@ ext4_ext_shift_extents(struct inode *inode, handle_t *handle,
* and it is decreased till we reach start.
*/
again:
+ ret = 0;
if (SHIFT == SHIFT_LEFT)
iterator = &start;
else
@@ -5227,14 +5228,21 @@ ext4_ext_shift_extents(struct inode *inode, handle_t *handle,
ext4_ext_get_actual_len(extent);
} else {
extent = EXT_FIRST_EXTENT(path[depth].p_hdr);
- if (le32_to_cpu(extent->ee_block) > 0)
+ if (le32_to_cpu(extent->ee_block) > start)
*iterator = le32_to_cpu(extent->ee_block) - 1;
- else
- /* Beginning is reached, end of the loop */
+ else if (le32_to_cpu(extent->ee_block) == start)
iterator = NULL;
- /* Update path extent in case we need to stop */
- while (le32_to_cpu(extent->ee_block) < start)
+ else {
+ extent = EXT_LAST_EXTENT(path[depth].p_hdr);
+ while (le32_to_cpu(extent->ee_block) >= start)
+ extent--;
+
+ if (extent == EXT_LAST_EXTENT(path[depth].p_hdr))
+ break;
+
extent++;
+ iterator = NULL;
+ }
path[depth].p_ext = extent;
}
ret = ext4_ext_shift_path_extents(path, shift, inode,
The patch below does not apply to the 4.14-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>.
Possible dependencies:
f6b1a1cf1c3e ("ext4: fix use-after-free in ext4_ext_shift_extents")
1811bc401aa5 ("ext4: refresh the ext4_ext_path struct after dropping i_data_sem.")
4268496e48dc ("ext4: ensure enough credits in ext4_ext_shift_path_extents")
4756ee183f25 ("ext4: use true,false for bool variable")
83448bdfb597 ("ext4: Reserve revoke credits for freed blocks")
fdc3ef882a5d ("jbd2: Reserve space for revoke descriptor blocks")
ec8b6f600e49 ("jbd2: Factor out common parts of stopping and restarting a handle")
5559b2d81b51 ("jbd2: Drop pointless wakeup from jbd2_journal_stop()")
dfaf5ffda227 ("jbd2: Reorganize jbd2_journal_stop()")
a9a8344ee171 ("ext4, jbd2: Provide accessor function for handle credits")
a413036791d0 ("ext4: Provide function to handle transaction restarts")
6cb367c2d1f8 ("ext4: Use ext4_journal_extend() instead of jbd2_journal_extend()")
538bcaa6261b ("jbd2: fix race when writing superblock")
32ea275008d8 ("jbd2: update locking documentation for transaction_t")
fb265c9cb49e ("ext4: add ext4_sb_bread() to disambiguate ENOMEM cases")
53692ec074d0 ("ext4: fix buffer leak in ext4_expand_extra_isize_ea() on error path")
4f32c38b4662 ("ext4: avoid possible double brelse() in add_new_gdb() on error path")
0b02f4c0d6d9 ("ext4: fix reserved cluster accounting at delayed write time")
1dc0aa46e74a ("ext4: add new pending reservation mechanism")
ad431025aecd ("ext4: generalize extents status tree search functions")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From f6b1a1cf1c3ee430d3f5e47847047ce789a690aa Mon Sep 17 00:00:00 2001
From: Baokun Li <libaokun1(a)huawei.com>
Date: Thu, 22 Sep 2022 20:04:34 +0800
Subject: [PATCH] ext4: fix use-after-free in ext4_ext_shift_extents
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
If the starting position of our insert range happens to be in the hole
between the two ext4_extent_idx, because the lblk of the ext4_extent in
the previous ext4_extent_idx is always less than the start, which leads
to the "extent" variable access across the boundary, the following UAF is
triggered:
==================================================================
BUG: KASAN: use-after-free in ext4_ext_shift_extents+0x257/0x790
Read of size 4 at addr ffff88819807a008 by task fallocate/8010
CPU: 3 PID: 8010 Comm: fallocate Tainted: G E 5.10.0+ #492
Call Trace:
dump_stack+0x7d/0xa3
print_address_description.constprop.0+0x1e/0x220
kasan_report.cold+0x67/0x7f
ext4_ext_shift_extents+0x257/0x790
ext4_insert_range+0x5b6/0x700
ext4_fallocate+0x39e/0x3d0
vfs_fallocate+0x26f/0x470
ksys_fallocate+0x3a/0x70
__x64_sys_fallocate+0x4f/0x60
do_syscall_64+0x33/0x40
entry_SYSCALL_64_after_hwframe+0x44/0xa9
==================================================================
For right shifts, we can divide them into the following situations:
1. When the first ee_block of ext4_extent_idx is greater than or equal to
start, make right shifts directly from the first ee_block.
1) If it is greater than start, we need to continue searching in the
previous ext4_extent_idx.
2) If it is equal to start, we can exit the loop (iterator=NULL).
2. When the first ee_block of ext4_extent_idx is less than start, then
traverse from the last extent to find the first extent whose ee_block
is less than start.
1) If extent is still the last extent after traversal, it means that
the last ee_block of ext4_extent_idx is less than start, that is,
start is located in the hole between idx and (idx+1), so we can
exit the loop directly (break) without right shifts.
2) Otherwise, make right shifts at the corresponding position of the
found extent, and then exit the loop (iterator=NULL).
Fixes: 331573febb6a ("ext4: Add support FALLOC_FL_INSERT_RANGE for fallocate")
Cc: stable(a)vger.kernel.org # v4.2+
Signed-off-by: Zhihao Cheng <chengzhihao1(a)huawei.com>
Signed-off-by: Baokun Li <libaokun1(a)huawei.com>
Link: https://lore.kernel.org/r/20220922120434.1294789-1-libaokun1@huawei.com
Signed-off-by: Theodore Ts'o <tytso(a)mit.edu>
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
index f1956288307f..6c399a8b22b3 100644
--- a/fs/ext4/extents.c
+++ b/fs/ext4/extents.c
@@ -5184,6 +5184,7 @@ ext4_ext_shift_extents(struct inode *inode, handle_t *handle,
* and it is decreased till we reach start.
*/
again:
+ ret = 0;
if (SHIFT == SHIFT_LEFT)
iterator = &start;
else
@@ -5227,14 +5228,21 @@ ext4_ext_shift_extents(struct inode *inode, handle_t *handle,
ext4_ext_get_actual_len(extent);
} else {
extent = EXT_FIRST_EXTENT(path[depth].p_hdr);
- if (le32_to_cpu(extent->ee_block) > 0)
+ if (le32_to_cpu(extent->ee_block) > start)
*iterator = le32_to_cpu(extent->ee_block) - 1;
- else
- /* Beginning is reached, end of the loop */
+ else if (le32_to_cpu(extent->ee_block) == start)
iterator = NULL;
- /* Update path extent in case we need to stop */
- while (le32_to_cpu(extent->ee_block) < start)
+ else {
+ extent = EXT_LAST_EXTENT(path[depth].p_hdr);
+ while (le32_to_cpu(extent->ee_block) >= start)
+ extent--;
+
+ if (extent == EXT_LAST_EXTENT(path[depth].p_hdr))
+ break;
+
extent++;
+ iterator = NULL;
+ }
path[depth].p_ext = extent;
}
ret = ext4_ext_shift_path_extents(path, shift, inode,
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>.
Possible dependencies:
f6b1a1cf1c3e ("ext4: fix use-after-free in ext4_ext_shift_extents")
1811bc401aa5 ("ext4: refresh the ext4_ext_path struct after dropping i_data_sem.")
4268496e48dc ("ext4: ensure enough credits in ext4_ext_shift_path_extents")
4756ee183f25 ("ext4: use true,false for bool variable")
83448bdfb597 ("ext4: Reserve revoke credits for freed blocks")
fdc3ef882a5d ("jbd2: Reserve space for revoke descriptor blocks")
ec8b6f600e49 ("jbd2: Factor out common parts of stopping and restarting a handle")
5559b2d81b51 ("jbd2: Drop pointless wakeup from jbd2_journal_stop()")
dfaf5ffda227 ("jbd2: Reorganize jbd2_journal_stop()")
a9a8344ee171 ("ext4, jbd2: Provide accessor function for handle credits")
a413036791d0 ("ext4: Provide function to handle transaction restarts")
6cb367c2d1f8 ("ext4: Use ext4_journal_extend() instead of jbd2_journal_extend()")
538bcaa6261b ("jbd2: fix race when writing superblock")
32ea275008d8 ("jbd2: update locking documentation for transaction_t")
fb265c9cb49e ("ext4: add ext4_sb_bread() to disambiguate ENOMEM cases")
53692ec074d0 ("ext4: fix buffer leak in ext4_expand_extra_isize_ea() on error path")
4f32c38b4662 ("ext4: avoid possible double brelse() in add_new_gdb() on error path")
0b02f4c0d6d9 ("ext4: fix reserved cluster accounting at delayed write time")
1dc0aa46e74a ("ext4: add new pending reservation mechanism")
ad431025aecd ("ext4: generalize extents status tree search functions")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From f6b1a1cf1c3ee430d3f5e47847047ce789a690aa Mon Sep 17 00:00:00 2001
From: Baokun Li <libaokun1(a)huawei.com>
Date: Thu, 22 Sep 2022 20:04:34 +0800
Subject: [PATCH] ext4: fix use-after-free in ext4_ext_shift_extents
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
If the starting position of our insert range happens to be in the hole
between the two ext4_extent_idx, because the lblk of the ext4_extent in
the previous ext4_extent_idx is always less than the start, which leads
to the "extent" variable access across the boundary, the following UAF is
triggered:
==================================================================
BUG: KASAN: use-after-free in ext4_ext_shift_extents+0x257/0x790
Read of size 4 at addr ffff88819807a008 by task fallocate/8010
CPU: 3 PID: 8010 Comm: fallocate Tainted: G E 5.10.0+ #492
Call Trace:
dump_stack+0x7d/0xa3
print_address_description.constprop.0+0x1e/0x220
kasan_report.cold+0x67/0x7f
ext4_ext_shift_extents+0x257/0x790
ext4_insert_range+0x5b6/0x700
ext4_fallocate+0x39e/0x3d0
vfs_fallocate+0x26f/0x470
ksys_fallocate+0x3a/0x70
__x64_sys_fallocate+0x4f/0x60
do_syscall_64+0x33/0x40
entry_SYSCALL_64_after_hwframe+0x44/0xa9
==================================================================
For right shifts, we can divide them into the following situations:
1. When the first ee_block of ext4_extent_idx is greater than or equal to
start, make right shifts directly from the first ee_block.
1) If it is greater than start, we need to continue searching in the
previous ext4_extent_idx.
2) If it is equal to start, we can exit the loop (iterator=NULL).
2. When the first ee_block of ext4_extent_idx is less than start, then
traverse from the last extent to find the first extent whose ee_block
is less than start.
1) If extent is still the last extent after traversal, it means that
the last ee_block of ext4_extent_idx is less than start, that is,
start is located in the hole between idx and (idx+1), so we can
exit the loop directly (break) without right shifts.
2) Otherwise, make right shifts at the corresponding position of the
found extent, and then exit the loop (iterator=NULL).
Fixes: 331573febb6a ("ext4: Add support FALLOC_FL_INSERT_RANGE for fallocate")
Cc: stable(a)vger.kernel.org # v4.2+
Signed-off-by: Zhihao Cheng <chengzhihao1(a)huawei.com>
Signed-off-by: Baokun Li <libaokun1(a)huawei.com>
Link: https://lore.kernel.org/r/20220922120434.1294789-1-libaokun1@huawei.com
Signed-off-by: Theodore Ts'o <tytso(a)mit.edu>
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
index f1956288307f..6c399a8b22b3 100644
--- a/fs/ext4/extents.c
+++ b/fs/ext4/extents.c
@@ -5184,6 +5184,7 @@ ext4_ext_shift_extents(struct inode *inode, handle_t *handle,
* and it is decreased till we reach start.
*/
again:
+ ret = 0;
if (SHIFT == SHIFT_LEFT)
iterator = &start;
else
@@ -5227,14 +5228,21 @@ ext4_ext_shift_extents(struct inode *inode, handle_t *handle,
ext4_ext_get_actual_len(extent);
} else {
extent = EXT_FIRST_EXTENT(path[depth].p_hdr);
- if (le32_to_cpu(extent->ee_block) > 0)
+ if (le32_to_cpu(extent->ee_block) > start)
*iterator = le32_to_cpu(extent->ee_block) - 1;
- else
- /* Beginning is reached, end of the loop */
+ else if (le32_to_cpu(extent->ee_block) == start)
iterator = NULL;
- /* Update path extent in case we need to stop */
- while (le32_to_cpu(extent->ee_block) < start)
+ else {
+ extent = EXT_LAST_EXTENT(path[depth].p_hdr);
+ while (le32_to_cpu(extent->ee_block) >= start)
+ extent--;
+
+ if (extent == EXT_LAST_EXTENT(path[depth].p_hdr))
+ break;
+
extent++;
+ iterator = NULL;
+ }
path[depth].p_ext = extent;
}
ret = ext4_ext_shift_path_extents(path, shift, inode,
The patch below does not apply to the 5.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>.
Possible dependencies:
f6b1a1cf1c3e ("ext4: fix use-after-free in ext4_ext_shift_extents")
1811bc401aa5 ("ext4: refresh the ext4_ext_path struct after dropping i_data_sem.")
4268496e48dc ("ext4: ensure enough credits in ext4_ext_shift_path_extents")
4756ee183f25 ("ext4: use true,false for bool variable")
83448bdfb597 ("ext4: Reserve revoke credits for freed blocks")
fdc3ef882a5d ("jbd2: Reserve space for revoke descriptor blocks")
ec8b6f600e49 ("jbd2: Factor out common parts of stopping and restarting a handle")
5559b2d81b51 ("jbd2: Drop pointless wakeup from jbd2_journal_stop()")
dfaf5ffda227 ("jbd2: Reorganize jbd2_journal_stop()")
a9a8344ee171 ("ext4, jbd2: Provide accessor function for handle credits")
a413036791d0 ("ext4: Provide function to handle transaction restarts")
6cb367c2d1f8 ("ext4: Use ext4_journal_extend() instead of jbd2_journal_extend()")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From f6b1a1cf1c3ee430d3f5e47847047ce789a690aa Mon Sep 17 00:00:00 2001
From: Baokun Li <libaokun1(a)huawei.com>
Date: Thu, 22 Sep 2022 20:04:34 +0800
Subject: [PATCH] ext4: fix use-after-free in ext4_ext_shift_extents
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
If the starting position of our insert range happens to be in the hole
between the two ext4_extent_idx, because the lblk of the ext4_extent in
the previous ext4_extent_idx is always less than the start, which leads
to the "extent" variable access across the boundary, the following UAF is
triggered:
==================================================================
BUG: KASAN: use-after-free in ext4_ext_shift_extents+0x257/0x790
Read of size 4 at addr ffff88819807a008 by task fallocate/8010
CPU: 3 PID: 8010 Comm: fallocate Tainted: G E 5.10.0+ #492
Call Trace:
dump_stack+0x7d/0xa3
print_address_description.constprop.0+0x1e/0x220
kasan_report.cold+0x67/0x7f
ext4_ext_shift_extents+0x257/0x790
ext4_insert_range+0x5b6/0x700
ext4_fallocate+0x39e/0x3d0
vfs_fallocate+0x26f/0x470
ksys_fallocate+0x3a/0x70
__x64_sys_fallocate+0x4f/0x60
do_syscall_64+0x33/0x40
entry_SYSCALL_64_after_hwframe+0x44/0xa9
==================================================================
For right shifts, we can divide them into the following situations:
1. When the first ee_block of ext4_extent_idx is greater than or equal to
start, make right shifts directly from the first ee_block.
1) If it is greater than start, we need to continue searching in the
previous ext4_extent_idx.
2) If it is equal to start, we can exit the loop (iterator=NULL).
2. When the first ee_block of ext4_extent_idx is less than start, then
traverse from the last extent to find the first extent whose ee_block
is less than start.
1) If extent is still the last extent after traversal, it means that
the last ee_block of ext4_extent_idx is less than start, that is,
start is located in the hole between idx and (idx+1), so we can
exit the loop directly (break) without right shifts.
2) Otherwise, make right shifts at the corresponding position of the
found extent, and then exit the loop (iterator=NULL).
Fixes: 331573febb6a ("ext4: Add support FALLOC_FL_INSERT_RANGE for fallocate")
Cc: stable(a)vger.kernel.org # v4.2+
Signed-off-by: Zhihao Cheng <chengzhihao1(a)huawei.com>
Signed-off-by: Baokun Li <libaokun1(a)huawei.com>
Link: https://lore.kernel.org/r/20220922120434.1294789-1-libaokun1@huawei.com
Signed-off-by: Theodore Ts'o <tytso(a)mit.edu>
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
index f1956288307f..6c399a8b22b3 100644
--- a/fs/ext4/extents.c
+++ b/fs/ext4/extents.c
@@ -5184,6 +5184,7 @@ ext4_ext_shift_extents(struct inode *inode, handle_t *handle,
* and it is decreased till we reach start.
*/
again:
+ ret = 0;
if (SHIFT == SHIFT_LEFT)
iterator = &start;
else
@@ -5227,14 +5228,21 @@ ext4_ext_shift_extents(struct inode *inode, handle_t *handle,
ext4_ext_get_actual_len(extent);
} else {
extent = EXT_FIRST_EXTENT(path[depth].p_hdr);
- if (le32_to_cpu(extent->ee_block) > 0)
+ if (le32_to_cpu(extent->ee_block) > start)
*iterator = le32_to_cpu(extent->ee_block) - 1;
- else
- /* Beginning is reached, end of the loop */
+ else if (le32_to_cpu(extent->ee_block) == start)
iterator = NULL;
- /* Update path extent in case we need to stop */
- while (le32_to_cpu(extent->ee_block) < start)
+ else {
+ extent = EXT_LAST_EXTENT(path[depth].p_hdr);
+ while (le32_to_cpu(extent->ee_block) >= start)
+ extent--;
+
+ if (extent == EXT_LAST_EXTENT(path[depth].p_hdr))
+ break;
+
extent++;
+ iterator = NULL;
+ }
path[depth].p_ext = extent;
}
ret = ext4_ext_shift_path_extents(path, shift, inode,
The patch below does not apply to the 5.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>.
Possible dependencies:
f90f5afd5083 ("usb: dwc3: gadget: Clear ep descriptor last")
ffb9da4a04c6 ("usb: dwc3: gadget: Return -ESHUTDOWN on ep disable")
b44c0e7fef51 ("usb: dwc3: gadget: conditionally remove requests")
5aef629704ad ("usb: dwc3: gadget: Clear DEP flags after stop transfers in ep disable")
f09ddcfcb8c5 ("usb: dwc3: gadget: Prevent EP queuing while stopping transfers")
a1383b3537a7 ("usb: dwc3: gadget: Restart DWC3 gadget when enabling pullup")
ae7e86108b12 ("usb: dwc3: Stop active transfers before halting the controller")
140ca4cfea8a ("usb: dwc3: gadget: Handle stream transfers")
e0d19563eb6c ("usb: dwc3: gadget: Wait for transfer completion")
3eaecd0c2333 ("usb: dwc3: gadget: Handle XferComplete for streams")
da10bcdd6f70 ("usb: dwc3: gadget: Delay starting transfer")
d3abda5a98a1 ("usb: dwc3: gadget: Clear started flag for non-IOC")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From f90f5afd5083a7cb4aee13bd4cc0ae600bd381ca Mon Sep 17 00:00:00 2001
From: Thinh Nguyen <Thinh.Nguyen(a)synopsys.com>
Date: Tue, 15 Nov 2022 17:19:43 -0800
Subject: [PATCH] usb: dwc3: gadget: Clear ep descriptor last
Until the endpoint is disabled, its descriptors should remain valid.
When its requests are removed from ep disable, the request completion
routine may attempt to access the endpoint's descriptor. Don't clear the
descriptors before that.
Fixes: f09ddcfcb8c5 ("usb: dwc3: gadget: Prevent EP queuing while stopping transfers")
Cc: stable(a)vger.kernel.org
Signed-off-by: Thinh Nguyen <Thinh.Nguyen(a)synopsys.com>
Link: https://lore.kernel.org/r/45db7c83b209259115bf652af210f8b2b3b1a383.16685613…
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index 8b4cfa07539d..6d524fa76443 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -1024,12 +1024,6 @@ static int __dwc3_gadget_ep_disable(struct dwc3_ep *dep)
reg &= ~DWC3_DALEPENA_EP(dep->number);
dwc3_writel(dwc->regs, DWC3_DALEPENA, reg);
- /* Clear out the ep descriptors for non-ep0 */
- if (dep->number > 1) {
- dep->endpoint.comp_desc = NULL;
- dep->endpoint.desc = NULL;
- }
-
dwc3_remove_requests(dwc, dep, -ESHUTDOWN);
dep->stream_capable = false;
@@ -1044,6 +1038,12 @@ static int __dwc3_gadget_ep_disable(struct dwc3_ep *dep)
mask |= (DWC3_EP_DELAY_STOP | DWC3_EP_TRANSFER_STARTED);
dep->flags &= mask;
+ /* Clear out the ep descriptors for non-ep0 */
+ if (dep->number > 1) {
+ dep->endpoint.comp_desc = NULL;
+ dep->endpoint.desc = NULL;
+ }
+
return 0;
}
The patch below does not apply to the 5.10-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>.
Possible dependencies:
f90f5afd5083 ("usb: dwc3: gadget: Clear ep descriptor last")
ffb9da4a04c6 ("usb: dwc3: gadget: Return -ESHUTDOWN on ep disable")
b44c0e7fef51 ("usb: dwc3: gadget: conditionally remove requests")
5aef629704ad ("usb: dwc3: gadget: Clear DEP flags after stop transfers in ep disable")
f09ddcfcb8c5 ("usb: dwc3: gadget: Prevent EP queuing while stopping transfers")
a1383b3537a7 ("usb: dwc3: gadget: Restart DWC3 gadget when enabling pullup")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From f90f5afd5083a7cb4aee13bd4cc0ae600bd381ca Mon Sep 17 00:00:00 2001
From: Thinh Nguyen <Thinh.Nguyen(a)synopsys.com>
Date: Tue, 15 Nov 2022 17:19:43 -0800
Subject: [PATCH] usb: dwc3: gadget: Clear ep descriptor last
Until the endpoint is disabled, its descriptors should remain valid.
When its requests are removed from ep disable, the request completion
routine may attempt to access the endpoint's descriptor. Don't clear the
descriptors before that.
Fixes: f09ddcfcb8c5 ("usb: dwc3: gadget: Prevent EP queuing while stopping transfers")
Cc: stable(a)vger.kernel.org
Signed-off-by: Thinh Nguyen <Thinh.Nguyen(a)synopsys.com>
Link: https://lore.kernel.org/r/45db7c83b209259115bf652af210f8b2b3b1a383.16685613…
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index 8b4cfa07539d..6d524fa76443 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -1024,12 +1024,6 @@ static int __dwc3_gadget_ep_disable(struct dwc3_ep *dep)
reg &= ~DWC3_DALEPENA_EP(dep->number);
dwc3_writel(dwc->regs, DWC3_DALEPENA, reg);
- /* Clear out the ep descriptors for non-ep0 */
- if (dep->number > 1) {
- dep->endpoint.comp_desc = NULL;
- dep->endpoint.desc = NULL;
- }
-
dwc3_remove_requests(dwc, dep, -ESHUTDOWN);
dep->stream_capable = false;
@@ -1044,6 +1038,12 @@ static int __dwc3_gadget_ep_disable(struct dwc3_ep *dep)
mask |= (DWC3_EP_DELAY_STOP | DWC3_EP_TRANSFER_STARTED);
dep->flags &= mask;
+ /* Clear out the ep descriptors for non-ep0 */
+ if (dep->number > 1) {
+ dep->endpoint.comp_desc = NULL;
+ dep->endpoint.desc = NULL;
+ }
+
return 0;
}
The patch below does not apply to the 6.0-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>.
Possible dependencies:
f90f5afd5083 ("usb: dwc3: gadget: Clear ep descriptor last")
ffb9da4a04c6 ("usb: dwc3: gadget: Return -ESHUTDOWN on ep disable")
b44c0e7fef51 ("usb: dwc3: gadget: conditionally remove requests")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From f90f5afd5083a7cb4aee13bd4cc0ae600bd381ca Mon Sep 17 00:00:00 2001
From: Thinh Nguyen <Thinh.Nguyen(a)synopsys.com>
Date: Tue, 15 Nov 2022 17:19:43 -0800
Subject: [PATCH] usb: dwc3: gadget: Clear ep descriptor last
Until the endpoint is disabled, its descriptors should remain valid.
When its requests are removed from ep disable, the request completion
routine may attempt to access the endpoint's descriptor. Don't clear the
descriptors before that.
Fixes: f09ddcfcb8c5 ("usb: dwc3: gadget: Prevent EP queuing while stopping transfers")
Cc: stable(a)vger.kernel.org
Signed-off-by: Thinh Nguyen <Thinh.Nguyen(a)synopsys.com>
Link: https://lore.kernel.org/r/45db7c83b209259115bf652af210f8b2b3b1a383.16685613…
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index 8b4cfa07539d..6d524fa76443 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -1024,12 +1024,6 @@ static int __dwc3_gadget_ep_disable(struct dwc3_ep *dep)
reg &= ~DWC3_DALEPENA_EP(dep->number);
dwc3_writel(dwc->regs, DWC3_DALEPENA, reg);
- /* Clear out the ep descriptors for non-ep0 */
- if (dep->number > 1) {
- dep->endpoint.comp_desc = NULL;
- dep->endpoint.desc = NULL;
- }
-
dwc3_remove_requests(dwc, dep, -ESHUTDOWN);
dep->stream_capable = false;
@@ -1044,6 +1038,12 @@ static int __dwc3_gadget_ep_disable(struct dwc3_ep *dep)
mask |= (DWC3_EP_DELAY_STOP | DWC3_EP_TRANSFER_STARTED);
dep->flags &= mask;
+ /* Clear out the ep descriptors for non-ep0 */
+ if (dep->number > 1) {
+ dep->endpoint.comp_desc = NULL;
+ dep->endpoint.desc = NULL;
+ }
+
return 0;
}
The patch below does not apply to the 5.15-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>.
Possible dependencies:
f90f5afd5083 ("usb: dwc3: gadget: Clear ep descriptor last")
ffb9da4a04c6 ("usb: dwc3: gadget: Return -ESHUTDOWN on ep disable")
b44c0e7fef51 ("usb: dwc3: gadget: conditionally remove requests")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From f90f5afd5083a7cb4aee13bd4cc0ae600bd381ca Mon Sep 17 00:00:00 2001
From: Thinh Nguyen <Thinh.Nguyen(a)synopsys.com>
Date: Tue, 15 Nov 2022 17:19:43 -0800
Subject: [PATCH] usb: dwc3: gadget: Clear ep descriptor last
Until the endpoint is disabled, its descriptors should remain valid.
When its requests are removed from ep disable, the request completion
routine may attempt to access the endpoint's descriptor. Don't clear the
descriptors before that.
Fixes: f09ddcfcb8c5 ("usb: dwc3: gadget: Prevent EP queuing while stopping transfers")
Cc: stable(a)vger.kernel.org
Signed-off-by: Thinh Nguyen <Thinh.Nguyen(a)synopsys.com>
Link: https://lore.kernel.org/r/45db7c83b209259115bf652af210f8b2b3b1a383.16685613…
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index 8b4cfa07539d..6d524fa76443 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -1024,12 +1024,6 @@ static int __dwc3_gadget_ep_disable(struct dwc3_ep *dep)
reg &= ~DWC3_DALEPENA_EP(dep->number);
dwc3_writel(dwc->regs, DWC3_DALEPENA, reg);
- /* Clear out the ep descriptors for non-ep0 */
- if (dep->number > 1) {
- dep->endpoint.comp_desc = NULL;
- dep->endpoint.desc = NULL;
- }
-
dwc3_remove_requests(dwc, dep, -ESHUTDOWN);
dep->stream_capable = false;
@@ -1044,6 +1038,12 @@ static int __dwc3_gadget_ep_disable(struct dwc3_ep *dep)
mask |= (DWC3_EP_DELAY_STOP | DWC3_EP_TRANSFER_STARTED);
dep->flags &= mask;
+ /* Clear out the ep descriptors for non-ep0 */
+ if (dep->number > 1) {
+ dep->endpoint.comp_desc = NULL;
+ dep->endpoint.desc = NULL;
+ }
+
return 0;
}
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>.
Possible dependencies:
e0481e5b3cc1 ("usb: dwc3: exynos: Fix remove() function")
1e041b6f313a ("usb: dwc3: exynos: Remove dead code")
3a932b0f50f4 ("usb: dwc3: exynos: change goto labels to meaningful names")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From e0481e5b3cc12ea7ccf4552d41518c89d3509004 Mon Sep 17 00:00:00 2001
From: Marek Szyprowski <m.szyprowski(a)samsung.com>
Date: Thu, 10 Nov 2022 16:41:31 +0100
Subject: [PATCH] usb: dwc3: exynos: Fix remove() function
The core DWC3 device node was not properly removed by the custom
dwc3_exynos_remove_child() function. Replace it with generic
of_platform_depopulate() which does that job right.
Fixes: adcf20dcd262 ("usb: dwc3: exynos: Use of_platform API to create dwc3 core pdev")
Signed-off-by: Marek Szyprowski <m.szyprowski(a)samsung.com>
Acked-by: Thinh Nguyen <Thinh.Nguyen(a)synopsys.com>
Cc: stable(a)vger.kernel.org
Reviewed-by: Sam Protsenko <semen.protsenko(a)linaro.org>
Link: https://lore.kernel.org/r/20221110154131.2577-1-m.szyprowski@samsung.com
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
diff --git a/drivers/usb/dwc3/dwc3-exynos.c b/drivers/usb/dwc3/dwc3-exynos.c
index 0ecf20eeceee..4be6a873bd07 100644
--- a/drivers/usb/dwc3/dwc3-exynos.c
+++ b/drivers/usb/dwc3/dwc3-exynos.c
@@ -37,15 +37,6 @@ struct dwc3_exynos {
struct regulator *vdd10;
};
-static int dwc3_exynos_remove_child(struct device *dev, void *unused)
-{
- struct platform_device *pdev = to_platform_device(dev);
-
- platform_device_unregister(pdev);
-
- return 0;
-}
-
static int dwc3_exynos_probe(struct platform_device *pdev)
{
struct dwc3_exynos *exynos;
@@ -142,7 +133,7 @@ static int dwc3_exynos_remove(struct platform_device *pdev)
struct dwc3_exynos *exynos = platform_get_drvdata(pdev);
int i;
- device_for_each_child(&pdev->dev, NULL, dwc3_exynos_remove_child);
+ of_platform_depopulate(&pdev->dev);
for (i = exynos->num_clks - 1; i >= 0; i--)
clk_disable_unprepare(exynos->clks[i]);
The patch below does not apply to the 4.14-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>.
Possible dependencies:
e0481e5b3cc1 ("usb: dwc3: exynos: Fix remove() function")
1e041b6f313a ("usb: dwc3: exynos: Remove dead code")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From e0481e5b3cc12ea7ccf4552d41518c89d3509004 Mon Sep 17 00:00:00 2001
From: Marek Szyprowski <m.szyprowski(a)samsung.com>
Date: Thu, 10 Nov 2022 16:41:31 +0100
Subject: [PATCH] usb: dwc3: exynos: Fix remove() function
The core DWC3 device node was not properly removed by the custom
dwc3_exynos_remove_child() function. Replace it with generic
of_platform_depopulate() which does that job right.
Fixes: adcf20dcd262 ("usb: dwc3: exynos: Use of_platform API to create dwc3 core pdev")
Signed-off-by: Marek Szyprowski <m.szyprowski(a)samsung.com>
Acked-by: Thinh Nguyen <Thinh.Nguyen(a)synopsys.com>
Cc: stable(a)vger.kernel.org
Reviewed-by: Sam Protsenko <semen.protsenko(a)linaro.org>
Link: https://lore.kernel.org/r/20221110154131.2577-1-m.szyprowski@samsung.com
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
diff --git a/drivers/usb/dwc3/dwc3-exynos.c b/drivers/usb/dwc3/dwc3-exynos.c
index 0ecf20eeceee..4be6a873bd07 100644
--- a/drivers/usb/dwc3/dwc3-exynos.c
+++ b/drivers/usb/dwc3/dwc3-exynos.c
@@ -37,15 +37,6 @@ struct dwc3_exynos {
struct regulator *vdd10;
};
-static int dwc3_exynos_remove_child(struct device *dev, void *unused)
-{
- struct platform_device *pdev = to_platform_device(dev);
-
- platform_device_unregister(pdev);
-
- return 0;
-}
-
static int dwc3_exynos_probe(struct platform_device *pdev)
{
struct dwc3_exynos *exynos;
@@ -142,7 +133,7 @@ static int dwc3_exynos_remove(struct platform_device *pdev)
struct dwc3_exynos *exynos = platform_get_drvdata(pdev);
int i;
- device_for_each_child(&pdev->dev, NULL, dwc3_exynos_remove_child);
+ of_platform_depopulate(&pdev->dev);
for (i = exynos->num_clks - 1; i >= 0; i--)
clk_disable_unprepare(exynos->clks[i]);
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>.
Possible dependencies:
e0481e5b3cc1 ("usb: dwc3: exynos: Fix remove() function")
1e041b6f313a ("usb: dwc3: exynos: Remove dead code")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From e0481e5b3cc12ea7ccf4552d41518c89d3509004 Mon Sep 17 00:00:00 2001
From: Marek Szyprowski <m.szyprowski(a)samsung.com>
Date: Thu, 10 Nov 2022 16:41:31 +0100
Subject: [PATCH] usb: dwc3: exynos: Fix remove() function
The core DWC3 device node was not properly removed by the custom
dwc3_exynos_remove_child() function. Replace it with generic
of_platform_depopulate() which does that job right.
Fixes: adcf20dcd262 ("usb: dwc3: exynos: Use of_platform API to create dwc3 core pdev")
Signed-off-by: Marek Szyprowski <m.szyprowski(a)samsung.com>
Acked-by: Thinh Nguyen <Thinh.Nguyen(a)synopsys.com>
Cc: stable(a)vger.kernel.org
Reviewed-by: Sam Protsenko <semen.protsenko(a)linaro.org>
Link: https://lore.kernel.org/r/20221110154131.2577-1-m.szyprowski@samsung.com
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
diff --git a/drivers/usb/dwc3/dwc3-exynos.c b/drivers/usb/dwc3/dwc3-exynos.c
index 0ecf20eeceee..4be6a873bd07 100644
--- a/drivers/usb/dwc3/dwc3-exynos.c
+++ b/drivers/usb/dwc3/dwc3-exynos.c
@@ -37,15 +37,6 @@ struct dwc3_exynos {
struct regulator *vdd10;
};
-static int dwc3_exynos_remove_child(struct device *dev, void *unused)
-{
- struct platform_device *pdev = to_platform_device(dev);
-
- platform_device_unregister(pdev);
-
- return 0;
-}
-
static int dwc3_exynos_probe(struct platform_device *pdev)
{
struct dwc3_exynos *exynos;
@@ -142,7 +133,7 @@ static int dwc3_exynos_remove(struct platform_device *pdev)
struct dwc3_exynos *exynos = platform_get_drvdata(pdev);
int i;
- device_for_each_child(&pdev->dev, NULL, dwc3_exynos_remove_child);
+ of_platform_depopulate(&pdev->dev);
for (i = exynos->num_clks - 1; i >= 0; i--)
clk_disable_unprepare(exynos->clks[i]);
In commit c359931d2545 ("can: gs_usb: use union and FLEX_ARRAY for
data in struct gs_host_frame") the driver was extended from a compile
time constant USB transfer size to a transfer size depending on
attached USB device and configured CAN mode.
During this conversion the size parameter of some usb_free_coherent()
calls were not converted. To fix this issue replace the compile time
constant sizeof(struct gs_host_frame) by hf_size_{rx,tx} for RX
respectively TX USB transfers.
Fixes: c359931d2545 ("can: gs_usb: use union and FLEX_ARRAY for data in struct gs_host_frame")
Cc: Peter Fink <pfink(a)christ-es.de>
Cc: stable(a)vger.kernel.org
Reported-by: Ryan Edwards <ryan.edwards(a)gmail.com>
Signed-off-by: Marc Kleine-Budde <mkl(a)pengutronix.de>
---
drivers/net/can/usb/gs_usb.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/net/can/usb/gs_usb.c b/drivers/net/can/usb/gs_usb.c
index cd4115a1b81c..57917955b8e4 100644
--- a/drivers/net/can/usb/gs_usb.c
+++ b/drivers/net/can/usb/gs_usb.c
@@ -699,7 +699,7 @@ static netdev_tx_t gs_can_start_xmit(struct sk_buff *skb,
return NETDEV_TX_OK;
badidx:
- usb_free_coherent(dev->udev, urb->transfer_buffer_length,
+ usb_free_coherent(dev->udev, dev->hf_size_tx,
urb->transfer_buffer, urb->transfer_dma);
nomem_hf:
usb_free_urb(urb);
@@ -787,7 +787,7 @@ static int gs_can_open(struct net_device *netdev)
usb_unanchor_urb(urb);
usb_free_coherent(dev->udev,
- sizeof(struct gs_host_frame),
+ dev->parent->hf_size_rx,
buf,
buf_dma);
usb_free_urb(urb);
@@ -864,7 +864,7 @@ static int gs_can_close(struct net_device *netdev)
usb_kill_anchored_urbs(&parent->rx_submitted);
for (i = 0; i < GS_MAX_RX_URBS; i++)
usb_free_coherent(dev->udev,
- sizeof(struct gs_host_frame),
+ dev->parent->hf_size_rx,
dev->rxbuf[i],
dev->rxbuf_dma[i]);
}
--
2.35.1
From: Marc Zyngier <maz(a)kernel.org>
The kernel has an awfully complicated boot sequence in order to cope
with the various EL2 configurations, including those that "enhanced"
the architecture. We go from EL2 to EL1, then back to EL2, staying
at EL2 if VHE capable and otherwise go back to EL1.
Here's a paracetamol tablet for you.
The cpu_resume path follows the same logic, because coming up with
two versions of a square wheel is hard.
However, things aren't this straightforward with pKVM, as the host
resume path is always proxied by the hypervisor, which means that
the kernel is always entered at EL1. Which contradicts what the
__boot_cpu_mode[] array contains (it obviously says EL2).
This thus triggers a HVC call from EL1 to EL2 in a vain attempt
to upgrade from EL1 to EL2 VHE, which we are, funnily enough,
reluctant to grant to the host kernel. This is also completely
unexpected, and puzzles your average EL2 hacker.
Address it by fixing up the boot mode at the point the host gets
deprivileged. is_hyp_mode_available() and co already have a static
branch to deal with this, making it pretty safe.
This stable fix doesn't have an upstream version. The entire bootflow
has been reworked from 6.0 and that fixed the boot mode at the same
time, from commit 005e12676af0 ("arm64: head: record CPU boot mode after
enabling the MMU") to be precise. However, the latter is part of a 20
patches long series and can't be simply cherry-pick'ed.
Link: https://lore.kernel.org/r/20220624150651.1358849-1-ardb@kernel.org/
Link: https://lore.kernel.org/r/20221011165400.1241729-1-maz@kernel.org/
Cc: <stable(a)vger.kernel.org> # 5.15+
Reported-by: Vincent Donnefort <vdonnefort(a)google.com>
Signed-off-by: Marc Zyngier <maz(a)kernel.org>
Tested-by: Vincent Donnefort <vdonnefort(a)google.com>
[Vincent: Add a paragraph about why this patch is for stable only]
Signed-off-by: Vincent Donnefort <vdonnefort(a)google.com>
diff --git a/arch/arm64/kvm/arm.c b/arch/arm64/kvm/arm.c
index 4cb265e15361..3fe816c244ce 100644
--- a/arch/arm64/kvm/arm.c
+++ b/arch/arm64/kvm/arm.c
@@ -2000,6 +2000,17 @@ static int pkvm_drop_host_privileges(void)
* once the host stage 2 is installed.
*/
static_branch_enable(&kvm_protected_mode_initialized);
+
+ /*
+ * Fixup the boot mode so that we don't take spurious round
+ * trips via EL2 on cpu_resume. Flush to the PoC for a good
+ * measure, so that it can be observed by a CPU coming out of
+ * suspend with the MMU off.
+ */
+ __boot_cpu_mode[0] = __boot_cpu_mode[1] = BOOT_CPU_MODE_EL1;
+ dcache_clean_poc((unsigned long)__boot_cpu_mode,
+ (unsigned long)(__boot_cpu_mode + 2));
+
on_each_cpu(_kvm_host_prot_finalize, &ret, 1);
return ret;
}
--
2.38.1.584.g0f3c55d4c2-goog
This is a note to let you know that I've just added the patch titled
usb: cdnsp: fix lack of ZLP for ep0
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-next 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 also be merged in the next major kernel release
during the merge window.
If you have any questions about this process, please let me know.
From ae423ef5d095e09970f52c08020fdbf7f9d87c22 Mon Sep 17 00:00:00 2001
From: Pawel Laszczak <pawell(a)cadence.com>
Date: Tue, 22 Nov 2022 03:51:38 -0500
Subject: usb: cdnsp: fix lack of ZLP for ep0
Patch implements the handling of ZLP for control transfer.
To send the ZLP driver must prepare the extra TRB in TD with
length set to zero and TRB type to TRB_NORMAL.
The first TRB must have set TRB_CHAIN flag, TD_SIZE = 1
and TRB type to TRB_DATA.
Fixes: 3d82904559f4 ("usb: cdnsp: cdns3 Add main part of Cadence USBSSP DRD Driver")
cc: <stable(a)vger.kernel.org>
Reviewed-by: Peter Chen <peter.chen(a)kernel.org>
Signed-off-by: Pawel Laszczak <pawell(a)cadence.com>
Link: https://lore.kernel.org/r/20221122085138.332434-1-pawell@cadence.com
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/cdns3/cdnsp-ring.c | 42 ++++++++++++++++++++++++++--------
1 file changed, 32 insertions(+), 10 deletions(-)
diff --git a/drivers/usb/cdns3/cdnsp-ring.c b/drivers/usb/cdns3/cdnsp-ring.c
index 2f29431f612e..b23e543b3a3d 100644
--- a/drivers/usb/cdns3/cdnsp-ring.c
+++ b/drivers/usb/cdns3/cdnsp-ring.c
@@ -2006,10 +2006,11 @@ int cdnsp_queue_bulk_tx(struct cdnsp_device *pdev, struct cdnsp_request *preq)
int cdnsp_queue_ctrl_tx(struct cdnsp_device *pdev, struct cdnsp_request *preq)
{
- u32 field, length_field, remainder;
+ u32 field, length_field, zlp = 0;
struct cdnsp_ep *pep = preq->pep;
struct cdnsp_ring *ep_ring;
int num_trbs;
+ u32 maxp;
int ret;
ep_ring = cdnsp_request_to_transfer_ring(pdev, preq);
@@ -2019,26 +2020,33 @@ int cdnsp_queue_ctrl_tx(struct cdnsp_device *pdev, struct cdnsp_request *preq)
/* 1 TRB for data, 1 for status */
num_trbs = (pdev->three_stage_setup) ? 2 : 1;
+ maxp = usb_endpoint_maxp(pep->endpoint.desc);
+
+ if (preq->request.zero && preq->request.length &&
+ (preq->request.length % maxp == 0)) {
+ num_trbs++;
+ zlp = 1;
+ }
+
ret = cdnsp_prepare_transfer(pdev, preq, num_trbs);
if (ret)
return ret;
/* If there's data, queue data TRBs */
- if (pdev->ep0_expect_in)
- field = TRB_TYPE(TRB_DATA) | TRB_IOC;
- else
- field = TRB_ISP | TRB_TYPE(TRB_DATA) | TRB_IOC;
-
if (preq->request.length > 0) {
- remainder = cdnsp_td_remainder(pdev, 0, preq->request.length,
- preq->request.length, preq, 1, 0);
+ field = TRB_TYPE(TRB_DATA);
- length_field = TRB_LEN(preq->request.length) |
- TRB_TD_SIZE(remainder) | TRB_INTR_TARGET(0);
+ if (zlp)
+ field |= TRB_CHAIN;
+ else
+ field |= TRB_IOC | (pdev->ep0_expect_in ? 0 : TRB_ISP);
if (pdev->ep0_expect_in)
field |= TRB_DIR_IN;
+ length_field = TRB_LEN(preq->request.length) |
+ TRB_TD_SIZE(zlp) | TRB_INTR_TARGET(0);
+
cdnsp_queue_trb(pdev, ep_ring, true,
lower_32_bits(preq->request.dma),
upper_32_bits(preq->request.dma), length_field,
@@ -2046,6 +2054,20 @@ int cdnsp_queue_ctrl_tx(struct cdnsp_device *pdev, struct cdnsp_request *preq)
TRB_SETUPID(pdev->setup_id) |
pdev->setup_speed);
+ if (zlp) {
+ field = TRB_TYPE(TRB_NORMAL) | TRB_IOC;
+
+ if (!pdev->ep0_expect_in)
+ field = TRB_ISP;
+
+ cdnsp_queue_trb(pdev, ep_ring, true,
+ lower_32_bits(preq->request.dma),
+ upper_32_bits(preq->request.dma), 0,
+ field | ep_ring->cycle_state |
+ TRB_SETUPID(pdev->setup_id) |
+ pdev->setup_speed);
+ }
+
pdev->ep0_stage = CDNSP_DATA_STAGE;
}
--
2.38.1
This is a note to let you know that I've just added the patch titled
usb: xhci-mtk: fix leakage of shared hcd when fail to set wakeup irq
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-next 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 also be merged in the next major kernel release
during the merge window.
If you have any questions about this process, please let me know.
From 03a88b0bafbe3f548729d970d8366f48718c9b19 Mon Sep 17 00:00:00 2001
From: Chunfeng Yun <chunfeng.yun(a)mediatek.com>
Date: Mon, 28 Nov 2022 14:33:37 +0800
Subject: usb: xhci-mtk: fix leakage of shared hcd when fail to set wakeup irq
Can not set the @shared_hcd to NULL before decrease the usage count
by usb_put_hcd(), this will cause the shared hcd not released.
Fixes: 04284eb74e0c ("usb: xhci-mtk: add support runtime PM")
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Chunfeng Yun <chunfeng.yun(a)mediatek.com>
Link: https://lore.kernel.org/r/20221128063337.18124-1-chunfeng.yun@mediatek.com
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/host/xhci-mtk.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/usb/host/xhci-mtk.c b/drivers/usb/host/xhci-mtk.c
index cff3c4aea036..f7cbb08fc506 100644
--- a/drivers/usb/host/xhci-mtk.c
+++ b/drivers/usb/host/xhci-mtk.c
@@ -646,7 +646,6 @@ static int xhci_mtk_probe(struct platform_device *pdev)
dealloc_usb3_hcd:
usb_remove_hcd(xhci->shared_hcd);
- xhci->shared_hcd = NULL;
put_usb3_hcd:
usb_put_hcd(xhci->shared_hcd);
--
2.38.1
This is a note to let you know that I've just added the patch titled
usb: typec: ucsi: Resume in separate work
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-next 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 also be merged in the next major kernel release
during the merge window.
If you have any questions about this process, please let me know.
From e0dced9c7d4763fd97c86a13902d135f03cc42eb Mon Sep 17 00:00:00 2001
From: Heikki Krogerus <heikki.krogerus(a)linux.intel.com>
Date: Wed, 23 Nov 2022 11:30:21 +0200
Subject: usb: typec: ucsi: Resume in separate work
It can take more than one second to check each connector
when the system is resumed. So if you have, say, eight
connectors, it may take eight seconds for ucsi_resume() to
finish. That's a bit too much.
This will modify ucsi_resume() so that it schedules a work
where the interface is actually resumed instead of checking
the connectors directly. The connections will also be
checked in separate tasks which are queued for each connector
separately.
Link: https://bugzilla.kernel.org/show_bug.cgi?id=216706
Fixes: 99f6d4361113 ("usb: typec: ucsi: Check the connection on resume")
Cc: <stable(a)vger.kernel.org>
Reported-by: Todd Brandt <todd.e.brandt(a)intel.com>
Signed-off-by: Heikki Krogerus <heikki.krogerus(a)linux.intel.com>
Link: https://lore.kernel.org/r/20221123093021.25981-1-heikki.krogerus@linux.inte…
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/typec/ucsi/ucsi.c | 17 +++++++++++++----
drivers/usb/typec/ucsi/ucsi.h | 1 +
2 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/drivers/usb/typec/ucsi/ucsi.c b/drivers/usb/typec/ucsi/ucsi.c
index a7987fc764cc..eabe519013e7 100644
--- a/drivers/usb/typec/ucsi/ucsi.c
+++ b/drivers/usb/typec/ucsi/ucsi.c
@@ -1270,8 +1270,9 @@ static int ucsi_init(struct ucsi *ucsi)
return ret;
}
-int ucsi_resume(struct ucsi *ucsi)
+static void ucsi_resume_work(struct work_struct *work)
{
+ struct ucsi *ucsi = container_of(work, struct ucsi, resume_work);
struct ucsi_connector *con;
u64 command;
int ret;
@@ -1279,15 +1280,21 @@ int ucsi_resume(struct ucsi *ucsi)
/* Restore UCSI notification enable mask after system resume */
command = UCSI_SET_NOTIFICATION_ENABLE | ucsi->ntfy;
ret = ucsi_send_command(ucsi, command, NULL, 0);
- if (ret < 0)
- return ret;
+ if (ret < 0) {
+ dev_err(ucsi->dev, "failed to re-enable notifications (%d)\n", ret);
+ return;
+ }
for (con = ucsi->connector; con->port; con++) {
mutex_lock(&con->lock);
- ucsi_check_connection(con);
+ ucsi_partner_task(con, ucsi_check_connection, 1, 0);
mutex_unlock(&con->lock);
}
+}
+int ucsi_resume(struct ucsi *ucsi)
+{
+ queue_work(system_long_wq, &ucsi->resume_work);
return 0;
}
EXPORT_SYMBOL_GPL(ucsi_resume);
@@ -1347,6 +1354,7 @@ struct ucsi *ucsi_create(struct device *dev, const struct ucsi_operations *ops)
if (!ucsi)
return ERR_PTR(-ENOMEM);
+ INIT_WORK(&ucsi->resume_work, ucsi_resume_work);
INIT_DELAYED_WORK(&ucsi->work, ucsi_init_work);
mutex_init(&ucsi->ppm_lock);
ucsi->dev = dev;
@@ -1401,6 +1409,7 @@ void ucsi_unregister(struct ucsi *ucsi)
/* Make sure that we are not in the middle of driver initialization */
cancel_delayed_work_sync(&ucsi->work);
+ cancel_work_sync(&ucsi->resume_work);
/* Disable notifications */
ucsi->ops->async_write(ucsi, UCSI_CONTROL, &cmd, sizeof(cmd));
diff --git a/drivers/usb/typec/ucsi/ucsi.h b/drivers/usb/typec/ucsi/ucsi.h
index 8eb391e3e592..c968474ee547 100644
--- a/drivers/usb/typec/ucsi/ucsi.h
+++ b/drivers/usb/typec/ucsi/ucsi.h
@@ -287,6 +287,7 @@ struct ucsi {
struct ucsi_capability cap;
struct ucsi_connector *connector;
+ struct work_struct resume_work;
struct delayed_work work;
int work_count;
#define UCSI_ROLE_SWITCH_RETRY_PER_HZ 10
--
2.38.1
When the kernel receives a route deletion request from user space it
tries to delete a route that matches the route attributes specified in
the request.
If only prefix information is specified in the request, the kernel
should delete the first matching FIB alias regardless of its associated
FIB info. However, an error is currently returned when the FIB info is
backed by a nexthop object:
# ip nexthop add id 1 via 192.0.2.2 dev dummy10
# ip route add 198.51.100.0/24 nhid 1
# ip route del 198.51.100.0/24
RTNETLINK answers: No such process
Fix by matching on such a FIB info when legacy nexthop attributes are
not specified in the request. An earlier check already covers the case
where a nexthop ID is specified in the request.
Add tests that cover these flows. Before the fix:
# ./fib_nexthops.sh -t ipv4_fcnal
...
TEST: Delete route when not specifying nexthop attributes [FAIL]
Tests passed: 11
Tests failed: 1
After the fix:
# ./fib_nexthops.sh -t ipv4_fcnal
...
TEST: Delete route when not specifying nexthop attributes [ OK ]
Tests passed: 12
Tests failed: 0
No regressions in other tests:
# ./fib_nexthops.sh
...
Tests passed: 228
Tests failed: 0
# ./fib_tests.sh
...
Tests passed: 186
Tests failed: 0
Cc: stable(a)vger.kernel.org
Reported-by: Jonas Gorski <jonas.gorski(a)gmail.com>
Tested-by: Jonas Gorski <jonas.gorski(a)gmail.com>
Fixes: 493ced1ac47c ("ipv4: Allow routes to use nexthop objects")
Fixes: 6bf92d70e690 ("net: ipv4: fix route with nexthop object delete warning")
Fixes: 61b91eb33a69 ("ipv4: Handle attempt to delete multipath route when fib_info contains an nh reference")
Signed-off-by: Ido Schimmel <idosch(a)nvidia.com>
---
net/ipv4/fib_semantics.c | 8 +++++---
tools/testing/selftests/net/fib_nexthops.sh | 11 +++++++++++
2 files changed, 16 insertions(+), 3 deletions(-)
diff --git a/net/ipv4/fib_semantics.c b/net/ipv4/fib_semantics.c
index f721c308248b..19a662003eef 100644
--- a/net/ipv4/fib_semantics.c
+++ b/net/ipv4/fib_semantics.c
@@ -888,9 +888,11 @@ int fib_nh_match(struct net *net, struct fib_config *cfg, struct fib_info *fi,
return 1;
}
- /* cannot match on nexthop object attributes */
- if (fi->nh)
- return 1;
+ if (fi->nh) {
+ if (cfg->fc_oif || cfg->fc_gw_family || cfg->fc_mp)
+ return 1;
+ return 0;
+ }
if (cfg->fc_oif || cfg->fc_gw_family) {
struct fib_nh *nh;
diff --git a/tools/testing/selftests/net/fib_nexthops.sh b/tools/testing/selftests/net/fib_nexthops.sh
index ee5e98204d3d..a47b26ab48f2 100755
--- a/tools/testing/selftests/net/fib_nexthops.sh
+++ b/tools/testing/selftests/net/fib_nexthops.sh
@@ -1228,6 +1228,17 @@ ipv4_fcnal()
run_cmd "$IP ro add 172.16.101.0/24 nhid 21"
run_cmd "$IP ro del 172.16.101.0/24 nexthop via 172.16.1.7 dev veth1 nexthop via 172.16.1.8 dev veth1"
log_test $? 2 "Delete multipath route with only nh id based entry"
+
+ run_cmd "$IP nexthop add id 22 via 172.16.1.6 dev veth1"
+ run_cmd "$IP ro add 172.16.102.0/24 nhid 22"
+ run_cmd "$IP ro del 172.16.102.0/24 dev veth1"
+ log_test $? 2 "Delete route when specifying only nexthop device"
+
+ run_cmd "$IP ro del 172.16.102.0/24 via 172.16.1.6"
+ log_test $? 2 "Delete route when specifying only gateway"
+
+ run_cmd "$IP ro del 172.16.102.0/24"
+ log_test $? 0 "Delete route when not specifying nexthop attributes"
}
ipv4_grp_fcnal()
--
2.37.3
Syzbot reported an issue with ext4 extents. The reproducer creates
a corrupted ext4 fs image in memory, and mounts it as a loop device.
It invokes the ext4_cache_extents() and ext4_find_extent(), which
eventually triggers a BUG() in ext4_es_end() causing a kernel crash.
It triggers on mainline, and every kernel version back to v4.14.
Add a call ext4_ext_check_inode() in ext4_find_extent() to prevent
the crash.
To: "Theodore Ts'o" <tytso(a)mit.edu>
Cc: "Andreas Dilger" <adilger.kernel(a)dilger.ca>
Cc: <linux-ext4(a)vger.kernel.org>
Cc: <linux-kernel(a)vger.kernel.org>
Cc: <stable(a)vger.kernel.org>
Link: https://syzkaller.appspot.com/bug?id=641e7a4b900015c5d7a729d6cc1fba7a928a88…
Reported-by: syzbot+a22dc4b0744ac658ed9b(a)syzkaller.appspotmail.com
Signed-off-by: Tadeusz Struk <tadeusz.struk(a)linaro.org>
---
fs/ext4/extents.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
index 5235974126bd..c7b5a11e1abc 100644
--- a/fs/ext4/extents.c
+++ b/fs/ext4/extents.c
@@ -897,6 +897,12 @@ ext4_find_extent(struct inode *inode, ext4_lblk_t block,
goto err;
}
+ ret = ext4_ext_check_inode(inode);
+ if (ret) {
+ EXT4_ERROR_INODE(inode, "inode has invalid extent");
+ goto err;
+ }
+
if (path) {
ext4_ext_drop_refs(path);
if (depth > path[0].p_maxdepth) {
--
2.37.3
The firmware on some systems may configure GPIO pins to be
an interrupt source in so called "direct IRQ" mode. In such
cases the GPIO controller driver has no idea if those pins
are being used or not. At the same time, there is a known bug
in the firmwares that don't restore the pin settings correctly
after suspend, i.e. by an unknown reason the Rx value becomes
inverted.
Hence, let's save and restore the pins that are configured
as GPIOs in the input mode with GPIROUTIOXAPIC bit set.
Cc: stable(a)vger.kernel.org
Reported-and-tested-by: Dale Smith <dalepsmith(a)gmail.com>
Reported-and-tested-by: John Harris <jmharris(a)gmail.com>
BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=214749
Signed-off-by: Andy Shevchenko <andriy.shevchenko(a)linux.intel.com>
---
Linus, I hope that this can still make v6.1 release. I'm not going to
send a PR for this change unless you insist.
drivers/pinctrl/intel/pinctrl-intel.c | 27 ++++++++++++++++++++++++++-
1 file changed, 26 insertions(+), 1 deletion(-)
diff --git a/drivers/pinctrl/intel/pinctrl-intel.c b/drivers/pinctrl/intel/pinctrl-intel.c
index 739030e24093..57553ac77518 100644
--- a/drivers/pinctrl/intel/pinctrl-intel.c
+++ b/drivers/pinctrl/intel/pinctrl-intel.c
@@ -446,9 +446,14 @@ static void __intel_gpio_set_direction(void __iomem *padcfg0, bool input)
writel(value, padcfg0);
}
+static int __intel_gpio_get_gpio_mode(u32 value)
+{
+ return (value & PADCFG0_PMODE_MASK) >> PADCFG0_PMODE_SHIFT;
+}
+
static int intel_gpio_get_gpio_mode(void __iomem *padcfg0)
{
- return (readl(padcfg0) & PADCFG0_PMODE_MASK) >> PADCFG0_PMODE_SHIFT;
+ return __intel_gpio_get_gpio_mode(readl(padcfg0));
}
static void intel_gpio_set_gpio_mode(void __iomem *padcfg0)
@@ -1705,6 +1710,7 @@ EXPORT_SYMBOL_GPL(intel_pinctrl_get_soc_data);
static bool intel_pinctrl_should_save(struct intel_pinctrl *pctrl, unsigned int pin)
{
const struct pin_desc *pd = pin_desc_get(pctrl->pctldev, pin);
+ u32 value;
if (!pd || !intel_pad_usable(pctrl, pin))
return false;
@@ -1719,6 +1725,25 @@ static bool intel_pinctrl_should_save(struct intel_pinctrl *pctrl, unsigned int
gpiochip_line_is_irq(&pctrl->chip, intel_pin_to_gpio(pctrl, pin)))
return true;
+ /*
+ * The firmware on some systems may configure GPIO pins to be
+ * an interrupt source in so called "direct IRQ" mode. In such
+ * cases the GPIO controller driver has no idea if those pins
+ * are being used or not. At the same time, there is a known bug
+ * in the firmwares that don't restore the pin settings correctly
+ * after suspend, i.e. by an unknown reason the Rx value becomes
+ * inverted.
+ *
+ * Hence, let's save and restore the pins that are configured
+ * as GPIOs in the input mode with GPIROUTIOXAPIC bit set.
+ *
+ * See https://bugzilla.kernel.org/show_bug.cgi?id=214749.
+ */
+ value = readl(intel_get_padcfg(pctrl, pin, PADCFG0));
+ if ((value & PADCFG0_GPIROUTIOXAPIC) && (value & PADCFG0_GPIOTXDIS) &&
+ (__intel_gpio_get_gpio_mode(value) == PADCFG0_PMODE_GPIO))
+ return true;
+
return false;
}
--
2.35.1
Lieber Freund
Ich dachte, wenn Sie die Ihnen zugesandten detaillierten Informationen
über den Geschäftsvorschlag erhalten haben, wenden Sie sich bitte an
mich, es ist sehr wichtig
Vielen Dank
David Tayo
This is a note to let you know that I've just added the patch titled
usb: cdnsp: fix lack of ZLP for ep0
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-testing 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 be merged to the usb-next branch sometime soon,
after it passes testing, and the merge window is open.
If you have any questions about this process, please let me know.
From c4069289acc0ffd3b52cfb8a756ae8774a195bfd Mon Sep 17 00:00:00 2001
From: Pawel Laszczak <pawell(a)cadence.com>
Date: Tue, 22 Nov 2022 03:51:38 -0500
Subject: usb: cdnsp: fix lack of ZLP for ep0
Patch implements the handling of ZLP for control transfer.
To send the ZLP driver must prepare the extra TRB in TD with
length set to zero and TRB type to TRB_NORMAL.
The first TRB must have set TRB_CHAIN flag, TD_SIZE = 1
and TRB type to TRB_DATA.
Fixes: 3d82904559f4 ("usb: cdnsp: cdns3 Add main part of Cadence USBSSP DRD Driver")
cc: <stable(a)vger.kernel.org>
Reviewed-by: Peter Chen <peter.chen(a)kernel.org>
Signed-off-by: Pawel Laszczak <pawell(a)cadence.com>
Link: https://lore.kernel.org/r/20221122085138.332434-1-pawell@cadence.com
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/cdns3/cdnsp-ring.c | 42 ++++++++++++++++++++++++++--------
1 file changed, 32 insertions(+), 10 deletions(-)
diff --git a/drivers/usb/cdns3/cdnsp-ring.c b/drivers/usb/cdns3/cdnsp-ring.c
index 2f29431f612e..b23e543b3a3d 100644
--- a/drivers/usb/cdns3/cdnsp-ring.c
+++ b/drivers/usb/cdns3/cdnsp-ring.c
@@ -2006,10 +2006,11 @@ int cdnsp_queue_bulk_tx(struct cdnsp_device *pdev, struct cdnsp_request *preq)
int cdnsp_queue_ctrl_tx(struct cdnsp_device *pdev, struct cdnsp_request *preq)
{
- u32 field, length_field, remainder;
+ u32 field, length_field, zlp = 0;
struct cdnsp_ep *pep = preq->pep;
struct cdnsp_ring *ep_ring;
int num_trbs;
+ u32 maxp;
int ret;
ep_ring = cdnsp_request_to_transfer_ring(pdev, preq);
@@ -2019,26 +2020,33 @@ int cdnsp_queue_ctrl_tx(struct cdnsp_device *pdev, struct cdnsp_request *preq)
/* 1 TRB for data, 1 for status */
num_trbs = (pdev->three_stage_setup) ? 2 : 1;
+ maxp = usb_endpoint_maxp(pep->endpoint.desc);
+
+ if (preq->request.zero && preq->request.length &&
+ (preq->request.length % maxp == 0)) {
+ num_trbs++;
+ zlp = 1;
+ }
+
ret = cdnsp_prepare_transfer(pdev, preq, num_trbs);
if (ret)
return ret;
/* If there's data, queue data TRBs */
- if (pdev->ep0_expect_in)
- field = TRB_TYPE(TRB_DATA) | TRB_IOC;
- else
- field = TRB_ISP | TRB_TYPE(TRB_DATA) | TRB_IOC;
-
if (preq->request.length > 0) {
- remainder = cdnsp_td_remainder(pdev, 0, preq->request.length,
- preq->request.length, preq, 1, 0);
+ field = TRB_TYPE(TRB_DATA);
- length_field = TRB_LEN(preq->request.length) |
- TRB_TD_SIZE(remainder) | TRB_INTR_TARGET(0);
+ if (zlp)
+ field |= TRB_CHAIN;
+ else
+ field |= TRB_IOC | (pdev->ep0_expect_in ? 0 : TRB_ISP);
if (pdev->ep0_expect_in)
field |= TRB_DIR_IN;
+ length_field = TRB_LEN(preq->request.length) |
+ TRB_TD_SIZE(zlp) | TRB_INTR_TARGET(0);
+
cdnsp_queue_trb(pdev, ep_ring, true,
lower_32_bits(preq->request.dma),
upper_32_bits(preq->request.dma), length_field,
@@ -2046,6 +2054,20 @@ int cdnsp_queue_ctrl_tx(struct cdnsp_device *pdev, struct cdnsp_request *preq)
TRB_SETUPID(pdev->setup_id) |
pdev->setup_speed);
+ if (zlp) {
+ field = TRB_TYPE(TRB_NORMAL) | TRB_IOC;
+
+ if (!pdev->ep0_expect_in)
+ field = TRB_ISP;
+
+ cdnsp_queue_trb(pdev, ep_ring, true,
+ lower_32_bits(preq->request.dma),
+ upper_32_bits(preq->request.dma), 0,
+ field | ep_ring->cycle_state |
+ TRB_SETUPID(pdev->setup_id) |
+ pdev->setup_speed);
+ }
+
pdev->ep0_stage = CDNSP_DATA_STAGE;
}
--
2.38.1
From: Marc Zyngier <maz(a)kernel.org>
The kernel has an awfully complicated boot sequence in order to cope
with the various EL2 configurations, including those that "enhanced"
the architecture. We go from EL2 to EL1, then back to EL2, staying
at EL2 if VHE capable and otherwise go back to EL1.
Here's a paracetamol tablet for you.
The cpu_resume path follows the same logic, because coming up with
two versions of a square wheel is hard.
However, things aren't this straightforward with pKVM, as the host
resume path is always proxied by the hypervisor, which means that
the kernel is always entered at EL1. Which contradicts what the
__boot_cpu_mode[] array contains (it obviously says EL2).
This thus triggers a HVC call from EL1 to EL2 in a vain attempt
to upgrade from EL1 to EL2 VHE, which we are, funnily enough,
reluctant to grant to the host kernel. This is also completely
unexpected, and puzzles your average EL2 hacker.
Address it by fixing up the boot mode at the point the host gets
deprivileged. is_hyp_mode_available() and co already have a static
branch to deal with this, making it pretty safe.
Cc: <stable(a)vger.kernel.org> # 5.15+
Reported-by: Vincent Donnefort <vdonnefort(a)google.com>
Signed-off-by: Marc Zyngier <maz(a)kernel.org>
Tested-by: Vincent Donnefort <vdonnefort(a)google.com>
---
This patch doesn't have an upstream version. It's been fixed by the side
effect of another upstream patch. see conversation [1]
[1] https://lore.kernel.org/all/20221011165400.1241729-1-maz@kernel.org/
diff --git a/arch/arm64/kvm/arm.c b/arch/arm64/kvm/arm.c
index 4cb265e15361..3fe816c244ce 100644
--- a/arch/arm64/kvm/arm.c
+++ b/arch/arm64/kvm/arm.c
@@ -2000,6 +2000,17 @@ static int pkvm_drop_host_privileges(void)
* once the host stage 2 is installed.
*/
static_branch_enable(&kvm_protected_mode_initialized);
+
+ /*
+ * Fixup the boot mode so that we don't take spurious round
+ * trips via EL2 on cpu_resume. Flush to the PoC for a good
+ * measure, so that it can be observed by a CPU coming out of
+ * suspend with the MMU off.
+ */
+ __boot_cpu_mode[0] = __boot_cpu_mode[1] = BOOT_CPU_MODE_EL1;
+ dcache_clean_poc((unsigned long)__boot_cpu_mode,
+ (unsigned long)(__boot_cpu_mode + 2));
+
on_each_cpu(_kvm_host_prot_finalize, &ret, 1);
return ret;
}
--
2.38.1.431.g37b22c650d-goog
This is a note to let you know that I've just added the patch titled
usb: xhci-mtk: fix leakage of shared hcd when fail to set wakeup irq
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-testing 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 be merged to the usb-next branch sometime soon,
after it passes testing, and the merge window is open.
If you have any questions about this process, please let me know.
From 0113f5d4e0620fbb86ed66dc1adbbeab5a2d1560 Mon Sep 17 00:00:00 2001
From: Chunfeng Yun <chunfeng.yun(a)mediatek.com>
Date: Mon, 28 Nov 2022 14:33:37 +0800
Subject: usb: xhci-mtk: fix leakage of shared hcd when fail to set wakeup irq
Can not set the @shared_hcd to NULL before decrease the usage count
by usb_put_hcd(), this will cause the shared hcd not released.
Fixes: 04284eb74e0c ("usb: xhci-mtk: add support runtime PM")
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Chunfeng Yun <chunfeng.yun(a)mediatek.com>
Link: https://lore.kernel.org/r/20221128063337.18124-1-chunfeng.yun@mediatek.com
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/host/xhci-mtk.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/usb/host/xhci-mtk.c b/drivers/usb/host/xhci-mtk.c
index cff3c4aea036..f7cbb08fc506 100644
--- a/drivers/usb/host/xhci-mtk.c
+++ b/drivers/usb/host/xhci-mtk.c
@@ -646,7 +646,6 @@ static int xhci_mtk_probe(struct platform_device *pdev)
dealloc_usb3_hcd:
usb_remove_hcd(xhci->shared_hcd);
- xhci->shared_hcd = NULL;
put_usb3_hcd:
usb_put_hcd(xhci->shared_hcd);
--
2.38.1
This is a note to let you know that I've just added the patch titled
usb: typec: ucsi: Resume in separate work
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-testing 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 be merged to the usb-next branch sometime soon,
after it passes testing, and the merge window is open.
If you have any questions about this process, please let me know.
From 80db2b06e4881e2ff1052d6b9d4982f2cab287bd Mon Sep 17 00:00:00 2001
From: Heikki Krogerus <heikki.krogerus(a)linux.intel.com>
Date: Wed, 23 Nov 2022 11:30:21 +0200
Subject: usb: typec: ucsi: Resume in separate work
It can take more than one second to check each connector
when the system is resumed. So if you have, say, eight
connectors, it may take eight seconds for ucsi_resume() to
finish. That's a bit too much.
This will modify ucsi_resume() so that it schedules a work
where the interface is actually resumed instead of checking
the connectors directly. The connections will also be
checked in separate tasks which are queued for each connector
separately.
Link: https://bugzilla.kernel.org/show_bug.cgi?id=216706
Fixes: 99f6d4361113 ("usb: typec: ucsi: Check the connection on resume")
Cc: <stable(a)vger.kernel.org>
Reported-by: Todd Brandt <todd.e.brandt(a)intel.com>
Signed-off-by: Heikki Krogerus <heikki.krogerus(a)linux.intel.com>
Link: https://lore.kernel.org/r/20221123093021.25981-1-heikki.krogerus@linux.inte…
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/typec/ucsi/ucsi.c | 17 +++++++++++++----
drivers/usb/typec/ucsi/ucsi.h | 1 +
2 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/drivers/usb/typec/ucsi/ucsi.c b/drivers/usb/typec/ucsi/ucsi.c
index a7987fc764cc..eabe519013e7 100644
--- a/drivers/usb/typec/ucsi/ucsi.c
+++ b/drivers/usb/typec/ucsi/ucsi.c
@@ -1270,8 +1270,9 @@ static int ucsi_init(struct ucsi *ucsi)
return ret;
}
-int ucsi_resume(struct ucsi *ucsi)
+static void ucsi_resume_work(struct work_struct *work)
{
+ struct ucsi *ucsi = container_of(work, struct ucsi, resume_work);
struct ucsi_connector *con;
u64 command;
int ret;
@@ -1279,15 +1280,21 @@ int ucsi_resume(struct ucsi *ucsi)
/* Restore UCSI notification enable mask after system resume */
command = UCSI_SET_NOTIFICATION_ENABLE | ucsi->ntfy;
ret = ucsi_send_command(ucsi, command, NULL, 0);
- if (ret < 0)
- return ret;
+ if (ret < 0) {
+ dev_err(ucsi->dev, "failed to re-enable notifications (%d)\n", ret);
+ return;
+ }
for (con = ucsi->connector; con->port; con++) {
mutex_lock(&con->lock);
- ucsi_check_connection(con);
+ ucsi_partner_task(con, ucsi_check_connection, 1, 0);
mutex_unlock(&con->lock);
}
+}
+int ucsi_resume(struct ucsi *ucsi)
+{
+ queue_work(system_long_wq, &ucsi->resume_work);
return 0;
}
EXPORT_SYMBOL_GPL(ucsi_resume);
@@ -1347,6 +1354,7 @@ struct ucsi *ucsi_create(struct device *dev, const struct ucsi_operations *ops)
if (!ucsi)
return ERR_PTR(-ENOMEM);
+ INIT_WORK(&ucsi->resume_work, ucsi_resume_work);
INIT_DELAYED_WORK(&ucsi->work, ucsi_init_work);
mutex_init(&ucsi->ppm_lock);
ucsi->dev = dev;
@@ -1401,6 +1409,7 @@ void ucsi_unregister(struct ucsi *ucsi)
/* Make sure that we are not in the middle of driver initialization */
cancel_delayed_work_sync(&ucsi->work);
+ cancel_work_sync(&ucsi->resume_work);
/* Disable notifications */
ucsi->ops->async_write(ucsi, UCSI_CONTROL, &cmd, sizeof(cmd));
diff --git a/drivers/usb/typec/ucsi/ucsi.h b/drivers/usb/typec/ucsi/ucsi.h
index 8eb391e3e592..c968474ee547 100644
--- a/drivers/usb/typec/ucsi/ucsi.h
+++ b/drivers/usb/typec/ucsi/ucsi.h
@@ -287,6 +287,7 @@ struct ucsi {
struct ucsi_capability cap;
struct ucsi_connector *connector;
+ struct work_struct resume_work;
struct delayed_work work;
int work_count;
#define UCSI_ROLE_SWITCH_RETRY_PER_HZ 10
--
2.38.1
During kexec(), the userspace is frozen. Therefore we cannot wait for it
to complete.
Avoid running snd_sof_machine_unregister during shutdown.
This fixes:
[ 84.943749] Freezing user space processes ... (elapsed 0.111 seconds) done.
[ 246.784446] INFO: task kexec-lite:5123 blocked for more than 122 seconds.
[ 246.819035] Call Trace:
[ 246.821782] <TASK>
[ 246.824186] __schedule+0x5f9/0x1263
[ 246.828231] schedule+0x87/0xc5
[ 246.831779] snd_card_disconnect_sync+0xb5/0x127
...
[ 246.889249] snd_sof_device_shutdown+0xb4/0x150
[ 246.899317] pci_device_shutdown+0x37/0x61
[ 246.903990] device_shutdown+0x14c/0x1d6
[ 246.908391] kernel_kexec+0x45/0xb9
And:
[ 246.893222] INFO: task kexec-lite:4891 blocked for more than 122 seconds.
[ 246.927709] Call Trace:
[ 246.930461] <TASK>
[ 246.932819] __schedule+0x5f9/0x1263
[ 246.936855] ? fsnotify_grab_connector+0x5c/0x70
[ 246.942045] schedule+0x87/0xc5
[ 246.945567] schedule_timeout+0x49/0xf3
[ 246.949877] wait_for_completion+0x86/0xe8
[ 246.954463] snd_card_free+0x68/0x89
...
[ 247.001080] platform_device_unregister+0x12/0x35
Cc: stable(a)vger.kernel.org
Fixes: 83bfc7e793b5 ("ASoC: SOF: core: unregister clients and machine drivers in .shutdown")
Signed-off-by: Ricardo Ribalda <ribalda(a)chromium.org>
---
To: Pierre-Louis Bossart <pierre-louis.bossart(a)linux.intel.com>
To: Liam Girdwood <lgirdwood(a)gmail.com>
To: Peter Ujfalusi <peter.ujfalusi(a)linux.intel.com>
To: Bard Liao <yung-chuan.liao(a)linux.intel.com>
To: Ranjani Sridharan <ranjani.sridharan(a)linux.intel.com>
To: Kai Vehmanen <kai.vehmanen(a)linux.intel.com>
To: Daniel Baluta <daniel.baluta(a)nxp.com>
To: Mark Brown <broonie(a)kernel.org>
To: Jaroslav Kysela <perex(a)perex.cz>
To: Takashi Iwai <tiwai(a)suse.com>
Cc: sound-open-firmware(a)alsa-project.org
Cc: alsa-devel(a)alsa-project.org
Cc: linux-kernel(a)vger.kernel.org
---
Changes in v5:
- Edit subject prefix
- Link to v4: https://lore.kernel.org/r/20221127-snd-freeze-v4-0-51ca64b7f2ab@chromium.org
Changes in v4:
- Do not call snd_sof_machine_unregister from shutdown.
- Link to v3: https://lore.kernel.org/r/20221127-snd-freeze-v3-0-a2eda731ca14@chromium.org
Changes in v3:
- Wrap pm_freezing in a function
- Link to v2: https://lore.kernel.org/r/20221127-snd-freeze-v2-0-d8a425ea9663@chromium.org
Changes in v2:
- Only use pm_freezing if CONFIG_FREEZER
- Link to v1: https://lore.kernel.org/r/20221127-snd-freeze-v1-0-57461a366ec2@chromium.org
---
sound/soc/sof/core.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/sound/soc/sof/core.c b/sound/soc/sof/core.c
index 3e6141d03770..9616ba607ded 100644
--- a/sound/soc/sof/core.c
+++ b/sound/soc/sof/core.c
@@ -475,19 +475,16 @@ EXPORT_SYMBOL(snd_sof_device_remove);
int snd_sof_device_shutdown(struct device *dev)
{
struct snd_sof_dev *sdev = dev_get_drvdata(dev);
- struct snd_sof_pdata *pdata = sdev->pdata;
if (IS_ENABLED(CONFIG_SND_SOC_SOF_PROBE_WORK_QUEUE))
cancel_work_sync(&sdev->probe_work);
/*
- * make sure clients and machine driver(s) are unregistered to force
- * all userspace devices to be closed prior to the DSP shutdown sequence
+ * make sure clients are unregistered prior to the DSP shutdown
+ * sequence.
*/
sof_unregister_clients(sdev);
- snd_sof_machine_unregister(sdev, pdata);
-
if (sdev->fw_state == SOF_FW_BOOT_COMPLETE)
return snd_sof_shutdown(sdev);
---
base-commit: 4312098baf37ee17a8350725e6e0d0e8590252d4
change-id: 20221127-snd-freeze-1ee143228326
Best regards,
--
Ricardo Ribalda <ribalda(a)chromium.org>
From: Keith Busch <kbusch(a)kernel.org>
commit 23e085b2dead13b51fe86d27069895b740f749c0 upstream.
The passthrough commands already have this restriction, but the other
operations do not. Require the same capabilities for all users as all of
these operations, which include resets and rescans, can be disruptive.
Signed-off-by: Keith Busch <kbusch(a)kernel.org>
Signed-off-by: Christoph Hellwig <hch(a)lst.de>
Signed-off-by: Ovidiu Panait <ovidiu.panait(a)windriver.com>
---
This backport is for CVE-2022-3169.
drivers/nvme/host/core.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
index 8e136867180a..b018e7236629 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -2022,11 +2022,17 @@ static long nvme_dev_ioctl(struct file *file, unsigned int cmd,
case NVME_IOCTL_IO_CMD:
return nvme_dev_user_cmd(ctrl, argp);
case NVME_IOCTL_RESET:
+ if (!capable(CAP_SYS_ADMIN))
+ return -EACCES;
dev_warn(ctrl->device, "resetting controller\n");
return nvme_reset_ctrl_sync(ctrl);
case NVME_IOCTL_SUBSYS_RESET:
+ if (!capable(CAP_SYS_ADMIN))
+ return -EACCES;
return nvme_reset_subsystem(ctrl);
case NVME_IOCTL_RESCAN:
+ if (!capable(CAP_SYS_ADMIN))
+ return -EACCES;
nvme_queue_scan(ctrl);
return 0;
default:
--
2.38.1
From: Keith Busch <kbusch(a)kernel.org>
commit 23e085b2dead13b51fe86d27069895b740f749c0 upstream.
The passthrough commands already have this restriction, but the other
operations do not. Require the same capabilities for all users as all of
these operations, which include resets and rescans, can be disruptive.
Signed-off-by: Keith Busch <kbusch(a)kernel.org>
Signed-off-by: Christoph Hellwig <hch(a)lst.de>
Signed-off-by: Ovidiu Panait <ovidiu.panait(a)windriver.com>
---
This backport is for CVE-2022-3169.
drivers/nvme/host/core.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
index 986912e680d8..f47f3b992161 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -2675,11 +2675,17 @@ static long nvme_dev_ioctl(struct file *file, unsigned int cmd,
case NVME_IOCTL_IO_CMD:
return nvme_dev_user_cmd(ctrl, argp);
case NVME_IOCTL_RESET:
+ if (!capable(CAP_SYS_ADMIN))
+ return -EACCES;
dev_warn(ctrl->device, "resetting controller\n");
return nvme_reset_ctrl_sync(ctrl);
case NVME_IOCTL_SUBSYS_RESET:
+ if (!capable(CAP_SYS_ADMIN))
+ return -EACCES;
return nvme_reset_subsystem(ctrl);
case NVME_IOCTL_RESCAN:
+ if (!capable(CAP_SYS_ADMIN))
+ return -EACCES;
nvme_queue_scan(ctrl);
return 0;
default:
--
2.38.1
Can not set the @shared_hcd to NULL before decrease the usage count
by usb_put_hcd(), this will cause the shared hcd not released.
Fixes: 04284eb74e0c ("usb: xhci-mtk: add support runtime PM")
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Chunfeng Yun <chunfeng.yun(a)mediatek.com>
---
drivers/usb/host/xhci-mtk.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/usb/host/xhci-mtk.c b/drivers/usb/host/xhci-mtk.c
index cff3c4aea036..f7cbb08fc506 100644
--- a/drivers/usb/host/xhci-mtk.c
+++ b/drivers/usb/host/xhci-mtk.c
@@ -646,7 +646,6 @@ static int xhci_mtk_probe(struct platform_device *pdev)
dealloc_usb3_hcd:
usb_remove_hcd(xhci->shared_hcd);
- xhci->shared_hcd = NULL;
put_usb3_hcd:
usb_put_hcd(xhci->shared_hcd);
--
2.18.0
If you are interested to use the sum US$9,500,000.00 to help the
orphans around the world and invest it in your country, kindly get
back to me for more information
Warm
Regards,
Mrs.MIMI HASSAN ABDUL MOHAMMAD
This is a note to let you know that I've just added the patch titled
iio: fix memory leak in iio_device_register_eventset()
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-next 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 also be merged in the next major kernel release
during the merge window.
If you have any questions about this process, please let me know.
From 86fdd15e10e404e70ecb2a3bff24d70356d42b36 Mon Sep 17 00:00:00 2001
From: Zeng Heng <zengheng4(a)huawei.com>
Date: Tue, 15 Nov 2022 10:37:12 +0800
Subject: iio: fix memory leak in iio_device_register_eventset()
When iio_device_register_sysfs_group() returns failed,
iio_device_register_eventset() needs to free attrs array.
Otherwise, kmemleak would scan & report memory leak as below:
unreferenced object 0xffff88810a1cc3c0 (size 32):
comm "100-i2c-vcnl302", pid 728, jiffies 4295052307 (age 156.027s)
backtrace:
__kmalloc+0x46/0x1b0
iio_device_register_eventset at drivers/iio/industrialio-event.c:541
__iio_device_register at drivers/iio/industrialio-core.c:1959
__devm_iio_device_register at drivers/iio/industrialio-core.c:2040
Fixes: 32f171724e5c ("iio: core: rework iio device group creation")
Signed-off-by: Zeng Heng <zengheng4(a)huawei.com>
Link: https://lore.kernel.org/r/20221115023712.3726854-1-zengheng4@huawei.com
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/industrialio-event.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/iio/industrialio-event.c b/drivers/iio/industrialio-event.c
index 3d78da2531a9..727e2ef66aa4 100644
--- a/drivers/iio/industrialio-event.c
+++ b/drivers/iio/industrialio-event.c
@@ -556,7 +556,7 @@ int iio_device_register_eventset(struct iio_dev *indio_dev)
ret = iio_device_register_sysfs_group(indio_dev, &ev_int->group);
if (ret)
- goto error_free_setup_event_lines;
+ goto error_free_group_attrs;
ev_int->ioctl_handler.ioctl = iio_event_ioctl;
iio_device_ioctl_handler_register(&iio_dev_opaque->indio_dev,
@@ -564,6 +564,8 @@ int iio_device_register_eventset(struct iio_dev *indio_dev)
return 0;
+error_free_group_attrs:
+ kfree(ev_int->group.attrs);
error_free_setup_event_lines:
iio_free_chan_devattr_list(&ev_int->dev_attr_list);
kfree(ev_int);
--
2.38.1
This is a note to let you know that I've just added the patch titled
dt-bindings: iio: adc: Remove the property "aspeed,trim-data-valid"
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-next 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 also be merged in the next major kernel release
during the merge window.
If you have any questions about this process, please let me know.
From 398e3479874f381cca8726ca5d8a31e1bf35a3cd Mon Sep 17 00:00:00 2001
From: Billy Tsai <billy_tsai(a)aspeedtech.com>
Date: Mon, 14 Nov 2022 10:50:57 +0800
Subject: dt-bindings: iio: adc: Remove the property "aspeed,trim-data-valid"
If the property is set on a device without valid trimming data in the OTP
the ADC will not function correctly. Therefore, this patch drops the use
of this property to avoid this scenario.
Fixes: 2bdb2f00a895 ("dt-bindings: iio: adc: Add ast2600-adc bindings")
Signed-off-by: Billy Tsai <billy_tsai(a)aspeedtech.com>
Acked-by: Rob Herring <robh(a)kernel.org>
Link: https://lore.kernel.org/r/20221114025057.10843-2-billy_tsai@aspeedtech.com
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
.../devicetree/bindings/iio/adc/aspeed,ast2600-adc.yaml | 7 -------
1 file changed, 7 deletions(-)
diff --git a/Documentation/devicetree/bindings/iio/adc/aspeed,ast2600-adc.yaml b/Documentation/devicetree/bindings/iio/adc/aspeed,ast2600-adc.yaml
index b283c8ca2bbf..5c08d8b6e995 100644
--- a/Documentation/devicetree/bindings/iio/adc/aspeed,ast2600-adc.yaml
+++ b/Documentation/devicetree/bindings/iio/adc/aspeed,ast2600-adc.yaml
@@ -62,13 +62,6 @@ properties:
description:
Inform the driver that last channel will be used to sensor battery.
- aspeed,trim-data-valid:
- type: boolean
- description: |
- The ADC reference voltage can be calibrated to obtain the trimming
- data which will be stored in otp. This property informs the driver that
- the data store in the otp is valid.
-
required:
- compatible
- reg
--
2.38.1
This is a note to let you know that I've just added the patch titled
iio: adc: aspeed: Remove the trim valid dts property.
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-next 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 also be merged in the next major kernel release
during the merge window.
If you have any questions about this process, please let me know.
From fdd0d6b2eb35c83d6b1226ad20b346a4b45ddfb8 Mon Sep 17 00:00:00 2001
From: Billy Tsai <billy_tsai(a)aspeedtech.com>
Date: Mon, 14 Nov 2022 10:50:56 +0800
Subject: iio: adc: aspeed: Remove the trim valid dts property.
The dts property "aspeed,trim-data-valid" is currently used to determine
whether to read trimming data from the OTP register. If this is set on
a device without valid trimming data in the OTP the ADC will not function
correctly. This patch drops the use of this property and instead uses the
default (unprogrammed) OTP value of 0 to detect when a fallback value of
0x8 should be used rather then the value read from the OTP.
Fixes: d0a4c17b4073 ("iio: adc: aspeed: Get and set trimming data.")
Signed-off-by: Billy Tsai <billy_tsai(a)aspeedtech.com>
Link: https://lore.kernel.org/r/20221114025057.10843-1-billy_tsai@aspeedtech.com
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/adc/aspeed_adc.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/drivers/iio/adc/aspeed_adc.c b/drivers/iio/adc/aspeed_adc.c
index 9341e0e0eb55..998e8bcc06e1 100644
--- a/drivers/iio/adc/aspeed_adc.c
+++ b/drivers/iio/adc/aspeed_adc.c
@@ -202,6 +202,8 @@ static int aspeed_adc_set_trim_data(struct iio_dev *indio_dev)
((scu_otp) &
(data->model_data->trim_locate->field)) >>
__ffs(data->model_data->trim_locate->field);
+ if (!trimming_val)
+ trimming_val = 0x8;
}
dev_dbg(data->dev,
"trimming val = %d, offset = %08x, fields = %08x\n",
@@ -563,12 +565,9 @@ static int aspeed_adc_probe(struct platform_device *pdev)
if (ret)
return ret;
- if (of_find_property(data->dev->of_node, "aspeed,trim-data-valid",
- NULL)) {
- ret = aspeed_adc_set_trim_data(indio_dev);
- if (ret)
- return ret;
- }
+ ret = aspeed_adc_set_trim_data(indio_dev);
+ if (ret)
+ return ret;
if (of_find_property(data->dev->of_node, "aspeed,battery-sensing",
NULL)) {
--
2.38.1
This is a note to let you know that I've just added the patch titled
iio: core: Fix entry not deleted when iio_register_sw_trigger_type()
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-next 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 also be merged in the next major kernel release
during the merge window.
If you have any questions about this process, please let me know.
From 4ad09d956f8eacff61e67e5b13ba8ebec3232f76 Mon Sep 17 00:00:00 2001
From: Chen Zhongjin <chenzhongjin(a)huawei.com>
Date: Tue, 8 Nov 2022 11:28:02 +0800
Subject: iio: core: Fix entry not deleted when iio_register_sw_trigger_type()
fails
In iio_register_sw_trigger_type(), configfs_register_default_group() is
possible to fail, but the entry add to iio_trigger_types_list is not
deleted.
This leaves wild in iio_trigger_types_list, which can cause page fault
when module is loading again. So fix this by list_del(&t->list) in error
path.
BUG: unable to handle page fault for address: fffffbfff81d7400
Call Trace:
<TASK>
iio_register_sw_trigger_type
do_one_initcall
do_init_module
load_module
...
Fixes: b662f809d410 ("iio: core: Introduce IIO software triggers")
Signed-off-by: Chen Zhongjin <chenzhongjin(a)huawei.com>
Link: https://lore.kernel.org/r/20221108032802.168623-1-chenzhongjin@huawei.com
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/industrialio-sw-trigger.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/iio/industrialio-sw-trigger.c b/drivers/iio/industrialio-sw-trigger.c
index 994f03a71520..d86a3305d9e8 100644
--- a/drivers/iio/industrialio-sw-trigger.c
+++ b/drivers/iio/industrialio-sw-trigger.c
@@ -58,8 +58,12 @@ int iio_register_sw_trigger_type(struct iio_sw_trigger_type *t)
t->group = configfs_register_default_group(iio_triggers_group, t->name,
&iio_trigger_type_group_type);
- if (IS_ERR(t->group))
+ if (IS_ERR(t->group)) {
+ mutex_lock(&iio_trigger_types_lock);
+ list_del(&t->list);
+ mutex_unlock(&iio_trigger_types_lock);
ret = PTR_ERR(t->group);
+ }
return ret;
}
--
2.38.1
This is a note to let you know that I've just added the patch titled
iio: accel: bma400: Fix memory leak in bma400_get_steps_reg()
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-next 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 also be merged in the next major kernel release
during the merge window.
If you have any questions about this process, please let me know.
From 20690cd50e68c0313472c7539460168b8ea6444d Mon Sep 17 00:00:00 2001
From: Dong Chenchen <dongchenchen2(a)huawei.com>
Date: Thu, 10 Nov 2022 09:07:26 +0800
Subject: iio: accel: bma400: Fix memory leak in bma400_get_steps_reg()
When regmap_bulk_read() fails, it does not free steps_raw,
which will cause a memory leak issue, this patch fixes it.
Fixes: d221de60eee3 ("iio: accel: bma400: Add separate channel for step counter")
Signed-off-by: Dong Chenchen <dongchenchen2(a)huawei.com>
Reviewed-by: Jagath Jog J <jagathjog1996(a)gmail.com>
Link: https://lore.kernel.org/r/20221110010726.235601-1-dongchenchen2@huawei.com
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/accel/bma400_core.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/iio/accel/bma400_core.c b/drivers/iio/accel/bma400_core.c
index 490c342ef72a..6e4d10a7cd32 100644
--- a/drivers/iio/accel/bma400_core.c
+++ b/drivers/iio/accel/bma400_core.c
@@ -805,8 +805,10 @@ static int bma400_get_steps_reg(struct bma400_data *data, int *val)
ret = regmap_bulk_read(data->regmap, BMA400_STEP_CNT0_REG,
steps_raw, BMA400_STEP_RAW_LEN);
- if (ret)
+ if (ret) {
+ kfree(steps_raw);
return ret;
+ }
*val = get_unaligned_le24(steps_raw);
kfree(steps_raw);
return IIO_VAL_INT;
--
2.38.1
This is a note to let you know that I've just added the patch titled
iio: light: apds9960: fix wrong register for gesture gain
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-next 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 also be merged in the next major kernel release
during the merge window.
If you have any questions about this process, please let me know.
From 0aa60ff5d996d4ecdd4a62699c01f6d00f798d59 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Alejandro=20Concepci=C3=B3n=20Rodr=C3=ADguez?=
<asconcepcion(a)acoro.eu>
Date: Sun, 6 Nov 2022 01:56:51 +0000
Subject: iio: light: apds9960: fix wrong register for gesture gain
Gesture Gain Control is in REG_GCONF_2 (0xa3), not in REG_CONFIG_2 (0x90).
Fixes: aff268cd532e ("iio: light: add APDS9960 ALS + promixity driver")
Signed-off-by: Alejandro Concepcion-Rodriguez <asconcepcion(a)acoro.eu>
Acked-by: Matt Ranostay <matt.ranostay(a)konsulko.com>
Cc: <Stable(a)vger.kernel.org>
Link: https://lore.kernel.org/r/EaT-NKC-H4DNX5z4Lg9B6IWPD5TrTrYBr5DYB784wfDKQkTmz…
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/light/apds9960.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/iio/light/apds9960.c b/drivers/iio/light/apds9960.c
index b62c139baf41..38d4c7644bef 100644
--- a/drivers/iio/light/apds9960.c
+++ b/drivers/iio/light/apds9960.c
@@ -54,9 +54,6 @@
#define APDS9960_REG_CONTROL_PGAIN_MASK_SHIFT 2
#define APDS9960_REG_CONFIG_2 0x90
-#define APDS9960_REG_CONFIG_2_GGAIN_MASK 0x60
-#define APDS9960_REG_CONFIG_2_GGAIN_MASK_SHIFT 5
-
#define APDS9960_REG_ID 0x92
#define APDS9960_REG_STATUS 0x93
@@ -77,6 +74,9 @@
#define APDS9960_REG_GCONF_1_GFIFO_THRES_MASK_SHIFT 6
#define APDS9960_REG_GCONF_2 0xa3
+#define APDS9960_REG_GCONF_2_GGAIN_MASK 0x60
+#define APDS9960_REG_GCONF_2_GGAIN_MASK_SHIFT 5
+
#define APDS9960_REG_GOFFSET_U 0xa4
#define APDS9960_REG_GOFFSET_D 0xa5
#define APDS9960_REG_GPULSE 0xa6
@@ -396,9 +396,9 @@ static int apds9960_set_pxs_gain(struct apds9960_data *data, int val)
}
ret = regmap_update_bits(data->regmap,
- APDS9960_REG_CONFIG_2,
- APDS9960_REG_CONFIG_2_GGAIN_MASK,
- idx << APDS9960_REG_CONFIG_2_GGAIN_MASK_SHIFT);
+ APDS9960_REG_GCONF_2,
+ APDS9960_REG_GCONF_2_GGAIN_MASK,
+ idx << APDS9960_REG_GCONF_2_GGAIN_MASK_SHIFT);
if (!ret)
data->pxs_gain = idx;
mutex_unlock(&data->lock);
--
2.38.1
This is a note to let you know that I've just added the patch titled
iio: fix memory leak in iio_device_register_eventset()
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-testing 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 be merged to the char-misc-next branch sometime soon,
after it passes testing, and the merge window is open.
If you have any questions about this process, please let me know.
From 86fdd15e10e404e70ecb2a3bff24d70356d42b36 Mon Sep 17 00:00:00 2001
From: Zeng Heng <zengheng4(a)huawei.com>
Date: Tue, 15 Nov 2022 10:37:12 +0800
Subject: iio: fix memory leak in iio_device_register_eventset()
When iio_device_register_sysfs_group() returns failed,
iio_device_register_eventset() needs to free attrs array.
Otherwise, kmemleak would scan & report memory leak as below:
unreferenced object 0xffff88810a1cc3c0 (size 32):
comm "100-i2c-vcnl302", pid 728, jiffies 4295052307 (age 156.027s)
backtrace:
__kmalloc+0x46/0x1b0
iio_device_register_eventset at drivers/iio/industrialio-event.c:541
__iio_device_register at drivers/iio/industrialio-core.c:1959
__devm_iio_device_register at drivers/iio/industrialio-core.c:2040
Fixes: 32f171724e5c ("iio: core: rework iio device group creation")
Signed-off-by: Zeng Heng <zengheng4(a)huawei.com>
Link: https://lore.kernel.org/r/20221115023712.3726854-1-zengheng4@huawei.com
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/industrialio-event.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/iio/industrialio-event.c b/drivers/iio/industrialio-event.c
index 3d78da2531a9..727e2ef66aa4 100644
--- a/drivers/iio/industrialio-event.c
+++ b/drivers/iio/industrialio-event.c
@@ -556,7 +556,7 @@ int iio_device_register_eventset(struct iio_dev *indio_dev)
ret = iio_device_register_sysfs_group(indio_dev, &ev_int->group);
if (ret)
- goto error_free_setup_event_lines;
+ goto error_free_group_attrs;
ev_int->ioctl_handler.ioctl = iio_event_ioctl;
iio_device_ioctl_handler_register(&iio_dev_opaque->indio_dev,
@@ -564,6 +564,8 @@ int iio_device_register_eventset(struct iio_dev *indio_dev)
return 0;
+error_free_group_attrs:
+ kfree(ev_int->group.attrs);
error_free_setup_event_lines:
iio_free_chan_devattr_list(&ev_int->dev_attr_list);
kfree(ev_int);
--
2.38.1
This is a note to let you know that I've just added the patch titled
dt-bindings: iio: adc: Remove the property "aspeed,trim-data-valid"
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-testing 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 be merged to the char-misc-next branch sometime soon,
after it passes testing, and the merge window is open.
If you have any questions about this process, please let me know.
From 398e3479874f381cca8726ca5d8a31e1bf35a3cd Mon Sep 17 00:00:00 2001
From: Billy Tsai <billy_tsai(a)aspeedtech.com>
Date: Mon, 14 Nov 2022 10:50:57 +0800
Subject: dt-bindings: iio: adc: Remove the property "aspeed,trim-data-valid"
If the property is set on a device without valid trimming data in the OTP
the ADC will not function correctly. Therefore, this patch drops the use
of this property to avoid this scenario.
Fixes: 2bdb2f00a895 ("dt-bindings: iio: adc: Add ast2600-adc bindings")
Signed-off-by: Billy Tsai <billy_tsai(a)aspeedtech.com>
Acked-by: Rob Herring <robh(a)kernel.org>
Link: https://lore.kernel.org/r/20221114025057.10843-2-billy_tsai@aspeedtech.com
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
.../devicetree/bindings/iio/adc/aspeed,ast2600-adc.yaml | 7 -------
1 file changed, 7 deletions(-)
diff --git a/Documentation/devicetree/bindings/iio/adc/aspeed,ast2600-adc.yaml b/Documentation/devicetree/bindings/iio/adc/aspeed,ast2600-adc.yaml
index b283c8ca2bbf..5c08d8b6e995 100644
--- a/Documentation/devicetree/bindings/iio/adc/aspeed,ast2600-adc.yaml
+++ b/Documentation/devicetree/bindings/iio/adc/aspeed,ast2600-adc.yaml
@@ -62,13 +62,6 @@ properties:
description:
Inform the driver that last channel will be used to sensor battery.
- aspeed,trim-data-valid:
- type: boolean
- description: |
- The ADC reference voltage can be calibrated to obtain the trimming
- data which will be stored in otp. This property informs the driver that
- the data store in the otp is valid.
-
required:
- compatible
- reg
--
2.38.1
This is a note to let you know that I've just added the patch titled
iio: core: Fix entry not deleted when iio_register_sw_trigger_type()
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-testing 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 be merged to the char-misc-next branch sometime soon,
after it passes testing, and the merge window is open.
If you have any questions about this process, please let me know.
From 4ad09d956f8eacff61e67e5b13ba8ebec3232f76 Mon Sep 17 00:00:00 2001
From: Chen Zhongjin <chenzhongjin(a)huawei.com>
Date: Tue, 8 Nov 2022 11:28:02 +0800
Subject: iio: core: Fix entry not deleted when iio_register_sw_trigger_type()
fails
In iio_register_sw_trigger_type(), configfs_register_default_group() is
possible to fail, but the entry add to iio_trigger_types_list is not
deleted.
This leaves wild in iio_trigger_types_list, which can cause page fault
when module is loading again. So fix this by list_del(&t->list) in error
path.
BUG: unable to handle page fault for address: fffffbfff81d7400
Call Trace:
<TASK>
iio_register_sw_trigger_type
do_one_initcall
do_init_module
load_module
...
Fixes: b662f809d410 ("iio: core: Introduce IIO software triggers")
Signed-off-by: Chen Zhongjin <chenzhongjin(a)huawei.com>
Link: https://lore.kernel.org/r/20221108032802.168623-1-chenzhongjin@huawei.com
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/industrialio-sw-trigger.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/iio/industrialio-sw-trigger.c b/drivers/iio/industrialio-sw-trigger.c
index 994f03a71520..d86a3305d9e8 100644
--- a/drivers/iio/industrialio-sw-trigger.c
+++ b/drivers/iio/industrialio-sw-trigger.c
@@ -58,8 +58,12 @@ int iio_register_sw_trigger_type(struct iio_sw_trigger_type *t)
t->group = configfs_register_default_group(iio_triggers_group, t->name,
&iio_trigger_type_group_type);
- if (IS_ERR(t->group))
+ if (IS_ERR(t->group)) {
+ mutex_lock(&iio_trigger_types_lock);
+ list_del(&t->list);
+ mutex_unlock(&iio_trigger_types_lock);
ret = PTR_ERR(t->group);
+ }
return ret;
}
--
2.38.1
This is a note to let you know that I've just added the patch titled
iio: adc: aspeed: Remove the trim valid dts property.
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-testing 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 be merged to the char-misc-next branch sometime soon,
after it passes testing, and the merge window is open.
If you have any questions about this process, please let me know.
From fdd0d6b2eb35c83d6b1226ad20b346a4b45ddfb8 Mon Sep 17 00:00:00 2001
From: Billy Tsai <billy_tsai(a)aspeedtech.com>
Date: Mon, 14 Nov 2022 10:50:56 +0800
Subject: iio: adc: aspeed: Remove the trim valid dts property.
The dts property "aspeed,trim-data-valid" is currently used to determine
whether to read trimming data from the OTP register. If this is set on
a device without valid trimming data in the OTP the ADC will not function
correctly. This patch drops the use of this property and instead uses the
default (unprogrammed) OTP value of 0 to detect when a fallback value of
0x8 should be used rather then the value read from the OTP.
Fixes: d0a4c17b4073 ("iio: adc: aspeed: Get and set trimming data.")
Signed-off-by: Billy Tsai <billy_tsai(a)aspeedtech.com>
Link: https://lore.kernel.org/r/20221114025057.10843-1-billy_tsai@aspeedtech.com
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/adc/aspeed_adc.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/drivers/iio/adc/aspeed_adc.c b/drivers/iio/adc/aspeed_adc.c
index 9341e0e0eb55..998e8bcc06e1 100644
--- a/drivers/iio/adc/aspeed_adc.c
+++ b/drivers/iio/adc/aspeed_adc.c
@@ -202,6 +202,8 @@ static int aspeed_adc_set_trim_data(struct iio_dev *indio_dev)
((scu_otp) &
(data->model_data->trim_locate->field)) >>
__ffs(data->model_data->trim_locate->field);
+ if (!trimming_val)
+ trimming_val = 0x8;
}
dev_dbg(data->dev,
"trimming val = %d, offset = %08x, fields = %08x\n",
@@ -563,12 +565,9 @@ static int aspeed_adc_probe(struct platform_device *pdev)
if (ret)
return ret;
- if (of_find_property(data->dev->of_node, "aspeed,trim-data-valid",
- NULL)) {
- ret = aspeed_adc_set_trim_data(indio_dev);
- if (ret)
- return ret;
- }
+ ret = aspeed_adc_set_trim_data(indio_dev);
+ if (ret)
+ return ret;
if (of_find_property(data->dev->of_node, "aspeed,battery-sensing",
NULL)) {
--
2.38.1
This is a note to let you know that I've just added the patch titled
iio: accel: bma400: Fix memory leak in bma400_get_steps_reg()
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-testing 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 be merged to the char-misc-next branch sometime soon,
after it passes testing, and the merge window is open.
If you have any questions about this process, please let me know.
From 20690cd50e68c0313472c7539460168b8ea6444d Mon Sep 17 00:00:00 2001
From: Dong Chenchen <dongchenchen2(a)huawei.com>
Date: Thu, 10 Nov 2022 09:07:26 +0800
Subject: iio: accel: bma400: Fix memory leak in bma400_get_steps_reg()
When regmap_bulk_read() fails, it does not free steps_raw,
which will cause a memory leak issue, this patch fixes it.
Fixes: d221de60eee3 ("iio: accel: bma400: Add separate channel for step counter")
Signed-off-by: Dong Chenchen <dongchenchen2(a)huawei.com>
Reviewed-by: Jagath Jog J <jagathjog1996(a)gmail.com>
Link: https://lore.kernel.org/r/20221110010726.235601-1-dongchenchen2@huawei.com
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/accel/bma400_core.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/iio/accel/bma400_core.c b/drivers/iio/accel/bma400_core.c
index 490c342ef72a..6e4d10a7cd32 100644
--- a/drivers/iio/accel/bma400_core.c
+++ b/drivers/iio/accel/bma400_core.c
@@ -805,8 +805,10 @@ static int bma400_get_steps_reg(struct bma400_data *data, int *val)
ret = regmap_bulk_read(data->regmap, BMA400_STEP_CNT0_REG,
steps_raw, BMA400_STEP_RAW_LEN);
- if (ret)
+ if (ret) {
+ kfree(steps_raw);
return ret;
+ }
*val = get_unaligned_le24(steps_raw);
kfree(steps_raw);
return IIO_VAL_INT;
--
2.38.1
This is a note to let you know that I've just added the patch titled
iio: light: apds9960: fix wrong register for gesture gain
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-testing 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 be merged to the char-misc-next branch sometime soon,
after it passes testing, and the merge window is open.
If you have any questions about this process, please let me know.
From 0aa60ff5d996d4ecdd4a62699c01f6d00f798d59 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Alejandro=20Concepci=C3=B3n=20Rodr=C3=ADguez?=
<asconcepcion(a)acoro.eu>
Date: Sun, 6 Nov 2022 01:56:51 +0000
Subject: iio: light: apds9960: fix wrong register for gesture gain
Gesture Gain Control is in REG_GCONF_2 (0xa3), not in REG_CONFIG_2 (0x90).
Fixes: aff268cd532e ("iio: light: add APDS9960 ALS + promixity driver")
Signed-off-by: Alejandro Concepcion-Rodriguez <asconcepcion(a)acoro.eu>
Acked-by: Matt Ranostay <matt.ranostay(a)konsulko.com>
Cc: <Stable(a)vger.kernel.org>
Link: https://lore.kernel.org/r/EaT-NKC-H4DNX5z4Lg9B6IWPD5TrTrYBr5DYB784wfDKQkTmz…
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/light/apds9960.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/iio/light/apds9960.c b/drivers/iio/light/apds9960.c
index b62c139baf41..38d4c7644bef 100644
--- a/drivers/iio/light/apds9960.c
+++ b/drivers/iio/light/apds9960.c
@@ -54,9 +54,6 @@
#define APDS9960_REG_CONTROL_PGAIN_MASK_SHIFT 2
#define APDS9960_REG_CONFIG_2 0x90
-#define APDS9960_REG_CONFIG_2_GGAIN_MASK 0x60
-#define APDS9960_REG_CONFIG_2_GGAIN_MASK_SHIFT 5
-
#define APDS9960_REG_ID 0x92
#define APDS9960_REG_STATUS 0x93
@@ -77,6 +74,9 @@
#define APDS9960_REG_GCONF_1_GFIFO_THRES_MASK_SHIFT 6
#define APDS9960_REG_GCONF_2 0xa3
+#define APDS9960_REG_GCONF_2_GGAIN_MASK 0x60
+#define APDS9960_REG_GCONF_2_GGAIN_MASK_SHIFT 5
+
#define APDS9960_REG_GOFFSET_U 0xa4
#define APDS9960_REG_GOFFSET_D 0xa5
#define APDS9960_REG_GPULSE 0xa6
@@ -396,9 +396,9 @@ static int apds9960_set_pxs_gain(struct apds9960_data *data, int val)
}
ret = regmap_update_bits(data->regmap,
- APDS9960_REG_CONFIG_2,
- APDS9960_REG_CONFIG_2_GGAIN_MASK,
- idx << APDS9960_REG_CONFIG_2_GGAIN_MASK_SHIFT);
+ APDS9960_REG_GCONF_2,
+ APDS9960_REG_GCONF_2_GGAIN_MASK,
+ idx << APDS9960_REG_GCONF_2_GGAIN_MASK_SHIFT);
if (!ret)
data->pxs_gain = idx;
mutex_unlock(&data->lock);
--
2.38.1
This is a note to let you know that I've just added the patch titled
iio: adc128s052: add proper .data members in adc128_of_match table
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-next 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 also be merged in the next major kernel release
during the merge window.
If you have any questions about this process, please let me know.
From e2af60f5900c6ade53477b494ffb54690eee11f5 Mon Sep 17 00:00:00 2001
From: Rasmus Villemoes <linux(a)rasmusvillemoes.dk>
Date: Tue, 15 Nov 2022 14:23:23 +0100
Subject: iio: adc128s052: add proper .data members in adc128_of_match table
Prior to commit bd5d54e4d49d ("iio: adc128s052: add ACPI _HID
AANT1280"), the driver unconditionally used spi_get_device_id() to get
the index into the adc128_config array.
However, with that commit, OF-based boards now incorrectly treat all
supported sensors as if they are an adc128s052, because all the .data
members of the adc128_of_match table are implicitly 0. Our board,
which has an adc122s021, thus exposes 8 channels whereas it really
only has two.
Fixes: bd5d54e4d49d ("iio: adc128s052: add ACPI _HID AANT1280")
Signed-off-by: Rasmus Villemoes <linux(a)rasmusvillemoes.dk>
Reviewed-by: Andy Shevchenko <andriy.shevchenko(a)linux.intel.com>
Link: https://lore.kernel.org/r/20221115132324.1078169-1-linux@rasmusvillemoes.dk
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/adc/ti-adc128s052.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/drivers/iio/adc/ti-adc128s052.c b/drivers/iio/adc/ti-adc128s052.c
index 622fd384983c..b3d5b9b7255b 100644
--- a/drivers/iio/adc/ti-adc128s052.c
+++ b/drivers/iio/adc/ti-adc128s052.c
@@ -181,13 +181,13 @@ static int adc128_probe(struct spi_device *spi)
}
static const struct of_device_id adc128_of_match[] = {
- { .compatible = "ti,adc128s052", },
- { .compatible = "ti,adc122s021", },
- { .compatible = "ti,adc122s051", },
- { .compatible = "ti,adc122s101", },
- { .compatible = "ti,adc124s021", },
- { .compatible = "ti,adc124s051", },
- { .compatible = "ti,adc124s101", },
+ { .compatible = "ti,adc128s052", .data = (void*)0L, },
+ { .compatible = "ti,adc122s021", .data = (void*)1L, },
+ { .compatible = "ti,adc122s051", .data = (void*)1L, },
+ { .compatible = "ti,adc122s101", .data = (void*)1L, },
+ { .compatible = "ti,adc124s021", .data = (void*)2L, },
+ { .compatible = "ti,adc124s051", .data = (void*)2L, },
+ { .compatible = "ti,adc124s101", .data = (void*)2L, },
{ /* sentinel */ },
};
MODULE_DEVICE_TABLE(of, adc128_of_match);
--
2.38.1
This is a note to let you know that I've just added the patch titled
iio: addac: ad74413r: fix integer promotion bug in
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-next 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 also be merged in the next major kernel release
during the merge window.
If you have any questions about this process, please let me know.
From 980389d06d08442fad0139874bff455c76125e47 Mon Sep 17 00:00:00 2001
From: Rasmus Villemoes <linux(a)rasmusvillemoes.dk>
Date: Fri, 18 Nov 2022 13:32:08 +0100
Subject: iio: addac: ad74413r: fix integer promotion bug in
ad74413_get_input_current_offset()
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The constant AD74413R_ADC_RESULT_MAX is defined via GENMASK, so its
type is "unsigned long".
Hence in the expression voltage_offset * AD74413R_ADC_RESULT_MAX,
voltage_offset is first promoted to unsigned long, and since it may be
negative, that results in a garbage value. For example, when range is
AD74413R_ADC_RANGE_5V_BI_DIR, voltage_offset is -2500 and
voltage_range is 5000, so the RHS of this assignment is, depending on
sizeof(long), either 826225UL or 3689348814709142UL, which after
truncation to int then results in either 826225 or 1972216214 being
the output from in_currentX_offset.
Casting to int avoids that promotion and results in the correct -32767
output.
Signed-off-by: Rasmus Villemoes <linux(a)rasmusvillemoes.dk>
Fixes: fea251b6a5db (iio: addac: add AD74413R driver)
Reviewed-by: Nuno Sá <nuno.sa(a)analog.com>
Link: https://lore.kernel.org/r/20221118123209.1658420-1-linux@rasmusvillemoes.dk
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/addac/ad74413r.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/iio/addac/ad74413r.c b/drivers/iio/addac/ad74413r.c
index 899bcd83f40b..e0e130ba9d3e 100644
--- a/drivers/iio/addac/ad74413r.c
+++ b/drivers/iio/addac/ad74413r.c
@@ -691,7 +691,7 @@ static int ad74413_get_input_current_offset(struct ad74413r_state *st,
if (ret)
return ret;
- *val = voltage_offset * AD74413R_ADC_RESULT_MAX / voltage_range;
+ *val = voltage_offset * (int)AD74413R_ADC_RESULT_MAX / voltage_range;
return IIO_VAL_INT;
}
--
2.38.1
This is a note to let you know that I've just added the patch titled
iio: adc128s052: add proper .data members in adc128_of_match table
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-testing 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 be merged to the char-misc-next branch sometime soon,
after it passes testing, and the merge window is open.
If you have any questions about this process, please let me know.
From e2af60f5900c6ade53477b494ffb54690eee11f5 Mon Sep 17 00:00:00 2001
From: Rasmus Villemoes <linux(a)rasmusvillemoes.dk>
Date: Tue, 15 Nov 2022 14:23:23 +0100
Subject: iio: adc128s052: add proper .data members in adc128_of_match table
Prior to commit bd5d54e4d49d ("iio: adc128s052: add ACPI _HID
AANT1280"), the driver unconditionally used spi_get_device_id() to get
the index into the adc128_config array.
However, with that commit, OF-based boards now incorrectly treat all
supported sensors as if they are an adc128s052, because all the .data
members of the adc128_of_match table are implicitly 0. Our board,
which has an adc122s021, thus exposes 8 channels whereas it really
only has two.
Fixes: bd5d54e4d49d ("iio: adc128s052: add ACPI _HID AANT1280")
Signed-off-by: Rasmus Villemoes <linux(a)rasmusvillemoes.dk>
Reviewed-by: Andy Shevchenko <andriy.shevchenko(a)linux.intel.com>
Link: https://lore.kernel.org/r/20221115132324.1078169-1-linux@rasmusvillemoes.dk
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/adc/ti-adc128s052.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/drivers/iio/adc/ti-adc128s052.c b/drivers/iio/adc/ti-adc128s052.c
index 622fd384983c..b3d5b9b7255b 100644
--- a/drivers/iio/adc/ti-adc128s052.c
+++ b/drivers/iio/adc/ti-adc128s052.c
@@ -181,13 +181,13 @@ static int adc128_probe(struct spi_device *spi)
}
static const struct of_device_id adc128_of_match[] = {
- { .compatible = "ti,adc128s052", },
- { .compatible = "ti,adc122s021", },
- { .compatible = "ti,adc122s051", },
- { .compatible = "ti,adc122s101", },
- { .compatible = "ti,adc124s021", },
- { .compatible = "ti,adc124s051", },
- { .compatible = "ti,adc124s101", },
+ { .compatible = "ti,adc128s052", .data = (void*)0L, },
+ { .compatible = "ti,adc122s021", .data = (void*)1L, },
+ { .compatible = "ti,adc122s051", .data = (void*)1L, },
+ { .compatible = "ti,adc122s101", .data = (void*)1L, },
+ { .compatible = "ti,adc124s021", .data = (void*)2L, },
+ { .compatible = "ti,adc124s051", .data = (void*)2L, },
+ { .compatible = "ti,adc124s101", .data = (void*)2L, },
{ /* sentinel */ },
};
MODULE_DEVICE_TABLE(of, adc128_of_match);
--
2.38.1
This is a note to let you know that I've just added the patch titled
iio: addac: ad74413r: fix integer promotion bug in
to my char-misc git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
in the char-misc-testing 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 be merged to the char-misc-next branch sometime soon,
after it passes testing, and the merge window is open.
If you have any questions about this process, please let me know.
From 980389d06d08442fad0139874bff455c76125e47 Mon Sep 17 00:00:00 2001
From: Rasmus Villemoes <linux(a)rasmusvillemoes.dk>
Date: Fri, 18 Nov 2022 13:32:08 +0100
Subject: iio: addac: ad74413r: fix integer promotion bug in
ad74413_get_input_current_offset()
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The constant AD74413R_ADC_RESULT_MAX is defined via GENMASK, so its
type is "unsigned long".
Hence in the expression voltage_offset * AD74413R_ADC_RESULT_MAX,
voltage_offset is first promoted to unsigned long, and since it may be
negative, that results in a garbage value. For example, when range is
AD74413R_ADC_RANGE_5V_BI_DIR, voltage_offset is -2500 and
voltage_range is 5000, so the RHS of this assignment is, depending on
sizeof(long), either 826225UL or 3689348814709142UL, which after
truncation to int then results in either 826225 or 1972216214 being
the output from in_currentX_offset.
Casting to int avoids that promotion and results in the correct -32767
output.
Signed-off-by: Rasmus Villemoes <linux(a)rasmusvillemoes.dk>
Fixes: fea251b6a5db (iio: addac: add AD74413R driver)
Reviewed-by: Nuno Sá <nuno.sa(a)analog.com>
Link: https://lore.kernel.org/r/20221118123209.1658420-1-linux@rasmusvillemoes.dk
Cc: <Stable(a)vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron(a)huawei.com>
---
drivers/iio/addac/ad74413r.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/iio/addac/ad74413r.c b/drivers/iio/addac/ad74413r.c
index 899bcd83f40b..e0e130ba9d3e 100644
--- a/drivers/iio/addac/ad74413r.c
+++ b/drivers/iio/addac/ad74413r.c
@@ -691,7 +691,7 @@ static int ad74413_get_input_current_offset(struct ad74413r_state *st,
if (ret)
return ret;
- *val = voltage_offset * AD74413R_ADC_RESULT_MAX / voltage_range;
+ *val = voltage_offset * (int)AD74413R_ADC_RESULT_MAX / voltage_range;
return IIO_VAL_INT;
}
--
2.38.1
To whom it may concern,
I would like to order HARD HAT . I would be glad if you could email me
back with the types and pricing you carry at the moment .
Regards ,
Mr HAROLD COOPER
PH: 813 750 7707
stable-rc/queue/5.10 build: 185 builds: 6 failed, 179 passed, 367 errors, 12 warnings (v5.10.155-182-gefc3944849e5)
Full Build Summary: https://kernelci.org/build/stable-rc/branch/queue%2F5.10/kernel/v5.10.155-1…
Tree: stable-rc
Branch: queue/5.10
Git Describe: v5.10.155-182-gefc3944849e5
Git Commit: efc3944849e5edad343f28092ab8a9f002c92668
Git URL: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
Built: 7 unique architectures
Build Failures Detected:
arm64:
defconfig: (gcc-10) FAIL
defconfig+arm64-chromebook: (gcc-10) FAIL
arm:
multi_v7_defconfig: (gcc-10) FAIL
rpc_defconfig: (gcc-10) FAIL
mips:
ip27_defconfig: (gcc-10) FAIL
ip28_defconfig: (gcc-10) FAIL
Errors and Warnings Detected:
arc:
arm64:
defconfig (gcc-10): 121 errors, 1 warning
defconfig+arm64-chromebook (gcc-10): 121 errors, 1 warning
arm:
multi_v7_defconfig (gcc-10): 121 errors, 1 warning
rpc_defconfig (gcc-10): 4 errors
i386:
mips:
32r2el_defconfig (gcc-10): 1 warning
decstation_64_defconfig (gcc-10): 1 warning
decstation_defconfig (gcc-10): 1 warning
decstation_r4k_defconfig (gcc-10): 1 warning
rm200_defconfig (gcc-10): 1 warning
riscv:
rv32_defconfig (gcc-10): 4 warnings
x86_64:
Errors summary:
3 drivers/pinctrl/pinctrl-rockchip.c:959:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:958:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:957:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:956:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:955:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:951:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:950:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:949:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:948:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:947:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:946:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:945:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:944:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:943:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:942:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:941:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:940:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:936:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:935:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:934:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:933:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:932:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:931:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:930:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:929:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:928:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:927:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:926:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:925:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:924:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:923:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:922:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:921:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:920:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:919:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:918:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:917:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:916:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:915:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:914:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:913:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:912:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:911:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:907:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:906:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:902:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:901:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:900:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:899:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:898:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:897:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:896:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:895:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:894:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:893:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:892:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:891:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:890:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:889:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:888:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:887:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:886:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:885:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:881:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:880:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:876:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:875:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:874:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:873:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:872:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:871:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:870:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:866:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:865:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:864:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:863:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:862:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:861:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:860:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:859:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:858:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:857:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:856:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:855:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:854:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:853:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:852:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:851:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:850:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:849:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:848:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:847:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:846:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:845:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:844:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:843:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:842:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:841:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:840:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:839:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:838:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:837:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:836:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:835:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:834:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:833:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:832:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:831:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:830:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:829:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:828:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:827:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:826:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:825:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:824:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:823:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:822:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:821:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:820:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:819:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:819:2: error: implicit declaration of function ‘RK_MUXROUTE_SAME’ [-Werror=implicit-function-declaration]
2 arm-linux-gnueabihf-gcc: error: unrecognized -march target: armv3m
2 arm-linux-gnueabihf-gcc: error: missing argument to ‘-march=’
Warnings summary:
3 kernel/rcu/tasks.h:710:13: warning: ‘show_rcu_tasks_rude_gp_kthread’ defined but not used [-Wunused-function]
3 cc1: some warnings being treated as errors
2 <stdin>:830:2: warning: #warning syscall fstat64 not implemented [-Wcpp]
2 <stdin>:1127:2: warning: #warning syscall fstatat64 not implemented [-Wcpp]
1 drivers/block/paride/bpck.c:32: warning: "PC" redefined
1 WARNING: modpost: Symbol info of vmlinux is missing. Unresolved symbol check will be entirely skipped.
Section mismatches summary:
1 WARNING: modpost: vmlinux.o(___ksymtab_gpl+ixp4xx_irq_init+0x0): Section mismatch in reference from the variable __ksymtab_ixp4xx_irq_init to the function .init.text:ixp4xx_irq_init()
1 WARNING: modpost: vmlinux.o(___ksymtab+prom_init_numa_memory+0x0): Section mismatch in reference from the variable __ksymtab_prom_init_numa_memory to the function .init.text:prom_init_numa_memory()
================================================================================
Detailed per-defconfig build reports:
--------------------------------------------------------------------------------
32r2el_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
WARNING: modpost: Symbol info of vmlinux is missing. Unresolved symbol check will be entirely skipped.
--------------------------------------------------------------------------------
allnoconfig (i386, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
am200epdkit_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ar7_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
aspeed_g4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
aspeed_g5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
assabet_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
at91_dt_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ath25_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ath79_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axm55xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axs103_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axs103_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
badge4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm2835_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm47xx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm63xx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bigsur_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bmips_be_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bmips_stb_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
capcella_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cavium_octeon_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cerfcube_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ci20_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cm_x300_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cobalt_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
colibri_pxa270_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
colibri_pxa300_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
collie_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
corgi_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cu1000-neo_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cu1830-neo_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
davinci_all_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
db1xxx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
decstation_64_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
kernel/rcu/tasks.h:710:13: warning: ‘show_rcu_tasks_rude_gp_kthread’ defined but not used [-Wunused-function]
--------------------------------------------------------------------------------
decstation_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
kernel/rcu/tasks.h:710:13: warning: ‘show_rcu_tasks_rude_gp_kthread’ defined but not used [-Wunused-function]
--------------------------------------------------------------------------------
decstation_r4k_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
kernel/rcu/tasks.h:710:13: warning: ‘show_rcu_tasks_rude_gp_kthread’ defined but not used [-Wunused-function]
--------------------------------------------------------------------------------
defconfig (riscv, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig (arm64, gcc-10) — FAIL, 121 errors, 1 warning, 0 section mismatches
Errors:
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: implicit declaration of function ‘RK_MUXROUTE_SAME’ [-Werror=implicit-function-declaration]
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:820:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:821:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:822:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:823:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:824:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:825:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:826:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:827:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:828:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:829:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:830:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:831:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:832:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:833:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:834:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:835:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:836:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:837:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:838:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:839:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:840:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:841:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:842:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:843:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:844:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:845:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:846:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:847:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:848:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:849:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:850:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:851:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:852:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:853:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:854:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:855:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:856:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:857:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:858:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:859:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:860:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:861:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:862:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:863:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:864:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:865:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:866:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:870:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:871:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:872:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:873:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:874:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:875:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:876:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:880:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:881:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:885:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:886:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:887:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:888:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:889:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:890:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:891:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:892:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:893:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:894:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:895:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:896:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:897:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:898:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:899:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:900:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:901:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:902:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:906:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:907:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:911:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:912:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:913:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:914:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:915:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:916:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:917:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:918:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:919:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:920:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:921:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:922:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:923:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:924:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:925:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:926:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:927:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:928:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:929:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:930:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:931:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:932:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:933:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:934:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:935:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:936:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:940:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:941:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:942:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:943:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:944:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:945:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:946:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:947:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:948:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:949:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:950:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:951:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:955:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:956:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:957:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:958:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:959:2: error: initializer element is not constant
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
defconfig+arm64-chromebook (arm64, gcc-10) — FAIL, 121 errors, 1 warning, 0 section mismatches
Errors:
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: implicit declaration of function ‘RK_MUXROUTE_SAME’ [-Werror=implicit-function-declaration]
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:820:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:821:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:822:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:823:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:824:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:825:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:826:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:827:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:828:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:829:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:830:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:831:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:832:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:833:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:834:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:835:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:836:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:837:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:838:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:839:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:840:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:841:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:842:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:843:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:844:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:845:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:846:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:847:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:848:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:849:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:850:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:851:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:852:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:853:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:854:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:855:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:856:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:857:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:858:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:859:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:860:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:861:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:862:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:863:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:864:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:865:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:866:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:870:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:871:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:872:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:873:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:874:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:875:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:876:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:880:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:881:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:885:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:886:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:887:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:888:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:889:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:890:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:891:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:892:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:893:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:894:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:895:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:896:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:897:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:898:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:899:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:900:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:901:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:902:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:906:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:907:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:911:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:912:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:913:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:914:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:915:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:916:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:917:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:918:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:919:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:920:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:921:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:922:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:923:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:924:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:925:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:926:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:927:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:928:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:929:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:930:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:931:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:932:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:933:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:934:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:935:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:936:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:940:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:941:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:942:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:943:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:944:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:945:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:946:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:947:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:948:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:949:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:950:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:951:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:955:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:956:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:957:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:958:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:959:2: error: initializer element is not constant
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
dove_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
e55_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ebsa110_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
efm32_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ep93xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
eseries_pxa_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
exynos_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ezx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
footbridge_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
fuloong2e_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
gcw0_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
gemini_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
gpr_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
h3600_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
h5000_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hackkit_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
haps_hs_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
haps_hs_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hisi_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hsdk_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
i386_defconfig (i386, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
imote2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
imx_v4_v5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
imx_v6_v7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
integrator_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
iop32x_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip22_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip27_defconfig (mips, gcc-10) — FAIL, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip28_defconfig (mips, gcc-10) — FAIL, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip32_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ixp4xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
Section mismatches:
WARNING: modpost: vmlinux.o(___ksymtab_gpl+ixp4xx_irq_init+0x0): Section mismatch in reference from the variable __ksymtab_ixp4xx_irq_init to the function .init.text:ixp4xx_irq_init()
--------------------------------------------------------------------------------
jazz_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
jmr3927_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
jornada720_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
keystone_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lart_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lemote2f_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
loongson1b_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
loongson1c_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
loongson3_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
Section mismatches:
WARNING: modpost: vmlinux.o(___ksymtab+prom_init_numa_memory+0x0): Section mismatch in reference from the variable __ksymtab_prom_init_numa_memory to the function .init.text:prom_init_numa_memory()
--------------------------------------------------------------------------------
lpc18xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lpc32xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lpd270_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lubbock_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
magician_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mainstone_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_kvm_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_kvm_guest_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_qemu_32r6_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltaaprp_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltasmvp_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltasmvp_eva_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltaup_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltaup_xpa_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
milbeaut_m10v_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mini2440_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mmp2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
moxart_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mpc30x_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mps2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mtx1_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v4t_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v7_defconfig (arm, gcc-10) — FAIL, 121 errors, 1 warning, 0 section mismatches
Errors:
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: implicit declaration of function ‘RK_MUXROUTE_SAME’ [-Werror=implicit-function-declaration]
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:820:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:821:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:822:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:823:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:824:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:825:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:826:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:827:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:828:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:829:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:830:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:831:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:832:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:833:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:834:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:835:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:836:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:837:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:838:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:839:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:840:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:841:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:842:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:843:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:844:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:845:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:846:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:847:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:848:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:849:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:850:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:851:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:852:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:853:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:854:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:855:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:856:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:857:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:858:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:859:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:860:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:861:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:862:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:863:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:864:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:865:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:866:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:870:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:871:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:872:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:873:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:874:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:875:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:876:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:880:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:881:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:885:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:886:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:887:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:888:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:889:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:890:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:891:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:892:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:893:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:894:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:895:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:896:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:897:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:898:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:899:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:900:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:901:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:902:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:906:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:907:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:911:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:912:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:913:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:914:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:915:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:916:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:917:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:918:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:919:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:920:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:921:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:922:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:923:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:924:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:925:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:926:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:927:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:928:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:929:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:930:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:931:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:932:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:933:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:934:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:935:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:936:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:940:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:941:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:942:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:943:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:944:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:945:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:946:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:947:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:948:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:949:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:950:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:951:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:955:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:956:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:957:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:958:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:959:2: error: initializer element is not constant
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mvebu_v5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mvebu_v7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mxs_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
neponset_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
netwinder_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nhk8815_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nlm_xlp_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nlm_xlr_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nommu_k210_defconfig (riscv, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nsimosci_hs_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nsimosci_hs_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omap1_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omap2plus_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omega2p_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
orion5x_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
oxnas_v6_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
palmz72_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pcm027_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pic32mzda_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pistachio_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pleb_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
prima2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa168_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa255-idp_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa3xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa910_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
qcom_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
qi_lb60_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rb532_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rbtx49xx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
realview_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rm200_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
drivers/block/paride/bpck.c:32: warning: "PC" redefined
--------------------------------------------------------------------------------
rpc_defconfig (arm, gcc-10) — FAIL, 4 errors, 0 warnings, 0 section mismatches
Errors:
arm-linux-gnueabihf-gcc: error: unrecognized -march target: armv3m
arm-linux-gnueabihf-gcc: error: missing argument to ‘-march=’
arm-linux-gnueabihf-gcc: error: unrecognized -march target: armv3m
arm-linux-gnueabihf-gcc: error: missing argument to ‘-march=’
--------------------------------------------------------------------------------
rs90_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rt305x_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rv32_defconfig (riscv, gcc-10) — PASS, 0 errors, 4 warnings, 0 section mismatches
Warnings:
<stdin>:830:2: warning: #warning syscall fstat64 not implemented [-Wcpp]
<stdin>:1127:2: warning: #warning syscall fstatat64 not implemented [-Wcpp]
<stdin>:830:2: warning: #warning syscall fstat64 not implemented [-Wcpp]
<stdin>:1127:2: warning: #warning syscall fstatat64 not implemented [-Wcpp]
--------------------------------------------------------------------------------
s3c2410_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
s3c6400_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
s5pv210_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sama5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sb1250_swarm_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
shannon_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
shmobile_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
simpad_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
socfpga_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear13xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear3xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear6xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spitz_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
stm32_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sunxi_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tango4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0219_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0226_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0287_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tct_hammer_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tegra_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (i386, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
trizeps4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
u300_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
u8500_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vdk_hs38_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vdk_hs38_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
versatile_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vexpress_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vf610m4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
viper_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vocore2_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vt8500_v6_v7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
workpad_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig+x86-chromebook (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
xcep_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
zeus_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
zx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
---
For more info write to <info(a)kernelci.org>
esta es la Dra. Aisha al-Gaddafi, me comunico con usted porque necesito un
Socio o inversionista Que me ayudara a invertir la suma de $27.5
MillionUSD en su o
su país? Los fondos están depositados en Burkina Faso, pero estoy viviendo
en Omán para
el momento con mis hijos, intenta responderme lo antes posible, así
que daré más detalles, Dra. Aisha al-gaddafi.
Hello,
A reputable pharmaceutical company from Vietnam is in need of a reliable individual or corporate entity in your state to act as their Liaison; this will not affect your current job or business operations in anyway. If interested, reply for more information.
Sincerely,
Ms. Kelvin Lin
CC
stable-rc/queue/5.10 build: 185 builds: 6 failed, 179 passed, 367 errors, 12 warnings (v5.10.155-182-g71be344c40e8)
Full Build Summary: https://kernelci.org/build/stable-rc/branch/queue%2F5.10/kernel/v5.10.155-1…
Tree: stable-rc
Branch: queue/5.10
Git Describe: v5.10.155-182-g71be344c40e8
Git Commit: 71be344c40e8bc342a5c761815b2873661550e3c
Git URL: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
Built: 7 unique architectures
Build Failures Detected:
arm64:
defconfig: (gcc-10) FAIL
defconfig+arm64-chromebook: (gcc-10) FAIL
arm:
multi_v7_defconfig: (gcc-10) FAIL
rpc_defconfig: (gcc-10) FAIL
mips:
ip27_defconfig: (gcc-10) FAIL
ip28_defconfig: (gcc-10) FAIL
Errors and Warnings Detected:
arc:
arm64:
defconfig (gcc-10): 121 errors, 1 warning
defconfig+arm64-chromebook (gcc-10): 121 errors, 1 warning
arm:
multi_v7_defconfig (gcc-10): 121 errors, 1 warning
rpc_defconfig (gcc-10): 4 errors
i386:
mips:
32r2el_defconfig (gcc-10): 1 warning
decstation_64_defconfig (gcc-10): 1 warning
decstation_defconfig (gcc-10): 1 warning
decstation_r4k_defconfig (gcc-10): 1 warning
rm200_defconfig (gcc-10): 1 warning
riscv:
rv32_defconfig (gcc-10): 4 warnings
x86_64:
Errors summary:
3 drivers/pinctrl/pinctrl-rockchip.c:959:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:958:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:957:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:956:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:955:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:951:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:950:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:949:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:948:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:947:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:946:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:945:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:944:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:943:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:942:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:941:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:940:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:936:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:935:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:934:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:933:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:932:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:931:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:930:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:929:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:928:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:927:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:926:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:925:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:924:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:923:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:922:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:921:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:920:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:919:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:918:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:917:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:916:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:915:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:914:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:913:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:912:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:911:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:907:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:906:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:902:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:901:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:900:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:899:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:898:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:897:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:896:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:895:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:894:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:893:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:892:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:891:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:890:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:889:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:888:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:887:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:886:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:885:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:881:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:880:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:876:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:875:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:874:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:873:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:872:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:871:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:870:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:866:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:865:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:864:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:863:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:862:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:861:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:860:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:859:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:858:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:857:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:856:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:855:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:854:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:853:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:852:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:851:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:850:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:849:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:848:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:847:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:846:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:845:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:844:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:843:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:842:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:841:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:840:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:839:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:838:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:837:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:836:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:835:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:834:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:833:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:832:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:831:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:830:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:829:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:828:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:827:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:826:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:825:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:824:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:823:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:822:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:821:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:820:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:819:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:819:2: error: implicit declaration of function ‘RK_MUXROUTE_SAME’ [-Werror=implicit-function-declaration]
2 arm-linux-gnueabihf-gcc: error: unrecognized -march target: armv3m
2 arm-linux-gnueabihf-gcc: error: missing argument to ‘-march=’
Warnings summary:
3 kernel/rcu/tasks.h:710:13: warning: ‘show_rcu_tasks_rude_gp_kthread’ defined but not used [-Wunused-function]
3 cc1: some warnings being treated as errors
2 <stdin>:830:2: warning: #warning syscall fstat64 not implemented [-Wcpp]
2 <stdin>:1127:2: warning: #warning syscall fstatat64 not implemented [-Wcpp]
1 drivers/block/paride/bpck.c:32: warning: "PC" redefined
1 WARNING: modpost: Symbol info of vmlinux is missing. Unresolved symbol check will be entirely skipped.
Section mismatches summary:
1 WARNING: modpost: vmlinux.o(___ksymtab_gpl+ixp4xx_irq_init+0x0): Section mismatch in reference from the variable __ksymtab_ixp4xx_irq_init to the function .init.text:ixp4xx_irq_init()
1 WARNING: modpost: vmlinux.o(___ksymtab+prom_init_numa_memory+0x0): Section mismatch in reference from the variable __ksymtab_prom_init_numa_memory to the function .init.text:prom_init_numa_memory()
================================================================================
Detailed per-defconfig build reports:
--------------------------------------------------------------------------------
32r2el_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
WARNING: modpost: Symbol info of vmlinux is missing. Unresolved symbol check will be entirely skipped.
--------------------------------------------------------------------------------
allnoconfig (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (i386, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
am200epdkit_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ar7_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
aspeed_g4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
aspeed_g5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
assabet_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
at91_dt_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ath25_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ath79_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axm55xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axs103_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axs103_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
badge4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm2835_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm47xx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm63xx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bigsur_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bmips_be_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bmips_stb_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
capcella_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cavium_octeon_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cerfcube_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ci20_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cm_x300_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cobalt_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
colibri_pxa270_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
colibri_pxa300_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
collie_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
corgi_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cu1000-neo_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cu1830-neo_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
davinci_all_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
db1xxx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
decstation_64_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
kernel/rcu/tasks.h:710:13: warning: ‘show_rcu_tasks_rude_gp_kthread’ defined but not used [-Wunused-function]
--------------------------------------------------------------------------------
decstation_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
kernel/rcu/tasks.h:710:13: warning: ‘show_rcu_tasks_rude_gp_kthread’ defined but not used [-Wunused-function]
--------------------------------------------------------------------------------
decstation_r4k_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
kernel/rcu/tasks.h:710:13: warning: ‘show_rcu_tasks_rude_gp_kthread’ defined but not used [-Wunused-function]
--------------------------------------------------------------------------------
defconfig (arm64, gcc-10) — FAIL, 121 errors, 1 warning, 0 section mismatches
Errors:
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: implicit declaration of function ‘RK_MUXROUTE_SAME’ [-Werror=implicit-function-declaration]
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:820:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:821:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:822:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:823:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:824:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:825:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:826:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:827:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:828:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:829:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:830:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:831:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:832:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:833:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:834:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:835:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:836:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:837:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:838:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:839:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:840:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:841:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:842:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:843:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:844:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:845:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:846:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:847:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:848:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:849:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:850:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:851:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:852:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:853:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:854:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:855:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:856:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:857:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:858:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:859:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:860:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:861:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:862:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:863:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:864:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:865:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:866:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:870:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:871:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:872:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:873:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:874:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:875:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:876:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:880:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:881:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:885:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:886:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:887:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:888:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:889:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:890:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:891:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:892:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:893:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:894:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:895:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:896:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:897:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:898:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:899:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:900:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:901:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:902:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:906:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:907:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:911:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:912:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:913:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:914:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:915:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:916:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:917:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:918:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:919:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:920:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:921:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:922:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:923:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:924:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:925:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:926:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:927:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:928:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:929:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:930:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:931:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:932:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:933:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:934:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:935:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:936:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:940:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:941:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:942:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:943:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:944:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:945:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:946:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:947:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:948:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:949:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:950:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:951:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:955:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:956:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:957:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:958:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:959:2: error: initializer element is not constant
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
defconfig (riscv, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig+arm64-chromebook (arm64, gcc-10) — FAIL, 121 errors, 1 warning, 0 section mismatches
Errors:
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: implicit declaration of function ‘RK_MUXROUTE_SAME’ [-Werror=implicit-function-declaration]
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:820:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:821:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:822:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:823:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:824:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:825:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:826:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:827:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:828:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:829:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:830:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:831:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:832:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:833:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:834:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:835:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:836:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:837:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:838:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:839:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:840:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:841:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:842:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:843:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:844:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:845:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:846:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:847:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:848:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:849:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:850:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:851:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:852:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:853:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:854:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:855:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:856:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:857:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:858:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:859:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:860:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:861:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:862:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:863:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:864:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:865:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:866:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:870:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:871:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:872:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:873:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:874:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:875:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:876:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:880:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:881:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:885:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:886:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:887:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:888:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:889:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:890:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:891:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:892:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:893:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:894:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:895:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:896:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:897:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:898:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:899:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:900:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:901:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:902:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:906:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:907:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:911:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:912:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:913:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:914:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:915:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:916:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:917:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:918:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:919:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:920:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:921:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:922:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:923:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:924:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:925:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:926:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:927:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:928:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:929:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:930:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:931:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:932:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:933:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:934:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:935:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:936:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:940:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:941:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:942:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:943:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:944:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:945:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:946:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:947:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:948:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:949:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:950:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:951:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:955:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:956:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:957:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:958:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:959:2: error: initializer element is not constant
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
dove_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
e55_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ebsa110_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
efm32_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ep93xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
eseries_pxa_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
exynos_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ezx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
footbridge_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
fuloong2e_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
gcw0_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
gemini_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
gpr_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
h3600_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
h5000_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hackkit_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
haps_hs_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
haps_hs_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hisi_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hsdk_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
i386_defconfig (i386, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
imote2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
imx_v4_v5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
imx_v6_v7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
integrator_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
iop32x_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip22_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip27_defconfig (mips, gcc-10) — FAIL, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip28_defconfig (mips, gcc-10) — FAIL, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip32_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ixp4xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
Section mismatches:
WARNING: modpost: vmlinux.o(___ksymtab_gpl+ixp4xx_irq_init+0x0): Section mismatch in reference from the variable __ksymtab_ixp4xx_irq_init to the function .init.text:ixp4xx_irq_init()
--------------------------------------------------------------------------------
jazz_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
jmr3927_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
jornada720_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
keystone_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lart_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lemote2f_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
loongson1b_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
loongson1c_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
loongson3_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
Section mismatches:
WARNING: modpost: vmlinux.o(___ksymtab+prom_init_numa_memory+0x0): Section mismatch in reference from the variable __ksymtab_prom_init_numa_memory to the function .init.text:prom_init_numa_memory()
--------------------------------------------------------------------------------
lpc18xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lpc32xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lpd270_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lubbock_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
magician_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mainstone_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_kvm_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_kvm_guest_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_qemu_32r6_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltaaprp_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltasmvp_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltasmvp_eva_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltaup_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltaup_xpa_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
milbeaut_m10v_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mini2440_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mmp2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
moxart_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mpc30x_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mps2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mtx1_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v4t_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v7_defconfig (arm, gcc-10) — FAIL, 121 errors, 1 warning, 0 section mismatches
Errors:
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: implicit declaration of function ‘RK_MUXROUTE_SAME’ [-Werror=implicit-function-declaration]
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:820:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:821:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:822:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:823:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:824:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:825:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:826:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:827:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:828:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:829:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:830:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:831:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:832:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:833:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:834:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:835:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:836:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:837:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:838:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:839:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:840:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:841:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:842:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:843:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:844:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:845:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:846:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:847:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:848:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:849:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:850:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:851:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:852:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:853:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:854:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:855:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:856:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:857:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:858:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:859:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:860:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:861:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:862:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:863:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:864:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:865:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:866:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:870:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:871:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:872:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:873:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:874:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:875:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:876:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:880:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:881:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:885:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:886:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:887:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:888:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:889:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:890:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:891:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:892:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:893:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:894:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:895:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:896:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:897:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:898:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:899:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:900:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:901:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:902:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:906:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:907:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:911:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:912:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:913:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:914:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:915:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:916:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:917:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:918:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:919:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:920:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:921:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:922:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:923:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:924:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:925:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:926:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:927:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:928:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:929:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:930:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:931:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:932:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:933:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:934:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:935:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:936:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:940:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:941:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:942:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:943:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:944:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:945:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:946:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:947:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:948:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:949:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:950:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:951:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:955:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:956:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:957:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:958:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:959:2: error: initializer element is not constant
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mvebu_v5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mvebu_v7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mxs_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
neponset_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
netwinder_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nhk8815_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nlm_xlp_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nlm_xlr_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nommu_k210_defconfig (riscv, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nsimosci_hs_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nsimosci_hs_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omap1_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omap2plus_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omega2p_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
orion5x_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
oxnas_v6_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
palmz72_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pcm027_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pic32mzda_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pistachio_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pleb_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
prima2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa168_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa255-idp_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa3xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa910_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
qcom_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
qi_lb60_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rb532_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rbtx49xx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
realview_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rm200_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
drivers/block/paride/bpck.c:32: warning: "PC" redefined
--------------------------------------------------------------------------------
rpc_defconfig (arm, gcc-10) — FAIL, 4 errors, 0 warnings, 0 section mismatches
Errors:
arm-linux-gnueabihf-gcc: error: unrecognized -march target: armv3m
arm-linux-gnueabihf-gcc: error: missing argument to ‘-march=’
arm-linux-gnueabihf-gcc: error: unrecognized -march target: armv3m
arm-linux-gnueabihf-gcc: error: missing argument to ‘-march=’
--------------------------------------------------------------------------------
rs90_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rt305x_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rv32_defconfig (riscv, gcc-10) — PASS, 0 errors, 4 warnings, 0 section mismatches
Warnings:
<stdin>:830:2: warning: #warning syscall fstat64 not implemented [-Wcpp]
<stdin>:1127:2: warning: #warning syscall fstatat64 not implemented [-Wcpp]
<stdin>:830:2: warning: #warning syscall fstat64 not implemented [-Wcpp]
<stdin>:1127:2: warning: #warning syscall fstatat64 not implemented [-Wcpp]
--------------------------------------------------------------------------------
s3c2410_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
s3c6400_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
s5pv210_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sama5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sb1250_swarm_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
shannon_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
shmobile_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
simpad_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
socfpga_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear13xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear3xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear6xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spitz_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
stm32_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sunxi_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tango4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0219_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0226_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0287_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tct_hammer_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tegra_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (i386, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
trizeps4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
u300_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
u8500_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vdk_hs38_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vdk_hs38_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
versatile_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vexpress_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vf610m4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
viper_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vocore2_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vt8500_v6_v7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
workpad_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig+x86-chromebook (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
xcep_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
zeus_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
zx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
---
For more info write to <info(a)kernelci.org>
--
Greetings,
We are privileged and delighted to reach you via email" And we are
urgently waiting to hear from you. and again your number is not
connecting.
Thanks,
Dr. Michael Omar
The patch titled
Subject: mm/khugepaged: invoke MMU notifiers in shmem/file collapse paths
has been added to the -mm mm-hotfixes-unstable branch. Its filename is
mm-khugepaged-invoke-mmu-notifiers-in-shmem-file-collapse-paths.patch
This patch will shortly appear at
https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patche…
This patch will later appear in the mm-hotfixes-unstable branch at
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
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 via the mm-everything
branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
and is updated there every 2-3 working days
------------------------------------------------------
From: Jann Horn <jannh(a)google.com>
Subject: mm/khugepaged: invoke MMU notifiers in shmem/file collapse paths
Date: Fri, 25 Nov 2022 22:37:14 +0100
Any codepath that zaps page table entries must invoke MMU notifiers to
ensure that secondary MMUs (like KVM) don't keep accessing pages which
aren't mapped anymore. Secondary MMUs don't hold their own references to
pages that are mirrored over, so failing to notify them can lead to page
use-after-free.
I'm marking this as addressing an issue introduced in commit f3f0e1d2150b
("khugepaged: add support of collapse for tmpfs/shmem pages"), but most of
the security impact of this only came in commit 27e1f8273113 ("khugepaged:
enable collapse pmd for pte-mapped THP"), which actually omitted flushes
for the removal of present PTEs, not just for the removal of empty page
tables.
Link: https://lkml.kernel.org/r/20221125213714.4115729-3-jannh@google.com
Fixes: f3f0e1d2150b ("khugepaged: add support of collapse for tmpfs/shmem pages")
Signed-off-by: Jann Horn <jannh(a)google.com>
Cc: David Hildenbrand <david(a)redhat.com>
Cc: John Hubbard <jhubbard(a)nvidia.com>
Cc: Peter Xu <peterx(a)redhat.com>
Cc: Yang Shi <shy828301(a)gmail.com
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/khugepaged.c | 5 +++++
1 file changed, 5 insertions(+)
--- a/mm/khugepaged.c~mm-khugepaged-invoke-mmu-notifiers-in-shmem-file-collapse-paths
+++ a/mm/khugepaged.c
@@ -1399,6 +1399,7 @@ static void collapse_and_free_pmd(struct
unsigned long addr, pmd_t *pmdp)
{
pmd_t pmd;
+ struct mmu_notifier_range range;
mmap_assert_write_locked(mm);
if (vma->vm_file)
@@ -1410,8 +1411,12 @@ static void collapse_and_free_pmd(struct
if (vma->anon_vma)
lockdep_assert_held_write(&vma->anon_vma->root->rwsem);
+ mmu_notifier_range_init(&range, MMU_NOTIFY_CLEAR, 0, NULL, mm, addr,
+ addr + HPAGE_PMD_SIZE);
+ mmu_notifier_invalidate_range_start(&range);
pmd = pmdp_collapse_flush(vma, addr, pmdp);
tlb_remove_table_sync_one();
+ mmu_notifier_invalidate_range_end(&range);
mm_dec_nr_ptes(mm);
page_table_check_pte_clear_range(mm, addr, pmd);
pte_free(mm, pmd_pgtable(pmd));
_
Patches currently in -mm which might be from jannh(a)google.com are
mm-khugepaged-take-the-right-locks-for-page-table-retraction.patch
mm-khugepaged-fix-gup-fast-interaction-by-sending-ipi.patch
mm-khugepaged-invoke-mmu-notifiers-in-shmem-file-collapse-paths.patch
The patch titled
Subject: mm/khugepaged: fix GUP-fast interaction by sending IPI
has been added to the -mm mm-hotfixes-unstable branch. Its filename is
mm-khugepaged-fix-gup-fast-interaction-by-sending-ipi.patch
This patch will shortly appear at
https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patche…
This patch will later appear in the mm-hotfixes-unstable branch at
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
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 via the mm-everything
branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
and is updated there every 2-3 working days
------------------------------------------------------
From: Jann Horn <jannh(a)google.com>
Subject: mm/khugepaged: fix GUP-fast interaction by sending IPI
Date: Fri, 25 Nov 2022 22:37:13 +0100
Since commit 70cbc3cc78a99 ("mm: gup: fix the fast GUP race against THP
collapse"), the lockless_pages_from_mm() fastpath rechecks the pmd_t to
ensure that the page table was not removed by khugepaged in between.
However, lockless_pages_from_mm() still requires that the page table is
not concurrently freed. Fix it by sending IPIs (if the architecture uses
semi-RCU-style page table freeing) before freeing/reusing page tables.
Link: https://lkml.kernel.org/r/20221125213714.4115729-2-jannh@google.com
Fixes: ba76149f47d8 ("thp: khugepaged")
Signed-off-by: Jann Horn <jannh(a)google.com>
Cc: David Hildenbrand <david(a)redhat.com>
Cc: John Hubbard <jhubbard(a)nvidia.com>
Cc: Peter Xu <peterx(a)redhat.com>
Cc: Yang Shi <shy828301(a)gmail.com>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
include/asm-generic/tlb.h | 4 ++++
mm/khugepaged.c | 2 ++
mm/mmu_gather.c | 4 +---
3 files changed, 7 insertions(+), 3 deletions(-)
--- a/include/asm-generic/tlb.h~mm-khugepaged-fix-gup-fast-interaction-by-sending-ipi
+++ a/include/asm-generic/tlb.h
@@ -222,12 +222,16 @@ extern void tlb_remove_table(struct mmu_
#define tlb_needs_table_invalidate() (true)
#endif
+void tlb_remove_table_sync_one(void);
+
#else
#ifdef tlb_needs_table_invalidate
#error tlb_needs_table_invalidate() requires MMU_GATHER_RCU_TABLE_FREE
#endif
+static inline void tlb_remove_table_sync_one(void) { }
+
#endif /* CONFIG_MMU_GATHER_RCU_TABLE_FREE */
--- a/mm/khugepaged.c~mm-khugepaged-fix-gup-fast-interaction-by-sending-ipi
+++ a/mm/khugepaged.c
@@ -1051,6 +1051,7 @@ static int collapse_huge_page(struct mm_
_pmd = pmdp_collapse_flush(vma, address, pmd);
spin_unlock(pmd_ptl);
mmu_notifier_invalidate_range_end(&range);
+ tlb_remove_table_sync_one();
spin_lock(pte_ptl);
result = __collapse_huge_page_isolate(vma, address, pte, cc,
@@ -1410,6 +1411,7 @@ static void collapse_and_free_pmd(struct
lockdep_assert_held_write(&vma->anon_vma->root->rwsem);
pmd = pmdp_collapse_flush(vma, addr, pmdp);
+ tlb_remove_table_sync_one();
mm_dec_nr_ptes(mm);
page_table_check_pte_clear_range(mm, addr, pmd);
pte_free(mm, pmd_pgtable(pmd));
--- a/mm/mmu_gather.c~mm-khugepaged-fix-gup-fast-interaction-by-sending-ipi
+++ a/mm/mmu_gather.c
@@ -153,7 +153,7 @@ static void tlb_remove_table_smp_sync(vo
/* Simply deliver the interrupt */
}
-static void tlb_remove_table_sync_one(void)
+void tlb_remove_table_sync_one(void)
{
/*
* This isn't an RCU grace period and hence the page-tables cannot be
@@ -177,8 +177,6 @@ static void tlb_remove_table_free(struct
#else /* !CONFIG_MMU_GATHER_RCU_TABLE_FREE */
-static void tlb_remove_table_sync_one(void) { }
-
static void tlb_remove_table_free(struct mmu_table_batch *batch)
{
__tlb_remove_table_free(batch);
_
Patches currently in -mm which might be from jannh(a)google.com are
mm-khugepaged-take-the-right-locks-for-page-table-retraction.patch
mm-khugepaged-fix-gup-fast-interaction-by-sending-ipi.patch
mm-khugepaged-invoke-mmu-notifiers-in-shmem-file-collapse-paths.patch
The patch titled
Subject: mm/khugepaged: take the right locks for page table retraction
has been added to the -mm mm-hotfixes-unstable branch. Its filename is
mm-khugepaged-take-the-right-locks-for-page-table-retraction.patch
This patch will shortly appear at
https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patche…
This patch will later appear in the mm-hotfixes-unstable branch at
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
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 via the mm-everything
branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
and is updated there every 2-3 working days
------------------------------------------------------
From: Jann Horn <jannh(a)google.com>
Subject: mm/khugepaged: take the right locks for page table retraction
Date: Fri, 25 Nov 2022 22:37:12 +0100
pagetable walks on address ranges mapped by VMAs can be done under the
mmap lock, the lock of an anon_vma attached to the VMA, or the lock of the
VMA's address_space. Only one of these needs to be held, and it does not
need to be held in exclusive mode.
Under those circumstances, the rules for concurrent access to page table
entries are:
- Terminal page table entries (entries that don't point to another page
table) can be arbitrarily changed under the page table lock, with the
exception that they always need to be consistent for
hardware page table walks and lockless_pages_from_mm().
This includes that they can be changed into non-terminal entries.
- Non-terminal page table entries (which point to another page table)
can not be modified; readers are allowed to READ_ONCE() an entry, verify
that it is non-terminal, and then assume that its value will stay as-is.
Retracting a page table involves modifying a non-terminal entry, so
page-table-level locks are insufficient to protect against concurrent page
table traversal; it requires taking all the higher-level locks under which
it is possible to start a page walk in the relevant range in exclusive
mode.
The collapse_huge_page() path for anonymous THP already follows this rule,
but the shmem/file THP path was getting it wrong, making it possible for
concurrent rmap-based operations to cause corruption.
Link: https://lkml.kernel.org/r/20221125213714.4115729-1-jannh@google.com
Fixes: 27e1f8273113 ("khugepaged: enable collapse pmd for pte-mapped THP")
Signed-off-by: Jann Horn <jannh(a)google.com>
Cc: David Hildenbrand <david(a)redhat.com>
Cc: John Hubbard <jhubbard(a)nvidia.com>
Cc: Peter Xu <peterx(a)redhat.com>
Cc: Yang Shi <shy828301(a)gmail.com>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/khugepaged.c | 55 ++++++++++++++++++++++++++++++++++++++++++----
1 file changed, 51 insertions(+), 4 deletions(-)
--- a/mm/khugepaged.c~mm-khugepaged-take-the-right-locks-for-page-table-retraction
+++ a/mm/khugepaged.c
@@ -1379,16 +1379,37 @@ static int set_huge_pmd(struct vm_area_s
return SCAN_SUCCEED;
}
+/*
+ * A note about locking:
+ * Trying to take the page table spinlocks would be useless here because those
+ * are only used to synchronize:
+ *
+ * - modifying terminal entries (ones that point to a data page, not to another
+ * page table)
+ * - installing *new* non-terminal entries
+ *
+ * Instead, we need roughly the same kind of protection as free_pgtables() or
+ * mm_take_all_locks() (but only for a single VMA):
+ * The mmap lock together with this VMA's rmap locks covers all paths towards
+ * the page table entries we're messing with here, except for hardware page
+ * table walks and lockless_pages_from_mm().
+ */
static void collapse_and_free_pmd(struct mm_struct *mm, struct vm_area_struct *vma,
unsigned long addr, pmd_t *pmdp)
{
- spinlock_t *ptl;
pmd_t pmd;
mmap_assert_write_locked(mm);
- ptl = pmd_lock(vma->vm_mm, pmdp);
+ if (vma->vm_file)
+ lockdep_assert_held_write(&vma->vm_file->f_mapping->i_mmap_rwsem);
+ /*
+ * All anon_vmas attached to the VMA have the same root and are
+ * therefore locked by the same lock.
+ */
+ if (vma->anon_vma)
+ lockdep_assert_held_write(&vma->anon_vma->root->rwsem);
+
pmd = pmdp_collapse_flush(vma, addr, pmdp);
- spin_unlock(ptl);
mm_dec_nr_ptes(mm);
page_table_check_pte_clear_range(mm, addr, pmd);
pte_free(mm, pmd_pgtable(pmd));
@@ -1439,6 +1460,14 @@ int collapse_pte_mapped_thp(struct mm_st
if (!hugepage_vma_check(vma, vma->vm_flags, false, false, false))
return SCAN_VMA_CHECK;
+ /*
+ * Symmetry with retract_page_tables(): Exclude MAP_PRIVATE mappings
+ * that got written to. Without this, we'd have to also lock the
+ * anon_vma if one exists.
+ */
+ if (vma->anon_vma)
+ return SCAN_VMA_CHECK;
+
/* Keep pmd pgtable for uffd-wp; see comment in retract_page_tables() */
if (userfaultfd_wp(vma))
return SCAN_PTE_UFFD_WP;
@@ -1472,6 +1501,20 @@ int collapse_pte_mapped_thp(struct mm_st
goto drop_hpage;
}
+ /*
+ * We need to lock the mapping so that from here on, only GUP-fast and
+ * hardware page walks can access the parts of the page tables that
+ * we're operating on.
+ * See collapse_and_free_pmd().
+ */
+ i_mmap_lock_write(vma->vm_file->f_mapping);
+
+ /*
+ * This spinlock should be unnecessary: Nobody else should be accessing
+ * the page tables under spinlock protection here, only
+ * lockless_pages_from_mm() and the hardware page walker can access page
+ * tables while all the high-level locks are held in write mode.
+ */
start_pte = pte_offset_map_lock(mm, pmd, haddr, &ptl);
result = SCAN_FAIL;
@@ -1526,6 +1569,8 @@ int collapse_pte_mapped_thp(struct mm_st
/* step 4: remove pte entries */
collapse_and_free_pmd(mm, vma, haddr, pmd);
+ i_mmap_unlock_write(vma->vm_file->f_mapping);
+
maybe_install_pmd:
/* step 5: install pmd entry */
result = install_pmd
@@ -1539,6 +1584,7 @@ drop_hpage:
abort:
pte_unmap_unlock(start_pte, ptl);
+ i_mmap_unlock_write(vma->vm_file->f_mapping);
goto drop_hpage;
}
@@ -1595,7 +1641,8 @@ static int retract_page_tables(struct ad
* An alternative would be drop the check, but check that page
* table is clear before calling pmdp_collapse_flush() under
* ptl. It has higher chance to recover THP for the VMA, but
- * has higher cost too.
+ * has higher cost too. It would also probably require locking
+ * the anon_vma.
*/
if (vma->anon_vma) {
result = SCAN_PAGE_ANON;
_
Patches currently in -mm which might be from jannh(a)google.com are
mm-khugepaged-take-the-right-locks-for-page-table-retraction.patch
mm-khugepaged-fix-gup-fast-interaction-by-sending-ipi.patch
mm-khugepaged-invoke-mmu-notifiers-in-shmem-file-collapse-paths.patch
stable-rc/queue/5.10 build: 185 builds: 6 failed, 179 passed, 367 errors, 12 warnings (v5.10.155-182-g2b702941bf8a)
Full Build Summary: https://kernelci.org/build/stable-rc/branch/queue%2F5.10/kernel/v5.10.155-1…
Tree: stable-rc
Branch: queue/5.10
Git Describe: v5.10.155-182-g2b702941bf8a
Git Commit: 2b702941bf8a64bc89b778e203dc5c462018b8de
Git URL: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
Built: 7 unique architectures
Build Failures Detected:
arm64:
defconfig: (gcc-10) FAIL
defconfig+arm64-chromebook: (gcc-10) FAIL
arm:
multi_v7_defconfig: (gcc-10) FAIL
rpc_defconfig: (gcc-10) FAIL
mips:
ip27_defconfig: (gcc-10) FAIL
ip28_defconfig: (gcc-10) FAIL
Errors and Warnings Detected:
arc:
arm64:
defconfig (gcc-10): 121 errors, 1 warning
defconfig+arm64-chromebook (gcc-10): 121 errors, 1 warning
arm:
multi_v7_defconfig (gcc-10): 121 errors, 1 warning
rpc_defconfig (gcc-10): 4 errors
i386:
mips:
32r2el_defconfig (gcc-10): 1 warning
decstation_64_defconfig (gcc-10): 1 warning
decstation_defconfig (gcc-10): 1 warning
decstation_r4k_defconfig (gcc-10): 1 warning
rm200_defconfig (gcc-10): 1 warning
riscv:
rv32_defconfig (gcc-10): 4 warnings
x86_64:
Errors summary:
3 drivers/pinctrl/pinctrl-rockchip.c:959:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:958:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:957:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:956:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:955:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:951:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:950:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:949:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:948:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:947:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:946:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:945:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:944:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:943:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:942:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:941:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:940:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:936:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:935:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:934:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:933:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:932:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:931:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:930:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:929:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:928:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:927:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:926:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:925:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:924:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:923:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:922:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:921:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:920:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:919:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:918:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:917:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:916:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:915:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:914:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:913:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:912:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:911:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:907:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:906:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:902:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:901:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:900:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:899:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:898:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:897:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:896:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:895:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:894:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:893:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:892:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:891:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:890:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:889:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:888:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:887:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:886:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:885:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:881:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:880:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:876:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:875:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:874:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:873:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:872:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:871:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:870:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:866:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:865:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:864:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:863:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:862:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:861:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:860:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:859:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:858:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:857:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:856:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:855:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:854:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:853:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:852:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:851:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:850:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:849:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:848:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:847:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:846:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:845:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:844:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:843:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:842:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:841:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:840:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:839:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:838:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:837:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:836:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:835:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:834:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:833:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:832:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:831:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:830:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:829:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:828:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:827:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:826:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:825:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:824:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:823:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:822:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:821:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:820:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:819:2: error: initializer element is not constant
3 drivers/pinctrl/pinctrl-rockchip.c:819:2: error: implicit declaration of function ‘RK_MUXROUTE_SAME’ [-Werror=implicit-function-declaration]
2 arm-linux-gnueabihf-gcc: error: unrecognized -march target: armv3m
2 arm-linux-gnueabihf-gcc: error: missing argument to ‘-march=’
Warnings summary:
3 kernel/rcu/tasks.h:710:13: warning: ‘show_rcu_tasks_rude_gp_kthread’ defined but not used [-Wunused-function]
3 cc1: some warnings being treated as errors
2 <stdin>:830:2: warning: #warning syscall fstat64 not implemented [-Wcpp]
2 <stdin>:1127:2: warning: #warning syscall fstatat64 not implemented [-Wcpp]
1 drivers/block/paride/bpck.c:32: warning: "PC" redefined
1 WARNING: modpost: Symbol info of vmlinux is missing. Unresolved symbol check will be entirely skipped.
Section mismatches summary:
1 WARNING: modpost: vmlinux.o(___ksymtab_gpl+ixp4xx_irq_init+0x0): Section mismatch in reference from the variable __ksymtab_ixp4xx_irq_init to the function .init.text:ixp4xx_irq_init()
1 WARNING: modpost: vmlinux.o(___ksymtab+prom_init_numa_memory+0x0): Section mismatch in reference from the variable __ksymtab_prom_init_numa_memory to the function .init.text:prom_init_numa_memory()
================================================================================
Detailed per-defconfig build reports:
--------------------------------------------------------------------------------
32r2el_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
WARNING: modpost: Symbol info of vmlinux is missing. Unresolved symbol check will be entirely skipped.
--------------------------------------------------------------------------------
allnoconfig (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (i386, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
am200epdkit_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ar7_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
aspeed_g4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
aspeed_g5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
assabet_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
at91_dt_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ath25_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ath79_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axm55xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axs103_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axs103_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
badge4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm2835_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm47xx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm63xx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bigsur_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bmips_be_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bmips_stb_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
capcella_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cavium_octeon_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cerfcube_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ci20_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cm_x300_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cobalt_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
colibri_pxa270_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
colibri_pxa300_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
collie_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
corgi_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cu1000-neo_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cu1830-neo_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
davinci_all_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
db1xxx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
decstation_64_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
kernel/rcu/tasks.h:710:13: warning: ‘show_rcu_tasks_rude_gp_kthread’ defined but not used [-Wunused-function]
--------------------------------------------------------------------------------
decstation_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
kernel/rcu/tasks.h:710:13: warning: ‘show_rcu_tasks_rude_gp_kthread’ defined but not used [-Wunused-function]
--------------------------------------------------------------------------------
decstation_r4k_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
kernel/rcu/tasks.h:710:13: warning: ‘show_rcu_tasks_rude_gp_kthread’ defined but not used [-Wunused-function]
--------------------------------------------------------------------------------
defconfig (riscv, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig (arm64, gcc-10) — FAIL, 121 errors, 1 warning, 0 section mismatches
Errors:
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: implicit declaration of function ‘RK_MUXROUTE_SAME’ [-Werror=implicit-function-declaration]
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:820:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:821:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:822:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:823:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:824:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:825:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:826:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:827:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:828:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:829:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:830:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:831:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:832:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:833:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:834:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:835:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:836:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:837:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:838:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:839:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:840:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:841:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:842:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:843:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:844:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:845:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:846:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:847:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:848:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:849:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:850:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:851:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:852:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:853:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:854:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:855:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:856:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:857:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:858:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:859:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:860:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:861:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:862:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:863:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:864:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:865:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:866:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:870:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:871:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:872:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:873:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:874:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:875:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:876:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:880:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:881:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:885:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:886:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:887:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:888:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:889:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:890:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:891:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:892:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:893:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:894:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:895:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:896:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:897:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:898:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:899:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:900:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:901:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:902:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:906:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:907:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:911:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:912:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:913:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:914:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:915:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:916:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:917:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:918:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:919:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:920:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:921:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:922:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:923:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:924:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:925:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:926:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:927:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:928:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:929:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:930:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:931:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:932:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:933:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:934:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:935:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:936:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:940:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:941:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:942:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:943:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:944:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:945:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:946:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:947:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:948:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:949:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:950:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:951:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:955:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:956:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:957:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:958:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:959:2: error: initializer element is not constant
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
defconfig+arm64-chromebook (arm64, gcc-10) — FAIL, 121 errors, 1 warning, 0 section mismatches
Errors:
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: implicit declaration of function ‘RK_MUXROUTE_SAME’ [-Werror=implicit-function-declaration]
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:820:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:821:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:822:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:823:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:824:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:825:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:826:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:827:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:828:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:829:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:830:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:831:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:832:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:833:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:834:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:835:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:836:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:837:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:838:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:839:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:840:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:841:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:842:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:843:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:844:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:845:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:846:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:847:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:848:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:849:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:850:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:851:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:852:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:853:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:854:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:855:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:856:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:857:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:858:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:859:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:860:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:861:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:862:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:863:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:864:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:865:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:866:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:870:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:871:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:872:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:873:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:874:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:875:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:876:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:880:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:881:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:885:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:886:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:887:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:888:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:889:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:890:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:891:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:892:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:893:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:894:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:895:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:896:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:897:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:898:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:899:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:900:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:901:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:902:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:906:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:907:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:911:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:912:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:913:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:914:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:915:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:916:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:917:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:918:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:919:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:920:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:921:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:922:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:923:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:924:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:925:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:926:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:927:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:928:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:929:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:930:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:931:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:932:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:933:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:934:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:935:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:936:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:940:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:941:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:942:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:943:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:944:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:945:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:946:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:947:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:948:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:949:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:950:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:951:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:955:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:956:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:957:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:958:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:959:2: error: initializer element is not constant
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
dove_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
e55_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ebsa110_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
efm32_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ep93xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
eseries_pxa_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
exynos_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ezx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
footbridge_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
fuloong2e_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
gcw0_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
gemini_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
gpr_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
h3600_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
h5000_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hackkit_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
haps_hs_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
haps_hs_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hisi_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hsdk_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
i386_defconfig (i386, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
imote2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
imx_v4_v5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
imx_v6_v7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
integrator_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
iop32x_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip22_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip27_defconfig (mips, gcc-10) — FAIL, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip28_defconfig (mips, gcc-10) — FAIL, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip32_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ixp4xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
Section mismatches:
WARNING: modpost: vmlinux.o(___ksymtab_gpl+ixp4xx_irq_init+0x0): Section mismatch in reference from the variable __ksymtab_ixp4xx_irq_init to the function .init.text:ixp4xx_irq_init()
--------------------------------------------------------------------------------
jazz_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
jmr3927_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
jornada720_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
keystone_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lart_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lemote2f_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
loongson1b_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
loongson1c_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
loongson3_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
Section mismatches:
WARNING: modpost: vmlinux.o(___ksymtab+prom_init_numa_memory+0x0): Section mismatch in reference from the variable __ksymtab_prom_init_numa_memory to the function .init.text:prom_init_numa_memory()
--------------------------------------------------------------------------------
lpc18xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lpc32xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lpd270_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lubbock_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
magician_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mainstone_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_kvm_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_kvm_guest_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_qemu_32r6_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltaaprp_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltasmvp_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltasmvp_eva_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltaup_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltaup_xpa_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
milbeaut_m10v_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mini2440_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mmp2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
moxart_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mpc30x_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mps2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mtx1_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v4t_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v7_defconfig (arm, gcc-10) — FAIL, 121 errors, 1 warning, 0 section mismatches
Errors:
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: implicit declaration of function ‘RK_MUXROUTE_SAME’ [-Werror=implicit-function-declaration]
drivers/pinctrl/pinctrl-rockchip.c:819:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:820:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:821:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:822:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:823:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:824:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:825:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:826:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:827:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:828:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:829:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:830:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:831:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:832:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:833:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:834:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:835:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:836:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:837:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:838:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:839:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:840:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:841:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:842:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:843:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:844:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:845:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:846:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:847:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:848:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:849:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:850:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:851:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:852:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:853:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:854:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:855:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:856:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:857:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:858:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:859:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:860:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:861:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:862:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:863:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:864:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:865:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:866:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:870:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:871:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:872:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:873:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:874:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:875:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:876:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:880:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:881:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:885:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:886:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:887:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:888:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:889:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:890:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:891:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:892:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:893:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:894:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:895:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:896:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:897:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:898:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:899:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:900:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:901:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:902:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:906:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:907:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:911:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:912:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:913:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:914:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:915:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:916:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:917:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:918:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:919:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:920:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:921:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:922:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:923:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:924:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:925:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:926:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:927:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:928:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:929:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:930:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:931:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:932:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:933:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:934:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:935:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:936:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:940:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:941:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:942:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:943:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:944:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:945:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:946:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:947:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:948:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:949:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:950:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:951:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:955:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:956:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:957:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:958:2: error: initializer element is not constant
drivers/pinctrl/pinctrl-rockchip.c:959:2: error: initializer element is not constant
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mvebu_v5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mvebu_v7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mxs_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
neponset_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
netwinder_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nhk8815_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nlm_xlp_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nlm_xlr_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nommu_k210_defconfig (riscv, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nsimosci_hs_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nsimosci_hs_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omap1_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omap2plus_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omega2p_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
orion5x_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
oxnas_v6_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
palmz72_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pcm027_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pic32mzda_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pistachio_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pleb_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
prima2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa168_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa255-idp_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa3xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa910_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
qcom_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
qi_lb60_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rb532_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rbtx49xx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
realview_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rm200_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
drivers/block/paride/bpck.c:32: warning: "PC" redefined
--------------------------------------------------------------------------------
rpc_defconfig (arm, gcc-10) — FAIL, 4 errors, 0 warnings, 0 section mismatches
Errors:
arm-linux-gnueabihf-gcc: error: unrecognized -march target: armv3m
arm-linux-gnueabihf-gcc: error: missing argument to ‘-march=’
arm-linux-gnueabihf-gcc: error: unrecognized -march target: armv3m
arm-linux-gnueabihf-gcc: error: missing argument to ‘-march=’
--------------------------------------------------------------------------------
rs90_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rt305x_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rv32_defconfig (riscv, gcc-10) — PASS, 0 errors, 4 warnings, 0 section mismatches
Warnings:
<stdin>:830:2: warning: #warning syscall fstat64 not implemented [-Wcpp]
<stdin>:1127:2: warning: #warning syscall fstatat64 not implemented [-Wcpp]
<stdin>:830:2: warning: #warning syscall fstat64 not implemented [-Wcpp]
<stdin>:1127:2: warning: #warning syscall fstatat64 not implemented [-Wcpp]
--------------------------------------------------------------------------------
s3c2410_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
s3c6400_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
s5pv210_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sama5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sb1250_swarm_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
shannon_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
shmobile_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
simpad_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
socfpga_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear13xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear3xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear6xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spitz_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
stm32_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sunxi_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tango4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0219_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0226_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0287_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tct_hammer_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tegra_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (i386, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
trizeps4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
u300_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
u8500_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vdk_hs38_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vdk_hs38_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
versatile_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vexpress_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vf610m4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
viper_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vocore2_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vt8500_v6_v7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
workpad_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig+x86-chromebook (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
xcep_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
zeus_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
zx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
---
For more info write to <info(a)kernelci.org>