Do you have photos for editing? We asked this because we see your photos on
your website.
We mainly supply service for photos cut out , clipping path, and
retouching.
You may just send us a photo, we can provide you test editing to check
quality.
Thanks,
Jane
Do you have photos for editing? We asked this because we see your photos on
your website.
We mainly supply service for photos cut out , clipping path, and
retouching.
You may just send us a photo, we can provide you test editing to check
quality.
Thanks,
Jane
We see your photos photos for editing.
Please send us the details of this task.
Do your photos need cut out? Or clipping path, and retouching?
You may give us 1 photo, we will do test for you to check the quality.
Thanks,
Helen
From: Jan Stancek <jstancek(a)redhat.com>
Subject: mm: page_mapped: don't assume compound page is huge or THP
LTP proc01 testcase has been observed to rarely trigger crashes
on arm64:
page_mapped+0x78/0xb4
stable_page_flags+0x27c/0x338
kpageflags_read+0xfc/0x164
proc_reg_read+0x7c/0xb8
__vfs_read+0x58/0x178
vfs_read+0x90/0x14c
SyS_read+0x60/0xc0
Issue is that page_mapped() assumes that if compound page is not huge,
then it must be THP. But if this is 'normal' compound page
(COMPOUND_PAGE_DTOR), then following loop can keep running (for
HPAGE_PMD_NR iterations) until it tries to read from memory that isn't
mapped and triggers a panic:
for (i = 0; i < hpage_nr_pages(page); i++) {
if (atomic_read(&page[i]._mapcount) >= 0)
return true;
}
I could replicate this on x86 (v4.20-rc4-98-g60b548237fed) only
with a custom kernel module [1] which:
- allocates compound page (PAGEC) of order 1
- allocates 2 normal pages (COPY), which are initialized to 0xff
(to satisfy _mapcount >= 0)
- 2 PAGEC page structs are copied to address of first COPY page
- second page of COPY is marked as not present
- call to page_mapped(COPY) now triggers fault on access to 2nd
COPY page at offset 0x30 (_mapcount)
[1] https://github.com/jstancek/reproducers/blob/master/kernel/page_mapped_cras…
Fix the loop to iterate for "1 << compound_order" pages.
Kirrill said "IIRC, sound subsystem can producuce custom mapped compound
pages".
Link: http://lkml.kernel.org/r/c440d69879e34209feba21e12d236d06bc0a25db.154357715…
Fixes: e1534ae95004 ("mm: differentiate page_mapped() from page_mapcount() for compound pages")
Signed-off-by: Jan Stancek <jstancek(a)redhat.com>
Debugged-by: Laszlo Ersek <lersek(a)redhat.com>
Suggested-by: "Kirill A. Shutemov" <kirill(a)shutemov.name>
Acked-by: Michal Hocko <mhocko(a)suse.com>
Acked-by: Kirill A. Shutemov <kirill.shutemov(a)linux.intel.com>
Reviewed-by: David Hildenbrand <david(a)redhat.com>
Reviewed-by: Andrea Arcangeli <aarcange(a)redhat.com>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/util.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/mm/util.c~mm-page_mapped-dont-assume-compound-page-is-huge-or-thp
+++ a/mm/util.c
@@ -478,7 +478,7 @@ bool page_mapped(struct page *page)
return true;
if (PageHuge(page))
return false;
- for (i = 0; i < hpage_nr_pages(page); i++) {
+ for (i = 0; i < (1 << compound_order(page)); i++) {
if (atomic_read(&page[i]._mapcount) >= 0)
return true;
}
_
From: Michal Hocko <mhocko(a)suse.com>
Subject: mm, memcg: fix reclaim deadlock with writeback
Liu Bo has experienced a deadlock between memcg (legacy) reclaim and the
ext4 writeback
task1:
[<ffffffff811aaa52>] wait_on_page_bit+0x82/0xa0
[<ffffffff811c5777>] shrink_page_list+0x907/0x960
[<ffffffff811c6027>] shrink_inactive_list+0x2c7/0x680
[<ffffffff811c6ba4>] shrink_node_memcg+0x404/0x830
[<ffffffff811c70a8>] shrink_node+0xd8/0x300
[<ffffffff811c73dd>] do_try_to_free_pages+0x10d/0x330
[<ffffffff811c7865>] try_to_free_mem_cgroup_pages+0xd5/0x1b0
[<ffffffff8122df2d>] try_charge+0x14d/0x720
[<ffffffff812320cc>] memcg_kmem_charge_memcg+0x3c/0xa0
[<ffffffff812321ae>] memcg_kmem_charge+0x7e/0xd0
[<ffffffff811b68a8>] __alloc_pages_nodemask+0x178/0x260
[<ffffffff8120bff5>] alloc_pages_current+0x95/0x140
[<ffffffff81074247>] pte_alloc_one+0x17/0x40
[<ffffffff811e34de>] __pte_alloc+0x1e/0x110
[<ffffffffa06739de>] alloc_set_pte+0x5fe/0xc20
[<ffffffff811e5d93>] do_fault+0x103/0x970
[<ffffffff811e6e5e>] handle_mm_fault+0x61e/0xd10
[<ffffffff8106ea02>] __do_page_fault+0x252/0x4d0
[<ffffffff8106ecb0>] do_page_fault+0x30/0x80
[<ffffffff8171bce8>] page_fault+0x28/0x30
[<ffffffffffffffff>] 0xffffffffffffffff
task2:
[<ffffffff811aadc6>] __lock_page+0x86/0xa0
[<ffffffffa02f1e47>] mpage_prepare_extent_to_map+0x2e7/0x310 [ext4]
[<ffffffffa08a2689>] ext4_writepages+0x479/0xd60
[<ffffffff811bbede>] do_writepages+0x1e/0x30
[<ffffffff812725e5>] __writeback_single_inode+0x45/0x320
[<ffffffff81272de2>] writeback_sb_inodes+0x272/0x600
[<ffffffff81273202>] __writeback_inodes_wb+0x92/0xc0
[<ffffffff81273568>] wb_writeback+0x268/0x300
[<ffffffff81273d24>] wb_workfn+0xb4/0x390
[<ffffffff810a2f19>] process_one_work+0x189/0x420
[<ffffffff810a31fe>] worker_thread+0x4e/0x4b0
[<ffffffff810a9786>] kthread+0xe6/0x100
[<ffffffff8171a9a1>] ret_from_fork+0x41/0x50
[<ffffffffffffffff>] 0xffffffffffffffff
He adds
: task1 is waiting for the PageWriteback bit of the page that task2 has
: collected in mpd->io_submit->io_bio, and tasks2 is waiting for the LOCKED
: bit the page which tasks1 has locked.
More precisely task1 is handling a page fault and it has a page locked
while it charges a new page table to a memcg. That in turn hits a memory
limit reclaim and the memcg reclaim for legacy controller is waiting on
the writeback but that is never going to finish because the writeback
itself is waiting for the page locked in the #PF path. So this is
essentially ABBA deadlock:
lock_page(A)
SetPageWriteback(A)
unlock_page(A)
lock_page(B)
lock_page(B)
pte_alloc_pne
shrink_page_list
wait_on_page_writeback(A)
SetPageWriteback(B)
unlock_page(B)
# flush A, B to clear the writeback
This accumulating of more pages to flush is used by several filesystems to
generate a more optimal IO patterns.
Waiting for the writeback in legacy memcg controller is a workaround for
pre-mature OOM killer invocations because there is no dirty IO throttling
available for the controller. There is no easy way around that
unfortunately. Therefore fix this specific issue by pre-allocating the
page table outside of the page lock. We have that handy infrastructure
for that already so simply reuse the fault-around pattern which already
does this.
There are probably other hidden __GFP_ACCOUNT | GFP_KERNEL allocations
from under a fs page locked but they should be really rare. I am not
aware of a better solution unfortunately.
[akpm(a)linux-foundation.org: fix mm/memory.c:__do_fault()]
[akpm(a)linux-foundation.org: coding-style fixes]
[mhocko(a)kernel.org: enhance comment, per Johannes]
Link: http://lkml.kernel.org/r/20181214084948.GA5624@dhcp22.suse.cz
Link: http://lkml.kernel.org/r/20181213092221.27270-1-mhocko@kernel.org
Fixes: c3b94f44fcb0 ("memcg: further prevent OOM with too many dirty pages")
Signed-off-by: Michal Hocko <mhocko(a)suse.com>
Reported-by: Liu Bo <bo.liu(a)linux.alibaba.com>
Debugged-by: Liu Bo <bo.liu(a)linux.alibaba.com>
Acked-by: Kirill A. Shutemov <kirill.shutemov(a)linux.intel.com>
Acked-by: Johannes Weiner <hannes(a)cmpxchg.org>
Reviewed-by: Liu Bo <bo.liu(a)linux.alibaba.com>
Cc: Jan Kara <jack(a)suse.cz>
Cc: Dave Chinner <david(a)fromorbit.com>
Cc: Theodore Ts'o <tytso(a)mit.edu>
Cc: Vladimir Davydov <vdavydov.dev(a)gmail.com>
Cc: Shakeel Butt <shakeelb(a)google.com>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/memory.c | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
--- a/mm/memory.c~mm-memcg-fix-reclaim-deadlock-with-writeback
+++ a/mm/memory.c
@@ -2994,6 +2994,28 @@ static vm_fault_t __do_fault(struct vm_f
struct vm_area_struct *vma = vmf->vma;
vm_fault_t ret;
+ /*
+ * Preallocate pte before we take page_lock because this might lead to
+ * deadlocks for memcg reclaim which waits for pages under writeback:
+ * lock_page(A)
+ * SetPageWriteback(A)
+ * unlock_page(A)
+ * lock_page(B)
+ * lock_page(B)
+ * pte_alloc_pne
+ * shrink_page_list
+ * wait_on_page_writeback(A)
+ * SetPageWriteback(B)
+ * unlock_page(B)
+ * # flush A, B to clear the writeback
+ */
+ if (pmd_none(*vmf->pmd) && !vmf->prealloc_pte) {
+ vmf->prealloc_pte = pte_alloc_one(vmf->vma->vm_mm);
+ if (!vmf->prealloc_pte)
+ return VM_FAULT_OOM;
+ smp_wmb(); /* See comment in __pte_alloc() */
+ }
+
ret = vma->vm_ops->fault(vmf);
if (unlikely(ret & (VM_FAULT_ERROR | VM_FAULT_NOPAGE | VM_FAULT_RETRY |
VM_FAULT_DONE_COW)))
_
From: Christoph Lameter <cl(a)linux.com>
Subject: slab: alien caches must not be initialized if the allocation of the alien cache failed
Callers of __alloc_alien() check for NULL. We must do the same check in
__alloc_alien_cache to avoid NULL pointer dereferences on allocation
failures.
Link: http://lkml.kernel.org/r/010001680f42f192-82b4e12e-1565-4ee0-ae1f-1e9897490…
Fixes: 49dfc304ba241 ("slab: use the lock on alien_cache, instead of the lock on array_cache")
Fixes: c8522a3a5832b ("Slab: introduce alloc_alien")
Signed-off-by: Christoph Lameter <cl(a)linux.com>
Reported-by: syzbot+d6ed4ec679652b4fd4e4(a)syzkaller.appspotmail.com
Reviewed-by: Andrew Morton <akpm(a)linux-foundation.org>
Cc: Pekka Enberg <penberg(a)kernel.org>
Cc: David Rientjes <rientjes(a)google.com>
Cc: Joonsoo Kim <iamjoonsoo.kim(a)lge.com>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/slab.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
--- a/mm/slab.c~slab-alien-caches-must-not-be-initialized-if-the-allocation-of-the-alien-cache-failed
+++ a/mm/slab.c
@@ -666,8 +666,10 @@ static struct alien_cache *__alloc_alien
struct alien_cache *alc = NULL;
alc = kmalloc_node(memsize, gfp, node);
- init_arraycache(&alc->ac, entries, batch);
- spin_lock_init(&alc->lock);
+ if (alc) {
+ init_arraycache(&alc->ac, entries, batch);
+ spin_lock_init(&alc->lock);
+ }
return alc;
}
_
From: Shakeel Butt <shakeelb(a)google.com>
Subject: fork, memcg: fix cached_stacks case
5eed6f1dff87 ("fork,memcg: fix crash in free_thread_stack on memcg charge
fail") fixes a crash caused due to failed memcg charge of the kernel
stack. However the fix misses the cached_stacks case which this patch
fixes. So, the same crash can happen if the memcg charge of a cached
stack is failed.
Link: http://lkml.kernel.org/r/20190102180145.57406-1-shakeelb@google.com
Fixes: 5eed6f1dff87 ("fork,memcg: fix crash in free_thread_stack on memcg charge fail")
Signed-off-by: Shakeel Butt <shakeelb(a)google.com>
Acked-by: Michal Hocko <mhocko(a)suse.com>
Acked-by: Rik van Riel <riel(a)surriel.com>
Cc: Rik van Riel <riel(a)surriel.com>
Cc: Roman Gushchin <guro(a)fb.com>
Cc: Johannes Weiner <hannes(a)cmpxchg.org>
Cc: Tejun Heo <tj(a)kernel.org>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
kernel/fork.c | 1 +
1 file changed, 1 insertion(+)
--- a/kernel/fork.c~fork-memcg-fix-cached_stacks-case
+++ a/kernel/fork.c
@@ -217,6 +217,7 @@ static unsigned long *alloc_thread_stack
memset(s->addr, 0, THREAD_SIZE);
tsk->stack_vm_area = s;
+ tsk->stack = s->addr;
return s->addr;
}
_
This is an ugly one unfortunately. Currently, all DRM drivers supporting
atomic modesetting will save the state that userspace had set before
suspending, then attempt to restore that state on resume. This probably
worked very well at one point, like many other things, until DP MST came
into the picture. While it's easy to restore state on normal display
connectors that were disconnected during suspend regardless of their
state post-resume, this can't really be done with MST because of the
fact that setting up a downstream sink requires performing sideband
transactions between the source and the MST hub, sending out the ACT
packets, etc.
Because of this, there isn't really a guarantee that we can restore the
atomic state we had before suspend once we've resumed. This sucks pretty
bad, but so far I haven't run into any compositors that this actually
causes serious issues with. Most compositors will notice the hotplug we
send afterwards, and then reprobe state.
Since nouveau and i915 also don't fail the suspend/resume process due to
failing to restore the atomic state, let's make amdgpu match this
behavior. Better to resume the GPU properly, then to stop the process
half way because of a potentially unavoidable atomic commit failure.
Eventually, we'll have a real fix for this problem on the DRM level. But
we've got some more important low-hanging fruit to deal with first.
Signed-off-by: Lyude Paul <lyude(a)redhat.com>
Reviewed-by: Harry Wentland <harry.wentland(a)amd.com>
Cc: Jerry Zuo <Jerry.Zuo(a)amd.com>
Cc: <stable(a)vger.kernel.org> # v4.15+
---
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index 3f326a2c513b..a3e65e457348 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -912,7 +912,6 @@ static int dm_resume(void *handle)
struct drm_plane_state *new_plane_state;
struct dm_plane_state *dm_new_plane_state;
enum dc_connection_type new_connection_type = dc_connection_none;
- int ret;
int i;
/* power on hardware */
@@ -985,13 +984,13 @@ static int dm_resume(void *handle)
}
}
- ret = drm_atomic_helper_resume(ddev, dm->cached_state);
+ drm_atomic_helper_resume(ddev, dm->cached_state);
dm->cached_state = NULL;
amdgpu_dm_irq_resume_late(adev);
- return ret;
+ return 0;
}
/**
--
2.20.1
drm_dp_mst_topology_mgr_resume() returns whether or not it managed to
find the topology in question after a suspend resume cycle, and the
driver is supposed to check this value and disable MST accordingly if
it's gone-in addition to sending a hotplug in order to notify userspace
that something changed during suspend.
Currently, amdgpu just makes the mistake of ignoring the return code
from drm_dp_mst_topology_mgr_resume() which means that if a topology was
removed in suspend, amdgpu never notices and assumes it's still
connected which leads to all sorts of problems.
So, fix this by actually checking the rc from
drm_dp_mst_topology_mgr_resume(). Also, reformat the rest of the
function while we're at it to fix the over-indenting.
Signed-off-by: Lyude Paul <lyude(a)redhat.com>
Reviewed-by: Harry Wentland <harry.wentland(a)amd.com>
Cc: Jerry Zuo <Jerry.Zuo(a)amd.com>
Cc: <stable(a)vger.kernel.org> # v4.15+
---
.../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 32 +++++++++++++------
1 file changed, 23 insertions(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index 8a626d16e8e3..3f326a2c513b 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -699,22 +699,36 @@ static void s3_handle_mst(struct drm_device *dev, bool suspend)
{
struct amdgpu_dm_connector *aconnector;
struct drm_connector *connector;
+ struct drm_dp_mst_topology_mgr *mgr;
+ int ret;
+ bool need_hotplug = false;
drm_modeset_lock(&dev->mode_config.connection_mutex, NULL);
- list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
- aconnector = to_amdgpu_dm_connector(connector);
- if (aconnector->dc_link->type == dc_connection_mst_branch &&
- !aconnector->mst_port) {
+ list_for_each_entry(connector, &dev->mode_config.connector_list,
+ head) {
+ aconnector = to_amdgpu_dm_connector(connector);
+ if (aconnector->dc_link->type != dc_connection_mst_branch ||
+ aconnector->mst_port)
+ continue;
+
+ mgr = &aconnector->mst_mgr;
- if (suspend)
- drm_dp_mst_topology_mgr_suspend(&aconnector->mst_mgr);
- else
- drm_dp_mst_topology_mgr_resume(&aconnector->mst_mgr);
- }
+ if (suspend) {
+ drm_dp_mst_topology_mgr_suspend(mgr);
+ } else {
+ ret = drm_dp_mst_topology_mgr_resume(mgr);
+ if (ret < 0) {
+ drm_dp_mst_topology_mgr_set_mst(mgr, false);
+ need_hotplug = true;
+ }
+ }
}
drm_modeset_unlock(&dev->mode_config.connection_mutex);
+
+ if (need_hotplug)
+ drm_kms_helper_hotplug_event(dev);
}
/**
--
2.20.1
From: "Maciej W. Rozycki" <macro(a)linux-mips.org>
[ Upstream commit e4849aff1e169b86c561738daf8ff020e9de1011 ]
The Broadcom SiByte BCM1250, BCM1125, and BCM1125H SOCs have an onchip
DRAM controller that supports memory amounts of up to 16GiB, and due to
how the address decoder has been wired in the SOC any memory beyond 1GiB
is actually mapped starting from 4GiB physical up, that is beyond the
32-bit addressable limit[1]. Consequently if the maximum amount of
memory has been installed, then it will span up to 19GiB.
Many of the evaluation boards we support that are based on one of these
SOCs have their memory soldered and the amount present fits in the
32-bit address range. The BCM91250A SWARM board however has actual DIMM
slots and accepts, depending on the peripherals revision of the SOC, up
to 4GiB or 8GiB of memory in commercially available JEDEC modules[2].
I believe this is also the case with the BCM91250C2 LittleSur board.
This means that up to either 3GiB or 7GiB of memory requires 64-bit
addressing to access.
I believe the BCM91480B BigSur board, which has the BCM1480 SOC instead,
accepts at least as much memory, although I have no documentation or
actual hardware available to verify that.
Both systems have PCI slots installed for use by any PCI option boards,
including ones that only support 32-bit addressing (additionally the
32-bit PCI host bridge of the BCM1250, BCM1125, and BCM1125H SOCs limits
addressing to 32-bits), and there is no IOMMU available. Therefore for
PCI DMA to work in the presence of memory beyond enable swiotlb for the
affected systems.
All the other SOC onchip DMA devices use 40-bit addressing and therefore
can address the whole memory, so only enable swiotlb if PCI support and
support for DMA beyond 4GiB have been both enabled in the configuration
of the kernel.
This shows up as follows:
Broadcom SiByte BCM1250 B2 @ 800 MHz (SB1 rev 2)
Board type: SiByte BCM91250A (SWARM)
Determined physical RAM map:
memory: 000000000fe7fe00 @ 0000000000000000 (usable)
memory: 000000001ffffe00 @ 0000000080000000 (usable)
memory: 000000000ffffe00 @ 00000000c0000000 (usable)
memory: 0000000087fffe00 @ 0000000100000000 (usable)
software IO TLB: mapped [mem 0xcbffc000-0xcfffc000] (64MB)
in the bootstrap log and removes failures like these:
defxx 0000:02:00.0: dma_direct_map_page: overflow 0x0000000185bc6080+4608 of device mask ffffffff bus mask 0
fddi0: Receive buffer allocation failed
fddi0: Adapter open failed!
IP-Config: Failed to open fddi0
defxx 0000:09:08.0: dma_direct_map_page: overflow 0x0000000185bc6080+4608 of device mask ffffffff bus mask 0
fddi1: Receive buffer allocation failed
fddi1: Adapter open failed!
IP-Config: Failed to open fddi1
when memory beyond 4GiB is handed out to devices that can only do 32-bit
addressing.
This updates commit cce335ae47e2 ("[MIPS] 64-bit Sibyte kernels need
DMA32.").
References:
[1] "BCM1250/BCM1125/BCM1125H User Manual", Revision 1250_1125-UM100-R,
Broadcom Corporation, 21 Oct 2002, Section 3: "System Overview",
"Memory Map", pp. 34-38
[2] "BCM91250A User Manual", Revision 91250A-UM100-R, Broadcom
Corporation, 18 May 2004, Section 3: "Physical Description",
"Supported DRAM", p. 23
Signed-off-by: Maciej W. Rozycki <macro(a)linux-mips.org>
[paul.burton(a)mips.com: Remove GPL text from dma.c; SPDX tag covers it]
Signed-off-by: Paul Burton <paul.burton(a)mips.com>
Reviewed-by: Christoph Hellwig <hch(a)lst.de>
Patchwork: https://patchwork.linux-mips.org/patch/21108/
References: cce335ae47e2 ("[MIPS] 64-bit Sibyte kernels need DMA32.")
Cc: Ralf Baechle <ralf(a)linux-mips.org>
Cc: linux-mips(a)linux-mips.org
Cc: linux-kernel(a)vger.kernel.org
Signed-off-by: Sasha Levin <sashal(a)kernel.org>
---
arch/mips/Kconfig | 3 +++
arch/mips/sibyte/common/Makefile | 1 +
arch/mips/sibyte/common/dma.c | 14 ++++++++++++++
3 files changed, 18 insertions(+)
create mode 100644 arch/mips/sibyte/common/dma.c
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 9536ef912f59..077ae203e8f9 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -627,6 +627,7 @@ config SIBYTE_SWARM
select SYS_SUPPORTS_HIGHMEM
select SYS_SUPPORTS_LITTLE_ENDIAN
select ZONE_DMA32 if 64BIT
+ select SWIOTLB if ARCH_DMA_ADDR_T_64BIT && PCI
config SIBYTE_LITTLESUR
bool "Sibyte BCM91250C2-LittleSur"
@@ -649,6 +650,7 @@ config SIBYTE_SENTOSA
select SYS_HAS_CPU_SB1
select SYS_SUPPORTS_BIG_ENDIAN
select SYS_SUPPORTS_LITTLE_ENDIAN
+ select SWIOTLB if ARCH_DMA_ADDR_T_64BIT && PCI
config SIBYTE_BIGSUR
bool "Sibyte BCM91480B-BigSur"
@@ -662,6 +664,7 @@ config SIBYTE_BIGSUR
select SYS_SUPPORTS_HIGHMEM
select SYS_SUPPORTS_LITTLE_ENDIAN
select ZONE_DMA32 if 64BIT
+ select SWIOTLB if ARCH_DMA_ADDR_T_64BIT && PCI
config SNI_RM
bool "SNI RM200/300/400"
diff --git a/arch/mips/sibyte/common/Makefile b/arch/mips/sibyte/common/Makefile
index b3d6bf23a662..3ef3fb658136 100644
--- a/arch/mips/sibyte/common/Makefile
+++ b/arch/mips/sibyte/common/Makefile
@@ -1,4 +1,5 @@
obj-y := cfe.o
+obj-$(CONFIG_SWIOTLB) += dma.o
obj-$(CONFIG_SIBYTE_BUS_WATCHER) += bus_watcher.o
obj-$(CONFIG_SIBYTE_CFE_CONSOLE) += cfe_console.o
obj-$(CONFIG_SIBYTE_TBPROF) += sb_tbprof.o
diff --git a/arch/mips/sibyte/common/dma.c b/arch/mips/sibyte/common/dma.c
new file mode 100644
index 000000000000..eb47a94f3583
--- /dev/null
+++ b/arch/mips/sibyte/common/dma.c
@@ -0,0 +1,14 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * DMA support for Broadcom SiByte platforms.
+ *
+ * Copyright (c) 2018 Maciej W. Rozycki
+ */
+
+#include <linux/swiotlb.h>
+#include <asm/bootinfo.h>
+
+void __init plat_swiotlb_setup(void)
+{
+ swiotlb_init(1);
+}
--
2.19.1
From: João Paulo Rechi Vita <jprvita(a)gmail.com>
[ Upstream commit 78f3ac76d9e5219589718b9e4733bee21627b3f5 ]
In the past, Asus firmwares would change the panel backlight directly
through the EC when the display off hotkey (Fn+F7) was pressed, and
only notify the OS of such change, with 0x33 when the LCD was ON and
0x34 when the LCD was OFF. These are currently mapped to
KEY_DISPLAYTOGGLE and KEY_DISPLAY_OFF, respectively.
Most recently the EC on Asus most machines lost ability to toggle the
LCD backlight directly, but unless the OS informs the firmware it is
going to handle the display toggle hotkey events, the firmware still
tries change the brightness through the EC, to no effect. The end result
is a long list (at Endless we counted 11) of Asus laptop models where
the display toggle hotkey does not perform any action. Our firmware
engineers contacts at Asus were surprised that there were still machines
out there with the old behavior.
Calling WMNB(ASUS_WMI_DEVID_BACKLIGHT==0x00050011, 2) on the _WDG device
tells the firmware that it should let the OS handle the display toggle
event, in which case it will simply notify the OS of a key press with
0x35, as shown by the DSDT excerpts bellow.
Scope (_SB)
{
(...)
Device (ATKD)
{
(...)
Name (_WDG, Buffer (0x28)
{
/* 0000 */ 0xD0, 0x5E, 0x84, 0x97, 0x6D, 0x4E, 0xDE, 0x11,
/* 0008 */ 0x8A, 0x39, 0x08, 0x00, 0x20, 0x0C, 0x9A, 0x66,
/* 0010 */ 0x4E, 0x42, 0x01, 0x02, 0x35, 0xBB, 0x3C, 0x0B,
/* 0018 */ 0xC2, 0xE3, 0xED, 0x45, 0x91, 0xC2, 0x4C, 0x5A,
/* 0020 */ 0x6D, 0x19, 0x5D, 0x1C, 0xFF, 0x00, 0x01, 0x08
})
Method (WMNB, 3, Serialized)
{
CreateDWordField (Arg2, Zero, IIA0)
CreateDWordField (Arg2, 0x04, IIA1)
Local0 = (Arg1 & 0xFFFFFFFF)
(...)
If ((Local0 == 0x53564544))
{
(...)
If ((IIA0 == 0x00050011))
{
If ((IIA1 == 0x02))
{
^^PCI0.SBRG.EC0.SPIN (0x72, One)
^^PCI0.SBRG.EC0.BLCT = One
}
Return (One)
}
}
(...)
}
(...)
}
(...)
}
(...)
Scope (_SB.PCI0.SBRG.EC0)
{
(...)
Name (BLCT, Zero)
(...)
Method (_Q10, 0, NotSerialized) // _Qxx: EC Query
{
If ((BLCT == Zero))
{
Local0 = One
Local0 = RPIN (0x72)
Local0 ^= One
SPIN (0x72, Local0)
If (ATKP)
{
Local0 = (0x34 - Local0)
^^^^ATKD.IANE (Local0)
}
}
ElseIf ((BLCT == One))
{
If (ATKP)
{
^^^^ATKD.IANE (0x35)
}
}
}
(...)
}
Signed-off-by: João Paulo Rechi Vita <jprvita(a)endlessm.com>
Signed-off-by: Andy Shevchenko <andriy.shevchenko(a)linux.intel.com>
Signed-off-by: Sasha Levin <sashal(a)kernel.org>
---
drivers/platform/x86/asus-wmi.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
index f96f7b865267..7c1defaef3f5 100644
--- a/drivers/platform/x86/asus-wmi.c
+++ b/drivers/platform/x86/asus-wmi.c
@@ -2084,7 +2084,8 @@ static int asus_wmi_add(struct platform_device *pdev)
err = asus_wmi_backlight_init(asus);
if (err && err != -ENODEV)
goto fail_backlight;
- }
+ } else
+ err = asus_wmi_set_devstate(ASUS_WMI_DEVID_BACKLIGHT, 2, NULL);
status = wmi_install_notify_handler(asus->driver->event_guid,
asus_wmi_notify, asus);
--
2.19.1
From: João Paulo Rechi Vita <jprvita(a)gmail.com>
[ Upstream commit 78f3ac76d9e5219589718b9e4733bee21627b3f5 ]
In the past, Asus firmwares would change the panel backlight directly
through the EC when the display off hotkey (Fn+F7) was pressed, and
only notify the OS of such change, with 0x33 when the LCD was ON and
0x34 when the LCD was OFF. These are currently mapped to
KEY_DISPLAYTOGGLE and KEY_DISPLAY_OFF, respectively.
Most recently the EC on Asus most machines lost ability to toggle the
LCD backlight directly, but unless the OS informs the firmware it is
going to handle the display toggle hotkey events, the firmware still
tries change the brightness through the EC, to no effect. The end result
is a long list (at Endless we counted 11) of Asus laptop models where
the display toggle hotkey does not perform any action. Our firmware
engineers contacts at Asus were surprised that there were still machines
out there with the old behavior.
Calling WMNB(ASUS_WMI_DEVID_BACKLIGHT==0x00050011, 2) on the _WDG device
tells the firmware that it should let the OS handle the display toggle
event, in which case it will simply notify the OS of a key press with
0x35, as shown by the DSDT excerpts bellow.
Scope (_SB)
{
(...)
Device (ATKD)
{
(...)
Name (_WDG, Buffer (0x28)
{
/* 0000 */ 0xD0, 0x5E, 0x84, 0x97, 0x6D, 0x4E, 0xDE, 0x11,
/* 0008 */ 0x8A, 0x39, 0x08, 0x00, 0x20, 0x0C, 0x9A, 0x66,
/* 0010 */ 0x4E, 0x42, 0x01, 0x02, 0x35, 0xBB, 0x3C, 0x0B,
/* 0018 */ 0xC2, 0xE3, 0xED, 0x45, 0x91, 0xC2, 0x4C, 0x5A,
/* 0020 */ 0x6D, 0x19, 0x5D, 0x1C, 0xFF, 0x00, 0x01, 0x08
})
Method (WMNB, 3, Serialized)
{
CreateDWordField (Arg2, Zero, IIA0)
CreateDWordField (Arg2, 0x04, IIA1)
Local0 = (Arg1 & 0xFFFFFFFF)
(...)
If ((Local0 == 0x53564544))
{
(...)
If ((IIA0 == 0x00050011))
{
If ((IIA1 == 0x02))
{
^^PCI0.SBRG.EC0.SPIN (0x72, One)
^^PCI0.SBRG.EC0.BLCT = One
}
Return (One)
}
}
(...)
}
(...)
}
(...)
}
(...)
Scope (_SB.PCI0.SBRG.EC0)
{
(...)
Name (BLCT, Zero)
(...)
Method (_Q10, 0, NotSerialized) // _Qxx: EC Query
{
If ((BLCT == Zero))
{
Local0 = One
Local0 = RPIN (0x72)
Local0 ^= One
SPIN (0x72, Local0)
If (ATKP)
{
Local0 = (0x34 - Local0)
^^^^ATKD.IANE (Local0)
}
}
ElseIf ((BLCT == One))
{
If (ATKP)
{
^^^^ATKD.IANE (0x35)
}
}
}
(...)
}
Signed-off-by: João Paulo Rechi Vita <jprvita(a)endlessm.com>
Signed-off-by: Andy Shevchenko <andriy.shevchenko(a)linux.intel.com>
Signed-off-by: Sasha Levin <sashal(a)kernel.org>
---
drivers/platform/x86/asus-wmi.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
index ed277685da1d..10bd13b30178 100644
--- a/drivers/platform/x86/asus-wmi.c
+++ b/drivers/platform/x86/asus-wmi.c
@@ -2154,7 +2154,8 @@ static int asus_wmi_add(struct platform_device *pdev)
err = asus_wmi_backlight_init(asus);
if (err && err != -ENODEV)
goto fail_backlight;
- }
+ } else
+ err = asus_wmi_set_devstate(ASUS_WMI_DEVID_BACKLIGHT, 2, NULL);
status = wmi_install_notify_handler(asus->driver->event_guid,
asus_wmi_notify, asus);
--
2.19.1
commit 6010abf2c2c0e382d7e8ee44bd11f343aae90cce upstream.
Due to lack of ID pin interrupt event on AM335x devices, the musb dsps
driver uses polling to detect usb device attach for dual-role port.
But in the case if a micro-A cable adapter is attached without a USB device
attached to the cable, the musb state machine gets stuck in a_wait_vrise
state waiting for the MUSB_CONNECT interrupt which won't happen due to the
usb device is not attached. The state is stuck in a_wait_vrise even after
the micro-A cable is detached, which could cause VBUS retention if then the
dual-role port is attached to a host port.
To fix the problem, make a_wait_vrise as a transient state, then move the
state to either a_wait_bcon for host port or a_idle state for dual-role
port, if no usb device is attached to the port.
Cc: stable(a)vger.kernel.org # v4.9+
Signed-off-by: Bin Liu <b-liu(a)ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/musb/musb_dsps.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c
index 4fa2456ee801..7cc94410d062 100644
--- a/drivers/usb/musb/musb_dsps.c
+++ b/drivers/usb/musb/musb_dsps.c
@@ -244,8 +244,13 @@ static int dsps_check_status(struct musb *musb, void *unused)
switch (musb->xceiv->otg->state) {
case OTG_STATE_A_WAIT_VRISE:
- dsps_mod_timer_optional(glue);
- break;
+ if (musb->port_mode == MUSB_PORT_MODE_HOST) {
+ musb->xceiv->otg->state = OTG_STATE_A_WAIT_BCON;
+ dsps_mod_timer_optional(glue);
+ break;
+ }
+ /* fall through */
+
case OTG_STATE_A_WAIT_BCON:
/* keep VBUS on for host-only mode */
if (musb->port_mode == MUSB_PORT_MODE_HOST) {
--
2.17.1
commit 54578ee883e34d2d1c518d48f1c1e2dd3f387188 upstream.
Since the runtime PM support was added in musb, dsps relies on the timer
calling otg_timer() to activate the usb subsystem. However the driver
doesn't enable the timer for peripheral port, then the peripheral port is
unable to be enumerated by a host if the other usb port is disabled or in
peripheral mode too.
So let's start the timer for peripheral port too.
Fixes: ea2f35c01d5e ("usb: musb: Fix sleeping function called from invalid context for hdrc glue")
Cc: stable(a)vger.kernel.org # v4.9+
Acked-by: Tony Lindgren <tony(a)atomide.com>
Signed-off-by: Bin Liu <b-liu(a)ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/musb/musb_dsps.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c
index eb93d0103117..49724ec8f55a 100644
--- a/drivers/usb/musb/musb_dsps.c
+++ b/drivers/usb/musb/musb_dsps.c
@@ -196,9 +196,11 @@ static void dsps_musb_enable(struct musb *musb)
musb_writel(reg_base, wrp->epintr_set, epmask);
musb_writel(reg_base, wrp->coreintr_set, coremask);
- /* start polling for ID change in dual-role idle mode */
- if (musb->xceiv->otg->state == OTG_STATE_B_IDLE &&
- musb->port_mode == MUSB_PORT_MODE_DUAL_ROLE)
+ /*
+ * start polling for runtime PM active and idle,
+ * and for ID change in dual-role idle mode.
+ */
+ if (musb->xceiv->otg->state == OTG_STATE_B_IDLE)
dsps_mod_timer(glue, -1);
}
@@ -269,6 +271,10 @@ static int dsps_check_status(struct musb *musb, void *unused)
musb_set_otg_state(musb, OTG_STATE_A_IDLE);
MUSB_HST_MODE(musb);
}
+
+ if (musb->port_mode == MUSB_PORT_MODE_GADGET)
+ skip_session = 1;
+
if (!(devctl & MUSB_DEVCTL_SESSION) && !skip_session)
musb_writeb(mregs, MUSB_DEVCTL,
MUSB_DEVCTL_SESSION);
--
2.17.1
Userspace may request pitch alignment that is not supported by GPU.
Some requests 32, but GPU ignores it and uses default 64 when cpp is
4. If GEM object is allocated based on the smaller alignment, GPU
DMA will go out of bound.
For GPU that does frame buffer compression, DMA writing out of bound
memory will cause memory corruption.
Cc: stable(a)vger.kernel.org # v4.2+
Signed-off-by: Yu Zhao <yuzhao(a)google.com>
---
drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
index 686a26de50f9..883a4df2386d 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
@@ -527,6 +527,15 @@ amdgpu_display_user_framebuffer_create(struct drm_device *dev,
struct drm_gem_object *obj;
struct amdgpu_framebuffer *amdgpu_fb;
int ret;
+ struct amdgpu_device *adev = dev->dev_private;
+ int cpp = drm_format_plane_cpp(mode_cmd->pixel_format, 0);
+ int pitch = amdgpu_align_pitch(adev, mode_cmd->pitches[0], cpp, false);
+
+ if (mode_cmd->pitches[0] != pitch) {
+ DRM_DEBUG_KMS("Invalid pitch: expecting %d but got %d\n",
+ pitch, mode_cmd->pitches[0]);
+ return ERR_PTR(-EINVAL);
+ }
obj = drm_gem_object_lookup(file_priv, mode_cmd->handles[0]);
if (obj == NULL) {
--
2.20.1.415.g653613c723-goog
SDL 1.2 sets all fields related to the pixel format to zero in some
cases[1]. Prior to commit db05c48197759 ("drm: fb-helper: Reject all
pixel format changing requests"), there was an unintentional workaround
for this that existed for more than a decade. First in device-specific DRM
drivers, then here in drm_fb_helper.c.
Previous code containing this workaround just ignores pixel format fields
from userspace code. Not a good thing either, as this way, driver may
silently use pixel format different from what client actually requested,
and this in turn will lead to displaying garbage on the screen. I think
that returning EINVAL to userspace in this particular case is the right
option, so I decided to left code from problematic commit untouched
instead of just reverting it entirely.
Here is the steps required to reproduce this problem exactly:
1) Compile fceux[2] with SDL 1.2.15 and without GTK or OpenGL
support. SDL should be compiled with fbdev support (which is
on by default).
2) Create /etc/fb.modes with following contents (values seems
not used, and just required to trigger problematic code in
SDL):
mode "test"
geometry 1 1 1 1 1
timings 1 1 1 1 1 1 1
endmode
3) Create ~/.fceux/fceux.cfg with following contents:
SDL.Hotkeys.Quit = 27
SDL.DoubleBuffering = 1
4) Ensure that screen resolution is at least 1280x960 (e.g.
append "video=Virtual-1:1280x960-32" to the kernel cmdline
for qemu/QXL).
5) Try to run fceux on VT with some ROM file[3]:
# ./fceux color_test.nes
[1] SDL 1.2.15 source code, src/video/fbcon/SDL_fbvideo.c,
FB_SetVideoMode()
[2] http://www.fceux.com
[3] Example ROM: https://github.com/bokuweb/rustynes/blob/master/roms/color_test.nes
Reported-by: saahriktu <mail(a)saahriktu.org>
Suggested-by: saahriktu <mail(a)saahriktu.org>
Cc: stable(a)vger.kernel.org
Fixes: db05c48197759 ("drm: fb-helper: Reject all pixel format changing requests")
Signed-off-by: Ivan Mironov <mironov.ivan(a)gmail.com>
---
drivers/gpu/drm/drm_fb_helper.c | 142 ++++++++++++++++++++------------
1 file changed, 89 insertions(+), 53 deletions(-)
diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
index d3af098b0922..ed7e91423258 100644
--- a/drivers/gpu/drm/drm_fb_helper.c
+++ b/drivers/gpu/drm/drm_fb_helper.c
@@ -1621,6 +1621,64 @@ static bool drm_fb_pixel_format_equal(const struct fb_var_screeninfo *var_1,
var_1->transp.msb_right == var_2->transp.msb_right;
}
+static void drm_fb_helper_fill_pixel_fmt(struct fb_var_screeninfo *var,
+ u8 depth)
+{
+ switch (depth) {
+ case 8:
+ var->red.offset = 0;
+ var->green.offset = 0;
+ var->blue.offset = 0;
+ var->red.length = 8; /* 8bit DAC */
+ var->green.length = 8;
+ var->blue.length = 8;
+ var->transp.offset = 0;
+ var->transp.length = 0;
+ break;
+ case 15:
+ var->red.offset = 10;
+ var->green.offset = 5;
+ var->blue.offset = 0;
+ var->red.length = 5;
+ var->green.length = 5;
+ var->blue.length = 5;
+ var->transp.offset = 15;
+ var->transp.length = 1;
+ break;
+ case 16:
+ var->red.offset = 11;
+ var->green.offset = 5;
+ var->blue.offset = 0;
+ var->red.length = 5;
+ var->green.length = 6;
+ var->blue.length = 5;
+ var->transp.offset = 0;
+ break;
+ case 24:
+ var->red.offset = 16;
+ var->green.offset = 8;
+ var->blue.offset = 0;
+ var->red.length = 8;
+ var->green.length = 8;
+ var->blue.length = 8;
+ var->transp.offset = 0;
+ var->transp.length = 0;
+ break;
+ case 32:
+ var->red.offset = 16;
+ var->green.offset = 8;
+ var->blue.offset = 0;
+ var->red.length = 8;
+ var->green.length = 8;
+ var->blue.length = 8;
+ var->transp.offset = 24;
+ var->transp.length = 8;
+ break;
+ default:
+ break;
+ }
+}
+
/**
* drm_fb_helper_check_var - implementation for &fb_ops.fb_check_var
* @var: screeninfo to check
@@ -1654,6 +1712,36 @@ int drm_fb_helper_check_var(struct fb_var_screeninfo *var,
return -EINVAL;
}
+ /*
+ * Workaround for SDL 1.2, which is known to be setting all pixel format
+ * fields values to zero in some cases. We treat this situation as a
+ * kind of "use some reasonable autodetected values".
+ */
+ if (!var->red.offset && !var->green.offset &&
+ !var->blue.offset && !var->transp.offset &&
+ !var->red.length && !var->green.length &&
+ !var->blue.length && !var->transp.length &&
+ !var->red.msb_right && !var->green.msb_right &&
+ !var->blue.msb_right && !var->transp.msb_right) {
+ /*
+ * There is no way to guess the right value for depth when
+ * bits_per_pixel is 16 or 32. Instead of restoring the
+ * behaviour previously introduced here by commit 785b93ef8c309,
+ * we decided to just use the current depth and do not perform
+ * any guessing.
+ *
+ * Also, if requested bits_per_pixel differs from current,
+ * the next call to drm_fb_pixel_format_equal() will fail
+ * resulting in EINVAL error from ioctl().
+ *
+ * However, this still leaves the theoretical possibility of
+ * situation when userspace app requests different pixel format
+ * and ioctl() call silently succeeds. Garbage will be displayed
+ * in this case.
+ */
+ drm_fb_helper_fill_pixel_fmt(var, fb->format->depth);
+ }
+
/*
* drm fbdev emulation doesn't support changing the pixel format at all,
* so reject all pixel format changing requests.
@@ -1967,59 +2055,7 @@ void drm_fb_helper_fill_var(struct fb_info *info, struct drm_fb_helper *fb_helpe
info->var.yoffset = 0;
info->var.activate = FB_ACTIVATE_NOW;
- switch (fb->format->depth) {
- case 8:
- info->var.red.offset = 0;
- info->var.green.offset = 0;
- info->var.blue.offset = 0;
- info->var.red.length = 8; /* 8bit DAC */
- info->var.green.length = 8;
- info->var.blue.length = 8;
- info->var.transp.offset = 0;
- info->var.transp.length = 0;
- break;
- case 15:
- info->var.red.offset = 10;
- info->var.green.offset = 5;
- info->var.blue.offset = 0;
- info->var.red.length = 5;
- info->var.green.length = 5;
- info->var.blue.length = 5;
- info->var.transp.offset = 15;
- info->var.transp.length = 1;
- break;
- case 16:
- info->var.red.offset = 11;
- info->var.green.offset = 5;
- info->var.blue.offset = 0;
- info->var.red.length = 5;
- info->var.green.length = 6;
- info->var.blue.length = 5;
- info->var.transp.offset = 0;
- break;
- case 24:
- info->var.red.offset = 16;
- info->var.green.offset = 8;
- info->var.blue.offset = 0;
- info->var.red.length = 8;
- info->var.green.length = 8;
- info->var.blue.length = 8;
- info->var.transp.offset = 0;
- info->var.transp.length = 0;
- break;
- case 32:
- info->var.red.offset = 16;
- info->var.green.offset = 8;
- info->var.blue.offset = 0;
- info->var.red.length = 8;
- info->var.green.length = 8;
- info->var.blue.length = 8;
- info->var.transp.offset = 24;
- info->var.transp.length = 8;
- break;
- default:
- break;
- }
+ drm_fb_helper_fill_pixel_fmt(&info->var, fb->format->depth);
info->var.xres = fb_width;
info->var.yres = fb_height;
--
2.20.1
Strict requirement of pixclock to be zero breaks support of SDL 1.2
which contains hardcoded table of supported video modes with non-zero
pixclock values[1].
To better understand which pixclock values are considered valid and how
driver should handle these values, I briefly examined few existing fbdev
drivers and documentation in Documentation/fb/. And it looks like there
are no strict rules on that and actual behaviour varies:
* some drivers treat (pixclock == 0) as "use defaults" (uvesafb.c);
* some treat (pixclock == 0) as invalid value which leads to
-EINVAL (clps711x-fb.c);
* some pass converted pixclock value to hardware (uvesafb.c);
* some are trying to find nearest value from predefined table
(vga16fb.c, video_gx.c).
Given this, I believe that it should be safe to just ignore this value if
changing is not supported. It seems that any portable fbdev application
which was not written only for one specific device working under one
specific kernel version should not rely on any particular behaviour of
pixclock anyway.
However, while enabling SDL1 applications to work out of the box when
there is no /etc/fb.modes with valid settings, this change affects the
video mode choosing logic in SDL. Depending on current screen
resolution, contents of /etc/fb.modes and resolution requested by
application, this may lead to user-visible difference (not always):
image will be displayed in a right way, but it will be aligned to the
left instead of center. There is no "right behaviour" here as well, as
emulated fbdev, opposing to old fbdev drivers, simply ignores any
requsts of video mode changes with resolutions smaller than current.
The easiest way to reproduce this problem is to install sdl-sopwith[2],
remove /etc/fb.modes file if it exists, and then try to run sopwith
from console without X. At least in Fedora 29, sopwith may be simply
installed from standard repositories.
[1] SDL 1.2.15 source code, src/video/fbcon/SDL_fbvideo.c, vesa_timings
[2] http://sdl-sopwith.sourceforge.net/
Signed-off-by: Ivan Mironov <mironov.ivan(a)gmail.com>
Cc: stable(a)vger.kernel.org
Fixes: 79e539453b34e ("DRM: i915: add mode setting support")
Fixes: 771fe6b912fca ("drm/radeon: introduce kernel modesetting for radeon hardware")
Fixes: 785b93ef8c309 ("drm/kms: move driver specific fb common code to helper functions (v2)")
---
drivers/gpu/drm/drm_fb_helper.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
index ed7e91423258..2d4c2b38508e 100644
--- a/drivers/gpu/drm/drm_fb_helper.c
+++ b/drivers/gpu/drm/drm_fb_helper.c
@@ -1690,9 +1690,14 @@ int drm_fb_helper_check_var(struct fb_var_screeninfo *var,
struct drm_fb_helper *fb_helper = info->par;
struct drm_framebuffer *fb = fb_helper->fb;
- if (var->pixclock != 0 || in_dbg_master())
+ if (in_dbg_master())
return -EINVAL;
+ if (var->pixclock != 0) {
+ DRM_DEBUG("fbdev emulation doesn't support changing the pixel clock, value of pixclock is ignored\n");
+ var->pixclock = 0;
+ }
+
if ((drm_format_info_block_width(fb->format, 0) > 1) ||
(drm_format_info_block_height(fb->format, 0) > 1))
return -EINVAL;
--
2.20.1
Since virtio-ccw doesn't work with accessing to the config space
inside an interrupt context, this patch series avoids that issue by
moving the config register accesses to the related workqueue contexts.
v3->v4 ChangeLog:
- change virtio32_to_cpu to cpu_to_virtio_32 in send_cmd_id_start;
v2->v3 ChangeLog:
- rename cmd_id_received to cmd_id_received_cache, and have call sites
read the latest value via virtio_balloon_cmd_id_received. (Still
kept Cornelia and Halil's reviewed-by as it's a minor change)
- remove zeroing vb->num_free_page_blocks in probe since vb is
allocated via kzalloc.
v1->v2 ChangeLog:
- add config_read_bitmap to indicate to the workqueue callbacks about
the necessity of reading the related config fields.
Wei Wang (3):
virtio-balloon: tweak config_changed implementation
virtio-balloon: improve update_balloon_size_func
virtio_balloon: remove the unnecessary 0-initialization
drivers/virtio/virtio_balloon.c | 104 ++++++++++++++++++++++++++--------------
1 file changed, 69 insertions(+), 35 deletions(-)
--
2.7.4
This is an ugly one unfortunately. Currently, all DRM drivers supporting
atomic modesetting will save the state that userspace had set before
suspending, then attempt to restore that state on resume. This probably
worked very well at one point, like many other things, until DP MST came
into the picture. While it's easy to restore state on normal display
connectors that were disconnected during suspend regardless of their
state post-resume, this can't really be done with MST because of the
fact that setting up a downstream sink requires performing sideband
transactions between the source and the MST hub, sending out the ACT
packets, etc.
Because of this, there isn't really a guarantee that we can restore the
atomic state we had before suspend once we've resumed. This sucks pretty
bad, but so far I haven't run into any compositors that this actually
causes serious issues with. Most compositors will notice the hotplug we
send afterwards, and then reprobe state.
Since nouveau and i915 also don't fail the suspend/resume process due to
failing to restore the atomic state, let's make amdgpu match this
behavior. Better to resume the GPU properly, then to stop the process
half way because of a potentially unavoidable atomic commit failure.
Eventually, we'll have a real fix for this problem on the DRM level. But
we've got some more important low-hanging fruit to deal with first.
Signed-off-by: Lyude Paul <lyude(a)redhat.com>
Cc: Jerry Zuo <Jerry.Zuo(a)amd.com>
Cc: <stable(a)vger.kernel.org> # v4.15+
---
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index 3f326a2c513b..a3e65e457348 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -912,7 +912,6 @@ static int dm_resume(void *handle)
struct drm_plane_state *new_plane_state;
struct dm_plane_state *dm_new_plane_state;
enum dc_connection_type new_connection_type = dc_connection_none;
- int ret;
int i;
/* power on hardware */
@@ -985,13 +984,13 @@ static int dm_resume(void *handle)
}
}
- ret = drm_atomic_helper_resume(ddev, dm->cached_state);
+ drm_atomic_helper_resume(ddev, dm->cached_state);
dm->cached_state = NULL;
amdgpu_dm_irq_resume_late(adev);
- return ret;
+ return 0;
}
/**
--
2.20.1
drm_dp_mst_topology_mgr_resume() returns whether or not it managed to
find the topology in question after a suspend resume cycle, and the
driver is supposed to check this value and disable MST accordingly if
it's gone-in addition to sending a hotplug in order to notify userspace
that something changed during suspend.
Currently, amdgpu just makes the mistake of ignoring the return code
from drm_dp_mst_topology_mgr_resume() which means that if a topology was
removed in suspend, amdgpu never notices and assumes it's still
connected which leads to all sorts of problems.
So, fix this by actually checking the rc from
drm_dp_mst_topology_mgr_resume(). Also, reformat the rest of the
function while we're at it to fix the over-indenting.
Signed-off-by: Lyude Paul <lyude(a)redhat.com>
Cc: Jerry Zuo <Jerry.Zuo(a)amd.com>
Cc: <stable(a)vger.kernel.org> # v4.15+
---
.../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 32 +++++++++++++------
1 file changed, 23 insertions(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index 8a626d16e8e3..3f326a2c513b 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -699,22 +699,36 @@ static void s3_handle_mst(struct drm_device *dev, bool suspend)
{
struct amdgpu_dm_connector *aconnector;
struct drm_connector *connector;
+ struct drm_dp_mst_topology_mgr *mgr;
+ int ret;
+ bool need_hotplug = false;
drm_modeset_lock(&dev->mode_config.connection_mutex, NULL);
- list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
- aconnector = to_amdgpu_dm_connector(connector);
- if (aconnector->dc_link->type == dc_connection_mst_branch &&
- !aconnector->mst_port) {
+ list_for_each_entry(connector, &dev->mode_config.connector_list,
+ head) {
+ aconnector = to_amdgpu_dm_connector(connector);
+ if (aconnector->dc_link->type != dc_connection_mst_branch ||
+ aconnector->mst_port)
+ continue;
+
+ mgr = &aconnector->mst_mgr;
- if (suspend)
- drm_dp_mst_topology_mgr_suspend(&aconnector->mst_mgr);
- else
- drm_dp_mst_topology_mgr_resume(&aconnector->mst_mgr);
- }
+ if (suspend) {
+ drm_dp_mst_topology_mgr_suspend(mgr);
+ } else {
+ ret = drm_dp_mst_topology_mgr_resume(mgr);
+ if (ret < 0) {
+ drm_dp_mst_topology_mgr_set_mst(mgr, false);
+ need_hotplug = true;
+ }
+ }
}
drm_modeset_unlock(&dev->mode_config.connection_mutex);
+
+ if (need_hotplug)
+ drm_kms_helper_hotplug_event(dev);
}
/**
--
2.20.1
The patch
ASoC: tlv320aic32x4: Kernel OOPS while entering DAPM standby mode
has been applied to the asoc tree at
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git
All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying
to this mail.
Thanks,
Mark
>From 667e9334fa64da2273e36ce131b05ac9e47c5769 Mon Sep 17 00:00:00 2001
From: b-ak <anur.bhargav(a)gmail.com>
Date: Mon, 7 Jan 2019 22:30:22 +0530
Subject: [PATCH] ASoC: tlv320aic32x4: Kernel OOPS while entering DAPM standby
mode
During the bootup of the kernel, the DAPM bias level is in the OFF
state. As soon as the DAPM framework kicks in it pushes the codec
into STANDBY state.
The probe function doesn't prepare the clock, and STANDBY state
does a clk_disable_unprepare() without checking the previous state.
This leads to an OOPS.
Not transitioning from an OFF state to the STANDBY state fixes the
problem.
Signed-off-by: b-ak <anur.bhargav(a)gmail.com>
Signed-off-by: Mark Brown <broonie(a)kernel.org>
Cc: stable(a)vger.kernel.org
---
sound/soc/codecs/tlv320aic32x4.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/sound/soc/codecs/tlv320aic32x4.c b/sound/soc/codecs/tlv320aic32x4.c
index e2b5a11b16d1..f03195d2ab2e 100644
--- a/sound/soc/codecs/tlv320aic32x4.c
+++ b/sound/soc/codecs/tlv320aic32x4.c
@@ -822,6 +822,10 @@ static int aic32x4_set_bias_level(struct snd_soc_component *component,
case SND_SOC_BIAS_PREPARE:
break;
case SND_SOC_BIAS_STANDBY:
+ /* Initial cold start */
+ if (snd_soc_component_get_bias_level(component) == SND_SOC_BIAS_OFF)
+ break;
+
/* Switch off BCLK_N Divider */
snd_soc_component_update_bits(component, AIC32X4_BCLKN,
AIC32X4_BCLKEN, 0);
--
2.20.1
The patch
ASoC: atom: fix a missing check of snd_pcm_lib_malloc_pages
has been applied to the asoc tree at
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git
All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying
to this mail.
Thanks,
Mark
>From 44fabd8cdaaa3acb80ad2bb3b5c61ae2136af661 Mon Sep 17 00:00:00 2001
From: Kangjie Lu <kjlu(a)umn.edu>
Date: Tue, 25 Dec 2018 20:29:48 -0600
Subject: [PATCH] ASoC: atom: fix a missing check of snd_pcm_lib_malloc_pages
snd_pcm_lib_malloc_pages() may fail, so let's check its status and
return its error code upstream.
Signed-off-by: Kangjie Lu <kjlu(a)umn.edu>
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart(a)linux.intel.com>
Signed-off-by: Mark Brown <broonie(a)kernel.org>
Cc: stable(a)vger.kernel.org
---
sound/soc/intel/atom/sst-mfld-platform-pcm.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/sound/soc/intel/atom/sst-mfld-platform-pcm.c b/sound/soc/intel/atom/sst-mfld-platform-pcm.c
index afc559866095..91a2436ce952 100644
--- a/sound/soc/intel/atom/sst-mfld-platform-pcm.c
+++ b/sound/soc/intel/atom/sst-mfld-platform-pcm.c
@@ -399,7 +399,13 @@ static int sst_media_hw_params(struct snd_pcm_substream *substream,
struct snd_pcm_hw_params *params,
struct snd_soc_dai *dai)
{
- snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(params));
+ int ret;
+
+ ret =
+ snd_pcm_lib_malloc_pages(substream,
+ params_buffer_bytes(params));
+ if (ret)
+ return ret;
memset(substream->runtime->dma_area, 0, params_buffer_bytes(params));
return 0;
}
--
2.20.1
Hi,
On Wed, Jan 2, 2019 at 4:11 PM Matthias Kaehlcke <mka(a)chromium.org> wrote:
>
> With commit e16337622016 ("Bluetooth: Handle bt_accept_enqueue() socket
> atomically") lock_sock[_nested]() is used to acquire the socket lock
> before manipulating the socket. lock_sock[_nested]() may block, which
> is problematic since bt_accept_enqueue() can be called in bottom half
> context (e.g. from rfcomm_connect_ind()):
>
> [<ffffff80080d81ec>] __might_sleep+0x4c/0x80
> [<ffffff800876c7b0>] lock_sock_nested+0x24/0x58
> [<ffffff8000d7c27c>] bt_accept_enqueue+0x48/0xd4 [bluetooth]
> [<ffffff8000e67d8c>] rfcomm_connect_ind+0x190/0x218 [rfcomm]
>
> Add a parameter to bt_accept_enqueue() to indicate whether the
> function is called from BH context, and acquire the socket lock
> with bh_lock_sock_nested() if that's the case.
>
> Also adapt all callers of bt_accept_enqueue() to pass the new
> parameter:
>
> - l2cap_sock_new_connection_cb()
> - uses lock_sock() to lock the parent socket => process context
>
> - rfcomm_connect_ind()
> - acquires the parent socket lock with bh_lock_sock() => BH
> context
>
> - __sco_chan_add()
> - called from sco_chan_add(), which is called from sco_connect().
> parent is NULL, hence bt_accept_enqueue() isn't called in this
> code path and we can ignore it
> - also called from sco_conn_ready(). uses bh_lock_sock() to acquire
> the parent lock => BH context
>
> Fixes: e16337622016 ("Bluetooth: Handle bt_accept_enqueue() socket atomically")
> Signed-off-by: Matthias Kaehlcke <mka(a)chromium.org>
> ---
> Changes in v2:
> - use parameter in bt_accept_enqueue() to decide which lock to
> acquire and adapt all callers
> - updated commit message
> ---
> include/net/bluetooth/bluetooth.h | 2 +-
> net/bluetooth/af_bluetooth.c | 16 +++++++++++++---
> net/bluetooth/l2cap_sock.c | 2 +-
> net/bluetooth/rfcomm/sock.c | 2 +-
> net/bluetooth/sco.c | 2 +-
> 5 files changed, 17 insertions(+), 7 deletions(-)
This looks nice to me, thanks!
Cc: stable(a)vger.kernel.org
Reviewed-by: Douglas Anderson <dianders(a)chromium.org>
This is an automatic generated email to let you know that the following patch were queued:
Subject: media: lgdt330x: fix lock status reporting
Author: French, Nicholas A <naf(a)ou.edu>
Date: Sun Dec 9 02:11:18 2018 -0500
A typo in code cleanup commit db9c1007bc07 ("media: lgdt330x: do
some cleanups at status logic") broke the FE_HAS_LOCK reporting
for 3303 chips by inadvertently modifying the register mask.
The broken lock status is critial as it prevents video capture
cards from reporting signal strength, scanning for channels,
and capturing video.
Fix regression by reverting mask change.
Cc: stable(a)vger.kernel.org # Kernel 4.17+
Fixes: db9c1007bc07 ("media: lgdt330x: do some cleanups at status logic")
Signed-off-by: Nick French <naf(a)ou.edu>
Reviewed-by: Laurent Pinchart <laurent.pinchart(a)ideasonboard.com>
Tested-by: Adam Stylinski <kungfujesus06(a)gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung(a)kernel.org>
drivers/media/dvb-frontends/lgdt330x.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
---
diff --git a/drivers/media/dvb-frontends/lgdt330x.c b/drivers/media/dvb-frontends/lgdt330x.c
index 96807e134886..8abb1a510a81 100644
--- a/drivers/media/dvb-frontends/lgdt330x.c
+++ b/drivers/media/dvb-frontends/lgdt330x.c
@@ -783,7 +783,7 @@ static int lgdt3303_read_status(struct dvb_frontend *fe,
if ((buf[0] & 0x02) == 0x00)
*status |= FE_HAS_SYNC;
- if ((buf[0] & 0xfd) == 0x01)
+ if ((buf[0] & 0x01) == 0x01)
*status |= FE_HAS_VITERBI | FE_HAS_LOCK;
break;
default:
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>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 169113ece0f29ebe884a6cfcf57c1ace04d8a36a Mon Sep 17 00:00:00 2001
From: Will Deacon <will.deacon(a)arm.com>
Date: Thu, 3 Jan 2019 17:45:07 +0000
Subject: [PATCH] arm64: compat: Avoid sending SIGILL for unallocated syscall
numbers
The ARM Linux kernel handles the EABI syscall numbers as follows:
0 - NR_SYSCALLS-1 : Invoke syscall via syscall table
NR_SYSCALLS - 0xeffff : -ENOSYS (to be allocated in future)
0xf0000 - 0xf07ff : Private syscall or -ENOSYS if not allocated
> 0xf07ff : SIGILL
Our compat code gets this wrong and ends up sending SIGILL in response
to all syscalls greater than NR_SYSCALLS which have a value greater
than 0x7ff in the bottom 16 bits.
Fix this by defining the end of the ARM private syscall region and
checking the syscall number against that directly. Update the comment
while we're at it.
Cc: <stable(a)vger.kernel.org>
Cc: Dave Martin <Dave.Martin(a)arm.com>
Reported-by: Pi-Hsun Shih <pihsun(a)chromium.org>
Signed-off-by: Will Deacon <will.deacon(a)arm.com>
diff --git a/arch/arm64/include/asm/unistd.h b/arch/arm64/include/asm/unistd.h
index b13ca091f833..85d5c1026204 100644
--- a/arch/arm64/include/asm/unistd.h
+++ b/arch/arm64/include/asm/unistd.h
@@ -40,8 +40,9 @@
* The following SVCs are ARM private.
*/
#define __ARM_NR_COMPAT_BASE 0x0f0000
-#define __ARM_NR_compat_cacheflush (__ARM_NR_COMPAT_BASE+2)
-#define __ARM_NR_compat_set_tls (__ARM_NR_COMPAT_BASE+5)
+#define __ARM_NR_compat_cacheflush (__ARM_NR_COMPAT_BASE + 2)
+#define __ARM_NR_compat_set_tls (__ARM_NR_COMPAT_BASE + 5)
+#define __ARM_NR_COMPAT_END (__ARM_NR_COMPAT_BASE + 0x800)
#define __NR_compat_syscalls 399
#endif
diff --git a/arch/arm64/kernel/sys_compat.c b/arch/arm64/kernel/sys_compat.c
index 32653d156747..a79db4e485a6 100644
--- a/arch/arm64/kernel/sys_compat.c
+++ b/arch/arm64/kernel/sys_compat.c
@@ -102,12 +102,12 @@ long compat_arm_syscall(struct pt_regs *regs)
default:
/*
- * Calls 9f00xx..9f07ff are defined to return -ENOSYS
+ * Calls 0xf0xxx..0xf07ff are defined to return -ENOSYS
* if not implemented, rather than raising SIGILL. This
* way the calling program can gracefully determine whether
* a feature is supported.
*/
- if ((no & 0xffff) <= 0x7ff)
+ if (no < __ARM_NR_COMPAT_END)
return -ENOSYS;
break;
}
This is a partial revert of commit 5c63e407aaab ("fbdev: Convert to
using %pOFn instead of device_node.name"). This is the minimal work to
get a Mac Mini G4 back to a bootable state. The function
offb_init_palette_hacks would need to handle the case where `name` has
been set to NULL.
Cc: Rob Herring <robh(a)kernel.org>
Fixes: 5c63e407aaab ("fbdev: Convert to using %pOFn instead of device_node.name")
Cc: stable(a)vger.kernel.org # v4.19+
Signed-off-by: Mathieu Malaterre <malat(a)debian.org>
---
drivers/video/fbdev/offb.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/video/fbdev/offb.c b/drivers/video/fbdev/offb.c
index 31f769d67195..6e75851f8142 100644
--- a/drivers/video/fbdev/offb.c
+++ b/drivers/video/fbdev/offb.c
@@ -648,7 +648,7 @@ static void __init offb_init_nodriver(struct device_node *dp, int no_real_node)
/* kludge for valkyrie */
if (strcmp(dp->name, "valkyrie") == 0)
address += 0x1000;
- offb_init_fb(no_real_node ? "bootx" : NULL,
+ offb_init_fb(no_real_node ? "bootx" : dp->name,
width, height, depth, pitch, address,
foreign_endian, no_real_node ? NULL : dp);
}
--
2.19.2
This is a note to let you know that I've just added the patch titled
USB: Add USB_QUIRK_DELAY_CTRL_MSG quirk for Corsair K70 RGB
to my usb git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
in the usb-linus branch.
The patch will show up in the next release of the linux-next tree
(usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the
next -rc kernel release.
If you have any questions about this process, please let me know.
>From 3483254b89438e60f719937376c5e0ce2bc46761 Mon Sep 17 00:00:00 2001
From: Jack Stocker <jackstocker.93(a)gmail.com>
Date: Thu, 3 Jan 2019 21:56:53 +0000
Subject: USB: Add USB_QUIRK_DELAY_CTRL_MSG quirk for Corsair K70 RGB
To match the Corsair Strafe RGB, the Corsair K70 RGB also requires
USB_QUIRK_DELAY_CTRL_MSG to completely resolve boot connection issues
discussed here: https://github.com/ckb-next/ckb-next/issues/42.
Otherwise roughly 1 in 10 boots the keyboard will fail to be detected.
Patch that applied delay control quirk for Corsair Strafe RGB:
cb88a0588717 ("usb: quirks: add control message delay for 1b1c:1b20")
Previous K70 RGB patch to add delay-init quirk:
7a1646d92257 ("Add delay-init quirk for Corsair K70 RGB keyboards")
Signed-off-by: Jack Stocker <jackstocker.93(a)gmail.com>
Cc: stable <stable(a)vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/core/quirks.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
index 514c5214ddb2..8bc35d53408b 100644
--- a/drivers/usb/core/quirks.c
+++ b/drivers/usb/core/quirks.c
@@ -394,7 +394,8 @@ static const struct usb_device_id usb_quirk_list[] = {
{ USB_DEVICE(0x1a40, 0x0101), .driver_info = USB_QUIRK_HUB_SLOW_RESET },
/* Corsair K70 RGB */
- { USB_DEVICE(0x1b1c, 0x1b13), .driver_info = USB_QUIRK_DELAY_INIT },
+ { USB_DEVICE(0x1b1c, 0x1b13), .driver_info = USB_QUIRK_DELAY_INIT |
+ USB_QUIRK_DELAY_CTRL_MSG },
/* Corsair Strafe */
{ USB_DEVICE(0x1b1c, 0x1b15), .driver_info = USB_QUIRK_DELAY_INIT |
--
2.20.1
This is a note to let you know that I've just added the patch titled
usbcore: Select only first configuration for non-UAC3 compliant
to my usb git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
in the usb-linus branch.
The patch will show up in the next release of the linux-next tree
(usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the
next -rc kernel release.
If you have any questions about this process, please let me know.
>From ff2a8c532c14fd22fb26a36574d9ff199afbbe54 Mon Sep 17 00:00:00 2001
From: Saranya Gopal <saranya.gopal(a)intel.com>
Date: Sun, 6 Jan 2019 08:14:02 +0530
Subject: usbcore: Select only first configuration for non-UAC3 compliant
devices
In most of the UAC1 and UAC2 audio devices, the first
configuration is most often the best configuration.
However, with recent patch to support UAC3 configuration,
second configuration was unintentionally chosen for
some of the UAC1/2 devices that had more than one
configuration. This was because of the existing check
after the audio config check which selected any config
which had a non-vendor class. This patch fixes this issue.
Fixes: f13912d3f014 ("usbcore: Select UAC3 configuration for audio if present")
Reported-by: Con Kolivas <kernel(a)kolivas.org>
Signed-off-by: Saranya Gopal <saranya.gopal(a)intel.com>
Tested-by: Con Kolivas <kernel(a)kolivas.org>
Cc: stable <stable(a)vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/core/generic.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/drivers/usb/core/generic.c b/drivers/usb/core/generic.c
index 356b05c82dbc..f713cecc1f41 100644
--- a/drivers/usb/core/generic.c
+++ b/drivers/usb/core/generic.c
@@ -143,9 +143,12 @@ int usb_choose_configuration(struct usb_device *udev)
continue;
}
- if (i > 0 && desc && is_audio(desc) && is_uac3_config(desc)) {
- best = c;
- break;
+ if (i > 0 && desc && is_audio(desc)) {
+ if (is_uac3_config(desc)) {
+ best = c;
+ break;
+ }
+ continue;
}
/* From the remaining configs, choose the first one whose
--
2.20.1
This is a note to let you know that I've just added the patch titled
USB: storage: don't insert sane sense for SPC3+ when bad sense
to my usb git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
in the usb-linus branch.
The patch will show up in the next release of the linux-next tree
(usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the
next -rc kernel release.
If you have any questions about this process, please let me know.
>From c5603d2fdb424849360fe7e3f8c1befc97571b8c Mon Sep 17 00:00:00 2001
From: Icenowy Zheng <icenowy(a)aosc.io>
Date: Thu, 3 Jan 2019 11:26:17 +0800
Subject: USB: storage: don't insert sane sense for SPC3+ when bad sense
specified
Currently the code will set US_FL_SANE_SENSE flag unconditionally if
device claims SPC3+, however we should allow US_FL_BAD_SENSE flag to
prevent this behavior, because SMI SM3350 UFS-USB bridge controller,
which claims SPC4, will show strange behavior with 96-byte sense
(put the chip into a wrong state that cannot read/write anything).
Check the presence of US_FL_BAD_SENSE when assuming US_FL_SANE_SENSE on
SPC4+ devices.
Signed-off-by: Icenowy Zheng <icenowy(a)aosc.io>
Cc: stable <stable(a)vger.kernel.org>
Acked-by: Alan Stern <stern(a)rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/storage/scsiglue.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/drivers/usb/storage/scsiglue.c b/drivers/usb/storage/scsiglue.c
index fde2e71a6ade..a73ea495d5a7 100644
--- a/drivers/usb/storage/scsiglue.c
+++ b/drivers/usb/storage/scsiglue.c
@@ -235,8 +235,12 @@ static int slave_configure(struct scsi_device *sdev)
if (!(us->fflags & US_FL_NEEDS_CAP16))
sdev->try_rc_10_first = 1;
- /* assume SPC3 or latter devices support sense size > 18 */
- if (sdev->scsi_level > SCSI_SPC_2)
+ /*
+ * assume SPC3 or latter devices support sense size > 18
+ * unless US_FL_BAD_SENSE quirk is specified.
+ */
+ if (sdev->scsi_level > SCSI_SPC_2 &&
+ !(us->fflags & US_FL_BAD_SENSE))
us->fflags |= US_FL_SANE_SENSE;
/*
--
2.20.1
This is a note to let you know that I've just added the patch titled
USB: storage: add quirk for SMI SM3350
to my usb git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
in the usb-linus branch.
The patch will show up in the next release of the linux-next tree
(usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the
next -rc kernel release.
If you have any questions about this process, please let me know.
>From 0a99cc4b8ee83885ab9f097a3737d1ab28455ac0 Mon Sep 17 00:00:00 2001
From: Icenowy Zheng <icenowy(a)aosc.io>
Date: Thu, 3 Jan 2019 11:26:18 +0800
Subject: USB: storage: add quirk for SMI SM3350
The SMI SM3350 USB-UFS bridge controller cannot handle long sense request
correctly and will make the chip refuse to do read/write when requested
long sense.
Add a bad sense quirk for it.
Signed-off-by: Icenowy Zheng <icenowy(a)aosc.io>
Cc: stable <stable(a)vger.kernel.org>
Acked-by: Alan Stern <stern(a)rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/storage/unusual_devs.h | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/drivers/usb/storage/unusual_devs.h b/drivers/usb/storage/unusual_devs.h
index f7f83b21dc74..ea0d27a94afe 100644
--- a/drivers/usb/storage/unusual_devs.h
+++ b/drivers/usb/storage/unusual_devs.h
@@ -1265,6 +1265,18 @@ UNUSUAL_DEV( 0x090c, 0x1132, 0x0000, 0xffff,
USB_SC_DEVICE, USB_PR_DEVICE, NULL,
US_FL_FIX_CAPACITY ),
+/*
+ * Reported by Icenowy Zheng <icenowy(a)aosc.io>
+ * The SMI SM3350 USB-UFS bridge controller will enter a wrong state
+ * that do not process read/write command if a long sense is requested,
+ * so force to use 18-byte sense.
+ */
+UNUSUAL_DEV( 0x090c, 0x3350, 0x0000, 0xffff,
+ "SMI",
+ "SM3350 UFS-to-USB-Mass-Storage bridge",
+ USB_SC_DEVICE, USB_PR_DEVICE, NULL,
+ US_FL_BAD_SENSE ),
+
/*
* Reported by Paul Hartman <paul.hartman+linux(a)gmail.com>
* This card reader returns "Illegal Request, Logical Block Address
--
2.20.1
This is a note to let you know that I've just added the patch titled
usb: cdc-acm: send ZLP for Telit 3G Intel based modems
to my usb git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git
in the usb-linus branch.
The patch will show up in the next release of the linux-next tree
(usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the
next -rc kernel release.
If you have any questions about this process, please let me know.
>From 34aabf918717dd14e05051896aaecd3b16b53d95 Mon Sep 17 00:00:00 2001
From: Daniele Palmas <dnlplm(a)gmail.com>
Date: Fri, 28 Dec 2018 16:15:41 +0100
Subject: usb: cdc-acm: send ZLP for Telit 3G Intel based modems
Telit 3G Intel based modems require zero packet to be sent if
out data size is equal to the endpoint max packet size.
Signed-off-by: Daniele Palmas <dnlplm(a)gmail.com>
Cc: stable <stable(a)vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/usb/class/cdc-acm.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c
index ed8c62b2d9d1..739f8960811a 100644
--- a/drivers/usb/class/cdc-acm.c
+++ b/drivers/usb/class/cdc-acm.c
@@ -1865,6 +1865,13 @@ static const struct usb_device_id acm_ids[] = {
.driver_info = IGNORE_DEVICE,
},
+ { USB_DEVICE(0x1bc7, 0x0021), /* Telit 3G ACM only composition */
+ .driver_info = SEND_ZERO_PACKET,
+ },
+ { USB_DEVICE(0x1bc7, 0x0023), /* Telit 3G ACM + ECM composition */
+ .driver_info = SEND_ZERO_PACKET,
+ },
+
/* control interfaces without any protocol set */
{ USB_INTERFACE_INFO(USB_CLASS_COMM, USB_CDC_SUBCLASS_ACM,
USB_CDC_PROTO_NONE) },
--
2.20.1
stable-rc/linux-4.9.y build: 193 builds: 109 failed, 84 passed, 228 errors, 231 warnings (v4.9.148-71-g5799fa356b8c)
Full Build Summary: https://kernelci.org/build/stable-rc/branch/linux-4.9.y/kernel/v4.9.148-71-…
Tree: stable-rc
Branch: linux-4.9.y
Git Describe: v4.9.148-71-g5799fa356b8c
Git Commit: 5799fa356b8c6c38d641457c783f2c19730d1d01
Git URL: http://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
Built: 6 unique architectures
Build Failures Detected:
arc: arc-linux-gcc (ARCv2 ISA Linux uClibc toolchain 2017.09) 7.1.1 20170710
axs103_defconfig: FAIL
axs103_smp_defconfig: FAIL
vdk_hs38_defconfig: FAIL
vdk_hs38_smp_defconfig: FAIL
arm64: aarch64-linux-gnu-gcc (Debian 7.4.0-1) 7.4.0
defconfig: FAIL
arm: arm-linux-gnueabihf-gcc (Debian 7.4.0-1) 7.4.0
at91_dt_defconfig: FAIL
axm55xx_defconfig: FAIL
badge4_defconfig: FAIL
bcm2835_defconfig: FAIL
cerfcube_defconfig: FAIL
cm_x2xx_defconfig: FAIL
cm_x300_defconfig: FAIL
colibri_pxa300_defconfig: FAIL
davinci_all_defconfig: FAIL
dove_defconfig: FAIL
em_x270_defconfig: FAIL
ep93xx_defconfig: FAIL
eseries_pxa_defconfig: FAIL
exynos_defconfig: FAIL
ezx_defconfig: FAIL
hisi_defconfig: FAIL
imote2_defconfig: FAIL
imx_v4_v5_defconfig: FAIL
imx_v6_v7_defconfig: FAIL
iop13xx_defconfig: FAIL
iop32x_defconfig: FAIL
iop33x_defconfig: FAIL
ixp4xx_defconfig: FAIL
keystone_defconfig: FAIL
lart_defconfig: FAIL
mini2440_defconfig: FAIL
mmp2_defconfig: FAIL
moxart_defconfig: FAIL
multi_v5_defconfig: FAIL
multi_v7_defconfig: FAIL
mv78xx0_defconfig: FAIL
mvebu_v5_defconfig: FAIL
mvebu_v7_defconfig: FAIL
mxs_defconfig: FAIL
nhk8815_defconfig: FAIL
omap1_defconfig: FAIL
omap2plus_defconfig: FAIL
orion5x_defconfig: FAIL
palmz72_defconfig: FAIL
pcm027_defconfig: FAIL
pleb_defconfig: FAIL
pxa_defconfig: FAIL
qcom_defconfig: FAIL
raumfeld_defconfig: FAIL
rpc_defconfig: FAIL
s3c2410_defconfig: FAIL
s3c6400_defconfig: FAIL
sama5_defconfig: FAIL
simpad_defconfig: FAIL
socfpga_defconfig: FAIL
spear13xx_defconfig: FAIL
spear3xx_defconfig: FAIL
spear6xx_defconfig: FAIL
spitz_defconfig: FAIL
sunxi_defconfig: FAIL
tegra_defconfig: FAIL
trizeps4_defconfig: FAIL
u8500_defconfig: FAIL
vexpress_defconfig: FAIL
viper_defconfig: FAIL
vt8500_v6_v7_defconfig: FAIL
zeus_defconfig: FAIL
zx_defconfig: FAIL
mips: mips-linux-gcc (GCC) 6.3.0
bigsur_defconfig: FAIL
bmips_be_defconfig: FAIL
bmips_stb_defconfig: FAIL
capcella_defconfig: FAIL
cavium_octeon_defconfig: FAIL
cobalt_defconfig: FAIL
db1xxx_defconfig: FAIL
decstation_defconfig: FAIL
e55_defconfig: FAIL
fuloong2e_defconfig: FAIL
ip22_defconfig: FAIL
ip27_defconfig: FAIL
ip28_defconfig: FAIL
ip32_defconfig: FAIL
jazz_defconfig: FAIL
lasat_defconfig: FAIL
lemote2f_defconfig: FAIL
loongson1b_defconfig: FAIL
loongson1c_defconfig: FAIL
loongson3_defconfig: FAIL
malta_defconfig: FAIL
malta_kvm_defconfig: FAIL
malta_kvm_guest_defconfig: FAIL
malta_qemu_32r6_defconfig: FAIL
maltaaprp_defconfig: FAIL
maltasmvp_defconfig: FAIL
maltasmvp_eva_defconfig: FAIL
maltaup_defconfig: FAIL
maltaup_xpa_defconfig: FAIL
markeins_defconfig: FAIL
mips_paravirt_defconfig: FAIL
mtx1_defconfig: FAIL
nlm_xlp_defconfig: FAIL
nlm_xlr_defconfig: FAIL
pic32mzda_defconfig: FAIL
pistachio_defconfig: FAIL
qi_lb60_defconfig: FAIL
rm200_defconfig: FAIL
tb0219_defconfig: FAIL
tb0287_defconfig: FAIL
workpad_defconfig: FAIL
Errors and Warnings Detected:
arc: arc-linux-gcc (ARCv2 ISA Linux uClibc toolchain 2017.09) 7.1.1 20170710
allnoconfig: 5 warnings
axs103_defconfig: 2 errors, 19 warnings
axs103_smp_defconfig: 2 errors, 20 warnings
nsim_hs_smp_defconfig: 6 warnings
nsimosci_hs_defconfig: 8 warnings
nsimosci_hs_smp_defconfig: 9 warnings
tinyconfig: 6 warnings
vdk_hs38_defconfig: 2 errors, 20 warnings
vdk_hs38_smp_defconfig: 2 errors, 21 warnings
zebu_hs_defconfig: 5 warnings
zebu_hs_smp_defconfig: 6 warnings
arm64: aarch64-linux-gnu-gcc (Debian 7.4.0-1) 7.4.0
defconfig: 4 errors, 1 warning
arm: arm-linux-gnueabihf-gcc (Debian 7.4.0-1) 7.4.0
at91_dt_defconfig: 2 errors, 1 warning
axm55xx_defconfig: 2 errors, 1 warning
badge4_defconfig: 2 errors, 1 warning
bcm2835_defconfig: 2 errors, 1 warning
cerfcube_defconfig: 2 errors, 1 warning
cm_x2xx_defconfig: 2 errors, 1 warning
cm_x300_defconfig: 2 errors, 1 warning
colibri_pxa300_defconfig: 2 errors, 1 warning
davinci_all_defconfig: 2 errors, 1 warning
dove_defconfig: 2 errors, 1 warning
em_x270_defconfig: 2 errors, 1 warning
ep93xx_defconfig: 2 errors, 1 warning
eseries_pxa_defconfig: 2 errors, 1 warning
exynos_defconfig: 2 errors, 1 warning
ezx_defconfig: 2 errors, 1 warning
hisi_defconfig: 2 errors, 1 warning
imote2_defconfig: 2 errors, 1 warning
imx_v4_v5_defconfig: 2 errors, 1 warning
imx_v6_v7_defconfig: 2 errors, 1 warning
iop13xx_defconfig: 2 errors, 1 warning
iop32x_defconfig: 2 errors, 1 warning
iop33x_defconfig: 2 errors, 1 warning
ixp4xx_defconfig: 2 errors, 1 warning
keystone_defconfig: 2 errors, 1 warning
lart_defconfig: 2 errors, 1 warning
mini2440_defconfig: 2 errors, 1 warning
mmp2_defconfig: 2 errors, 1 warning
moxart_defconfig: 2 errors, 1 warning
multi_v5_defconfig: 2 errors, 1 warning
multi_v7_defconfig: 2 errors, 1 warning
mv78xx0_defconfig: 2 errors, 1 warning
mvebu_v5_defconfig: 2 errors, 1 warning
mvebu_v7_defconfig: 2 errors, 1 warning
mxs_defconfig: 2 errors, 1 warning
nhk8815_defconfig: 2 errors, 1 warning
omap1_defconfig: 2 errors, 1 warning
omap2plus_defconfig: 2 errors, 1 warning
orion5x_defconfig: 2 errors, 1 warning
palmz72_defconfig: 2 errors, 1 warning
pcm027_defconfig: 2 errors, 1 warning
pleb_defconfig: 2 errors, 1 warning
pxa_defconfig: 2 errors, 1 warning
qcom_defconfig: 2 errors, 1 warning
raumfeld_defconfig: 2 errors, 1 warning
rpc_defconfig: 2 errors, 1 warning
s3c2410_defconfig: 2 errors, 1 warning
s3c6400_defconfig: 2 errors, 1 warning
sama5_defconfig: 2 errors, 1 warning
simpad_defconfig: 2 errors, 1 warning
socfpga_defconfig: 2 errors, 1 warning
spear13xx_defconfig: 2 errors, 1 warning
spear3xx_defconfig: 2 errors, 1 warning
spear6xx_defconfig: 2 errors, 1 warning
spitz_defconfig: 2 errors, 1 warning
sunxi_defconfig: 2 errors, 1 warning
tegra_defconfig: 2 errors, 1 warning
trizeps4_defconfig: 2 errors, 1 warning
u8500_defconfig: 2 errors, 1 warning
vexpress_defconfig: 2 errors, 1 warning
viper_defconfig: 2 errors, 1 warning
vt8500_v6_v7_defconfig: 2 errors, 1 warning
zeus_defconfig: 2 errors, 1 warning
zx_defconfig: 2 errors, 1 warning
mips: mips-linux-gcc (GCC) 6.3.0
bigsur_defconfig: 2 errors, 1 warning
bmips_be_defconfig: 2 errors, 1 warning
bmips_stb_defconfig: 2 errors, 1 warning
capcella_defconfig: 2 errors, 1 warning
cavium_octeon_defconfig: 2 errors, 1 warning
cobalt_defconfig: 2 errors, 1 warning
db1xxx_defconfig: 2 errors, 1 warning
decstation_defconfig: 2 errors, 2 warnings
e55_defconfig: 2 errors, 1 warning
fuloong2e_defconfig: 2 errors, 1 warning
ip22_defconfig: 2 errors, 1 warning
ip27_defconfig: 4 errors, 1 warning
ip28_defconfig: 2 errors, 1 warning
ip32_defconfig: 2 errors, 1 warning
jazz_defconfig: 2 errors, 1 warning
lasat_defconfig: 2 errors, 1 warning
lemote2f_defconfig: 4 errors, 1 warning
loongson1b_defconfig: 2 errors, 1 warning
loongson1c_defconfig: 2 errors, 1 warning
loongson3_defconfig: 2 errors, 1 warning
malta_defconfig: 2 errors, 1 warning
malta_kvm_defconfig: 2 errors, 1 warning
malta_kvm_guest_defconfig: 2 errors, 1 warning
malta_qemu_32r6_defconfig: 2 errors, 1 warning
maltaaprp_defconfig: 2 errors, 1 warning
maltasmvp_defconfig: 2 errors, 1 warning
maltasmvp_eva_defconfig: 2 errors, 1 warning
maltaup_defconfig: 2 errors, 1 warning
maltaup_xpa_defconfig: 2 errors, 1 warning
markeins_defconfig: 2 errors, 1 warning
mips_paravirt_defconfig: 2 errors, 1 warning
mtx1_defconfig: 2 errors, 1 warning
nlm_xlp_defconfig: 4 errors, 1 warning
nlm_xlr_defconfig: 4 errors, 1 warning
pic32mzda_defconfig: 2 errors, 1 warning
pistachio_defconfig: 2 errors, 1 warning
qi_lb60_defconfig: 2 errors, 1 warning
rm200_defconfig: 2 errors, 1 warning
tb0219_defconfig: 2 errors, 1 warning
tb0287_defconfig: 2 errors, 1 warning
workpad_defconfig: 2 errors, 1 warning
Errors summary:
109 fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
68 fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
41 fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
5 fs/btrfs/tree-log.c:5563:11: error: 'struct inode' has no member named 'last_link_trans'
5 fs/btrfs/tree-log.c:5562:11: error: 'struct inode' has no member named 'vfs_inode'
Warnings summary:
109 cc1: some warnings being treated as errors
36 fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
12 arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
11 kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
11 include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
9 net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
9 net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
9 include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
7 warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
6 fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
5 lib/cpumask.c:211:1: warning: control reaches end of non-void function [-Wreturn-type]
4 block/cfq-iosched.c:3840:1: warning: control reaches end of non-void function [-Wreturn-type]
2 arch/arc/kernel/unwind.c:188:14: warning: 'unw_hdr_alloc' defined but not used [-Wunused-function]
1 drivers/net/ethernet/amd/declance.c:1231:2: warning: 'desc' may be used uninitialized in this function [-Wmaybe-uninitialized]
================================================================================
Detailed per-defconfig build reports:
--------------------------------------------------------------------------------
acs5k_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
acs5k_tiny_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (x86_64) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (i386) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (arm64) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (arc) — PASS, 0 errors, 5 warnings, 0 section mismatches
Warnings:
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
--------------------------------------------------------------------------------
am200epdkit_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ar7_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
aspeed_g4_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
aspeed_g5_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
assabet_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
at91_dt_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ath25_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ath79_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axm55xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
axs103_defconfig (arc) — FAIL, 2 errors, 19 warnings, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
cc1: some warnings being treated as errors
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
block/cfq-iosched.c:3840:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
axs103_smp_defconfig (arc) — FAIL, 2 errors, 20 warnings, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
cc1: some warnings being treated as errors
block/cfq-iosched.c:3840:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
lib/cpumask.c:211:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
badge4_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
bcm2835_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
bcm47xx_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm63xx_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bigsur_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
bmips_be_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
bmips_stb_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
capcella_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
cavium_octeon_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
cerfcube_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ci20_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
clps711x_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cm_x2xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
cm_x300_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
cns3420vb_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cobalt_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
colibri_pxa270_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
colibri_pxa300_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
collie_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
corgi_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
davinci_all_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
db1xxx_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
decstation_defconfig (mips) — FAIL, 2 errors, 2 warnings, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
drivers/net/ethernet/amd/declance.c:1231:2: warning: 'desc' may be used uninitialized in this function [-Wmaybe-uninitialized]
--------------------------------------------------------------------------------
defconfig (arm64) — FAIL, 4 errors, 1 warning, 0 section mismatches
Errors:
fs/btrfs/tree-log.c:5562:11: error: 'struct inode' has no member named 'vfs_inode'
fs/btrfs/tree-log.c:5563:11: error: 'struct inode' has no member named 'last_link_trans'
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
dove_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
e55_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ebsa110_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
efm32_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
em_x270_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ep93xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
eseries_pxa_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
exynos_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ezx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
footbridge_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
fuloong2e_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
gpr_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
h3600_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
h5000_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hackkit_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hisi_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
imote2_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
imx_v4_v5_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
imx_v6_v7_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
integrator_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
iop13xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
iop32x_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
iop33x_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ip22_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ip27_defconfig (mips) — FAIL, 4 errors, 1 warning, 0 section mismatches
Errors:
fs/btrfs/tree-log.c:5562:11: error: 'struct inode' has no member named 'vfs_inode'
fs/btrfs/tree-log.c:5563:11: error: 'struct inode' has no member named 'last_link_trans'
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ip28_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ip32_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ixp4xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
jazz_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
jmr3927_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
jornada720_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
keystone_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ks8695_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lart_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
lasat_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
lemote2f_defconfig (mips) — FAIL, 4 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
fs/btrfs/tree-log.c:5562:11: error: 'struct inode' has no member named 'vfs_inode'
fs/btrfs/tree-log.c:5563:11: error: 'struct inode' has no member named 'last_link_trans'
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
loongson1b_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
loongson1c_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
loongson3_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
lpc18xx_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lpc32xx_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lpd270_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lubbock_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
magician_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mainstone_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
malta_kvm_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
malta_kvm_guest_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
malta_qemu_32r6_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
maltaaprp_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
maltasmvp_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
maltasmvp_eva_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
maltaup_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
maltaup_xpa_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
markeins_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mini2440_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mips_paravirt_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mmp2_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
moxart_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mpc30x_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mps2_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
msp71xx_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mtx1_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
multi_v4t_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v5_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
multi_v7_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mv78xx0_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mvebu_v5_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mvebu_v7_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mxs_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
neponset_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
netwinder_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
netx_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nhk8815_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
nlm_xlp_defconfig (mips) — FAIL, 4 errors, 1 warning, 0 section mismatches
Errors:
fs/btrfs/tree-log.c:5562:11: error: 'struct inode' has no member named 'vfs_inode'
fs/btrfs/tree-log.c:5563:11: error: 'struct inode' has no member named 'last_link_trans'
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
nlm_xlr_defconfig (mips) — FAIL, 4 errors, 1 warning, 0 section mismatches
Errors:
fs/btrfs/tree-log.c:5562:11: error: 'struct inode' has no member named 'vfs_inode'
fs/btrfs/tree-log.c:5563:11: error: 'struct inode' has no member named 'last_link_trans'
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
nsim_hs_smp_defconfig (arc) — PASS, 0 errors, 6 warnings, 0 section mismatches
Warnings:
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
lib/cpumask.c:211:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
nsimosci_hs_defconfig (arc) — PASS, 0 errors, 8 warnings, 0 section mismatches
Warnings:
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
nsimosci_hs_smp_defconfig (arc) — PASS, 0 errors, 9 warnings, 0 section mismatches
Warnings:
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
lib/cpumask.c:211:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
nuc910_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nuc950_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nuc960_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omap1_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
omap2plus_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
orion5x_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
palmz72_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
pcm027_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
pic32mzda_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
pistachio_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
pleb_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
pnx8335_stb225_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
prima2_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa168_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa255-idp_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa3xx_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa910_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
qcom_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
qi_lb60_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
raumfeld_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
rb532_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rbtx49xx_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
realview_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rm200_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
rpc_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
rt305x_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
s3c2410_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
s3c6400_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
s5pv210_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sama5_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
sb1250_swarm_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
shannon_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
shmobile_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
simpad_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
socfpga_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
spear13xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
spear3xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
spear6xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
spitz_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
stm32_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sunxi_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
tb0219_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
tb0226_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0287_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
tct_hammer_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tegra_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
tinyconfig (arm64) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (i386) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (x86_64) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (arc) — PASS, 0 errors, 6 warnings, 0 section mismatches
Warnings:
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
--------------------------------------------------------------------------------
trizeps4_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
u300_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
u8500_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
vdk_hs38_defconfig (arc) — FAIL, 2 errors, 20 warnings, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
arch/arc/kernel/unwind.c:188:14: warning: 'unw_hdr_alloc' defined but not used [-Wunused-function]
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
block/cfq-iosched.c:3840:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
cc1: some warnings being treated as errors
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
vdk_hs38_smp_defconfig (arc) — FAIL, 2 errors, 21 warnings, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
arch/arc/kernel/unwind.c:188:14: warning: 'unw_hdr_alloc' defined but not used [-Wunused-function]
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
cc1: some warnings being treated as errors
block/cfq-iosched.c:3840:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
lib/cpumask.c:211:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
versatile_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vexpress_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
vf610m4_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
viper_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
vt8500_v6_v7_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
workpad_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
xcep_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
xilfpga_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
xway_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
zebu_hs_defconfig (arc) — PASS, 0 errors, 5 warnings, 0 section mismatches
Warnings:
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
zebu_hs_smp_defconfig (arc) — PASS, 0 errors, 6 warnings, 0 section mismatches
Warnings:
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
lib/cpumask.c:211:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
zeus_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
zx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
---
For more info write to <info(a)kernelci.org>
The patch below does not apply to the 4.9-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 41bd60676923822de1df2c50b3f9a10171f4338a Mon Sep 17 00:00:00 2001
From: Filipe Manana <fdmanana(a)suse.com>
Date: Wed, 28 Nov 2018 14:54:28 +0000
Subject: [PATCH] Btrfs: fix fsync of files with multiple hard links in new
directories
The log tree has a long standing problem that when a file is fsync'ed we
only check for new ancestors, created in the current transaction, by
following only the hard link for which the fsync was issued. We follow the
ancestors using the VFS' dget_parent() API. This means that if we create a
new link for a file in a directory that is new (or in an any other new
ancestor directory) and then fsync the file using an old hard link, we end
up not logging the new ancestor, and on log replay that new hard link and
ancestor do not exist. In some cases, involving renames, the file will not
exist at all.
Example:
mkfs.btrfs -f /dev/sdb
mount /dev/sdb /mnt
mkdir /mnt/A
touch /mnt/foo
ln /mnt/foo /mnt/A/bar
xfs_io -c fsync /mnt/foo
<power failure>
In this example after log replay only the hard link named 'foo' exists
and directory A does not exist, which is unexpected. In other major linux
filesystems, such as ext4, xfs and f2fs for example, both hard links exist
and so does directory A after mounting again the filesystem.
Checking if any new ancestors are new and need to be logged was added in
2009 by commit 12fcfd22fe5b ("Btrfs: tree logging unlink/rename fixes"),
however only for the ancestors of the hard link (dentry) for which the
fsync was issued, instead of checking for all ancestors for all of the
inode's hard links.
So fix this by tracking the id of the last transaction where a hard link
was created for an inode and then on fsync fallback to a full transaction
commit when an inode has more than one hard link and at least one new hard
link was created in the current transaction. This is the simplest solution
since this is not a common use case (adding frequently hard links for
which there's an ancestor created in the current transaction and then
fsync the file). In case it ever becomes a common use case, a solution
that consists of iterating the fs/subvol btree for each hard link and
check if any ancestor is new, could be implemented.
This solves many unexpected scenarios reported by Jayashree Mohan and
Vijay Chidambaram, and for which there is a new test case for fstests
under review.
Fixes: 12fcfd22fe5b ("Btrfs: tree logging unlink/rename fixes")
CC: stable(a)vger.kernel.org # 4.4+
Reported-by: Vijay Chidambaram <vvijay03(a)gmail.com>
Reported-by: Jayashree Mohan <jayashree2912(a)gmail.com>
Signed-off-by: Filipe Manana <fdmanana(a)suse.com>
Signed-off-by: David Sterba <dsterba(a)suse.com>
diff --git a/fs/btrfs/btrfs_inode.h b/fs/btrfs/btrfs_inode.h
index fc25607304f2..6f5d07415dab 100644
--- a/fs/btrfs/btrfs_inode.h
+++ b/fs/btrfs/btrfs_inode.h
@@ -147,6 +147,12 @@ struct btrfs_inode {
*/
u64 last_unlink_trans;
+ /*
+ * Track the transaction id of the last transaction used to create a
+ * hard link for the inode. This is used by the log tree (fsync).
+ */
+ u64 last_link_trans;
+
/*
* Number of bytes outstanding that are going to need csums. This is
* used in ENOSPC accounting.
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index d54bdef16d8d..b4129d9072ec 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -3658,6 +3658,21 @@ static int btrfs_read_locked_inode(struct inode *inode,
* inode is not a directory, logging its parent unnecessarily.
*/
BTRFS_I(inode)->last_unlink_trans = BTRFS_I(inode)->last_trans;
+ /*
+ * Similar reasoning for last_link_trans, needs to be set otherwise
+ * for a case like the following:
+ *
+ * mkdir A
+ * touch foo
+ * ln foo A/bar
+ * echo 2 > /proc/sys/vm/drop_caches
+ * fsync foo
+ * <power failure>
+ *
+ * Would result in link bar and directory A not existing after the power
+ * failure.
+ */
+ BTRFS_I(inode)->last_link_trans = BTRFS_I(inode)->last_trans;
path->slots[0]++;
if (inode->i_nlink != 1 ||
@@ -6597,6 +6612,7 @@ static int btrfs_link(struct dentry *old_dentry, struct inode *dir,
if (err)
goto fail;
}
+ BTRFS_I(inode)->last_link_trans = trans->transid;
d_instantiate(dentry, inode);
ret = btrfs_log_new_name(trans, BTRFS_I(inode), NULL, parent,
true, NULL);
@@ -9123,6 +9139,7 @@ struct inode *btrfs_alloc_inode(struct super_block *sb)
ei->index_cnt = (u64)-1;
ei->dir_index = 0;
ei->last_unlink_trans = 0;
+ ei->last_link_trans = 0;
ei->last_log_commit = 0;
spin_lock_init(&ei->lock);
diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c
index 013d0abcd46b..5baad9bebc62 100644
--- a/fs/btrfs/tree-log.c
+++ b/fs/btrfs/tree-log.c
@@ -5758,6 +5758,22 @@ static int btrfs_log_inode_parent(struct btrfs_trans_handle *trans,
goto end_trans;
}
+ /*
+ * If a new hard link was added to the inode in the current transaction
+ * and its link count is now greater than 1, we need to fallback to a
+ * transaction commit, otherwise we can end up not logging all its new
+ * parents for all the hard links. Here just from the dentry used to
+ * fsync, we can not visit the ancestor inodes for all the other hard
+ * links to figure out if any is new, so we fallback to a transaction
+ * commit (instead of adding a lot of complexity of scanning a btree,
+ * since this scenario is not a common use case).
+ */
+ if (inode->vfs_inode.i_nlink > 1 &&
+ inode->last_link_trans > last_committed) {
+ ret = -EMLINK;
+ goto end_trans;
+ }
+
while (1) {
if (!parent || d_really_is_negative(parent) || sb != parent->d_sb)
break;
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>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 18f2c4fcebf2582f96cbd5f2238f4f354a0e4847 Mon Sep 17 00:00:00 2001
From: Theodore Ts'o <tytso(a)mit.edu>
Date: Wed, 19 Dec 2018 14:36:58 -0500
Subject: [PATCH] ext4: check for shutdown and r/o file system in
ext4_write_inode()
If the file system has been shut down or is read-only, then
ext4_write_inode() needs to bail out early.
Also use jbd2_complete_transaction() instead of ext4_force_commit() so
we only force a commit if it is needed.
Signed-off-by: Theodore Ts'o <tytso(a)mit.edu>
Cc: stable(a)kernel.org
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
index 664b434ba836..9affabd07682 100644
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -5400,9 +5400,13 @@ int ext4_write_inode(struct inode *inode, struct writeback_control *wbc)
{
int err;
- if (WARN_ON_ONCE(current->flags & PF_MEMALLOC))
+ if (WARN_ON_ONCE(current->flags & PF_MEMALLOC) ||
+ sb_rdonly(inode->i_sb))
return 0;
+ if (unlikely(ext4_forced_shutdown(EXT4_SB(inode->i_sb))))
+ return -EIO;
+
if (EXT4_SB(inode->i_sb)->s_journal) {
if (ext4_journal_current_handle()) {
jbd_debug(1, "called recursively, non-PF_MEMALLOC!\n");
@@ -5418,7 +5422,8 @@ int ext4_write_inode(struct inode *inode, struct writeback_control *wbc)
if (wbc->sync_mode != WB_SYNC_ALL || wbc->for_sync)
return 0;
- err = ext4_force_commit(inode->i_sb);
+ err = jbd2_complete_transaction(EXT4_SB(inode->i_sb)->s_journal,
+ EXT4_I(inode)->i_sync_tid);
} else {
struct ext4_iloc iloc;
The patch below does not apply to the 4.9-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 18f2c4fcebf2582f96cbd5f2238f4f354a0e4847 Mon Sep 17 00:00:00 2001
From: Theodore Ts'o <tytso(a)mit.edu>
Date: Wed, 19 Dec 2018 14:36:58 -0500
Subject: [PATCH] ext4: check for shutdown and r/o file system in
ext4_write_inode()
If the file system has been shut down or is read-only, then
ext4_write_inode() needs to bail out early.
Also use jbd2_complete_transaction() instead of ext4_force_commit() so
we only force a commit if it is needed.
Signed-off-by: Theodore Ts'o <tytso(a)mit.edu>
Cc: stable(a)kernel.org
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
index 664b434ba836..9affabd07682 100644
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -5400,9 +5400,13 @@ int ext4_write_inode(struct inode *inode, struct writeback_control *wbc)
{
int err;
- if (WARN_ON_ONCE(current->flags & PF_MEMALLOC))
+ if (WARN_ON_ONCE(current->flags & PF_MEMALLOC) ||
+ sb_rdonly(inode->i_sb))
return 0;
+ if (unlikely(ext4_forced_shutdown(EXT4_SB(inode->i_sb))))
+ return -EIO;
+
if (EXT4_SB(inode->i_sb)->s_journal) {
if (ext4_journal_current_handle()) {
jbd_debug(1, "called recursively, non-PF_MEMALLOC!\n");
@@ -5418,7 +5422,8 @@ int ext4_write_inode(struct inode *inode, struct writeback_control *wbc)
if (wbc->sync_mode != WB_SYNC_ALL || wbc->for_sync)
return 0;
- err = ext4_force_commit(inode->i_sb);
+ err = jbd2_complete_transaction(EXT4_SB(inode->i_sb)->s_journal,
+ EXT4_I(inode)->i_sync_tid);
} else {
struct ext4_iloc iloc;
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>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 0568e82dbe2510fc1fa664f58e5c997d3f1e649e Mon Sep 17 00:00:00 2001
From: Josef Bacik <jbacik(a)fb.com>
Date: Fri, 30 Nov 2018 11:52:14 -0500
Subject: [PATCH] btrfs: run delayed items before dropping the snapshot
With my delayed refs patches in place we started seeing a large amount
of aborts in __btrfs_free_extent:
BTRFS error (device sdb1): unable to find ref byte nr 91947008 parent 0 root 35964 owner 1 offset 0
Call Trace:
? btrfs_merge_delayed_refs+0xaf/0x340
__btrfs_run_delayed_refs+0x6ea/0xfc0
? btrfs_set_path_blocking+0x31/0x60
btrfs_run_delayed_refs+0xeb/0x180
btrfs_commit_transaction+0x179/0x7f0
? btrfs_check_space_for_delayed_refs+0x30/0x50
? should_end_transaction.isra.19+0xe/0x40
btrfs_drop_snapshot+0x41c/0x7c0
btrfs_clean_one_deleted_snapshot+0xb5/0xd0
cleaner_kthread+0xf6/0x120
kthread+0xf8/0x130
? btree_invalidatepage+0x90/0x90
? kthread_bind+0x10/0x10
ret_from_fork+0x35/0x40
This was because btrfs_drop_snapshot depends on the root not being
modified while it's dropping the snapshot. It will unlock the root node
(and really every node) as it walks down the tree, only to re-lock it
when it needs to do something. This is a problem because if we modify
the tree we could cow a block in our path, which frees our reference to
that block. Then once we get back to that shared block we'll free our
reference to it again, and get ENOENT when trying to lookup our extent
reference to that block in __btrfs_free_extent.
This is ultimately happening because we have delayed items left to be
processed for our deleted snapshot _after_ all of the inodes are closed
for the snapshot. We only run the delayed inode item if we're deleting
the inode, and even then we do not run the delayed insertions or delayed
removals. These can be run at any point after our final inode does its
last iput, which is what triggers the snapshot deletion. We can end up
with the snapshot deletion happening and then have the delayed items run
on that file system, resulting in the above problem.
This problem has existed forever, however my patches made it much easier
to hit as I wake up the cleaner much more often to deal with delayed
iputs, which made us more likely to start the snapshot dropping work
before the transaction commits, which is when the delayed items would
generally be run. Before, generally speaking, we would run the delayed
items, commit the transaction, and wakeup the cleaner thread to start
deleting snapshots, which means we were less likely to hit this problem.
You could still hit it if you had multiple snapshots to be deleted and
ended up with lots of delayed items, but it was definitely harder.
Fix for now by simply running all the delayed items before starting to
drop the snapshot. We could make this smarter in the future by making
the delayed items per-root, and then simply drop any delayed items for
roots that we are going to delete. But for now just a quick and easy
solution is the safest.
CC: stable(a)vger.kernel.org # 4.4+
Reviewed-by: Filipe Manana <fdmanana(a)suse.com>
Signed-off-by: Josef Bacik <josef(a)toxicpanda.com>
Signed-off-by: David Sterba <dsterba(a)suse.com>
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index de21e0c93eb6..8a9ce33dfdbc 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -9272,6 +9272,10 @@ int btrfs_drop_snapshot(struct btrfs_root *root,
goto out_free;
}
+ err = btrfs_run_delayed_items(trans);
+ if (err)
+ goto out_end_trans;
+
if (block_rsv)
trans->block_rsv = block_rsv;
The patch below does not apply to the 4.9-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 0568e82dbe2510fc1fa664f58e5c997d3f1e649e Mon Sep 17 00:00:00 2001
From: Josef Bacik <jbacik(a)fb.com>
Date: Fri, 30 Nov 2018 11:52:14 -0500
Subject: [PATCH] btrfs: run delayed items before dropping the snapshot
With my delayed refs patches in place we started seeing a large amount
of aborts in __btrfs_free_extent:
BTRFS error (device sdb1): unable to find ref byte nr 91947008 parent 0 root 35964 owner 1 offset 0
Call Trace:
? btrfs_merge_delayed_refs+0xaf/0x340
__btrfs_run_delayed_refs+0x6ea/0xfc0
? btrfs_set_path_blocking+0x31/0x60
btrfs_run_delayed_refs+0xeb/0x180
btrfs_commit_transaction+0x179/0x7f0
? btrfs_check_space_for_delayed_refs+0x30/0x50
? should_end_transaction.isra.19+0xe/0x40
btrfs_drop_snapshot+0x41c/0x7c0
btrfs_clean_one_deleted_snapshot+0xb5/0xd0
cleaner_kthread+0xf6/0x120
kthread+0xf8/0x130
? btree_invalidatepage+0x90/0x90
? kthread_bind+0x10/0x10
ret_from_fork+0x35/0x40
This was because btrfs_drop_snapshot depends on the root not being
modified while it's dropping the snapshot. It will unlock the root node
(and really every node) as it walks down the tree, only to re-lock it
when it needs to do something. This is a problem because if we modify
the tree we could cow a block in our path, which frees our reference to
that block. Then once we get back to that shared block we'll free our
reference to it again, and get ENOENT when trying to lookup our extent
reference to that block in __btrfs_free_extent.
This is ultimately happening because we have delayed items left to be
processed for our deleted snapshot _after_ all of the inodes are closed
for the snapshot. We only run the delayed inode item if we're deleting
the inode, and even then we do not run the delayed insertions or delayed
removals. These can be run at any point after our final inode does its
last iput, which is what triggers the snapshot deletion. We can end up
with the snapshot deletion happening and then have the delayed items run
on that file system, resulting in the above problem.
This problem has existed forever, however my patches made it much easier
to hit as I wake up the cleaner much more often to deal with delayed
iputs, which made us more likely to start the snapshot dropping work
before the transaction commits, which is when the delayed items would
generally be run. Before, generally speaking, we would run the delayed
items, commit the transaction, and wakeup the cleaner thread to start
deleting snapshots, which means we were less likely to hit this problem.
You could still hit it if you had multiple snapshots to be deleted and
ended up with lots of delayed items, but it was definitely harder.
Fix for now by simply running all the delayed items before starting to
drop the snapshot. We could make this smarter in the future by making
the delayed items per-root, and then simply drop any delayed items for
roots that we are going to delete. But for now just a quick and easy
solution is the safest.
CC: stable(a)vger.kernel.org # 4.4+
Reviewed-by: Filipe Manana <fdmanana(a)suse.com>
Signed-off-by: Josef Bacik <josef(a)toxicpanda.com>
Signed-off-by: David Sterba <dsterba(a)suse.com>
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index de21e0c93eb6..8a9ce33dfdbc 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -9272,6 +9272,10 @@ int btrfs_drop_snapshot(struct btrfs_root *root,
goto out_free;
}
+ err = btrfs_run_delayed_items(trans);
+ if (err)
+ goto out_end_trans;
+
if (block_rsv)
trans->block_rsv = block_rsv;
In commit 1a0c10ed7b media: dvb-usb-v2: stop using coherent memory for URBs
incorrectly adds URB_FREE_BUFFER after every urb transfer.
It cannot use this flag because it reconfigures the URBs accordingly
to suit connected devices. In doing a call to usb_free_urb is made and
invertedly frees the buffers.
The stream buffer should remain constant while driver is up.
Signed-off-by: Malcolm Priestley <tvboxspy(a)gmail.com>
CC: stable(a)vger.kernel.org # v4.18+
---
v3 change commit message to the actual cause
drivers/media/usb/dvb-usb-v2/usb_urb.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/media/usb/dvb-usb-v2/usb_urb.c b/drivers/media/usb/dvb-usb-v2/usb_urb.c
index 024c751eb165..2ad2ddeaff51 100644
--- a/drivers/media/usb/dvb-usb-v2/usb_urb.c
+++ b/drivers/media/usb/dvb-usb-v2/usb_urb.c
@@ -155,7 +155,6 @@ static int usb_urb_alloc_bulk_urbs(struct usb_data_stream *stream)
stream->props.u.bulk.buffersize,
usb_urb_complete, stream);
- stream->urb_list[i]->transfer_flags = URB_FREE_BUFFER;
stream->urbs_initialized++;
}
return 0;
@@ -186,7 +185,7 @@ static int usb_urb_alloc_isoc_urbs(struct usb_data_stream *stream)
urb->complete = usb_urb_complete;
urb->pipe = usb_rcvisocpipe(stream->udev,
stream->props.endpoint);
- urb->transfer_flags = URB_ISO_ASAP | URB_FREE_BUFFER;
+ urb->transfer_flags = URB_ISO_ASAP;
urb->interval = stream->props.u.isoc.interval;
urb->number_of_packets = stream->props.u.isoc.framesperurb;
urb->transfer_buffer_length = stream->props.u.isoc.framesize *
@@ -210,7 +209,7 @@ static int usb_free_stream_buffers(struct usb_data_stream *stream)
if (stream->state & USB_STATE_URB_BUF) {
while (stream->buf_num) {
stream->buf_num--;
- stream->buf_list[stream->buf_num] = NULL;
+ kfree(stream->buf_list[stream->buf_num]);
}
}
--
2.19.1
This is a note to let you know that I've just added the patch titled
staging: rtl8188eu: Fix module loading from tasklet for WEP
to my staging git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git
in the staging-linus branch.
The patch will show up in the next release of the linux-next tree
(usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the
next -rc kernel release.
If you have any questions about this process, please let me know.
>From 7775665aadc48a562051834a73519129bf717d73 Mon Sep 17 00:00:00 2001
From: Larry Finger <Larry.Finger(a)lwfinger.net>
Date: Wed, 2 Jan 2019 20:12:47 -0600
Subject: staging: rtl8188eu: Fix module loading from tasklet for WEP
encryption
Commit 2b2ea09e74a5 ("staging:r8188eu: Use lib80211 to decrypt WEP-frames")
causes scheduling while atomic bugs followed by a hard freeze whenever
the driver tries to connect to a WEP-encrypted network. Experimentation
showed that the freezes were eliminated when module lib80211 was
preloaded, which can be forced by calling lib80211_get_crypto_ops()
directly rather than indirectly through try_then_request_module().
With this change, no BUG messages are logged.
Fixes: 2b2ea09e74a5 ("staging:r8188eu: Use lib80211 to decrypt WEP-frames")
Cc: Stable <stable(a)vger.kernel.org> # v4.17+
Cc: Michael Straube <straube.linux(a)gmail.com>
Cc: Ivan Safonov <insafonov(a)gmail.com>
Signed-off-by: Larry Finger <Larry.Finger(a)lwfinger.net>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/staging/rtl8188eu/core/rtw_security.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/staging/rtl8188eu/core/rtw_security.c b/drivers/staging/rtl8188eu/core/rtw_security.c
index dbb84e00077f..2f90f60f1681 100644
--- a/drivers/staging/rtl8188eu/core/rtw_security.c
+++ b/drivers/staging/rtl8188eu/core/rtw_security.c
@@ -154,7 +154,7 @@ void rtw_wep_encrypt(struct adapter *padapter, u8 *pxmitframe)
pframe = ((struct xmit_frame *)pxmitframe)->buf_addr + hw_hdr_offset;
- crypto_ops = try_then_request_module(lib80211_get_crypto_ops("WEP"), "lib80211_crypt_wep");
+ crypto_ops = lib80211_get_crypto_ops("WEP");
if (!crypto_ops)
return;
@@ -210,7 +210,7 @@ int rtw_wep_decrypt(struct adapter *padapter, u8 *precvframe)
void *crypto_private = NULL;
int status = _SUCCESS;
const int keyindex = prxattrib->key_index;
- struct lib80211_crypto_ops *crypto_ops = try_then_request_module(lib80211_get_crypto_ops("WEP"), "lib80211_crypt_wep");
+ struct lib80211_crypto_ops *crypto_ops = lib80211_get_crypto_ops("WEP");
char iv[4], icv[4];
if (!crypto_ops) {
--
2.20.1
This is a note to let you know that I've just added the patch titled
staging: rtl8188eu: Fix module loading from tasklet for CCMP
to my staging git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git
in the staging-linus branch.
The patch will show up in the next release of the linux-next tree
(usually sometime within the next 24 hours during the week.)
The patch will hopefully also be merged in Linus's tree for the
next -rc kernel release.
If you have any questions about this process, please let me know.
>From 84cad97a717f5749a0236abd5ce68da582ea074f Mon Sep 17 00:00:00 2001
From: Larry Finger <Larry.Finger(a)lwfinger.net>
Date: Wed, 2 Jan 2019 20:12:46 -0600
Subject: staging: rtl8188eu: Fix module loading from tasklet for CCMP
encryption
Commit 6bd082af7e36 ("staging:r8188eu: use lib80211 CCMP decrypt")
causes scheduling while atomic bugs followed by a hard freeze whenever
the driver tries to connect to a CCMP-encrypted network. Experimentation
showed that the freezes were eliminated when module lib80211 was
preloaded, which can be forced by calling lib80211_get_crypto_ops()
directly rather than indirectly through try_then_request_module().
With this change, no BUG messages are logged.
Fixes: 6bd082af7e36 ("staging:r8188eu: use lib80211 CCMP decrypt")
Cc: Stable <stable(a)vger.kernel.org> # v4.17+
Reported-and-tested-by: Michael Straube <straube.linux(a)gmail.com>
Cc: Ivan Safonov <insafonov(a)gmail.com>
Signed-off-by: Larry Finger <Larry.Finger(a)lwfinger.net>
Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
drivers/staging/rtl8188eu/core/rtw_security.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/rtl8188eu/core/rtw_security.c b/drivers/staging/rtl8188eu/core/rtw_security.c
index 364d6ea14bf8..dbb84e00077f 100644
--- a/drivers/staging/rtl8188eu/core/rtw_security.c
+++ b/drivers/staging/rtl8188eu/core/rtw_security.c
@@ -1291,7 +1291,7 @@ u32 rtw_aes_decrypt(struct adapter *padapter, u8 *precvframe)
struct sk_buff *skb = ((struct recv_frame *)precvframe)->pkt;
void *crypto_private = NULL;
u8 *key, *pframe = skb->data;
- struct lib80211_crypto_ops *crypto_ops = try_then_request_module(lib80211_get_crypto_ops("CCMP"), "lib80211_crypt_ccmp");
+ struct lib80211_crypto_ops *crypto_ops = lib80211_get_crypto_ops("CCMP");
struct security_priv *psecuritypriv = &padapter->securitypriv;
char iv[8], icv[8];
--
2.20.1
Originally, cns3xxx used it's own functions for mapping, reading and writing registers.
Commit 802b7c06adc7 ("ARM: cns3xxx: Convert PCI to use generic config accessors")
removed the internal PCI config write function in favor of the generic one:
cns3xxx_pci_write_config() --> pci_generic_config_write()
cns3xxx_pci_write_config() expected aligned addresses, being produced by cns3xxx_pci_map_bus()
while the generic one pci_generic_config_write() actually expects the real address
as both the function and hardware are capable of byte-aligned writes.
This currently leads to pci_generic_config_write() writing
to the wrong registers on some ocasions.
First issue seen due to this:
- driver ath9k gets loaded
- The driver wants to write value 0xA8 to register PCI_LATENCY_TIMER, located at 0x0D
- cns3xxx_pci_map_bus() aligns the address to 0x0C
- pci_generic_config_write() effectively writes 0xA8 into register 0x0C (CACHE_LINE_SIZE)
This seems to cause some slight instability when certain PCI devices are used.
Another issue example caused by this this is the PCI bus numbering,
where the primary bus is higher than the secondary, which is impossible.
Before:
00:00.0 PCI bridge: Cavium, Inc. Device 3400 (rev 01) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0, IRQ 255
Bus: primary=02, secondary=01, subordinate=ff, sec-latency=0
After fix:
00:00.0 PCI bridge: Cavium, Inc. Device 3400 (rev 01) (prog-if 00 [Normal decode])
Flags: bus master, fast devsel, latency 0, IRQ 255
Bus: primary=00, secondary=01, subordinate=02, sec-latency=0
And very likely some more ..
Fix all by omitting the alignment being done in the mapping function.
Fixes: 802b7c06adc7 ("ARM: cns3xxx: Convert PCI to use generic config accessors")
Signed-off-by: Koen Vandeputte <koen.vandeputte(a)ncentric.com>
CC: Arnd Bergmann <arnd(a)arndb.de>
CC: Bjorn Helgaas <bhelgaas(a)google.com>
CC: Krzysztof Halasa <khalasa(a)piap.pl>
CC: Olof Johansson <olof(a)lixom.net>
CC: Robin Leblon <robin.leblon(a)ncentric.com>
CC: Rob Herring <robh(a)kernel.org>
CC: Russell King <linux(a)armlinux.org.uk>
CC: Tim Harvey <tharvey(a)gateworks.com>
CC: stable(a)vger.kernel.org # v4.0+
---
arch/arm/mach-cns3xxx/pcie.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/mach-cns3xxx/pcie.c b/arch/arm/mach-cns3xxx/pcie.c
index 318394ed5c7a..5e11ad3164e0 100644
--- a/arch/arm/mach-cns3xxx/pcie.c
+++ b/arch/arm/mach-cns3xxx/pcie.c
@@ -83,7 +83,7 @@ static void __iomem *cns3xxx_pci_map_bus(struct pci_bus *bus,
} else /* remote PCI bus */
base = cnspci->cfg1_regs + ((busno & 0xf) << 20);
- return base + (where & 0xffc) + (devfn << 12);
+ return base + where + (devfn << 12);
}
static int cns3xxx_pci_read_config(struct pci_bus *bus, unsigned int devfn,
--
2.17.1
From: Oliver Hartkopp <socketcan(a)hartkopp.net>
Muyu Yu provided a POC where user root with CAP_NET_ADMIN can create a CAN
frame modification rule that makes the data length code a higher value than
the available CAN frame data size. In combination with a configured checksum
calculation where the result is stored relatively to the end of the data
(e.g. cgw_csum_xor_rel) the tail of the skb (e.g. frag_list pointer in
skb_shared_info) can be rewritten which finally can cause a system crash.
Michael Kubecek suggested to drop frames that have a DLC exceeding the
available space after the modification process and provided a patch that can
handle CAN FD frames too. Within this patch we also limit the length for the
checksum calculations to the maximum of Classic CAN data length (8).
CAN frames that are dropped by these additional checks are counted with the
CGW_DELETED counter which indicates misconfigurations in can-gw rules.
This fixes CVE-2019-3701.
Reported-by: Muyu Yu <ieatmuttonchuan(a)gmail.com>
Reported-by: Marcus Meissner <meissner(a)suse.de>
Suggested-by: Michal Kubecek <mkubecek(a)suse.cz>
Tested-by: Muyu Yu <ieatmuttonchuan(a)gmail.com>
Tested-by: Oliver Hartkopp <socketcan(a)hartkopp.net>
Signed-off-by: Oliver Hartkopp <socketcan(a)hartkopp.net>
Cc: linux-stable <stable(a)vger.kernel.org> # >= v3.2
Signed-off-by: Marc Kleine-Budde <mkl(a)pengutronix.de>
---
Hello,
I've removed the else from dlc length check. Keeps the code and the
patch more readable.
Marc
Changes since v2:
- add newline after goto (Tnx, Oliver)
Changes since v1:
- remove else from dlc length check.
net/can/gw.c | 30 +++++++++++++++++++++++++++---
1 file changed, 27 insertions(+), 3 deletions(-)
diff --git a/net/can/gw.c b/net/can/gw.c
index faa3da88a127..53859346dc9a 100644
--- a/net/can/gw.c
+++ b/net/can/gw.c
@@ -416,13 +416,29 @@ static void can_can_gw_rcv(struct sk_buff *skb, void *data)
while (modidx < MAX_MODFUNCTIONS && gwj->mod.modfunc[modidx])
(*gwj->mod.modfunc[modidx++])(cf, &gwj->mod);
- /* check for checksum updates when the CAN frame has been modified */
+ /* Has the CAN frame been modified? */
if (modidx) {
- if (gwj->mod.csumfunc.crc8)
+ /* get available space for the processed CAN frame type */
+ int max_len = nskb->len - offsetof(struct can_frame, data);
+
+ /* dlc may have changed, make sure it fits to the CAN frame */
+ if (cf->can_dlc > max_len)
+ goto out_delete;
+
+ /* check for checksum updates in classic CAN length only */
+ if (gwj->mod.csumfunc.crc8) {
+ if (cf->can_dlc > 8)
+ goto out_delete;
+
(*gwj->mod.csumfunc.crc8)(cf, &gwj->mod.csum.crc8);
+ }
+
+ if (gwj->mod.csumfunc.xor) {
+ if (cf->can_dlc > 8)
+ goto out_delete;
- if (gwj->mod.csumfunc.xor)
(*gwj->mod.csumfunc.xor)(cf, &gwj->mod.csum.xor);
+ }
}
/* clear the skb timestamp if not configured the other way */
@@ -434,6 +450,14 @@ static void can_can_gw_rcv(struct sk_buff *skb, void *data)
gwj->dropped_frames++;
else
gwj->handled_frames++;
+
+ return;
+
+ out_delete:
+ /* delete frame due to misconfiguration */
+ gwj->deleted_frames++;
+ kfree_skb(nskb);
+ return;
}
static inline int cgw_register_filter(struct net *net, struct cgw_job *gwj)
--
2.20.1
Commit '3d035f580699 ("drivers/char/hpet.c: allow user controlled mmap for
user processes")' introduced a new kernel command line parameter hpet_mmap,
that is required to expose the memory map of the HPET registers to
user-space. Unfortunately the kernel command line parameter 'hpet_mmap' is
broken and never takes effect due to missing '=' character in the __setup()
code of hpet_mmap_enable.
Before this patch:
dmesg output with the kernel command line parameter hpet_mmap=1
[ 0.204152] HPET mmap disabled
dmesg output with the kernel command line parameter hpet_mmap=0
[ 0.204192] HPET mmap disabled
After this patch:
dmesg output with the kernel command line parameter hpet_mmap=1
[ 0.203945] HPET mmap enabled
dmesg output with the kernel command line parameter hpet_mmap=0
[ 0.204652] HPET mmap disabled
Fixes: 3d035f580699 ("drivers/char/hpet.c: allow user controlled mmap for user processes")
Signed-off-by: Buland Singh <bsingh(a)redhat.com>
---
drivers/char/hpet.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/char/hpet.c b/drivers/char/hpet.c
index 4a22b4b41aef..9bffcd37cc7b 100644
--- a/drivers/char/hpet.c
+++ b/drivers/char/hpet.c
@@ -377,7 +377,7 @@ static __init int hpet_mmap_enable(char *str)
pr_info("HPET mmap %s\n", hpet_mmap_enabled ? "enabled" : "disabled");
return 1;
}
-__setup("hpet_mmap", hpet_mmap_enable);
+__setup("hpet_mmap=", hpet_mmap_enable);
static int hpet_mmap(struct file *file, struct vm_area_struct *vma)
{
--
2.19.1
stable-rc/linux-4.9.y build: 193 builds: 109 failed, 84 passed, 233 errors, 231 warnings (v4.9.148-72-g1f2b850ae45e)
Full Build Summary: https://kernelci.org/build/stable-rc/branch/linux-4.9.y/kernel/v4.9.148-72-…
Tree: stable-rc
Branch: linux-4.9.y
Git Describe: v4.9.148-72-g1f2b850ae45e
Git Commit: 1f2b850ae45ebdd8f3019fa1774e35accecd5734
Git URL: http://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
Built: 6 unique architectures
Build Failures Detected:
arc: arc-linux-gcc (ARCv2 ISA Linux uClibc toolchain 2017.09) 7.1.1 20170710
axs103_defconfig: FAIL
axs103_smp_defconfig: FAIL
vdk_hs38_defconfig: FAIL
vdk_hs38_smp_defconfig: FAIL
arm64: aarch64-linux-gnu-gcc (Debian 7.4.0-1) 7.4.0
defconfig: FAIL
arm: arm-linux-gnueabihf-gcc (Debian 7.4.0-1) 7.4.0
at91_dt_defconfig: FAIL
axm55xx_defconfig: FAIL
badge4_defconfig: FAIL
bcm2835_defconfig: FAIL
cerfcube_defconfig: FAIL
cm_x2xx_defconfig: FAIL
cm_x300_defconfig: FAIL
colibri_pxa300_defconfig: FAIL
davinci_all_defconfig: FAIL
dove_defconfig: FAIL
em_x270_defconfig: FAIL
ep93xx_defconfig: FAIL
eseries_pxa_defconfig: FAIL
exynos_defconfig: FAIL
ezx_defconfig: FAIL
hisi_defconfig: FAIL
imote2_defconfig: FAIL
imx_v4_v5_defconfig: FAIL
imx_v6_v7_defconfig: FAIL
iop13xx_defconfig: FAIL
iop32x_defconfig: FAIL
iop33x_defconfig: FAIL
ixp4xx_defconfig: FAIL
keystone_defconfig: FAIL
lart_defconfig: FAIL
mini2440_defconfig: FAIL
mmp2_defconfig: FAIL
moxart_defconfig: FAIL
multi_v5_defconfig: FAIL
multi_v7_defconfig: FAIL
mv78xx0_defconfig: FAIL
mvebu_v5_defconfig: FAIL
mvebu_v7_defconfig: FAIL
mxs_defconfig: FAIL
nhk8815_defconfig: FAIL
omap1_defconfig: FAIL
omap2plus_defconfig: FAIL
orion5x_defconfig: FAIL
palmz72_defconfig: FAIL
pcm027_defconfig: FAIL
pleb_defconfig: FAIL
pxa_defconfig: FAIL
qcom_defconfig: FAIL
raumfeld_defconfig: FAIL
rpc_defconfig: FAIL
s3c2410_defconfig: FAIL
s3c6400_defconfig: FAIL
sama5_defconfig: FAIL
simpad_defconfig: FAIL
socfpga_defconfig: FAIL
spear13xx_defconfig: FAIL
spear3xx_defconfig: FAIL
spear6xx_defconfig: FAIL
spitz_defconfig: FAIL
sunxi_defconfig: FAIL
tegra_defconfig: FAIL
trizeps4_defconfig: FAIL
u8500_defconfig: FAIL
vexpress_defconfig: FAIL
viper_defconfig: FAIL
vt8500_v6_v7_defconfig: FAIL
zeus_defconfig: FAIL
zx_defconfig: FAIL
mips: mips-linux-gcc (GCC) 6.3.0
bigsur_defconfig: FAIL
bmips_be_defconfig: FAIL
bmips_stb_defconfig: FAIL
capcella_defconfig: FAIL
cavium_octeon_defconfig: FAIL
cobalt_defconfig: FAIL
db1xxx_defconfig: FAIL
decstation_defconfig: FAIL
e55_defconfig: FAIL
fuloong2e_defconfig: FAIL
ip22_defconfig: FAIL
ip27_defconfig: FAIL
ip28_defconfig: FAIL
ip32_defconfig: FAIL
jazz_defconfig: FAIL
lasat_defconfig: FAIL
lemote2f_defconfig: FAIL
loongson1b_defconfig: FAIL
loongson1c_defconfig: FAIL
loongson3_defconfig: FAIL
malta_defconfig: FAIL
malta_kvm_defconfig: FAIL
malta_kvm_guest_defconfig: FAIL
malta_qemu_32r6_defconfig: FAIL
maltaaprp_defconfig: FAIL
maltasmvp_defconfig: FAIL
maltasmvp_eva_defconfig: FAIL
maltaup_defconfig: FAIL
maltaup_xpa_defconfig: FAIL
markeins_defconfig: FAIL
mips_paravirt_defconfig: FAIL
mtx1_defconfig: FAIL
nlm_xlp_defconfig: FAIL
nlm_xlr_defconfig: FAIL
pic32mzda_defconfig: FAIL
pistachio_defconfig: FAIL
qi_lb60_defconfig: FAIL
rm200_defconfig: FAIL
tb0219_defconfig: FAIL
tb0287_defconfig: FAIL
workpad_defconfig: FAIL
Errors and Warnings Detected:
arc: arc-linux-gcc (ARCv2 ISA Linux uClibc toolchain 2017.09) 7.1.1 20170710
allnoconfig: 5 warnings
axs103_defconfig: 2 errors, 19 warnings
axs103_smp_defconfig: 2 errors, 20 warnings
nsim_hs_smp_defconfig: 6 warnings
nsimosci_hs_defconfig: 8 warnings
nsimosci_hs_smp_defconfig: 9 warnings
tinyconfig: 6 warnings
vdk_hs38_defconfig: 2 errors, 20 warnings
vdk_hs38_smp_defconfig: 2 errors, 21 warnings
zebu_hs_defconfig: 5 warnings
zebu_hs_smp_defconfig: 6 warnings
arm64: aarch64-linux-gnu-gcc (Debian 7.4.0-1) 7.4.0
defconfig: 5 errors, 1 warning
arm: arm-linux-gnueabihf-gcc (Debian 7.4.0-1) 7.4.0
at91_dt_defconfig: 2 errors, 1 warning
axm55xx_defconfig: 2 errors, 1 warning
badge4_defconfig: 2 errors, 1 warning
bcm2835_defconfig: 2 errors, 1 warning
cerfcube_defconfig: 2 errors, 1 warning
cm_x2xx_defconfig: 2 errors, 1 warning
cm_x300_defconfig: 2 errors, 1 warning
colibri_pxa300_defconfig: 2 errors, 1 warning
davinci_all_defconfig: 2 errors, 1 warning
dove_defconfig: 2 errors, 1 warning
em_x270_defconfig: 2 errors, 1 warning
ep93xx_defconfig: 2 errors, 1 warning
eseries_pxa_defconfig: 2 errors, 1 warning
exynos_defconfig: 2 errors, 1 warning
ezx_defconfig: 2 errors, 1 warning
hisi_defconfig: 2 errors, 1 warning
imote2_defconfig: 2 errors, 1 warning
imx_v4_v5_defconfig: 2 errors, 1 warning
imx_v6_v7_defconfig: 2 errors, 1 warning
iop13xx_defconfig: 2 errors, 1 warning
iop32x_defconfig: 2 errors, 1 warning
iop33x_defconfig: 2 errors, 1 warning
ixp4xx_defconfig: 2 errors, 1 warning
keystone_defconfig: 2 errors, 1 warning
lart_defconfig: 2 errors, 1 warning
mini2440_defconfig: 2 errors, 1 warning
mmp2_defconfig: 2 errors, 1 warning
moxart_defconfig: 2 errors, 1 warning
multi_v5_defconfig: 2 errors, 1 warning
multi_v7_defconfig: 2 errors, 1 warning
mv78xx0_defconfig: 2 errors, 1 warning
mvebu_v5_defconfig: 2 errors, 1 warning
mvebu_v7_defconfig: 2 errors, 1 warning
mxs_defconfig: 2 errors, 1 warning
nhk8815_defconfig: 2 errors, 1 warning
omap1_defconfig: 2 errors, 1 warning
omap2plus_defconfig: 2 errors, 1 warning
orion5x_defconfig: 2 errors, 1 warning
palmz72_defconfig: 2 errors, 1 warning
pcm027_defconfig: 2 errors, 1 warning
pleb_defconfig: 2 errors, 1 warning
pxa_defconfig: 2 errors, 1 warning
qcom_defconfig: 2 errors, 1 warning
raumfeld_defconfig: 2 errors, 1 warning
rpc_defconfig: 2 errors, 1 warning
s3c2410_defconfig: 2 errors, 1 warning
s3c6400_defconfig: 2 errors, 1 warning
sama5_defconfig: 2 errors, 1 warning
simpad_defconfig: 2 errors, 1 warning
socfpga_defconfig: 2 errors, 1 warning
spear13xx_defconfig: 2 errors, 1 warning
spear3xx_defconfig: 2 errors, 1 warning
spear6xx_defconfig: 2 errors, 1 warning
spitz_defconfig: 2 errors, 1 warning
sunxi_defconfig: 2 errors, 1 warning
tegra_defconfig: 2 errors, 1 warning
trizeps4_defconfig: 2 errors, 1 warning
u8500_defconfig: 2 errors, 1 warning
vexpress_defconfig: 2 errors, 1 warning
viper_defconfig: 2 errors, 1 warning
vt8500_v6_v7_defconfig: 2 errors, 1 warning
zeus_defconfig: 2 errors, 1 warning
zx_defconfig: 2 errors, 1 warning
mips: mips-linux-gcc (GCC) 6.3.0
bigsur_defconfig: 2 errors, 1 warning
bmips_be_defconfig: 2 errors, 1 warning
bmips_stb_defconfig: 2 errors, 1 warning
capcella_defconfig: 2 errors, 1 warning
cavium_octeon_defconfig: 2 errors, 1 warning
cobalt_defconfig: 2 errors, 1 warning
db1xxx_defconfig: 2 errors, 1 warning
decstation_defconfig: 2 errors, 2 warnings
e55_defconfig: 2 errors, 1 warning
fuloong2e_defconfig: 2 errors, 1 warning
ip22_defconfig: 2 errors, 1 warning
ip27_defconfig: 5 errors, 1 warning
ip28_defconfig: 2 errors, 1 warning
ip32_defconfig: 2 errors, 1 warning
jazz_defconfig: 2 errors, 1 warning
lasat_defconfig: 2 errors, 1 warning
lemote2f_defconfig: 5 errors, 1 warning
loongson1b_defconfig: 2 errors, 1 warning
loongson1c_defconfig: 2 errors, 1 warning
loongson3_defconfig: 2 errors, 1 warning
malta_defconfig: 2 errors, 1 warning
malta_kvm_defconfig: 2 errors, 1 warning
malta_kvm_guest_defconfig: 2 errors, 1 warning
malta_qemu_32r6_defconfig: 2 errors, 1 warning
maltaaprp_defconfig: 2 errors, 1 warning
maltasmvp_defconfig: 2 errors, 1 warning
maltasmvp_eva_defconfig: 2 errors, 1 warning
maltaup_defconfig: 2 errors, 1 warning
maltaup_xpa_defconfig: 2 errors, 1 warning
markeins_defconfig: 2 errors, 1 warning
mips_paravirt_defconfig: 2 errors, 1 warning
mtx1_defconfig: 2 errors, 1 warning
nlm_xlp_defconfig: 5 errors, 1 warning
nlm_xlr_defconfig: 5 errors, 1 warning
pic32mzda_defconfig: 2 errors, 1 warning
pistachio_defconfig: 2 errors, 1 warning
qi_lb60_defconfig: 2 errors, 1 warning
rm200_defconfig: 2 errors, 1 warning
tb0219_defconfig: 2 errors, 1 warning
tb0287_defconfig: 2 errors, 1 warning
workpad_defconfig: 2 errors, 1 warning
Errors summary:
109 fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
68 fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
41 fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
5 fs/btrfs/tree-log.c:5563:11: error: 'struct inode' has no member named 'last_link_trans'
5 fs/btrfs/tree-log.c:5562:11: error: 'struct inode' has no member named 'vfs_inode'
5 fs/btrfs/extent-tree.c:9255:8: error: too few arguments to function 'btrfs_run_delayed_items'
Warnings summary:
109 cc1: some warnings being treated as errors
36 fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
12 arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
11 kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
11 include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
9 net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
9 net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
9 include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
7 warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
6 fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
5 lib/cpumask.c:211:1: warning: control reaches end of non-void function [-Wreturn-type]
4 block/cfq-iosched.c:3840:1: warning: control reaches end of non-void function [-Wreturn-type]
2 arch/arc/kernel/unwind.c:188:14: warning: 'unw_hdr_alloc' defined but not used [-Wunused-function]
1 drivers/net/ethernet/amd/declance.c:1231:2: warning: 'desc' may be used uninitialized in this function [-Wmaybe-uninitialized]
================================================================================
Detailed per-defconfig build reports:
--------------------------------------------------------------------------------
acs5k_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
acs5k_tiny_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (arm64) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (x86_64) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (i386) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (arc) — PASS, 0 errors, 5 warnings, 0 section mismatches
Warnings:
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
--------------------------------------------------------------------------------
am200epdkit_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ar7_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
aspeed_g4_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
aspeed_g5_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
assabet_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
at91_dt_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ath25_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ath79_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axm55xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
axs103_defconfig (arc) — FAIL, 2 errors, 19 warnings, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
block/cfq-iosched.c:3840:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
cc1: some warnings being treated as errors
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
axs103_smp_defconfig (arc) — FAIL, 2 errors, 20 warnings, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
cc1: some warnings being treated as errors
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
block/cfq-iosched.c:3840:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
lib/cpumask.c:211:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
badge4_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
bcm2835_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
bcm47xx_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm63xx_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bigsur_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
bmips_be_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
bmips_stb_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
capcella_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
cavium_octeon_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
cerfcube_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ci20_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
clps711x_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cm_x2xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
cm_x300_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
cns3420vb_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cobalt_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
colibri_pxa270_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
colibri_pxa300_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
collie_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
corgi_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
davinci_all_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
db1xxx_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
decstation_defconfig (mips) — FAIL, 2 errors, 2 warnings, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
drivers/net/ethernet/amd/declance.c:1231:2: warning: 'desc' may be used uninitialized in this function [-Wmaybe-uninitialized]
--------------------------------------------------------------------------------
defconfig (arm64) — FAIL, 5 errors, 1 warning, 0 section mismatches
Errors:
fs/btrfs/extent-tree.c:9255:8: error: too few arguments to function 'btrfs_run_delayed_items'
fs/btrfs/tree-log.c:5562:11: error: 'struct inode' has no member named 'vfs_inode'
fs/btrfs/tree-log.c:5563:11: error: 'struct inode' has no member named 'last_link_trans'
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
dove_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
e55_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ebsa110_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
efm32_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
em_x270_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ep93xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
eseries_pxa_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
exynos_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ezx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
footbridge_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
fuloong2e_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
gpr_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
h3600_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
h5000_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hackkit_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hisi_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
imote2_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
imx_v4_v5_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
imx_v6_v7_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
integrator_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
iop13xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
iop32x_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
iop33x_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ip22_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ip27_defconfig (mips) — FAIL, 5 errors, 1 warning, 0 section mismatches
Errors:
fs/btrfs/extent-tree.c:9255:8: error: too few arguments to function 'btrfs_run_delayed_items'
fs/btrfs/tree-log.c:5562:11: error: 'struct inode' has no member named 'vfs_inode'
fs/btrfs/tree-log.c:5563:11: error: 'struct inode' has no member named 'last_link_trans'
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ip28_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ip32_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ixp4xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
jazz_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
jmr3927_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
jornada720_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
keystone_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
ks8695_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lart_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
lasat_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
lemote2f_defconfig (mips) — FAIL, 5 errors, 1 warning, 0 section mismatches
Errors:
fs/btrfs/extent-tree.c:9255:8: error: too few arguments to function 'btrfs_run_delayed_items'
fs/btrfs/tree-log.c:5562:11: error: 'struct inode' has no member named 'vfs_inode'
fs/btrfs/tree-log.c:5563:11: error: 'struct inode' has no member named 'last_link_trans'
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
loongson1b_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
loongson1c_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
loongson3_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
lpc18xx_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lpc32xx_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lpd270_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lubbock_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
magician_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mainstone_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
malta_kvm_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
malta_kvm_guest_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
malta_qemu_32r6_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
maltaaprp_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
maltasmvp_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
maltasmvp_eva_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
maltaup_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
maltaup_xpa_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
markeins_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mini2440_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mips_paravirt_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mmp2_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
moxart_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mpc30x_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mps2_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
msp71xx_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mtx1_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
multi_v4t_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v5_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
multi_v7_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mv78xx0_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mvebu_v5_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mvebu_v7_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
mxs_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
neponset_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
netwinder_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
netx_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nhk8815_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
nlm_xlp_defconfig (mips) — FAIL, 5 errors, 1 warning, 0 section mismatches
Errors:
fs/btrfs/extent-tree.c:9255:8: error: too few arguments to function 'btrfs_run_delayed_items'
fs/btrfs/tree-log.c:5562:11: error: 'struct inode' has no member named 'vfs_inode'
fs/btrfs/tree-log.c:5563:11: error: 'struct inode' has no member named 'last_link_trans'
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
nlm_xlr_defconfig (mips) — FAIL, 5 errors, 1 warning, 0 section mismatches
Errors:
fs/btrfs/extent-tree.c:9255:8: error: too few arguments to function 'btrfs_run_delayed_items'
fs/btrfs/tree-log.c:5562:11: error: 'struct inode' has no member named 'vfs_inode'
fs/btrfs/tree-log.c:5563:11: error: 'struct inode' has no member named 'last_link_trans'
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
nsim_hs_smp_defconfig (arc) — PASS, 0 errors, 6 warnings, 0 section mismatches
Warnings:
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
lib/cpumask.c:211:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
nsimosci_hs_defconfig (arc) — PASS, 0 errors, 8 warnings, 0 section mismatches
Warnings:
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
nsimosci_hs_smp_defconfig (arc) — PASS, 0 errors, 9 warnings, 0 section mismatches
Warnings:
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
lib/cpumask.c:211:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
nuc910_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nuc950_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nuc960_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omap1_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
omap2plus_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
orion5x_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
palmz72_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
pcm027_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
pic32mzda_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
pistachio_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
pleb_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
pnx8335_stb225_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
prima2_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa168_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa255-idp_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa3xx_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa910_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
qcom_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
qi_lb60_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
raumfeld_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
rb532_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rbtx49xx_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
realview_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rm200_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
rpc_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
rt305x_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
s3c2410_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
s3c6400_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
s5pv210_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sama5_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
sb1250_swarm_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
shannon_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
shmobile_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
simpad_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
socfpga_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
spear13xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
spear3xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
spear6xx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
spitz_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
stm32_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sunxi_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
tb0219_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
tb0226_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0287_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
tct_hammer_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tegra_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
tinyconfig (x86_64) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (arm64) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (i386) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (arc) — PASS, 0 errors, 6 warnings, 0 section mismatches
Warnings:
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
warning: (ARC) selects HAVE_FUTEX_CMPXCHG which has unmet direct dependencies (FUTEX)
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
--------------------------------------------------------------------------------
trizeps4_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
u300_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
u8500_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
vdk_hs38_defconfig (arc) — FAIL, 2 errors, 20 warnings, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
arch/arc/kernel/unwind.c:188:14: warning: 'unw_hdr_alloc' defined but not used [-Wunused-function]
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
cc1: some warnings being treated as errors
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
block/cfq-iosched.c:3840:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
vdk_hs38_smp_defconfig (arc) — FAIL, 2 errors, 21 warnings, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
arch/arc/kernel/unwind.c:188:14: warning: 'unw_hdr_alloc' defined but not used [-Wunused-function]
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
cc1: some warnings being treated as errors
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
block/cfq-iosched.c:3840:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
fs/ext4/ext4_jbd2.h:430:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
arch/arc/include/asm/cmpxchg.h:95:29: warning: value computed is not used [-Wunused-value]
fs/posix_acl.c:34:1: warning: control reaches end of non-void function [-Wreturn-type]
lib/cpumask.c:211:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
versatile_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vexpress_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
vf610m4_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
viper_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
vt8500_v6_v7_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
workpad_defconfig (mips) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown' [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
xcep_defconfig (arm) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
xilfpga_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
xway_defconfig (mips) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
zebu_hs_defconfig (arc) — PASS, 0 errors, 5 warnings, 0 section mismatches
Warnings:
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
zebu_hs_smp_defconfig (arc) — PASS, 0 errors, 6 warnings, 0 section mismatches
Warnings:
include/linux/kernel.h:740:16: warning: comparison of distinct pointer types lacks a cast
kernel/sched/core.c:3294:1: warning: control reaches end of non-void function [-Wreturn-type]
net/core/ethtool.c:300:1: warning: control reaches end of non-void function [-Wreturn-type]
net/ipv4/tcp_input.c:4325:49: warning: array subscript is above array bounds [-Warray-bounds]
lib/cpumask.c:211:1: warning: control reaches end of non-void function [-Wreturn-type]
include/linux/sunrpc/svc_xprt.h:178:1: warning: control reaches end of non-void function [-Wreturn-type]
--------------------------------------------------------------------------------
zeus_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
--------------------------------------------------------------------------------
zx_defconfig (arm) — FAIL, 2 errors, 1 warning, 0 section mismatches
Errors:
fs/ext4/inode.c:5018:6: error: implicit declaration of function 'sb_rdonly' [-Werror=implicit-function-declaration]
fs/ext4/inode.c:5021:15: error: implicit declaration of function 'ext4_forced_shutdown'; did you mean 'ext4_force_commit'? [-Werror=implicit-function-declaration]
Warnings:
cc1: some warnings being treated as errors
---
For more info write to <info(a)kernelci.org>
Hi Greg,
Kindly review and consider following mm/OOM upstream fixes for stable 4.9.y.
88ed365ea227 ("mm: don't steal highatomic pageblock")
04c8716f7b00 ("mm: try to exhaust highatomic reserve before the OOM")
29fac03bef72 ("mm: make unreserve highatomic functions reliable")
The original 4 patch series is archived here
https://lkml.org/lkml/2016/10/12/77 for review.
One of the patch from this series:
4855e4a7f29d ("mm: prevent double decrease of nr_reserved_highatomic")
has already been picked up for 4.9.y and 4.4.y.
I ran into these fixes in one of the msm-4.9(android) trees.
Cherry-picked and build tested on Linux 4.9.148 for
ARCH=arm/arm64 defconfig.
Only the first patch from this series can be applied cleanly on
v4.4.y, while others fail to apply cleanly due to OOM rework done in
v4.7 release cycle, 0a0337e0d1d1 ("mm, oom: rework oom detection").
Plus I don't see this series backported to v4.4 in any of the
msm-4.4(android) trees either. So I'm skipping it for v4.4.y.
Regards,
Amit Pundir
Delay the drm_modeset_acquire_init() until after we check for an
allocation failure so that we can return immediately upon error without
having to unwind.
WARNING: lock held when returning to user space!
4.20.0+ #174 Not tainted
------------------------------------------------
syz-executor556/8153 is leaving the kernel with locks still held!
1 lock held by syz-executor556/8153:
#0: 000000005100c85c (crtc_ww_class_acquire){+.+.}, at:
set_property_atomic+0xb3/0x330 drivers/gpu/drm/drm_mode_object.c:462
Reported-by: syzbot+6ea337c427f5083ebdf2(a)syzkaller.appspotmail.com
Fixes: 144a7999d633 ("drm: Handle properties in the core for atomic drivers")
Signed-off-by: Chris Wilson <chris(a)chris-wilson.co.uk>
Cc: Daniel Vetter <daniel.vetter(a)ffwll.ch>
Cc: Maarten Lankhorst <maarten.lankhorst(a)linux.intel.com>
Cc: Sean Paul <sean(a)poorly.run>
Cc: David Airlie <airlied(a)linux.ie>
Cc: <stable(a)vger.kernel.org> # v4.14+
---
drivers/gpu/drm/drm_mode_object.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/drm_mode_object.c b/drivers/gpu/drm/drm_mode_object.c
index bb1dd46496cd..a9005c1c2384 100644
--- a/drivers/gpu/drm/drm_mode_object.c
+++ b/drivers/gpu/drm/drm_mode_object.c
@@ -459,12 +459,13 @@ static int set_property_atomic(struct drm_mode_object *obj,
struct drm_modeset_acquire_ctx ctx;
int ret;
- drm_modeset_acquire_init(&ctx, 0);
-
state = drm_atomic_state_alloc(dev);
if (!state)
return -ENOMEM;
+
+ drm_modeset_acquire_init(&ctx, 0);
state->acquire_ctx = &ctx;
+
retry:
if (prop == state->dev->mode_config.dpms_property) {
if (obj->type != DRM_MODE_OBJECT_CONNECTOR) {
--
2.20.1
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>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 53290432145a8eb143fe29e06e9c1465d43dc723 Mon Sep 17 00:00:00 2001
From: Will Deacon <will.deacon(a)arm.com>
Date: Thu, 3 Jan 2019 18:00:39 +0000
Subject: [PATCH] arm64: compat: Don't pull syscall number from regs in
arm_compat_syscall
The syscall number may have been changed by a tracer, so we should pass
the actual number in from the caller instead of pulling it from the
saved r7 value directly.
Cc: <stable(a)vger.kernel.org>
Cc: Pi-Hsun Shih <pihsun(a)chromium.org>
Reviewed-by: Dave Martin <Dave.Martin(a)arm.com>
Signed-off-by: Will Deacon <will.deacon(a)arm.com>
diff --git a/arch/arm64/kernel/sys_compat.c b/arch/arm64/kernel/sys_compat.c
index a79db4e485a6..bc348ab3dd6b 100644
--- a/arch/arm64/kernel/sys_compat.c
+++ b/arch/arm64/kernel/sys_compat.c
@@ -66,12 +66,11 @@ do_compat_cache_op(unsigned long start, unsigned long end, int flags)
/*
* Handle all unrecognised system calls.
*/
-long compat_arm_syscall(struct pt_regs *regs)
+long compat_arm_syscall(struct pt_regs *regs, int scno)
{
- unsigned int no = regs->regs[7];
void __user *addr;
- switch (no) {
+ switch (scno) {
/*
* Flush a region from virtual address 'r0' to virtual address 'r1'
* _exclusive_. There is no alignment requirement on either address;
@@ -107,7 +106,7 @@ long compat_arm_syscall(struct pt_regs *regs)
* way the calling program can gracefully determine whether
* a feature is supported.
*/
- if (no < __ARM_NR_COMPAT_END)
+ if (scno < __ARM_NR_COMPAT_END)
return -ENOSYS;
break;
}
@@ -116,6 +115,6 @@ long compat_arm_syscall(struct pt_regs *regs)
(compat_thumb_mode(regs) ? 2 : 4);
arm64_notify_die("Oops - bad compat syscall(2)", regs,
- SIGILL, ILL_ILLTRP, addr, no);
+ SIGILL, ILL_ILLTRP, addr, scno);
return 0;
}
diff --git a/arch/arm64/kernel/syscall.c b/arch/arm64/kernel/syscall.c
index 032d22312881..5610ac01c1ec 100644
--- a/arch/arm64/kernel/syscall.c
+++ b/arch/arm64/kernel/syscall.c
@@ -13,16 +13,15 @@
#include <asm/thread_info.h>
#include <asm/unistd.h>
-long compat_arm_syscall(struct pt_regs *regs);
-
+long compat_arm_syscall(struct pt_regs *regs, int scno);
long sys_ni_syscall(void);
-asmlinkage long do_ni_syscall(struct pt_regs *regs)
+static long do_ni_syscall(struct pt_regs *regs, int scno)
{
#ifdef CONFIG_COMPAT
long ret;
if (is_compat_task()) {
- ret = compat_arm_syscall(regs);
+ ret = compat_arm_syscall(regs, scno);
if (ret != -ENOSYS)
return ret;
}
@@ -47,7 +46,7 @@ static void invoke_syscall(struct pt_regs *regs, unsigned int scno,
syscall_fn = syscall_table[array_index_nospec(scno, sc_nr)];
ret = __invoke_syscall(regs, syscall_fn);
} else {
- ret = do_ni_syscall(regs);
+ ret = do_ni_syscall(regs, scno);
}
regs->regs[0] = ret;
The patch below does not apply to the 4.4-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 169113ece0f29ebe884a6cfcf57c1ace04d8a36a Mon Sep 17 00:00:00 2001
From: Will Deacon <will.deacon(a)arm.com>
Date: Thu, 3 Jan 2019 17:45:07 +0000
Subject: [PATCH] arm64: compat: Avoid sending SIGILL for unallocated syscall
numbers
The ARM Linux kernel handles the EABI syscall numbers as follows:
0 - NR_SYSCALLS-1 : Invoke syscall via syscall table
NR_SYSCALLS - 0xeffff : -ENOSYS (to be allocated in future)
0xf0000 - 0xf07ff : Private syscall or -ENOSYS if not allocated
> 0xf07ff : SIGILL
Our compat code gets this wrong and ends up sending SIGILL in response
to all syscalls greater than NR_SYSCALLS which have a value greater
than 0x7ff in the bottom 16 bits.
Fix this by defining the end of the ARM private syscall region and
checking the syscall number against that directly. Update the comment
while we're at it.
Cc: <stable(a)vger.kernel.org>
Cc: Dave Martin <Dave.Martin(a)arm.com>
Reported-by: Pi-Hsun Shih <pihsun(a)chromium.org>
Signed-off-by: Will Deacon <will.deacon(a)arm.com>
diff --git a/arch/arm64/include/asm/unistd.h b/arch/arm64/include/asm/unistd.h
index b13ca091f833..85d5c1026204 100644
--- a/arch/arm64/include/asm/unistd.h
+++ b/arch/arm64/include/asm/unistd.h
@@ -40,8 +40,9 @@
* The following SVCs are ARM private.
*/
#define __ARM_NR_COMPAT_BASE 0x0f0000
-#define __ARM_NR_compat_cacheflush (__ARM_NR_COMPAT_BASE+2)
-#define __ARM_NR_compat_set_tls (__ARM_NR_COMPAT_BASE+5)
+#define __ARM_NR_compat_cacheflush (__ARM_NR_COMPAT_BASE + 2)
+#define __ARM_NR_compat_set_tls (__ARM_NR_COMPAT_BASE + 5)
+#define __ARM_NR_COMPAT_END (__ARM_NR_COMPAT_BASE + 0x800)
#define __NR_compat_syscalls 399
#endif
diff --git a/arch/arm64/kernel/sys_compat.c b/arch/arm64/kernel/sys_compat.c
index 32653d156747..a79db4e485a6 100644
--- a/arch/arm64/kernel/sys_compat.c
+++ b/arch/arm64/kernel/sys_compat.c
@@ -102,12 +102,12 @@ long compat_arm_syscall(struct pt_regs *regs)
default:
/*
- * Calls 9f00xx..9f07ff are defined to return -ENOSYS
+ * Calls 0xf0xxx..0xf07ff are defined to return -ENOSYS
* if not implemented, rather than raising SIGILL. This
* way the calling program can gracefully determine whether
* a feature is supported.
*/
- if ((no & 0xffff) <= 0x7ff)
+ if (no < __ARM_NR_COMPAT_END)
return -ENOSYS;
break;
}
The patch below does not apply to the 4.9-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 169113ece0f29ebe884a6cfcf57c1ace04d8a36a Mon Sep 17 00:00:00 2001
From: Will Deacon <will.deacon(a)arm.com>
Date: Thu, 3 Jan 2019 17:45:07 +0000
Subject: [PATCH] arm64: compat: Avoid sending SIGILL for unallocated syscall
numbers
The ARM Linux kernel handles the EABI syscall numbers as follows:
0 - NR_SYSCALLS-1 : Invoke syscall via syscall table
NR_SYSCALLS - 0xeffff : -ENOSYS (to be allocated in future)
0xf0000 - 0xf07ff : Private syscall or -ENOSYS if not allocated
> 0xf07ff : SIGILL
Our compat code gets this wrong and ends up sending SIGILL in response
to all syscalls greater than NR_SYSCALLS which have a value greater
than 0x7ff in the bottom 16 bits.
Fix this by defining the end of the ARM private syscall region and
checking the syscall number against that directly. Update the comment
while we're at it.
Cc: <stable(a)vger.kernel.org>
Cc: Dave Martin <Dave.Martin(a)arm.com>
Reported-by: Pi-Hsun Shih <pihsun(a)chromium.org>
Signed-off-by: Will Deacon <will.deacon(a)arm.com>
diff --git a/arch/arm64/include/asm/unistd.h b/arch/arm64/include/asm/unistd.h
index b13ca091f833..85d5c1026204 100644
--- a/arch/arm64/include/asm/unistd.h
+++ b/arch/arm64/include/asm/unistd.h
@@ -40,8 +40,9 @@
* The following SVCs are ARM private.
*/
#define __ARM_NR_COMPAT_BASE 0x0f0000
-#define __ARM_NR_compat_cacheflush (__ARM_NR_COMPAT_BASE+2)
-#define __ARM_NR_compat_set_tls (__ARM_NR_COMPAT_BASE+5)
+#define __ARM_NR_compat_cacheflush (__ARM_NR_COMPAT_BASE + 2)
+#define __ARM_NR_compat_set_tls (__ARM_NR_COMPAT_BASE + 5)
+#define __ARM_NR_COMPAT_END (__ARM_NR_COMPAT_BASE + 0x800)
#define __NR_compat_syscalls 399
#endif
diff --git a/arch/arm64/kernel/sys_compat.c b/arch/arm64/kernel/sys_compat.c
index 32653d156747..a79db4e485a6 100644
--- a/arch/arm64/kernel/sys_compat.c
+++ b/arch/arm64/kernel/sys_compat.c
@@ -102,12 +102,12 @@ long compat_arm_syscall(struct pt_regs *regs)
default:
/*
- * Calls 9f00xx..9f07ff are defined to return -ENOSYS
+ * Calls 0xf0xxx..0xf07ff are defined to return -ENOSYS
* if not implemented, rather than raising SIGILL. This
* way the calling program can gracefully determine whether
* a feature is supported.
*/
- if ((no & 0xffff) <= 0x7ff)
+ if (no < __ARM_NR_COMPAT_END)
return -ENOSYS;
break;
}
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>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From fb544d1ca65a89f7a3895f7531221ceeed74ada7 Mon Sep 17 00:00:00 2001
From: Christoffer Dall <christoffer.dall(a)arm.com>
Date: Tue, 11 Dec 2018 13:23:57 +0100
Subject: [PATCH] KVM: arm/arm64: Fix VMID alloc race by reverting to lock-less
We recently addressed a VMID generation race by introducing a read/write
lock around accesses and updates to the vmid generation values.
However, kvm_arch_vcpu_ioctl_run() also calls need_new_vmid_gen() but
does so without taking the read lock.
As far as I can tell, this can lead to the same kind of race:
VM 0, VCPU 0 VM 0, VCPU 1
------------ ------------
update_vttbr (vmid 254)
update_vttbr (vmid 1) // roll over
read_lock(kvm_vmid_lock);
force_vm_exit()
local_irq_disable
need_new_vmid_gen == false //because vmid gen matches
enter_guest (vmid 254)
kvm_arch.vttbr = <PGD>:<VMID 1>
read_unlock(kvm_vmid_lock);
enter_guest (vmid 1)
Which results in running two VCPUs in the same VM with different VMIDs
and (even worse) other VCPUs from other VMs could now allocate clashing
VMID 254 from the new generation as long as VCPU 0 is not exiting.
Attempt to solve this by making sure vttbr is updated before another CPU
can observe the updated VMID generation.
Cc: stable(a)vger.kernel.org
Fixes: f0cf47d939d0 "KVM: arm/arm64: Close VMID generation race"
Reviewed-by: Julien Thierry <julien.thierry(a)arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall(a)arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier(a)arm.com>
diff --git a/virt/kvm/arm/arm.c b/virt/kvm/arm/arm.c
index 4adcee5fc126..d9273f972828 100644
--- a/virt/kvm/arm/arm.c
+++ b/virt/kvm/arm/arm.c
@@ -66,7 +66,7 @@ static DEFINE_PER_CPU(struct kvm_vcpu *, kvm_arm_running_vcpu);
static atomic64_t kvm_vmid_gen = ATOMIC64_INIT(1);
static u32 kvm_next_vmid;
static unsigned int kvm_vmid_bits __read_mostly;
-static DEFINE_RWLOCK(kvm_vmid_lock);
+static DEFINE_SPINLOCK(kvm_vmid_lock);
static bool vgic_present;
@@ -484,7 +484,9 @@ void force_vm_exit(const cpumask_t *mask)
*/
static bool need_new_vmid_gen(struct kvm *kvm)
{
- return unlikely(kvm->arch.vmid_gen != atomic64_read(&kvm_vmid_gen));
+ u64 current_vmid_gen = atomic64_read(&kvm_vmid_gen);
+ smp_rmb(); /* Orders read of kvm_vmid_gen and kvm->arch.vmid */
+ return unlikely(READ_ONCE(kvm->arch.vmid_gen) != current_vmid_gen);
}
/**
@@ -499,16 +501,11 @@ static void update_vttbr(struct kvm *kvm)
{
phys_addr_t pgd_phys;
u64 vmid, cnp = kvm_cpu_has_cnp() ? VTTBR_CNP_BIT : 0;
- bool new_gen;
- read_lock(&kvm_vmid_lock);
- new_gen = need_new_vmid_gen(kvm);
- read_unlock(&kvm_vmid_lock);
-
- if (!new_gen)
+ if (!need_new_vmid_gen(kvm))
return;
- write_lock(&kvm_vmid_lock);
+ spin_lock(&kvm_vmid_lock);
/*
* We need to re-check the vmid_gen here to ensure that if another vcpu
@@ -516,7 +513,7 @@ static void update_vttbr(struct kvm *kvm)
* use the same vmid.
*/
if (!need_new_vmid_gen(kvm)) {
- write_unlock(&kvm_vmid_lock);
+ spin_unlock(&kvm_vmid_lock);
return;
}
@@ -539,7 +536,6 @@ static void update_vttbr(struct kvm *kvm)
kvm_call_hyp(__kvm_flush_vm_context);
}
- kvm->arch.vmid_gen = atomic64_read(&kvm_vmid_gen);
kvm->arch.vmid = kvm_next_vmid;
kvm_next_vmid++;
kvm_next_vmid &= (1 << kvm_vmid_bits) - 1;
@@ -550,7 +546,10 @@ static void update_vttbr(struct kvm *kvm)
vmid = ((u64)(kvm->arch.vmid) << VTTBR_VMID_SHIFT) & VTTBR_VMID_MASK(kvm_vmid_bits);
kvm->arch.vttbr = kvm_phys_to_vttbr(pgd_phys) | vmid | cnp;
- write_unlock(&kvm_vmid_lock);
+ smp_wmb();
+ WRITE_ONCE(kvm->arch.vmid_gen, atomic64_read(&kvm_vmid_gen));
+
+ spin_unlock(&kvm_vmid_lock);
}
static int kvm_vcpu_first_run_init(struct kvm_vcpu *vcpu)
The patch below does not apply to the 4.19-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From fb544d1ca65a89f7a3895f7531221ceeed74ada7 Mon Sep 17 00:00:00 2001
From: Christoffer Dall <christoffer.dall(a)arm.com>
Date: Tue, 11 Dec 2018 13:23:57 +0100
Subject: [PATCH] KVM: arm/arm64: Fix VMID alloc race by reverting to lock-less
We recently addressed a VMID generation race by introducing a read/write
lock around accesses and updates to the vmid generation values.
However, kvm_arch_vcpu_ioctl_run() also calls need_new_vmid_gen() but
does so without taking the read lock.
As far as I can tell, this can lead to the same kind of race:
VM 0, VCPU 0 VM 0, VCPU 1
------------ ------------
update_vttbr (vmid 254)
update_vttbr (vmid 1) // roll over
read_lock(kvm_vmid_lock);
force_vm_exit()
local_irq_disable
need_new_vmid_gen == false //because vmid gen matches
enter_guest (vmid 254)
kvm_arch.vttbr = <PGD>:<VMID 1>
read_unlock(kvm_vmid_lock);
enter_guest (vmid 1)
Which results in running two VCPUs in the same VM with different VMIDs
and (even worse) other VCPUs from other VMs could now allocate clashing
VMID 254 from the new generation as long as VCPU 0 is not exiting.
Attempt to solve this by making sure vttbr is updated before another CPU
can observe the updated VMID generation.
Cc: stable(a)vger.kernel.org
Fixes: f0cf47d939d0 "KVM: arm/arm64: Close VMID generation race"
Reviewed-by: Julien Thierry <julien.thierry(a)arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall(a)arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier(a)arm.com>
diff --git a/virt/kvm/arm/arm.c b/virt/kvm/arm/arm.c
index 4adcee5fc126..d9273f972828 100644
--- a/virt/kvm/arm/arm.c
+++ b/virt/kvm/arm/arm.c
@@ -66,7 +66,7 @@ static DEFINE_PER_CPU(struct kvm_vcpu *, kvm_arm_running_vcpu);
static atomic64_t kvm_vmid_gen = ATOMIC64_INIT(1);
static u32 kvm_next_vmid;
static unsigned int kvm_vmid_bits __read_mostly;
-static DEFINE_RWLOCK(kvm_vmid_lock);
+static DEFINE_SPINLOCK(kvm_vmid_lock);
static bool vgic_present;
@@ -484,7 +484,9 @@ void force_vm_exit(const cpumask_t *mask)
*/
static bool need_new_vmid_gen(struct kvm *kvm)
{
- return unlikely(kvm->arch.vmid_gen != atomic64_read(&kvm_vmid_gen));
+ u64 current_vmid_gen = atomic64_read(&kvm_vmid_gen);
+ smp_rmb(); /* Orders read of kvm_vmid_gen and kvm->arch.vmid */
+ return unlikely(READ_ONCE(kvm->arch.vmid_gen) != current_vmid_gen);
}
/**
@@ -499,16 +501,11 @@ static void update_vttbr(struct kvm *kvm)
{
phys_addr_t pgd_phys;
u64 vmid, cnp = kvm_cpu_has_cnp() ? VTTBR_CNP_BIT : 0;
- bool new_gen;
- read_lock(&kvm_vmid_lock);
- new_gen = need_new_vmid_gen(kvm);
- read_unlock(&kvm_vmid_lock);
-
- if (!new_gen)
+ if (!need_new_vmid_gen(kvm))
return;
- write_lock(&kvm_vmid_lock);
+ spin_lock(&kvm_vmid_lock);
/*
* We need to re-check the vmid_gen here to ensure that if another vcpu
@@ -516,7 +513,7 @@ static void update_vttbr(struct kvm *kvm)
* use the same vmid.
*/
if (!need_new_vmid_gen(kvm)) {
- write_unlock(&kvm_vmid_lock);
+ spin_unlock(&kvm_vmid_lock);
return;
}
@@ -539,7 +536,6 @@ static void update_vttbr(struct kvm *kvm)
kvm_call_hyp(__kvm_flush_vm_context);
}
- kvm->arch.vmid_gen = atomic64_read(&kvm_vmid_gen);
kvm->arch.vmid = kvm_next_vmid;
kvm_next_vmid++;
kvm_next_vmid &= (1 << kvm_vmid_bits) - 1;
@@ -550,7 +546,10 @@ static void update_vttbr(struct kvm *kvm)
vmid = ((u64)(kvm->arch.vmid) << VTTBR_VMID_SHIFT) & VTTBR_VMID_MASK(kvm_vmid_bits);
kvm->arch.vttbr = kvm_phys_to_vttbr(pgd_phys) | vmid | cnp;
- write_unlock(&kvm_vmid_lock);
+ smp_wmb();
+ WRITE_ONCE(kvm->arch.vmid_gen, atomic64_read(&kvm_vmid_gen));
+
+ spin_unlock(&kvm_vmid_lock);
}
static int kvm_vcpu_first_run_init(struct kvm_vcpu *vcpu)
The following commit fixes freezes in virtio device drivers when KVM
is nested under
VMWare Workstation/ESXi or Hyper-V. I've encountered problems running KVM
inside VMWare since upgrading to Debian 9 (currently testing 4.9.88-1+deb9u1).
d391f1207067268261add0485f0f34503539c5b0
The same issue affects 4.4.y as well. A git-bisect within my
environment stopped at
e9ea5069d9e569c32ab913c39467df32e056b3a7, where the KVM capability was added
that QEMU checks before enabling fast mmio.
Thanks,
Mike
The patch below does not apply to the 3.18-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From ff4dd232ec45a0e45ea69f28f069f2ab22b4908a Mon Sep 17 00:00:00 2001
From: Paul Burton <paul.burton(a)mips.com>
Date: Tue, 4 Dec 2018 23:44:12 +0000
Subject: [PATCH] MIPS: Expand MIPS32 ASIDs to 64 bits
ASIDs have always been stored as unsigned longs, ie. 32 bits on MIPS32
kernels. This is problematic because it is feasible for the ASID version
to overflow & wrap around to zero.
We currently attempt to handle this overflow by simply setting the ASID
version to 1, using asid_first_version(), but we make no attempt to
account for the fact that there may be mm_structs with stale ASIDs that
have versions which we now reuse due to the overflow & wrap around.
Encountering this requires that:
1) A struct mm_struct X is active on CPU A using ASID (V,n).
2) That mm is not used on CPU A for the length of time that it takes
for CPU A's asid_cache to overflow & wrap around to the same
version V that the mm had in step 1. During this time tasks using
the mm could either be sleeping or only scheduled on other CPUs.
3) Some other mm Y becomes active on CPU A and is allocated the same
ASID (V,n).
4) mm X now becomes active on CPU A again, and now incorrectly has the
same ASID as mm Y.
Where struct mm_struct ASIDs are represented above in the format
(version, EntryHi.ASID), and on a typical MIPS32 system version will be
24 bits wide & EntryHi.ASID will be 8 bits wide.
The length of time required in step 2 is highly dependent upon the CPU &
workload, but for a hypothetical 2GHz CPU running a workload which
generates a new ASID every 10000 cycles this period is around 248 days.
Due to this long period of time & the fact that tasks need to be
scheduled in just the right (or wrong, depending upon your inclination)
way, this is obviously a difficult bug to encounter but it's entirely
possible as evidenced by reports.
In order to fix this, simply extend ASIDs to 64 bits even on MIPS32
builds. This will extend the period of time required for the
hypothetical system above to encounter the problem from 28 days to
around 3 trillion years, which feels safely outside of the realms of
possibility.
The cost of this is slightly more generated code in some commonly
executed paths, but this is pretty minimal:
| Code Size Gain | Percentage
-----------------------|----------------|-------------
decstation_defconfig | +270 | +0.00%
32r2el_defconfig | +652 | +0.01%
32r6el_defconfig | +1000 | +0.01%
I have been unable to measure any change in performance of the LMbench
lat_ctx or lat_proc tests resulting from the 64b ASIDs on either
32r2el_defconfig+interAptiv or 32r6el_defconfig+I6500 systems.
Signed-off-by: Paul Burton <paul.burton(a)mips.com>
Suggested-by: James Hogan <jhogan(a)kernel.org>
References: https://lore.kernel.org/linux-mips/80B78A8B8FEE6145A87579E8435D78C30205D5F3…
References: https://lore.kernel.org/linux-mips/1488684260-18867-1-git-send-email-jiwei.…
Cc: Jiwei Sun <jiwei.sun(a)windriver.com>
Cc: Yu Huabing <yhb(a)ruijie.com.cn>
Cc: stable(a)vger.kernel.org # 2.6.12+
Cc: linux-mips(a)vger.kernel.org
diff --git a/arch/mips/include/asm/cpu-info.h b/arch/mips/include/asm/cpu-info.h
index a41059d47d31..ed7ffe4e63a3 100644
--- a/arch/mips/include/asm/cpu-info.h
+++ b/arch/mips/include/asm/cpu-info.h
@@ -50,7 +50,7 @@ struct guest_info {
#define MIPS_CACHE_PINDEX 0x00000020 /* Physically indexed cache */
struct cpuinfo_mips {
- unsigned long asid_cache;
+ u64 asid_cache;
#ifdef CONFIG_MIPS_ASID_BITS_VARIABLE
unsigned long asid_mask;
#endif
diff --git a/arch/mips/include/asm/mmu.h b/arch/mips/include/asm/mmu.h
index 0740be7d5d4a..24d6b42345fb 100644
--- a/arch/mips/include/asm/mmu.h
+++ b/arch/mips/include/asm/mmu.h
@@ -7,7 +7,7 @@
#include <linux/wait.h>
typedef struct {
- unsigned long asid[NR_CPUS];
+ u64 asid[NR_CPUS];
void *vdso;
atomic_t fp_mode_switching;
diff --git a/arch/mips/include/asm/mmu_context.h b/arch/mips/include/asm/mmu_context.h
index 94414561de0e..a589585be21b 100644
--- a/arch/mips/include/asm/mmu_context.h
+++ b/arch/mips/include/asm/mmu_context.h
@@ -76,14 +76,14 @@ extern unsigned long pgd_current[];
* All unused by hardware upper bits will be considered
* as a software asid extension.
*/
-static unsigned long asid_version_mask(unsigned int cpu)
+static inline u64 asid_version_mask(unsigned int cpu)
{
unsigned long asid_mask = cpu_asid_mask(&cpu_data[cpu]);
- return ~(asid_mask | (asid_mask - 1));
+ return ~(u64)(asid_mask | (asid_mask - 1));
}
-static unsigned long asid_first_version(unsigned int cpu)
+static inline u64 asid_first_version(unsigned int cpu)
{
return ~asid_version_mask(cpu) + 1;
}
@@ -102,14 +102,12 @@ static inline void enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk)
static inline void
get_new_mmu_context(struct mm_struct *mm, unsigned long cpu)
{
- unsigned long asid = asid_cache(cpu);
+ u64 asid = asid_cache(cpu);
if (!((asid += cpu_asid_inc()) & cpu_asid_mask(&cpu_data[cpu]))) {
if (cpu_has_vtag_icache)
flush_icache_all();
local_flush_tlb_all(); /* start new asid cycle */
- if (!asid) /* fix version if needed */
- asid = asid_first_version(cpu);
}
cpu_context(cpu, mm) = asid_cache(cpu) = asid;
diff --git a/arch/mips/mm/c-r3k.c b/arch/mips/mm/c-r3k.c
index 3466fcdae0ca..01848cdf2074 100644
--- a/arch/mips/mm/c-r3k.c
+++ b/arch/mips/mm/c-r3k.c
@@ -245,7 +245,7 @@ static void r3k_flush_cache_page(struct vm_area_struct *vma,
pmd_t *pmdp;
pte_t *ptep;
- pr_debug("cpage[%08lx,%08lx]\n",
+ pr_debug("cpage[%08llx,%08lx]\n",
cpu_context(smp_processor_id(), mm), addr);
/* No ASID => no such page in the cache. */
The patch below does not apply to the 4.4-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From ff4dd232ec45a0e45ea69f28f069f2ab22b4908a Mon Sep 17 00:00:00 2001
From: Paul Burton <paul.burton(a)mips.com>
Date: Tue, 4 Dec 2018 23:44:12 +0000
Subject: [PATCH] MIPS: Expand MIPS32 ASIDs to 64 bits
ASIDs have always been stored as unsigned longs, ie. 32 bits on MIPS32
kernels. This is problematic because it is feasible for the ASID version
to overflow & wrap around to zero.
We currently attempt to handle this overflow by simply setting the ASID
version to 1, using asid_first_version(), but we make no attempt to
account for the fact that there may be mm_structs with stale ASIDs that
have versions which we now reuse due to the overflow & wrap around.
Encountering this requires that:
1) A struct mm_struct X is active on CPU A using ASID (V,n).
2) That mm is not used on CPU A for the length of time that it takes
for CPU A's asid_cache to overflow & wrap around to the same
version V that the mm had in step 1. During this time tasks using
the mm could either be sleeping or only scheduled on other CPUs.
3) Some other mm Y becomes active on CPU A and is allocated the same
ASID (V,n).
4) mm X now becomes active on CPU A again, and now incorrectly has the
same ASID as mm Y.
Where struct mm_struct ASIDs are represented above in the format
(version, EntryHi.ASID), and on a typical MIPS32 system version will be
24 bits wide & EntryHi.ASID will be 8 bits wide.
The length of time required in step 2 is highly dependent upon the CPU &
workload, but for a hypothetical 2GHz CPU running a workload which
generates a new ASID every 10000 cycles this period is around 248 days.
Due to this long period of time & the fact that tasks need to be
scheduled in just the right (or wrong, depending upon your inclination)
way, this is obviously a difficult bug to encounter but it's entirely
possible as evidenced by reports.
In order to fix this, simply extend ASIDs to 64 bits even on MIPS32
builds. This will extend the period of time required for the
hypothetical system above to encounter the problem from 28 days to
around 3 trillion years, which feels safely outside of the realms of
possibility.
The cost of this is slightly more generated code in some commonly
executed paths, but this is pretty minimal:
| Code Size Gain | Percentage
-----------------------|----------------|-------------
decstation_defconfig | +270 | +0.00%
32r2el_defconfig | +652 | +0.01%
32r6el_defconfig | +1000 | +0.01%
I have been unable to measure any change in performance of the LMbench
lat_ctx or lat_proc tests resulting from the 64b ASIDs on either
32r2el_defconfig+interAptiv or 32r6el_defconfig+I6500 systems.
Signed-off-by: Paul Burton <paul.burton(a)mips.com>
Suggested-by: James Hogan <jhogan(a)kernel.org>
References: https://lore.kernel.org/linux-mips/80B78A8B8FEE6145A87579E8435D78C30205D5F3…
References: https://lore.kernel.org/linux-mips/1488684260-18867-1-git-send-email-jiwei.…
Cc: Jiwei Sun <jiwei.sun(a)windriver.com>
Cc: Yu Huabing <yhb(a)ruijie.com.cn>
Cc: stable(a)vger.kernel.org # 2.6.12+
Cc: linux-mips(a)vger.kernel.org
diff --git a/arch/mips/include/asm/cpu-info.h b/arch/mips/include/asm/cpu-info.h
index a41059d47d31..ed7ffe4e63a3 100644
--- a/arch/mips/include/asm/cpu-info.h
+++ b/arch/mips/include/asm/cpu-info.h
@@ -50,7 +50,7 @@ struct guest_info {
#define MIPS_CACHE_PINDEX 0x00000020 /* Physically indexed cache */
struct cpuinfo_mips {
- unsigned long asid_cache;
+ u64 asid_cache;
#ifdef CONFIG_MIPS_ASID_BITS_VARIABLE
unsigned long asid_mask;
#endif
diff --git a/arch/mips/include/asm/mmu.h b/arch/mips/include/asm/mmu.h
index 0740be7d5d4a..24d6b42345fb 100644
--- a/arch/mips/include/asm/mmu.h
+++ b/arch/mips/include/asm/mmu.h
@@ -7,7 +7,7 @@
#include <linux/wait.h>
typedef struct {
- unsigned long asid[NR_CPUS];
+ u64 asid[NR_CPUS];
void *vdso;
atomic_t fp_mode_switching;
diff --git a/arch/mips/include/asm/mmu_context.h b/arch/mips/include/asm/mmu_context.h
index 94414561de0e..a589585be21b 100644
--- a/arch/mips/include/asm/mmu_context.h
+++ b/arch/mips/include/asm/mmu_context.h
@@ -76,14 +76,14 @@ extern unsigned long pgd_current[];
* All unused by hardware upper bits will be considered
* as a software asid extension.
*/
-static unsigned long asid_version_mask(unsigned int cpu)
+static inline u64 asid_version_mask(unsigned int cpu)
{
unsigned long asid_mask = cpu_asid_mask(&cpu_data[cpu]);
- return ~(asid_mask | (asid_mask - 1));
+ return ~(u64)(asid_mask | (asid_mask - 1));
}
-static unsigned long asid_first_version(unsigned int cpu)
+static inline u64 asid_first_version(unsigned int cpu)
{
return ~asid_version_mask(cpu) + 1;
}
@@ -102,14 +102,12 @@ static inline void enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk)
static inline void
get_new_mmu_context(struct mm_struct *mm, unsigned long cpu)
{
- unsigned long asid = asid_cache(cpu);
+ u64 asid = asid_cache(cpu);
if (!((asid += cpu_asid_inc()) & cpu_asid_mask(&cpu_data[cpu]))) {
if (cpu_has_vtag_icache)
flush_icache_all();
local_flush_tlb_all(); /* start new asid cycle */
- if (!asid) /* fix version if needed */
- asid = asid_first_version(cpu);
}
cpu_context(cpu, mm) = asid_cache(cpu) = asid;
diff --git a/arch/mips/mm/c-r3k.c b/arch/mips/mm/c-r3k.c
index 3466fcdae0ca..01848cdf2074 100644
--- a/arch/mips/mm/c-r3k.c
+++ b/arch/mips/mm/c-r3k.c
@@ -245,7 +245,7 @@ static void r3k_flush_cache_page(struct vm_area_struct *vma,
pmd_t *pmdp;
pte_t *ptep;
- pr_debug("cpage[%08lx,%08lx]\n",
+ pr_debug("cpage[%08llx,%08lx]\n",
cpu_context(smp_processor_id(), mm), addr);
/* No ASID => no such page in the cache. */
The patch below does not apply to the 4.9-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From ff4dd232ec45a0e45ea69f28f069f2ab22b4908a Mon Sep 17 00:00:00 2001
From: Paul Burton <paul.burton(a)mips.com>
Date: Tue, 4 Dec 2018 23:44:12 +0000
Subject: [PATCH] MIPS: Expand MIPS32 ASIDs to 64 bits
ASIDs have always been stored as unsigned longs, ie. 32 bits on MIPS32
kernels. This is problematic because it is feasible for the ASID version
to overflow & wrap around to zero.
We currently attempt to handle this overflow by simply setting the ASID
version to 1, using asid_first_version(), but we make no attempt to
account for the fact that there may be mm_structs with stale ASIDs that
have versions which we now reuse due to the overflow & wrap around.
Encountering this requires that:
1) A struct mm_struct X is active on CPU A using ASID (V,n).
2) That mm is not used on CPU A for the length of time that it takes
for CPU A's asid_cache to overflow & wrap around to the same
version V that the mm had in step 1. During this time tasks using
the mm could either be sleeping or only scheduled on other CPUs.
3) Some other mm Y becomes active on CPU A and is allocated the same
ASID (V,n).
4) mm X now becomes active on CPU A again, and now incorrectly has the
same ASID as mm Y.
Where struct mm_struct ASIDs are represented above in the format
(version, EntryHi.ASID), and on a typical MIPS32 system version will be
24 bits wide & EntryHi.ASID will be 8 bits wide.
The length of time required in step 2 is highly dependent upon the CPU &
workload, but for a hypothetical 2GHz CPU running a workload which
generates a new ASID every 10000 cycles this period is around 248 days.
Due to this long period of time & the fact that tasks need to be
scheduled in just the right (or wrong, depending upon your inclination)
way, this is obviously a difficult bug to encounter but it's entirely
possible as evidenced by reports.
In order to fix this, simply extend ASIDs to 64 bits even on MIPS32
builds. This will extend the period of time required for the
hypothetical system above to encounter the problem from 28 days to
around 3 trillion years, which feels safely outside of the realms of
possibility.
The cost of this is slightly more generated code in some commonly
executed paths, but this is pretty minimal:
| Code Size Gain | Percentage
-----------------------|----------------|-------------
decstation_defconfig | +270 | +0.00%
32r2el_defconfig | +652 | +0.01%
32r6el_defconfig | +1000 | +0.01%
I have been unable to measure any change in performance of the LMbench
lat_ctx or lat_proc tests resulting from the 64b ASIDs on either
32r2el_defconfig+interAptiv or 32r6el_defconfig+I6500 systems.
Signed-off-by: Paul Burton <paul.burton(a)mips.com>
Suggested-by: James Hogan <jhogan(a)kernel.org>
References: https://lore.kernel.org/linux-mips/80B78A8B8FEE6145A87579E8435D78C30205D5F3…
References: https://lore.kernel.org/linux-mips/1488684260-18867-1-git-send-email-jiwei.…
Cc: Jiwei Sun <jiwei.sun(a)windriver.com>
Cc: Yu Huabing <yhb(a)ruijie.com.cn>
Cc: stable(a)vger.kernel.org # 2.6.12+
Cc: linux-mips(a)vger.kernel.org
diff --git a/arch/mips/include/asm/cpu-info.h b/arch/mips/include/asm/cpu-info.h
index a41059d47d31..ed7ffe4e63a3 100644
--- a/arch/mips/include/asm/cpu-info.h
+++ b/arch/mips/include/asm/cpu-info.h
@@ -50,7 +50,7 @@ struct guest_info {
#define MIPS_CACHE_PINDEX 0x00000020 /* Physically indexed cache */
struct cpuinfo_mips {
- unsigned long asid_cache;
+ u64 asid_cache;
#ifdef CONFIG_MIPS_ASID_BITS_VARIABLE
unsigned long asid_mask;
#endif
diff --git a/arch/mips/include/asm/mmu.h b/arch/mips/include/asm/mmu.h
index 0740be7d5d4a..24d6b42345fb 100644
--- a/arch/mips/include/asm/mmu.h
+++ b/arch/mips/include/asm/mmu.h
@@ -7,7 +7,7 @@
#include <linux/wait.h>
typedef struct {
- unsigned long asid[NR_CPUS];
+ u64 asid[NR_CPUS];
void *vdso;
atomic_t fp_mode_switching;
diff --git a/arch/mips/include/asm/mmu_context.h b/arch/mips/include/asm/mmu_context.h
index 94414561de0e..a589585be21b 100644
--- a/arch/mips/include/asm/mmu_context.h
+++ b/arch/mips/include/asm/mmu_context.h
@@ -76,14 +76,14 @@ extern unsigned long pgd_current[];
* All unused by hardware upper bits will be considered
* as a software asid extension.
*/
-static unsigned long asid_version_mask(unsigned int cpu)
+static inline u64 asid_version_mask(unsigned int cpu)
{
unsigned long asid_mask = cpu_asid_mask(&cpu_data[cpu]);
- return ~(asid_mask | (asid_mask - 1));
+ return ~(u64)(asid_mask | (asid_mask - 1));
}
-static unsigned long asid_first_version(unsigned int cpu)
+static inline u64 asid_first_version(unsigned int cpu)
{
return ~asid_version_mask(cpu) + 1;
}
@@ -102,14 +102,12 @@ static inline void enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk)
static inline void
get_new_mmu_context(struct mm_struct *mm, unsigned long cpu)
{
- unsigned long asid = asid_cache(cpu);
+ u64 asid = asid_cache(cpu);
if (!((asid += cpu_asid_inc()) & cpu_asid_mask(&cpu_data[cpu]))) {
if (cpu_has_vtag_icache)
flush_icache_all();
local_flush_tlb_all(); /* start new asid cycle */
- if (!asid) /* fix version if needed */
- asid = asid_first_version(cpu);
}
cpu_context(cpu, mm) = asid_cache(cpu) = asid;
diff --git a/arch/mips/mm/c-r3k.c b/arch/mips/mm/c-r3k.c
index 3466fcdae0ca..01848cdf2074 100644
--- a/arch/mips/mm/c-r3k.c
+++ b/arch/mips/mm/c-r3k.c
@@ -245,7 +245,7 @@ static void r3k_flush_cache_page(struct vm_area_struct *vma,
pmd_t *pmdp;
pte_t *ptep;
- pr_debug("cpage[%08lx,%08lx]\n",
+ pr_debug("cpage[%08llx,%08lx]\n",
cpu_context(smp_processor_id(), mm), addr);
/* No ASID => no such page in the cache. */
The patch below does not apply to the 3.18-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 0ea295dd853e0879a9a30ab61f923c26be35b902 Mon Sep 17 00:00:00 2001
From: Pan Bian <bianpan2016(a)163.com>
Date: Thu, 22 Nov 2018 18:58:46 +0800
Subject: [PATCH] f2fs: read page index before freeing
The function truncate_node frees the page with f2fs_put_page. However,
the page index is read after that. So, the patch reads the index before
freeing the page.
Fixes: bf39c00a9a7f ("f2fs: drop obsolete node page when it is truncated")
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Pan Bian <bianpan2016(a)163.com>
Reviewed-by: Chao Yu <yuchao0(a)huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk(a)kernel.org>
diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
index e60c7779e114..a2273340991f 100644
--- a/fs/f2fs/node.c
+++ b/fs/f2fs/node.c
@@ -826,6 +826,7 @@ static int truncate_node(struct dnode_of_data *dn)
struct f2fs_sb_info *sbi = F2FS_I_SB(dn->inode);
struct node_info ni;
int err;
+ pgoff_t index;
err = f2fs_get_node_info(sbi, dn->nid, &ni);
if (err)
@@ -845,10 +846,11 @@ static int truncate_node(struct dnode_of_data *dn)
clear_node_page_dirty(dn->node_page);
set_sbi_flag(sbi, SBI_IS_DIRTY);
+ index = dn->node_page->index;
f2fs_put_page(dn->node_page, 1);
invalidate_mapping_pages(NODE_MAPPING(sbi),
- dn->node_page->index, dn->node_page->index);
+ index, index);
dn->node_page = NULL;
trace_f2fs_truncate_node(dn->inode, dn->nid, ni.blk_addr);
The patch below does not apply to the 4.4-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 0ea295dd853e0879a9a30ab61f923c26be35b902 Mon Sep 17 00:00:00 2001
From: Pan Bian <bianpan2016(a)163.com>
Date: Thu, 22 Nov 2018 18:58:46 +0800
Subject: [PATCH] f2fs: read page index before freeing
The function truncate_node frees the page with f2fs_put_page. However,
the page index is read after that. So, the patch reads the index before
freeing the page.
Fixes: bf39c00a9a7f ("f2fs: drop obsolete node page when it is truncated")
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Pan Bian <bianpan2016(a)163.com>
Reviewed-by: Chao Yu <yuchao0(a)huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk(a)kernel.org>
diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
index e60c7779e114..a2273340991f 100644
--- a/fs/f2fs/node.c
+++ b/fs/f2fs/node.c
@@ -826,6 +826,7 @@ static int truncate_node(struct dnode_of_data *dn)
struct f2fs_sb_info *sbi = F2FS_I_SB(dn->inode);
struct node_info ni;
int err;
+ pgoff_t index;
err = f2fs_get_node_info(sbi, dn->nid, &ni);
if (err)
@@ -845,10 +846,11 @@ static int truncate_node(struct dnode_of_data *dn)
clear_node_page_dirty(dn->node_page);
set_sbi_flag(sbi, SBI_IS_DIRTY);
+ index = dn->node_page->index;
f2fs_put_page(dn->node_page, 1);
invalidate_mapping_pages(NODE_MAPPING(sbi),
- dn->node_page->index, dn->node_page->index);
+ index, index);
dn->node_page = NULL;
trace_f2fs_truncate_node(dn->inode, dn->nid, ni.blk_addr);
The patch below does not apply to the 4.9-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
>From 0ea295dd853e0879a9a30ab61f923c26be35b902 Mon Sep 17 00:00:00 2001
From: Pan Bian <bianpan2016(a)163.com>
Date: Thu, 22 Nov 2018 18:58:46 +0800
Subject: [PATCH] f2fs: read page index before freeing
The function truncate_node frees the page with f2fs_put_page. However,
the page index is read after that. So, the patch reads the index before
freeing the page.
Fixes: bf39c00a9a7f ("f2fs: drop obsolete node page when it is truncated")
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Pan Bian <bianpan2016(a)163.com>
Reviewed-by: Chao Yu <yuchao0(a)huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk(a)kernel.org>
diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
index e60c7779e114..a2273340991f 100644
--- a/fs/f2fs/node.c
+++ b/fs/f2fs/node.c
@@ -826,6 +826,7 @@ static int truncate_node(struct dnode_of_data *dn)
struct f2fs_sb_info *sbi = F2FS_I_SB(dn->inode);
struct node_info ni;
int err;
+ pgoff_t index;
err = f2fs_get_node_info(sbi, dn->nid, &ni);
if (err)
@@ -845,10 +846,11 @@ static int truncate_node(struct dnode_of_data *dn)
clear_node_page_dirty(dn->node_page);
set_sbi_flag(sbi, SBI_IS_DIRTY);
+ index = dn->node_page->index;
f2fs_put_page(dn->node_page, 1);
invalidate_mapping_pages(NODE_MAPPING(sbi),
- dn->node_page->index, dn->node_page->index);
+ index, index);
dn->node_page = NULL;
trace_f2fs_truncate_node(dn->inode, dn->nid, ni.blk_addr);