* Re: efi_enabled(EFI_PARAVIRT) use
From: Matt Fleming @ 2016-05-01 13:26 UTC (permalink / raw)
To: Shannon Zhao
Cc: Ard Biesheuvel, Stefano Stabellini, Ingo Molnar, Stephen Rothwell,
Luis R. Rodriguez, Jeremy Fitzhardinge, Konrad Rzeszutek Wilk,
Stefano Stabellini, Xen Devel, Thomas Gleixner, Ingo Molnar,
H. Peter Anvin, Peter Zijlstra, linux-next,
linux-kernel@vger.kernel.org, Borislav Petkov
In-Reply-To: <572576E2.7060508@linaro.org>
On Sun, 01 May, at 11:24:18AM, Shannon Zhao wrote:
> Because the UEFI params for Dom0 are located under /hypervisor/uefi node
> instead of /chosen. So it needs to check whether it's a Dom0 then search
> and parse different node with different params arrays.
Why can't you search both nodes? Would you ever expect to see both for
a Dom0 kernel?
> So it still needs add another check to firstly parse the fdt to see if
> there is "xen,uefi-system-table" under /hypervisor/uefi node, right? I
> think it's a bit redundant compared with xen_initial_domain().
Sometimes you really do need to check xen_initial_domain(), but I do
not think this is such a case. And if we can get by without adding
that check, the code will be better for it.
^ permalink raw reply
* Re: efi_enabled(EFI_PARAVIRT) use
From: Shannon Zhao @ 2016-05-01 14:36 UTC (permalink / raw)
To: Matt Fleming
Cc: Ard Biesheuvel, Stefano Stabellini, Ingo Molnar, Stephen Rothwell,
Luis R. Rodriguez, Jeremy Fitzhardinge, Konrad Rzeszutek Wilk,
Stefano Stabellini, Xen Devel, Thomas Gleixner, Ingo Molnar,
H. Peter Anvin, Peter Zijlstra, linux-next,
linux-kernel@vger.kernel.org, Borislav Petkov
In-Reply-To: <20160501132620.GT2839@codeblueprint.co.uk>
On 2016年05月01日 21:26, Matt Fleming wrote:
> On Sun, 01 May, at 11:24:18AM, Shannon Zhao wrote:
>> Because the UEFI params for Dom0 are located under /hypervisor/uefi node
>> instead of /chosen. So it needs to check whether it's a Dom0 then search
>> and parse different node with different params arrays.
>
> Why can't you search both nodes?
Before searching, it needs to decide which uefi params array should be
passed to of_scan_flat_dt().
> Would you ever expect to see both for
> a Dom0 kernel?
>
>> So it still needs add another check to firstly parse the fdt to see if
>> there is "xen,uefi-system-table" under /hypervisor/uefi node, right? I
>> think it's a bit redundant compared with xen_initial_domain().
>
> Sometimes you really do need to check xen_initial_domain(), but I do
> not think this is such a case. And if we can get by without adding
> that check, the code will be better for it.
>
So is there any other way you suggest?
Thanks,
--
Shannon
^ permalink raw reply
* linux-next: manual merge of the powerpc tree with Linus' tree
From: Stephen Rothwell @ 2016-05-01 23:50 UTC (permalink / raw)
To: Michael Ellerman, Benjamin Herrenschmidt, linuxppc-dev
Cc: linux-next, linux-kernel, Anton Blanchard, Aneesh Kumar K.V
Hi all,
Today's linux-next merge of the powerpc tree got a conflict in:
arch/powerpc/kernel/prom.c
between commits:
beff82374b25 ("powerpc: Update cpu_user_features2 in scan_features()")
4705e02498d6 ("powerpc: Update TM user feature bits in scan_features()")
from Linus' tree and commit:
5ddd6bb5968e ("powerpc/mm/radix: Use firmware feature to enable Radix MMU")
from the powerpc tree.
I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc arch/powerpc/kernel/prom.c
index a15fe1d4e84a,d924cd60fc8e..000000000000
--- a/arch/powerpc/kernel/prom.c
+++ b/arch/powerpc/kernel/prom.c
@@@ -153,20 -153,20 +154,21 @@@ static struct ibm_pa_feature
unsigned char pabit; /* bit number (big-endian) */
unsigned char invert; /* if 1, pa bit set => clear feature */
} ibm_pa_features[] __initdata = {
- {0, 0, PPC_FEATURE_HAS_MMU, 0, 0, 0},
- {0, 0, PPC_FEATURE_HAS_FPU, 0, 1, 0},
- {CPU_FTR_CTRL, 0, 0, 0, 3, 0},
- {CPU_FTR_NOEXECUTE, 0, 0, 0, 6, 0},
- {CPU_FTR_NODSISRALIGN, 0, 0, 1, 1, 1},
- {0, MMU_FTR_CI_LARGE_PAGE, 0, 1, 2, 0},
- {CPU_FTR_REAL_LE, PPC_FEATURE_TRUE_LE, 5, 0, 0},
+ {0, 0, PPC_FEATURE_HAS_MMU, 0, 0, 0, 0},
+ {0, 0, PPC_FEATURE_HAS_FPU, 0, 0, 1, 0},
+ {CPU_FTR_CTRL, 0, 0, 0, 0, 3, 0},
+ {CPU_FTR_NOEXECUTE, 0, 0, 0, 0, 6, 0},
+ {CPU_FTR_NODSISRALIGN, 0, 0, 0, 1, 1, 1},
+ {0, MMU_FTR_CI_LARGE_PAGE, 0, 0, 1, 2, 0},
+ {CPU_FTR_REAL_LE, 0, PPC_FEATURE_TRUE_LE, 0, 5, 0, 0},
/*
- * If the kernel doesn't support TM (ie. CONFIG_PPC_TRANSACTIONAL_MEM=n),
- * we don't want to turn on CPU_FTR_TM here, so we use CPU_FTR_TM_COMP
- * which is 0 if the kernel doesn't support TM.
+ * If the kernel doesn't support TM (ie CONFIG_PPC_TRANSACTIONAL_MEM=n),
+ * we don't want to turn on TM here, so we use the *_COMP versions
+ * which are 0 if the kernel doesn't support TM.
*/
- {CPU_FTR_TM_COMP, 0, 0, 22, 0, 0},
- {0, MMU_FTR_RADIX, 0, 40, 0, 0},
+ {CPU_FTR_TM_COMP, 0, 0,
+ PPC_FEATURE2_HTM_COMP|PPC_FEATURE2_HTM_NOSC_COMP, 22, 0, 0},
++ {0, MMU_FTR_RADIX, 0, 0, 40, 0, 0},
};
static void __init scan_features(unsigned long node, const unsigned char *ftrs,
^ permalink raw reply
* linux-next: manual merge of the vfs tree with Linus' tree
From: Stephen Rothwell @ 2016-05-02 0:38 UTC (permalink / raw)
To: Al Viro; +Cc: linux-next, linux-kernel, Kirill A. Shutemov
Hi Al,
Today's linux-next merge of the vfs tree got a conflict in:
fs/cifs/file.c
between commit:
09cbfeaf1a5a ("mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release} macros")
from Linus' tree and commits:
71335664c38f ("cifs: don't bother with kmap on read_pages side")
7d2dbb9faf05 ("fixups for PAGE_CACHE_SIZE/page_cache_release-induced conflicts")
from the vfs tree.
I fixed it up (the vfs tree patches repeated the relevant parts of
the patch in Linus' tree, so I just used the vfs tree version) and can
carry the fix as necessary. This is now fixed as far as linux-next is
concerned, but any non trivial conflicts should be mentioned to your
upstream maintainer when your tree is submitted for merging. You may
also want to consider cooperating with the maintainer of the conflicting
tree to minimise any particularly complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc fs/cifs/file.c
index 489ddc797105,e013d64998d4..000000000000
--- a/fs/cifs/file.c
+++ b/fs/cifs/file.c
@@@ -3311,16 -3302,12 +3302,12 @@@ cifs_readpages_read_into_pages(struct T
cifs_dbg(FYI, "eof=%llu eof_index=%lu\n", eof, eof_index);
rdata->got_bytes = 0;
- rdata->tailsz = PAGE_CACHE_SIZE;
+ rdata->tailsz = PAGE_SIZE;
for (i = 0; i < nr_pages; i++) {
struct page *page = rdata->pages[i];
+ size_t n = PAGE_SIZE;
if (len >= PAGE_SIZE) {
- /* enough data to fill the page */
- iov.iov_base = kmap(page);
- iov.iov_len = PAGE_SIZE;
- cifs_dbg(FYI, "%u: idx=%lu iov_base=%p iov_len=%zu\n",
- i, page->index, iov.iov_base, iov.iov_len);
len -= PAGE_SIZE;
} else if (len > 0) {
/* enough for partial page, fill and zero the rest */
^ permalink raw reply
* linux-next: manual merge of the vfs tree with Linus' tree
From: Stephen Rothwell @ 2016-05-02 0:43 UTC (permalink / raw)
To: Al Viro; +Cc: linux-next, linux-kernel, Kirill A. Shutemov
Hi Al,
Today's linux-next merge of the vfs tree got a conflict in:
fs/ecryptfs/mmap.c
between commit:
09cbfeaf1a5a ("mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release} macros")
from Linus' tree and commits:
ce23e6401334 ("->getxattr(): pass dentry and inode as separate arguments")
7d2dbb9faf05 ("fixups for PAGE_CACHE_SIZE/page_cache_release-induced conflicts")
from the vfs tree.
I fixed it up (the latter vfs tree patch repeated the relevant parts of
the patch in Linus' tree, so I just used the vfs tree version) and can
carry the fix as necessary. This is now fixed as far as linux-next is
concerned, but any non trivial conflicts should be mentioned to your
upstream maintainer when your tree is submitted for merging. You may
also want to consider cooperating with the maintainer of the conflicting
tree to minimise any particularly complex conflicts.
--
Cheers,
Stephen Rothwell
^ permalink raw reply
* linux-next: manual merge of the vfs tree with Linus' tree
From: Stephen Rothwell @ 2016-05-02 0:49 UTC (permalink / raw)
To: Al Viro; +Cc: linux-next, linux-kernel, Kirill A. Shutemov
Hi Al,
Today's linux-next merge of the vfs tree got a conflict in:
fs/nfs/dir.c
between commit:
09cbfeaf1a5a ("mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release} macros")
from Linus' tree and commit:
586cf0326586 ("nfs: switch to ->iterate_shared()")
7d2dbb9faf05 ("fixups for PAGE_CACHE_SIZE/page_cache_release-induced conflicts")
from the vfs tree.
I fixed it up (the latter vfs tree patch repeated the relevant parts of
the patch in Linus' tree, so I just used the vfs tree version) and can
carry the fix as necessary. This is now fixed as far as linux-next is
concerned, but any non trivial conflicts should be mentioned to your
upstream maintainer when your tree is submitted for merging. You may
also want to consider cooperating with the maintainer of the conflicting
tree to minimise any particularly complex conflicts.
--
Cheers,
Stephen Rothwell
^ permalink raw reply
* linux-next: manual merge of the vfs tree with the overlayfs tree
From: Stephen Rothwell @ 2016-05-02 0:59 UTC (permalink / raw)
To: Al Viro, Miklos Szeredi; +Cc: linux-next, linux-kernel
Hi Al,
Today's linux-next merge of the vfs tree got a conflict in:
fs/overlayfs/super.c
between commit:
d478d6a8b8b7 ("ovl: ignore permissions on underlying lookup")
from the overlayfs tree and commit:
5cf3e7fecb43 ("ovl_lookup_real(): use lookup_one_len_unlocked()")
from the vfs tree.
I fixed it up (I used the overlayfs version, since I don't know the
locking consequences of teh change from lookup_one_len() to lookup_hash())
and can carry the fix as necessary. This is now fixed as far as linux-next
is concerned, but any non trivial conflicts should be mentioned to your
upstream maintainer when your tree is submitted for merging. You may
also want to consider cooperating with the maintainer of the conflicting
tree to minimise any particularly complex conflicts.
--
Cheers,
Stephen Rothwell
^ permalink raw reply
* Re: linux-next: manual merge of the vfs tree with the overlayfs tree
From: Al Viro @ 2016-05-02 1:08 UTC (permalink / raw)
To: Stephen Rothwell; +Cc: Miklos Szeredi, linux-next, linux-kernel
In-Reply-To: <20160502105943.72202e80@canb.auug.org.au>
On Mon, May 02, 2016 at 10:59:43AM +1000, Stephen Rothwell wrote:
> Hi Al,
>
> Today's linux-next merge of the vfs tree got a conflict in:
>
> fs/overlayfs/super.c
>
> between commit:
>
> d478d6a8b8b7 ("ovl: ignore permissions on underlying lookup")
>
> from the overlayfs tree and commit:
>
> 5cf3e7fecb43 ("ovl_lookup_real(): use lookup_one_len_unlocked()")
>
> from the vfs tree.
>
> I fixed it up (I used the overlayfs version, since I don't know the
> locking consequences of teh change from lookup_one_len() to lookup_hash())
> and can carry the fix as necessary. This is now fixed as far as linux-next
> is concerned, but any non trivial conflicts should be mentioned to your
> upstream maintainer when your tree is submitted for merging. You may
> also want to consider cooperating with the maintainer of the conflicting
> tree to minimise any particularly complex conflicts.
Should use lookup_one_len_unlocked(), actually. lookup_hash() is
a microoptimization, losing a lot more on excessive i_mutex contention.
Either variant works, though.
^ permalink raw reply
* Re: linux-next: manual merge of the vfs tree with the overlayfs tree
From: Al Viro @ 2016-05-02 1:23 UTC (permalink / raw)
To: Stephen Rothwell; +Cc: Miklos Szeredi, linux-next, linux-kernel
In-Reply-To: <20160502010838.GJ25498@ZenIV.linux.org.uk>
On Mon, May 02, 2016 at 02:08:39AM +0100, Al Viro wrote:
> Should use lookup_one_len_unlocked(), actually. lookup_hash() is
> a microoptimization, losing a lot more on excessive i_mutex contention.
> Either variant works, though.
PS: if anybody has a better name for lookup_one_len_unlocked(), I'll gladly
rename it; the thing hadn't been in the kernel for too long and the name is
somewhat confusing. It's an equivalent of
inode_lock()
lookup_one_len()
inode_unlock()
except that it avoids taking the lock when it's not needed.
^ permalink raw reply
* linux-next: build failure after merge of the vfs tree
From: Stephen Rothwell @ 2016-05-02 1:25 UTC (permalink / raw)
To: Al Viro, Steven Whitehouse, Bob Peterson
Cc: linux-next, linux-kernel, Abhi Das
Hi Al,
After merging the vfs tree, today's linux-next build (x86_64 allmodconfig)
failed like this:
In file included from include/linux/notifier.h:13:0,
from include/linux/memory_hotplug.h:6,
from include/linux/mmzone.h:744,
from include/linux/gfp.h:5,
from include/linux/slab.h:14,
from fs/gfs2/file.c:10:
fs/gfs2/file.c: In function 'gfs2_file_splice_read':
fs/gfs2/file.c:963:19: error: 'struct inode' has no member named 'i_mutex'
mutex_lock(&inode->i_mutex);
^
include/linux/mutex.h:146:44: note: in definition of macro 'mutex_lock'
#define mutex_lock(lock) mutex_lock_nested(lock, 0)
^
fs/gfs2/file.c:967:22: error: 'struct inode' has no member named 'i_mutex'
mutex_unlock(&inode->i_mutex);
^
fs/gfs2/file.c:972:21: error: 'struct inode' has no member named 'i_mutex'
mutex_unlock(&inode->i_mutex);
^
Caused by commit
ad10a307a918 ("parallel lookups: actual switch to rwsem")
interacting with commit
611526756a3d ("gfs2: Use gfs2 wrapper to sync inode before calling generic_file_splice_read()")
from the gfs2 tree.
I applied the following merge fix patch for today (thanks Al):
From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Mon, 2 May 2016 11:17:40 +1000
Subject: [PATCH] gfs2: fix up for i_mutex -> i_rwsem change
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
fs/gfs2/file.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
index 3f27ab291029..76e205455503 100644
--- a/fs/gfs2/file.c
+++ b/fs/gfs2/file.c
@@ -960,16 +960,16 @@ static ssize_t gfs2_file_splice_read(struct file *in, loff_t *ppos,
struct gfs2_holder gh;
int ret;
- mutex_lock(&inode->i_mutex);
+ inode_lock(inode);
ret = gfs2_glock_nq_init(ip->i_gl, LM_ST_SHARED, 0, &gh);
if (ret) {
- mutex_unlock(&inode->i_mutex);
+ inode_unlock(inode);
return ret;
}
gfs2_glock_dq_uninit(&gh);
- mutex_unlock(&inode->i_mutex);
+ inode_unlock(inode);
return generic_file_splice_read(in, ppos, pipe, len, flags);
}
--
2.7.0
--
Cheers,
Stephen Rothwell
^ permalink raw reply related
* Re: linux-next: build failure after merge of the vfs tree
From: Al Viro @ 2016-05-02 1:31 UTC (permalink / raw)
To: Stephen Rothwell
Cc: Steven Whitehouse, Bob Peterson, linux-next, linux-kernel,
Abhi Das
In-Reply-To: <20160502112527.095e2998@canb.auug.org.au>
On Mon, May 02, 2016 at 11:25:27AM +1000, Stephen Rothwell wrote:
> Hi Al,
>
> After merging the vfs tree, today's linux-next build (x86_64 allmodconfig)
> failed like this:
>
> In file included from include/linux/notifier.h:13:0,
> from include/linux/memory_hotplug.h:6,
> from include/linux/mmzone.h:744,
> from include/linux/gfp.h:5,
> from include/linux/slab.h:14,
> from fs/gfs2/file.c:10:
> fs/gfs2/file.c: In function 'gfs2_file_splice_read':
> fs/gfs2/file.c:963:19: error: 'struct inode' has no member named 'i_mutex'
> mutex_lock(&inode->i_mutex);
> ^
> include/linux/mutex.h:146:44: note: in definition of macro 'mutex_lock'
> #define mutex_lock(lock) mutex_lock_nested(lock, 0)
> ^
> fs/gfs2/file.c:967:22: error: 'struct inode' has no member named 'i_mutex'
> mutex_unlock(&inode->i_mutex);
> ^
> fs/gfs2/file.c:972:21: error: 'struct inode' has no member named 'i_mutex'
> mutex_unlock(&inode->i_mutex);
> ^
>
> Caused by commit
>
> ad10a307a918 ("parallel lookups: actual switch to rwsem")
>
> interacting with commit
>
> 611526756a3d ("gfs2: Use gfs2 wrapper to sync inode before calling generic_file_splice_read()")
>
> from the gfs2 tree.
>
> I applied the following merge fix patch for today (thanks Al):
>
> From: Stephen Rothwell <sfr@canb.auug.org.au>
> Date: Mon, 2 May 2016 11:17:40 +1000
> Subject: [PATCH] gfs2: fix up for i_mutex -> i_rwsem change
FWIW, that should go into gfs2 tree - inode_lock()/inode_unlock() had been
there since the last cycle and they should've been used instead of direct
access to ->i_mutex. So this fix will be valid in gfs2 branch.
^ permalink raw reply
* linux-next: build failure after merge of the rcu tree
From: Stephen Rothwell @ 2016-05-02 4:37 UTC (permalink / raw)
To: Paul E. McKenney; +Cc: linux-next, linux-kernel, Christoph Hellwig
Hi Paul,
After merging the rcu tree, today's linux-next build (x86_64 allmodconfig)
failed like this:
arch/x86/kvm/vmx.c: In function 'vmx_init':
arch/x86/kvm/vmx.c:11026:2: error: function '_r_a_p__v' is initialized like a variable
rcu_assign_pointer(crash_vmclear_loaded_vmcss,
^
In file included from include/linux/rbtree.h:34:0,
from include/linux/mm_types.h:9,
from arch/x86/kvm/irq.h:25,
from arch/x86/kvm/vmx.c:19:
include/linux/rcupdate.h:657:45: warning: the comparison will always evaluate as 'false' for the address of '_r_a_p__v' will never be NULL [-Waddress]
if (__builtin_constant_p(v) && (_r_a_p__v) == NULL) \
^
arch/x86/kvm/vmx.c:11026:2: note: in expansion of macro 'rcu_assign_pointer'
rcu_assign_pointer(crash_vmclear_loaded_vmcss,
^
include/linux/rcupdate.h:655:12: error: nested function '_r_a_p__v' declared but never defined
typeof(v) _r_a_p__v = (v); \
^
arch/x86/kvm/vmx.c:11026:2: note: in expansion of macro 'rcu_assign_pointer'
rcu_assign_pointer(crash_vmclear_loaded_vmcss,
^
Caused by commit
16d7afcaa530 ("rcu: No ordering for rcu_assign_pointer() of NULL")
I have reverted that commit for today.
--
Cheers,
Stephen Rothwell
^ permalink raw reply
* Re: linux-next: build failure after merge of the vfs tree
From: Abhijith Das @ 2016-05-02 4:48 UTC (permalink / raw)
To: Al Viro
Cc: Stephen Rothwell, Steven Whitehouse, Bob Peterson, linux-next,
linux-kernel
In-Reply-To: <20160502013103.GL25498@ZenIV.linux.org.uk>
Hi Al/Stephen
----- Original Message -----
> From: "Al Viro" <viro@ZenIV.linux.org.uk>
> To: "Stephen Rothwell" <sfr@canb.auug.org.au>
> Cc: "Steven Whitehouse" <swhiteho@redhat.com>, "Bob Peterson" <rpeterso@redhat.com>, linux-next@vger.kernel.org,
> linux-kernel@vger.kernel.org, "Abhi Das" <adas@redhat.com>
> Sent: Sunday, May 1, 2016 8:31:03 PM
> Subject: Re: linux-next: build failure after merge of the vfs tree
>
> On Mon, May 02, 2016 at 11:25:27AM +1000, Stephen Rothwell wrote:
> > Hi Al,
> >
> > After merging the vfs tree, today's linux-next build (x86_64 allmodconfig)
> > failed like this:
> >
> > In file included from include/linux/notifier.h:13:0,
> > from include/linux/memory_hotplug.h:6,
> > from include/linux/mmzone.h:744,
> > from include/linux/gfp.h:5,
> > from include/linux/slab.h:14,
> > from fs/gfs2/file.c:10:
> > fs/gfs2/file.c: In function 'gfs2_file_splice_read':
> > fs/gfs2/file.c:963:19: error: 'struct inode' has no member named 'i_mutex'
> > mutex_lock(&inode->i_mutex);
> > ^
> > include/linux/mutex.h:146:44: note: in definition of macro 'mutex_lock'
> > #define mutex_lock(lock) mutex_lock_nested(lock, 0)
> > ^
> > fs/gfs2/file.c:967:22: error: 'struct inode' has no member named 'i_mutex'
> > mutex_unlock(&inode->i_mutex);
> > ^
> > fs/gfs2/file.c:972:21: error: 'struct inode' has no member named 'i_mutex'
> > mutex_unlock(&inode->i_mutex);
> > ^
> >
> > Caused by commit
> >
> > ad10a307a918 ("parallel lookups: actual switch to rwsem")
> >
> > interacting with commit
> >
> > 611526756a3d ("gfs2: Use gfs2 wrapper to sync inode before calling
> > generic_file_splice_read()")
> >
> > from the gfs2 tree.
> >
> > I applied the following merge fix patch for today (thanks Al):
> >
> > From: Stephen Rothwell <sfr@canb.auug.org.au>
> > Date: Mon, 2 May 2016 11:17:40 +1000
> > Subject: [PATCH] gfs2: fix up for i_mutex -> i_rwsem change
>
> FWIW, that should go into gfs2 tree - inode_lock()/inode_unlock() had been
> there since the last cycle and they should've been used instead of direct
> access to ->i_mutex. So this fix will be valid in gfs2 branch.
>
Apologies for the oversight. I just posted Stephen's patch for linux-gfs2.
Bob, could you push it in asap?
Cheers!
--Abhi
^ permalink raw reply
* linux-next: manual merge of the xen-tip tree with the tip tree
From: Stephen Rothwell @ 2016-05-02 4:51 UTC (permalink / raw)
To: Jeremy Fitzhardinge, Konrad Rzeszutek Wilk, Stefano Stabellini,
Xen Devel, Thomas Gleixner, Ingo Molnar, H. Peter Anvin,
Peter Zijlstra
Cc: linux-next, linux-kernel@vger.kernel.org. Shannon Zhao,
Matt Fleming
Hi all,
Today's linux-next merge of the xen-tip tree got a conflict in:
drivers/xen/efi.c
between commit:
0ec7ae928a9c ("efi: Remove unnecessary (and buggy) .memmap initialization from the Xen EFI driver")
from the tip tree and commit:
acb2c923a860 ("XEN: EFI: Move x86 specific codes to architecture directory")
from the xen-tip tree.
I fixed it up (I used the xen-tip version of this file and added the below
merge fix patch) and can carry the fix as necessary. This is now fixed
as far as linux-next is concerned, but any non trivial conflicts should
be mentioned to your upstream maintainer when your tree is submitted for
merging. You may also want to consider cooperating with the maintainer
of the conflicting tree to minimise any particularly complex conflicts.
From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Mon, 2 May 2016 14:47:32 +1000
Subject: [PATCH] xen: efi: merge fix patch
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
arch/x86/xen/efi.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/arch/x86/xen/efi.c b/arch/x86/xen/efi.c
index 86527f1d1427..3be012115853 100644
--- a/arch/x86/xen/efi.c
+++ b/arch/x86/xen/efi.c
@@ -83,7 +83,6 @@ static const struct efi efi_xen __initconst = {
.get_next_high_mono_count = xen_efi_get_next_high_mono_count,
.reset_system = NULL, /* Functionality provided by Xen. */
.set_virtual_address_map = NULL, /* Not used under Xen. */
- .memmap = NULL, /* Not used under Xen. */
.flags = 0 /* Initialized later. */
};
--
2.7.0
--
Cheers,
Stephen Rothwell
^ permalink raw reply related
* linux-next: build failure after merge of the driver-core tree
From: Stephen Rothwell @ 2016-05-02 5:42 UTC (permalink / raw)
To: Greg KH; +Cc: linux-next, linux-kernel, William Breathitt Gray, Ingo Molnar
Hi Greg,
After merging the driver-core tree, today's linux-next build (x86_64
allmodconfig) failed like this:
In file included from include/uapi/linux/stddef.h:1:0,
from include/linux/stddef.h:4,
from include/uapi/linux/posix_types.h:4,
from include/uapi/linux/types.h:13,
from include/linux/types.h:5,
from include/linux/list.h:4,
from include/linux/module.h:9,
from arch/x86/mm/extable.c:1:
arch/x86/mm/extable.c: In function 'fixup_exception':
arch/x86/mm/extable.c:102:15: error: implicit declaration of function 'SEGMENT_IS_PNP_CODE' [-Werror=implicit-function-declaration]
if (unlikely(SEGMENT_IS_PNP_CODE(regs->cs))) {
^
drivers/pnp/pnpbios/bioscalls.c:106:34: error: 'PNP_TS1' und
eclared (first use in this function)
Q2_SET_SEL(smp_processor_id(), PNP_TS1, ts1_base, ts1_size);
^
drivers/pnp/pnpbios/bioscalls.c:108:34: error: 'PNP_TS2' undeclared (first use in this function)
Q2_SET_SEL(smp_processor_id(), PNP_TS2, ts2_base, ts2_size);
^
drivers/pnp/pnpbios/bioscalls.c:133:13: error: 'PNP_CS32' undeclared (first use in this function)
"i"(PNP_CS32), "i"(0)
^
and on ...
Somehow caused by commit
8ac0fba2da41 ("isa: Decouple X86_32 dependency from the ISA Kconfig option")
I don't easily see why it causes the problem, but reverting it makes the
build work. I also cannot rule out interaction with some other tree.
I have reverted that commit for today.
--
Cheers,
Stephen Rothwell
^ permalink raw reply
* linux-next: manual merge of the tty tree with the mips tree
From: Stephen Rothwell @ 2016-05-02 5:52 UTC (permalink / raw)
To: Greg KH, Ralf Baechle
Cc: linux-next, linux-kernel, Andrei Pistirica, Joshua Henderson,
Vladimir Murzin
Hi Greg,
Today's linux-next merge of the tty tree got a conflict in:
drivers/tty/serial/Makefile
include/uapi/linux/serial_core.h
between commit:
a484a06f7cb1 ("serial: pic32_uart: Add PIC32 UART driver")
from the mips tree and commit:
041f031def33 ("serial: mps2-uart: add MPS2 UART driver")
from the tty tree.
I fixed it up (see below - I assume the numbers in
uapi/linux/serial_core.h are meant to be unique?) and can carry the fix
as necessary. This is now fixed as far as linux-next is concerned, but
any non trivial conflicts should be mentioned to your upstream maintainer
when your tree is submitted for merging. You may also want to consider
cooperating with the maintainer of the conflicting tree to minimise any
particularly complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc drivers/tty/serial/Makefile
index 74914aafac61,81e9057a0f68..000000000000
--- a/drivers/tty/serial/Makefile
+++ b/drivers/tty/serial/Makefile
@@@ -91,7 -91,7 +91,8 @@@ obj-$(CONFIG_SERIAL_MEN_Z135) += men_z1
obj-$(CONFIG_SERIAL_SPRD) += sprd_serial.o
obj-$(CONFIG_SERIAL_STM32) += stm32-usart.o
obj-$(CONFIG_SERIAL_MVEBU_UART) += mvebu-uart.o
+ obj-$(CONFIG_SERIAL_MPS2_UART) += mps2-uart.o
+obj-$(CONFIG_SERIAL_PIC32) += pic32_uart.o
# GPIOLIB helpers for modem control lines
obj-$(CONFIG_SERIAL_MCTRL_GPIO) += serial_mctrl_gpio.o
diff --cc include/uapi/linux/serial_core.h
index a539a638ec10,9aef04c5f7bc..000000000000
--- a/include/uapi/linux/serial_core.h
+++ b/include/uapi/linux/serial_core.h
@@@ -264,7 -264,7 +264,10 @@@
/* MVEBU UART */
#define PORT_MVEBU 114
+ /* MPS2 UART */
+ #define PORT_MPS2UART 115
+
+/* Microchip PIC32 UART */
- #define PORT_PIC32 114
++#define PORT_PIC32 116
+
#endif /* _UAPILINUX_SERIAL_CORE_H */
^ permalink raw reply
* linux-next: manual merge of the akpm-current tree with the powerpc tree
From: Stephen Rothwell @ 2016-05-02 7:20 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-next, linux-kernel, Hugh Dickins, Aneesh Kumar K.V
Hi Andrew,
Today's linux-next merge of the akpm-current tree got a conflict in:
arch/powerpc/include/asm/book3s/64/pgtable.h
between commit:
dbaba7a16b7b ("powerpc/mm: THP is only available on hash64 as of now")
from the powerpc tree and commit:
383b50a4e356 ("arch: fix has_transparent_hugepage()")
from the akpm-current tree.
I fixed it up (see below - the code moved) and can carry the fix as
necessary. This is now fixed as far as linux-next is concerned, but any
non trivial conflicts should be mentioned to your upstream maintainer
when your tree is submitted for merging. You may also want to consider
cooperating with the maintainer of the conflicting tree to minimise any
particularly complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc arch/powerpc/include/asm/book3s/64/pgtable.h
index 48dc76c13094,8fe6f6b48aa5..000000000000
--- a/arch/powerpc/include/asm/book3s/64/pgtable.h
+++ b/arch/powerpc/include/asm/book3s/64/pgtable.h
@@@ -820,86 -265,9 +820,87 @@@ static inline int pmd_protnone(pmd_t pm
#define __HAVE_ARCH_PMD_WRITE
#define pmd_write(pmd) pte_write(pmd_pte(pmd))
+#ifdef CONFIG_TRANSPARENT_HUGEPAGE
+extern pmd_t pfn_pmd(unsigned long pfn, pgprot_t pgprot);
+extern pmd_t mk_pmd(struct page *page, pgprot_t pgprot);
+extern pmd_t pmd_modify(pmd_t pmd, pgprot_t newprot);
+extern void set_pmd_at(struct mm_struct *mm, unsigned long addr,
+ pmd_t *pmdp, pmd_t pmd);
+extern void update_mmu_cache_pmd(struct vm_area_struct *vma, unsigned long addr,
+ pmd_t *pmd);
+extern int hash__has_transparent_hugepage(void);
++#define has_transparent_hugepage has_transparent_hugepage
+static inline int has_transparent_hugepage(void)
+{
+ if (radix_enabled())
+ return radix__has_transparent_hugepage();
+ return hash__has_transparent_hugepage();
+}
+
+static inline unsigned long
+pmd_hugepage_update(struct mm_struct *mm, unsigned long addr, pmd_t *pmdp,
+ unsigned long clr, unsigned long set)
+{
+ if (radix_enabled())
+ return radix__pmd_hugepage_update(mm, addr, pmdp, clr, set);
+ return hash__pmd_hugepage_update(mm, addr, pmdp, clr, set);
+}
+
+static inline int pmd_large(pmd_t pmd)
+{
+ return !!(pmd_val(pmd) & _PAGE_PTE);
+}
+
+static inline pmd_t pmd_mknotpresent(pmd_t pmd)
+{
+ return __pmd(pmd_val(pmd) & ~_PAGE_PRESENT);
+}
+/*
+ * For radix we should always find H_PAGE_HASHPTE zero. Hence
+ * the below will work for radix too
+ */
+static inline int __pmdp_test_and_clear_young(struct mm_struct *mm,
+ unsigned long addr, pmd_t *pmdp)
+{
+ unsigned long old;
+
+ if ((pmd_val(*pmdp) & (_PAGE_ACCESSED | H_PAGE_HASHPTE)) == 0)
+ return 0;
+ old = pmd_hugepage_update(mm, addr, pmdp, _PAGE_ACCESSED, 0);
+ return ((old & _PAGE_ACCESSED) != 0);
+}
+
+#define __HAVE_ARCH_PMDP_SET_WRPROTECT
+static inline void pmdp_set_wrprotect(struct mm_struct *mm, unsigned long addr,
+ pmd_t *pmdp)
+{
+
+ if ((pmd_val(*pmdp) & _PAGE_WRITE) == 0)
+ return;
+
+ pmd_hugepage_update(mm, addr, pmdp, _PAGE_WRITE, 0);
+}
+
+static inline int pmd_trans_huge(pmd_t pmd)
+{
+ if (radix_enabled())
+ return radix__pmd_trans_huge(pmd);
+ return hash__pmd_trans_huge(pmd);
+}
+
+#define __HAVE_ARCH_PMD_SAME
+static inline int pmd_same(pmd_t pmd_a, pmd_t pmd_b)
+{
+ if (radix_enabled())
+ return radix__pmd_same(pmd_a, pmd_b);
+ return hash__pmd_same(pmd_a, pmd_b);
+}
+
static inline pmd_t pmd_mkhuge(pmd_t pmd)
{
- return __pmd(pmd_val(pmd) | (_PAGE_PTE | _PAGE_THP_HUGE));
+ if (radix_enabled())
+ return radix__pmd_mkhuge(pmd);
+ return hash__pmd_mkhuge(pmd);
}
#define __HAVE_ARCH_PMDP_SET_ACCESS_FLAGS
^ permalink raw reply
* Re: linux-next: manual merge of the vfs tree with the overlayfs tree
From: Miklos Szeredi @ 2016-05-02 8:30 UTC (permalink / raw)
To: Al Viro; +Cc: Stephen Rothwell, linux-next, Kernel Mailing List
In-Reply-To: <20160502010838.GJ25498@ZenIV.linux.org.uk>
On Mon, May 2, 2016 at 3:08 AM, Al Viro <viro@zeniv.linux.org.uk> wrote:
> On Mon, May 02, 2016 at 10:59:43AM +1000, Stephen Rothwell wrote:
>> Hi Al,
>>
>> Today's linux-next merge of the vfs tree got a conflict in:
>>
>> fs/overlayfs/super.c
>>
>> between commit:
>>
>> d478d6a8b8b7 ("ovl: ignore permissions on underlying lookup")
>>
>> from the overlayfs tree and commit:
>>
>> 5cf3e7fecb43 ("ovl_lookup_real(): use lookup_one_len_unlocked()")
>>
>> from the vfs tree.
>>
>> I fixed it up (I used the overlayfs version, since I don't know the
>> locking consequences of teh change from lookup_one_len() to lookup_hash())
>> and can carry the fix as necessary. This is now fixed as far as linux-next
>> is concerned, but any non trivial conflicts should be mentioned to your
>> upstream maintainer when your tree is submitted for merging. You may
>> also want to consider cooperating with the maintainer of the conflicting
>> tree to minimise any particularly complex conflicts.
>
> Should use lookup_one_len_unlocked(), actually. lookup_hash() is
> a microoptimization, losing a lot more on excessive i_mutex contention.
> Either variant works, though.
No, here it's not an optimization:
"More specifically using lookup_one_len() causes a problem when the lower
directory lacks search permission for a specific user while the upper
directory does have search permission. Since lookups are cached, this
causes inconsistency in behavior: success depends on who did the first
lookup."
Thanks,
Miklos
^ permalink raw reply
* linux-next: build failure after merge of the akpm-current tree
From: Stephen Rothwell @ 2016-05-02 8:32 UTC (permalink / raw)
To: Andrew Morton, Michael Ellerman, Benjamin Herrenschmidt,
linuxppc-dev
Cc: linux-next, linux-kernel, Ebru Akagunduz, Rik van Riel,
Aneesh Kumar K.V
Hi Andrew,
After merging the akpm-current tree, today's linux-next build (powerpc
allyesconfig and pseries_le_defconfig) failed like this:
In file included from include/linux/mm.h:394:0,
from mm/huge_memory.c:10:
include/linux/huge_mm.h:53:22: error: initializer element is not constant
#define HPAGE_PMD_NR (1<<HPAGE_PMD_ORDER)
^
mm/huge_memory.c:104:62: note: in expansion of macro 'HPAGE_PMD_NR'
static unsigned int khugepaged_max_ptes_swap __read_mostly = HPAGE_PMD_NR/8;
^
Caused by commit
6d34b9749be2 ("mm: make optimistic check for swapin readahead")
interacting with commit
dd1842a2a448 ("powerpc/mm: Make page table size a variable")
from the powerpc tree.
I applied this fix patch for today (hopefully this is still initialised
early enough):
From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Mon, 2 May 2016 18:25:42 +1000
Subject: [PATCH] mm: make optimistic check for swapin readahead fix
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
mm/huge_memory.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/mm/huge_memory.c b/mm/huge_memory.c
index f0cd9dbc1157..6aabfa166b6d 100644
--- a/mm/huge_memory.c
+++ b/mm/huge_memory.c
@@ -101,7 +101,7 @@ static DECLARE_WAIT_QUEUE_HEAD(khugepaged_wait);
* fault.
*/
static unsigned int khugepaged_max_ptes_none __read_mostly;
-static unsigned int khugepaged_max_ptes_swap __read_mostly = HPAGE_PMD_NR/8;
+static unsigned int khugepaged_max_ptes_swap __read_mostly;
static unsigned long allocstall;
static int khugepaged(void *none);
@@ -703,6 +703,7 @@ static int __init hugepage_init(void)
khugepaged_pages_to_scan = HPAGE_PMD_NR * 8;
khugepaged_max_ptes_none = HPAGE_PMD_NR - 1;
+ khugepaged_max_ptes_swap = HPAGE_PMD_NR / 8;
/*
* hugepages can't be allocated by the buddy allocator
*/
--
2.7.0
--
Cheers,
Stephen Rothwell
^ permalink raw reply related
* linux-next: Tree for May 2
From: Stephen Rothwell @ 2016-05-02 8:40 UTC (permalink / raw)
To: linux-next; +Cc: linux-kernel
Hi all,
Changes since 20160429:
The powerpc tree gained a conflict against Linus' tree.
The vfs tree gained conflicts against Linus'and the overlayfs trees and
a build failure for which I applied a merge fix patch.
The tpmdd tree still had its build failure for which I added a fix patch.
The rcu tree gained a build failure for which I reverted a commit.
The xen-tip tree gained a conflict against the tip tree.
The driver-core tree gained a build failure for which I reverted a commit.
The tty tree gained a conflict against the mips tree.
The akpm-current tree gained a conflict against the powerpc tree and a
build failure for which I applied a merge fix patch.
Non-merge commits (relative to Linus' tree): 7479
6698 files changed, 279887 insertions(+), 139672 deletions(-)
----------------------------------------------------------------------------
I have created today's linux-next tree at
git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
(patches at http://www.kernel.org/pub/linux/kernel/next/ ). If you
are tracking the linux-next tree using git, you should not use "git pull"
to do so as that will try to merge the new linux-next release with the
old one. You should use "git fetch" and checkout or reset to the new
master.
You can see which trees have been included by looking in the Next/Trees
file in the source. There are also quilt-import.log and merge.log
files in the Next directory. Between each merge, the tree was built
with a ppc64_defconfig for powerpc and an allmodconfig (with
CONFIG_BUILD_DOCSRC=n) for x86_64, a multi_v7_defconfig for arm and a
native build of tools/perf. After the final fixups (if any), I do an
x86_64 modules_install followed by builds for x86_64 allnoconfig,
powerpc allnoconfig (32 and 64 bit), ppc44x_defconfig, allyesconfig
(this fails its final link) and pseries_le_defconfig and i386, sparc
and sparc64 defconfig.
Below is a summary of the state of the merge.
I am currently merging 234 trees (counting Linus' and 35 trees of patches
pending for Linus' tree).
Stats about the size of the tree over time can be seen at
http://neuling.org/linux-next-size.html .
Status of my local build tests will be at
http://kisskb.ellerman.id.au/linux-next . If maintainers want to give
advice about cross compilers/configs that work, we are always open to add
more builds.
Thanks to Randy Dunlap for doing many randconfig builds. And to Paul
Gortmaker for triage and bug fixes.
--
Cheers,
Stephen Rothwell
$ git checkout master
$ git reset --hard stable
Merging origin/master (da9373d67c8a Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/evalenti/linux-soc-thermal)
Merging fixes/master (9735a22799b9 Linux 4.6-rc2)
Merging kbuild-current/rc-fixes (3d1450d54a4f Makefile: Force gzip and xz on module install)
Merging arc-current/for-curr (1b10cb21d888 ARC: add support for reserved memory defined by device tree)
Merging arm-current/fixes (ac36a881b72a ARM: 8564/1: fix cpu feature extracting helper)
Merging m68k-current/for-linus (7b8ba82ad4ad m68k/defconfig: Update defconfigs for v4.6-rc2)
Merging metag-fixes/fixes (0164a711c97b metag: Fix ioremap_wc/ioremap_cached build errors)
Merging powerpc-fixes/fixes (d701cca6744f powerpc: wire up preadv2 and pwritev2 syscalls)
Merging powerpc-merge-mpe/fixes (bc0195aad0da Linux 4.2-rc2)
Merging sparc/master (49fa5230462f sparc64: Fix bootup regressions on some Kconfig combinations.)
Merging net/master (f27337e16f2d ip_tunnel: fix preempt warning in ip tunnel creation/updating)
Merging ipsec/master (d6af1a31cc72 vti: Add pmtu handling to vti_xmit.)
Merging ipvs/master (bcf493428840 netfilter: ebtables: Fix extension lookup with identical name)
Merging wireless-drivers/master (e2841ea91611 Merge tag 'iwlwifi-for-kalle-2016-04-12_2' of https://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-fixes)
Merging mac80211/master (e6436be21e77 mac80211: fix statistics leak if dev_alloc_name() fails)
Merging sound-current/for-linus (2d2c038a9999 ALSA: usb-audio: Quirk for yet another Phoenix Audio devices (v2))
Merging pci-current/for-linus (67e658794ca1 cxgb4: Set VPD size so we can read both VPD structures)
Merging driver-core.current/driver-core-linus (c3b46c73264b Linux 4.6-rc4)
Merging tty.current/tty-linus (02da2d72174c Linux 4.6-rc5)
Merging usb.current/usb-linus (550af790882f Merge tag 'usb-serial-4.6-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial into usb-linus)
Merging usb-gadget-fixes/fixes (38740a5b87d5 usb: gadget: f_fs: Fix use-after-free)
Merging usb-serial-fixes/usb-linus (613ac23a46e1 USB: serial: cp210x: add Straizona Focusers device ids)
Merging usb-chipidea-fixes/ci-for-usb-stable (d144dfea8af7 usb: chipidea: otg: change workqueue ci_otg as freezable)
Merging staging.current/staging-linus (431adc0aeca6 Merge tag 'iio-fixes-for-4.6c' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-linus)
Merging char-misc.current/char-misc-linus (1db488d12894 Drivers: hv: vmbus: Fix signaling logic in hv_need_to_signal_on_read())
Merging input-current/for-linus (eb43335c4095 Input: atmel_mxt_ts - use mxt_acquire_irq in mxt_soft_reset)
Merging crypto-current/master (9e209fcfb804 crypto: qat - fix invalid pf2vf_resp_wq logic)
Merging ide/master (1993b176a822 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide)
Merging devicetree-current/devicetree/merge (f76502aa9140 of/dynamic: Fix test for PPC_PSERIES)
Merging rr-fixes/fixes (8244062ef1e5 modules: fix longstanding /proc/kallsyms vs module insertion race.)
Merging vfio-fixes/for-linus (8160c4e45582 vfio: fix ioctl error handling)
Merging kselftest-fixes/fixes (505ce68c6da3 selftest/seccomp: Fix the seccomp(2) signature)
Merging backlight-fixes/for-backlight-fixes (68feaca0b13e backlight: pwm: Handle EPROBE_DEFER while requesting the PWM)
Merging ftrace-fixes/for-next-urgent (6224beb12e19 tracing: Have branch tracer use recursive field of task struct)
Merging mfd-fixes/for-mfd-fixes (1b52e50f2a40 mfd: max77843: Fix max77843_chg_init() return on error)
Merging drm-intel-fixes/for-linux-next-fixes (4ea3959018d0 drm/i915: Make RPS EI/thresholds multiple of 25 on SNB-BDW)
Merging asm-generic/master (987aedb5d6f6 generic syscalls: wire up preadv2 and pwritev2 syscalls)
Merging arc/for-next (767cb9d8abfa ARC: Add eznps platform to Kconfig and Makefile)
Merging arm/for-next (c6433ebdc184 Merge branch 'devel-stable' into for-next)
Merging arm-perf/for-next/perf (4ba2578fa7b5 arm64: perf: don't expose CHAIN event in sysfs)
Merging arm-soc/for-next (bf7d0eb9d294 Merge branch 'fixes' into for-next)
Merging at91/at91-next (087fb002b466 Merge branch 'at91-4.7-dt' into at91-next)
Merging bcm2835-dt/bcm2835-dt-next (896ad420db8d dt/bindings: bcm2835: correct description for DMA-int)
Merging bcm2835-soc/bcm2835-soc-next (92e963f50fc7 Linux 4.5-rc1)
Merging bcm2835-drivers/bcm2835-drivers-next (92e963f50fc7 Linux 4.5-rc1)
Merging bcm2835-defconfig/bcm2835-defconfig-next (3652bb35abf6 ARM: bcm2835: Enable NFS root support.)
Merging berlin/berlin/for-next (9a7e06833249 Merge branch 'berlin/fixes' into berlin/for-next)
Merging cortex-m/for-next (f719a0d6a854 ARM: efm32: switch to vendor,device compatible strings)
Merging imx-mxs/for-next (ca2c44b4980c Merge branch 'imx/defconfig64' into for-next)
Merging keystone/next (02e15d234006 Merge branch 'for_4.7/kesytone' into next)
Merging mvebu/for-next (01316cded75b Merge branch 'mvebu/defconfig' into mvebu/for-next)
Merging omap/for-next (5c62bda50efd Merge branch 'omap-for-v4.7/dt' into for-next)
Merging omap-pending/for-next (c20c8f750d9f ARM: OMAP2+: hwmod: fix _idle() hwmod state sanity check sequence)
Merging qcom/for-next (100b83d52f51 ARM: dts: msm8974: Add SCM firmware node)
Merging renesas/next (e5c640c6f9cc Merge branches 'heads/arm64-defconfig-for-v4.7', 'heads/arm64-dt-pm-domain-for-v4.7', 'heads/dt-for-v4.7' and 'heads/pci-defconfig-for-v4.7' into next)
Merging rockchip/for-next (48f2a282081f Merge branch 'v4.7-clk/next' into for-next)
Merging rpi/for-rpi-next (bc0195aad0da Linux 4.2-rc2)
Merging samsung/for-next (92e963f50fc7 Linux 4.5-rc1)
Merging samsung-krzk/for-next (be28390fe8f5 Merge branch 'fixes' into for-next)
Merging sunxi/sunxi/for-next (f1e9b6675c26 Merge branches 'sunxi/clocks-for-4.7', 'sunxi/dt-for-4.7' and 'sunxi/fixes-for-4.6' into sunxi/for-next)
Merging tegra/for-next (5c282bc9d0a3 Merge branch for-4.7/defconfig into for-next)
Merging arm64/for-next/core (6f26b3671184 arm64: kaslr: increase randomization granularity)
CONFLICT (content): Merge conflict in arch/arm/kvm/arm.c
Merging blackfin/for-linus (391e74a51ea2 eth: bf609 eth clock: add pclk clock for stmmac driver probe)
CONFLICT (content): Merge conflict in arch/blackfin/mach-common/pm.c
Merging c6x/for-linux-next (ca3060d39ae7 c6x: Use generic clkdev.h header)
Merging cris/for-next (f9f3f864b5e8 cris: Fix section mismatches in architecture startup code)
Merging h8300/h8300-next (8cad489261c5 h8300: switch EARLYCON)
Merging hexagon/linux-next (02cc2ccfe771 Revert "Hexagon: fix signal.c compile error")
Merging ia64/next (7e26e9ff0a93 pstore: Fix return type of pstore_is_mounted())
Merging m68k/for-next (efbec135f11d m68k: Fix misspellings in comments.)
Merging m68knommu/for-next (02da2d72174c Linux 4.6-rc5)
Merging metag/for-next (c8b6ad8b3f87 metag: ftrace: remove the misleading comment for ftrace_dyn_arch_init)
Merging microblaze/next (10f4b26deb41 microblaze/PCI: export isa_io_base to fix link errors)
Merging mips/mips-for-linux-next (7620fecf8342 Merge branch '4.6-fixes' into mips-for-linux-next)
Merging nios2/for-next (a8950e49bd24 nios2: memset: use the right constraint modifier for the %4 output operand)
Merging parisc-hd/for-next (695499920489 parisc: Add native high-resolution sched_clock() implementation)
Merging powerpc/next (c3c900cf192e powerpc/mm/radix: Document software bits for radix)
CONFLICT (content): Merge conflict in arch/powerpc/kernel/prom.c
Merging powerpc-mpe/next (bc0195aad0da Linux 4.2-rc2)
Merging fsl/next (fba4e9f9898a powerpc/fsl/dts: Add "jedec,spi-nor" flash compatible)
Merging mpc5xxx/next (39e69f55f857 powerpc: Introduce the use of the managed version of kzalloc)
Merging s390/features (7072276e6c0e s390/Kconfig: make z196 the default processor type)
Merging sparc-next/master (9f935675d41a Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input)
Merging tile/master (4ef00aa30a3f tile: sort the "select" lines in the TILE/TILEGX configs)
Merging uml/linux-next (ad32a1f3c36b um: use %lx format specifiers for unsigned longs)
Merging unicore32/unicore32 (d670878e2c9a unicore32: Remove ARCH_HAS_CPUFREQ config option)
Merging xtensa/for_next (9da8320bb977 xtensa: add test_kc705_hifi variant)
Merging btrfs/next (bb7ab3b92e46 btrfs: Fix misspellings in comments.)
Merging btrfs-kdave/for-next (39cbac2436dc Merge branch 'for-next-current-4.7-20160429' into for-next-20160429)
Merging ceph/master (d3767f0faeda rbd: report unsupported features to syslog)
Merging cifs/for-next (2b6c3239da3f cifs: remove any preceding delimiter from prefix_path)
Merging configfs/for-next (96c22a329351 configfs: fix CONFIGFS_BIN_ATTR_[RW]O definitions)
Merging ecryptfs/next (933c32fe0e42 ecryptfs: drop null test before destroy functions)
Merging ext3/for_next (2a28900be206 udf: Export superblock magic to userspace)
Merging ext4/dev (8f4c50d70cc1 ext4: remove trailing \n from ext4_warning/ext4_error calls)
Merging f2fs/dev (aca9958e97b7 ext4 crypto: migrate into vfs's crypto engine)
Merging fscache/fscache (b00c2ae2ed3c FS-Cache: Don't override netfs's primary_index if registering failed)
Merging fuse/for-next (2c932d4c9165 fuse: Fix return value from fuse_get_user_pages())
Merging gfs2/for-next (9c7fe83530a3 GFS2: Add calls to gfs2_holder_uninit in two error handlers)
Merging jfs/jfs-next (6ed71e9819ac jfs: Coalesce some formats)
Merging nfs/linux-next (04974df8049f Linux 4.6-rc6)
Merging nfsd/nfsd-next (ac503e4a309a nfsd: use short read as well as i_size to set eof)
Merging orangefs/for-next (e56f49814250 orangefs: remove unused variable)
Merging overlayfs/overlayfs-next (e3608e3f68f6 Btrfs: fix crash/invalid memory access on fsync when using overlayfs)
CONFLICT (content): Merge conflict in fs/ext4/file.c
Merging v9fs/for-next (a333e4bf2556 fs/9p: use fscache mutex rather than spinlock)
Merging ubifs/linux-next (c27cb97218b3 ubifs: Remove unused header)
Merging xfs/for-next (d8bdd04e309b Merge branch 'xfs-4.7-misc-fixes' into for-next)
Merging file-locks/linux-next (5af9c2e19da6 Merge branch 'akpm' (patches from Andrew))
Merging vfs/for-next (7d2dbb9faf05 fixups for PAGE_CACHE_SIZE/page_cache_release-induced conflicts)
CONFLICT (content): Merge conflict in fs/overlayfs/super.c
CONFLICT (content): Merge conflict in fs/nfs/dir.c
CONFLICT (content): Merge conflict in fs/ecryptfs/mmap.c
CONFLICT (content): Merge conflict in fs/cifs/file.c
Applying: gfs2: fix up for i_mutex -> i_rwsem change
Merging pci/next (a84e2b702bd6 Merge branches 'pci/host-armada', 'pci/host-designware' and 'pci/host-keystone' into next)
Applying: iommu/amd: fix up for aliases API change
Merging hid/for-next (a299086f23d1 Merge branch 'for-4.7/upstream' into for-next)
Merging i2c/i2c/for-next (b3b859225348 Merge branch 'i2c/for-4.7' into i2c/for-next)
Merging jdelvare-hwmon/master (f02de116250d Documentation/hwmon: Update links in max34440)
Merging dmi/master (c3db05ecf8ac firmware: dmi_scan: Save SMBIOS Type 9 System Slots)
Merging hwmon-staging/hwmon-next (71a9c23246fe hwmon: (it87) Add support for IT8628E)
Merging v4l-dvb/master (dcb7c0b9e2ad Merge branch 'patchwork' into to_next)
Merging libata/for-next (c5cf484d03f1 Merge branch 'for-4.6-fixes' into for-next)
Merging pm/linux-next (4bbb40bd0dce Merge branch 'pm-tools' into linux-next)
CONFLICT (content): Merge conflict in arch/arm/mach-shmobile/Makefile
CONFLICT (content): Merge conflict in MAINTAINERS
Merging idle/next (f55532a0c0b8 Linux 4.6-rc1)
Merging thermal/next (81ad4276b505 Thermal: Ignore invalid trip points)
Merging thermal-soc/next (ddc8fdc6e2f0 Merge branch 'work-fixes' into work-next)
Merging ieee1394/for-next (384fbb96f926 firewire: nosy: Replace timeval with timespec64)
Merging dlm/next (82c7d823cc31 dlm: config: Fix ENOMEM failures in make_cluster())
Merging swiotlb/linux-next (386744425e35 swiotlb: Make linux/swiotlb.h standalone includible)
Merging slave-dma/next (6ebe83cb5b65 Merge branch 'topic/pxa' into next)
Merging net-next/master (70e927b98bb6 mdio_bus: Fix MDIO bus scanning in __mdiobus_register())
Merging ipsec-next/master (cb866e3298cd xfrm: Increment statistic counter on inner mode error)
Merging ipvs-next/master (8fb04d9fc70a ipvs: don't alter conntrack in OPS mode)
Merging wireless-drivers-next/master (9d3f65b0c2dd mwifiex: increase dwell time for active scan)
Merging bluetooth/master (50d5d2bd1d42 Merge branch 'sh_eth-next')
Merging mac80211-next/master (d686b920abb7 nl80211: use nla_put_u64_64bit() for the remaining u64 attributes)
Merging rdma/for-next (ccea5f0f0179 RDMA/i40iw: Fix for removing quad hash entries)
Merging rdma-leon/rdma-next (c3b46c73264b Linux 4.6-rc4)
Merging rdma-leon-test/testing/rdma-next (c3b46c73264b Linux 4.6-rc4)
Merging mtd/master (20c07a5bf094 mtd: nand: Drop mtd.owner requirement in nand_scan)
Merging l2-mtd/master (abbbc60a0c69 mtd: pmc551: add __init attribute)
Merging nand/nand/next (4ab41e74ae5d mtd: brcmnand: respect ECC algorithm set by NAND subsystem)
Merging crypto/master (d1497977fecb crypto: s5p-sss - fix incorrect usage of scatterlists api)
Merging drm/drm-next (b89359bdf0f1 Merge branch 'for-next' of http://git.agner.ch/git/linux-drm-fsl-dcu into drm-next)
Applying: drm/i915: fix up for edp_low_vswing change
Merging drm-panel/drm/panel/for-next (1ac3bac7c733 drm/panel: simple: Add support for Innolux AT070TN92)
Merging drm-intel/for-linux-next (5b4fd5b1111b drm/i915: Update DRIVER_DATE to 20160425)
CONFLICT (content): Merge conflict in drivers/gpu/drm/i915/intel_ringbuffer.c
Merging drm-tegra/drm/tegra/for-next (057eab2013ec MAINTAINERS: Remove Terje Bergström as Tegra DRM maintainer)
Merging drm-misc/topic/drm-misc (be35f94f5c83 drm/atomic: Add missing drm_crtc_internal.h include)
Merging drm-exynos/exynos-drm/for-next (25364a9e54fb Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid)
Merging drm-msm/msm-next (5b0e84c5bef6 drm/msm/mdp4: Don't manage DSI PLL regulators in MDP driver)
Merging hdlcd/for-upstream/hdlcd (69c2565a3cca drm: ARM HDLCD - fix an error code)
Merging drm-vc4/drm-vc4-next (5883980313af drm/vc4: Fix NULL deref in HDMI init error path)
Merging kbuild/for-next (7eb09bb55394 Merge branch 'kbuild/kbuild' into kbuild/for-next)
Merging kconfig/for-next (5bcba792bb30 localmodconfig: Fix whitespace repeat count after "tristate")
Merging regmap/for-next (8eabbbb9c0c9 Merge remote-tracking branches 'regmap/topic/doc' and 'regmap/topic/flat' into regmap-next)
Merging sound/for-next (57dd5414a087 ALSA: usb-audio: Limit retrying sample rate reads)
Merging sound-asoc/for-next (8df52741e0de Merge remote-tracking branches 'asoc/topic/tlv320aic32x4', 'asoc/topic/topology', 'asoc/topic/wm8960' and 'asoc/topic/wm8962' into asoc-next)
Merging modules/modules-next (e2d1248432c4 module: Disable MODULE_FORCE_LOAD when MODULE_SIG_FORCE is enabled)
Merging input/next (5ad629a82de3 Input: byd - don't wipe dynamically allocated memory twice)
Merging block/for-next (783f8d0af678 Merge branch 'for-4.7/drivers' into for-next)
Merging device-mapper/for-next (ecdb57d205b9 dm raid: make sure no feature flags are set in metadata)
Merging pcmcia/master (e8e68fd86d22 pcmcia: do not break rsrc_nonstatic when handling anonymous cards)
Merging mmc-uh/next (b941a0e9598e mmc: sdhci-of-arasan: fix set_clock when a phy is supported)
Merging md/for-next (b8a0b8e94648 raid5: delete unnecessary warnning)
Merging mfd/for-mfd-next (ba5776ab6f09 mfd: cros_ec: Allow building for ARM64)
Merging backlight/for-backlight-next (60d613d6aef4 backlight: pwm_bl: Free PWM requested by legacy API on error path)
Merging battery/master (4a99fa06a8ca sbs-battery: fix power status when battery charging near dry)
Merging omap_dss2/for-next (32ad61951574 video: fbdev: sis: remove unused variable)
Merging regulator/for-next (670786c76180 Merge remote-tracking branches 'regulator/topic/tps6524x' and 'regulator/topic/twl' into regulator-next)
Merging security/next (da20dfe6b50e fs: fix over-zealous use of "const")
Merging integrity/next (8eb27209596a ima: fix func_ enumeration ordering)
Merging keys/keys-next (1ea6102bba5f Merge branch 'keys-trust' into keys-next)
CONFLICT (content): Merge conflict in crypto/asymmetric_keys/pkcs7_parser.c
Merging selinux/next (c2316dbf1242 selinux: apply execstack check on thread stacks)
Merging tpmdd/next (54745cb48339 tpm: select ANON_INODES for proxy driver)
Applying: tpm: fix for typo in tpm/tpm_ibmvtpm.c
Merging watchdog/master (d1ed3ba4e3d7 watchdog: Ensure that wdd is not dereferenced if NULL)
Merging iommu/next (1229bc9a9973 Merge branches 'iommu/fixes', 'arm/io-pgtable', 'arm/rockchip', 'arm/omap', 'x86/vt-d', 'ppc/pamu' and 'x86/amd' into next)
Merging dwmw2-iommu/master (22e2f9fa63b0 iommu/vt-d: Use per-cpu IOVA caching)
Merging vfio/next (5ed4aba1265f vfio_iommu_spapr_tce: Remove unneeded iommu_group_get_iommudata)
Merging jc_docs/docs-next (2fd872bd84b3 Doc: correct the location of sysrq.c)
Merging trivial/for-next (52bbe141f37f gitignore: fix wording)
Merging audit/next (188e3c5cd2b6 tty: provide tty_name() even without CONFIG_TTY)
Merging devicetree/devicetree/next (48a9b733e644 of/irq: Rename "intc_desc" to "of_intc_desc" to fix OF on sh)
Merging dt-rh/for-next (1c986e3643d2 of: document refcount incrementation of of_get_cpu_node())
CONFLICT (content): Merge conflict in Documentation/devicetree/bindings/gpu/nvidia,gk20a.txt
Merging mailbox/mailbox-for-next (dd28216528cf mailbox/omap: kill omap_mbox_{save/restore}_ctx() functions)
Merging spi/for-next (a2028e27ddcf Merge remote-tracking branches 'spi/topic/pic32-qspi', 'spi/topic/pxa2xx' and 'spi/topic/xlp' into spi-next)
Merging tip/auto-latest (432bc85d1419 Merge branch 'WIP.futex')
CONFLICT (content): Merge conflict in drivers/firmware/efi/arm-init.c
CONFLICT (content): Merge conflict in drivers/cpufreq/longhaul.c
Merging clockevents/clockevents/next (cee77c2c5b57 clocksource/drivers/tango-xtal: Fix incorrect test)
Merging edac/linux_next (12f0721c5a70 sb_edac: correctly fetch DIMM width on Ivy Bridge and Haswell)
Merging edac-amd/for-next (5359534505c7 EDAC, i7core: Remove double buffering of error records)
Merging irqchip/irqchip/for-next (a66ce4b7d9d2 Merge branch 'irqchip/mvebu' into irqchip/for-next)
Merging ftrace/for-next (904d1857ad09 tracing: Remove unused function trace_current_buffer_lock_reserve())
Merging rcu/rcu/next (16d7afcaa530 rcu: No ordering for rcu_assign_pointer() of NULL)
Applying: Revert "rcu: No ordering for rcu_assign_pointer() of NULL"
Merging kvm/linux-next (05b1159e641f Merge tag 'kvms390-20160420' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux into next)
Merging kvm-arm/next (02e0b7600f83 arm64: kvm: Add support for 16K pages)
Merging kvm-ppc/kvm-ppc-next (c63517c2e381 KVM: PPC: Book3S: correct width in XER handling)
Merging kvm-ppc-paulus/kvm-ppc-next (58ded4201ff0 KVM: PPC: Add support for 64bit TCE windows)
Merging kvms390/next (0c5022f50844 KVM: s390: document KVM_CAP_S390_RI)
Merging xen-tip/linux-next (d2c6bd8d6259 xen/x86: don't lose event interrupts)
CONFLICT (content): Merge conflict in drivers/xen/efi.c
CONFLICT (content): Merge conflict in arch/arm64/kernel/setup.c
Applying: xen: efi: merge fix patch
Merging percpu/for-next (18fc93fd6412 percpu: remove PERCPU_ENOUGH_ROOM which is stale definition)
Merging workqueues/for-next (e55c35cf41c9 Merge branch 'for-4.6-fixes' into for-next)
Merging drivers-x86/for-next (19d46ee1aec0 asus-laptop: correct error handling in sysfs_acpi_set)
Merging chrome-platform/for-next (1dc318166a9a platform/chrome: use to_platform_device())
Merging hsi/for-next (87d99063be01 HSI: ssi-protocol: Use handshake logic from n950)
Merging leds/for-next (f15c65afddbe leds: ss4200: add DMI data for FSC SCALEO Home Server)
Merging ipmi/for-next (a1b4e31bfabb IPMI: reserve memio regions separately)
Merging driver-core/driver-core-next (8ac0fba2da41 isa: Decouple X86_32 dependency from the ISA Kconfig option)
[master e5e926fadff5] Revert "isa: Decouple X86_32 dependency from the ISA Kconfig option"
Merging tty/tty-next (fa01e2ca9f53 serial: 8250: Integrate Fintek into 8250_base)
CONFLICT (content): Merge conflict in include/uapi/linux/serial_core.h
CONFLICT (content): Merge conflict in drivers/tty/serial/Makefile
Merging usb/usb-next (dc5878abf49c usb: core: move root hub's device node assignment after it is added to bus)
Merging usb-gadget/next (2a58f9c12bb3 usb: dwc3: gadget: disable automatic calculation of ACK TP NUMP)
Merging usb-serial/usb-next (8c34d82e9dc6 USB: serial: use IS_ENABLED() instead of checking for FOO || FOO_MODULE)
Merging usb-chipidea-next/ci-for-usb-next (4e332df63487 usb: otg-fsm: support multiple instances)
Merging staging/staging-next (99aded71b52c Staging: drivers: rtl8188eu: use sizeof(*ptr) instead of sizeof(struct))
CONFLICT (content): Merge conflict in drivers/iio/magnetometer/ak8975.c
Merging char-misc/char-misc-next (0a19f129d71f w1: add ability to set (SRAM) and store (EEPROM) configuration for temp sensors like DS18B20)
CONFLICT (content): Merge conflict in drivers/hv/ring_buffer.c
Merging extcon/extcon-next (453fc627c7b5 extcon: usb-gpio: add support for ACPI gpio interface)
Merging cgroup/for-next (e0f00aff2dcc Merge branch 'for-4.6-fixes' into for-next)
Merging scsi/for-next (3bc07b38a251 Merge branch 'fixes' into for-next)
Merging target-updates/for-next (5e47f1985d71 target: Fix target_release_cmd_kref shutdown comp leak)
Merging target-merge/for-next-merge (2994a7518317 cxgb4: update Kconfig and Makefile)
Merging pinctrl/for-next (9fa5482fbd17 Merge branch 'devel' into for-next)
Merging vhost/linux-next (e00f7bd22129 virtio: Silence uninitialized variable warning)
Merging remoteproc/for-next (7a6271a80cae remoteproc/wkup_m3: Use MODULE_DEVICE_TABLE to export alias)
Merging rpmsg/for-next (9735a22799b9 Linux 4.6-rc2)
Merging gpio/for-next (43e689b917d7 Merge branch 'devel' into for-next)
Merging dma-mapping/dma-mapping-next (d770e558e219 Linux 4.2-rc1)
Merging pwm/for-next (f55532a0c0b8 Linux 4.6-rc1)
Merging dma-buf/for-next (12566cc35d0e Merge tag 'pci-v4.6-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci)
Merging userns/for-next (f2ca379642d7 namei: permit linking with CAP_FOWNER in userns)
Merging ktest/for-next (f55532a0c0b8 Linux 4.6-rc1)
Merging clk/clk-next (58657d189a2f Merge branch 'clk-hw-register' (early part) into clk-next)
Merging aio/master (b562e44f507e Linux 4.5)
Merging kselftest/next (f55532a0c0b8 Linux 4.6-rc1)
Merging y2038/y2038 (4b277763c5b3 vfs: Add support to document max and min inode times)
Merging luto-misc/next (afd2ff9b7e1b Linux 4.4)
Merging borntraeger/linux-next (36f90b0a2ddd Linux 4.5-rc2)
Merging livepatching/for-next (6d9122078097 Merge branch 'for-4.7/core' into for-next)
Merging coresight/next (620a7feb9b3c coresight: etb10: adjust read pointer only when needed)
CONFLICT (content): Merge conflict in drivers/hwtracing/coresight/coresight-etm4x.h
Merging rtc/rtc-next (820c5327d631 rtc: ds3232: fix call trace when rtc->ops_lock is used as NULL)
Merging hwspinlock/for-next (bd5717a4632c hwspinlock: qcom: Correct msb in regmap_field)
Merging nvdimm/libnvdimm-for-next (a390180291dd libnvdimm, pfn: fix nvdimm_namespace_add_poison() vs section alignment)
Merging akpm-current/current (59eebedc7dd4 ipc/msg.c: use freezable blocking call)
CONFLICT (content): Merge conflict in include/linux/efi.h
CONFLICT (content): Merge conflict in arch/tile/Kconfig
CONFLICT (content): Merge conflict in arch/powerpc/include/asm/book3s/64/pgtable.h
CONFLICT (content): Merge conflict in arch/mips/kernel/process.c
CONFLICT (content): Merge conflict in arch/mips/Kconfig
CONFLICT (content): Merge conflict in arch/cris/Kconfig
Applying: mm-rename-_count-field-of-the-struct-page-to-_refcount-fix6
$ git checkout -b akpm remotes/origin/akpm/master
Applying: drivers/net/wireless/intel/iwlwifi/dvm/calib.c: simplfy min() expression
Applying: mm: make mmap_sem for write waits killable for mm syscalls
Applying: mm: make vm_mmap killable
Applying: mm: make vm_munmap killable
Applying: mm, aout: handle vm_brk failures
Applying: mm, elf: handle vm_brk error
Applying: mm: make vm_brk killable
Applying: mm, proc: make clear_refs killable
Applying: mm, fork: make dup_mmap wait for mmap_sem for write killable
Applying: ipc, shm: make shmem attach/detach wait for mmap_sem killable
Applying: vdso: make arch_setup_additional_pages wait for mmap_sem for write killable
Applying: coredump: make coredump_wait wait for mmap_sem for write killable
Applying: aio: make aio_setup_ring killable
Applying: exec: make exec path waiting for mmap_sem killable
Applying: prctl: make PR_SET_THP_DISABLE wait for mmap_sem killable
Applying: uprobes: wait for mmap_sem for write killable
Applying: drm/i915: make i915_gem_mmap_ioctl wait for mmap_sem killable
Applying: drm/radeon: make radeon_mn_get wait for mmap_sem killable
Applying: drm/amdgpu: make amdgpu_mn_get wait for mmap_sem killable
Applying: drm/amdgpu: use ERR_PTR() to return from amdgpu_mn_get
Merging akpm/master (94f058ac6568 drm/amdgpu: use ERR_PTR() to return from amdgpu_mn_get)
Applying: mm: make optimistic check for swapin readahead fix
^ permalink raw reply
* Re: linux-next: Tree for May 2 [WARNING: at fs/dcache.c]
From: Sergey Senozhatsky @ 2016-05-02 10:15 UTC (permalink / raw)
To: linux-fsdevel
Cc: Alexander Viro, Stephen Rothwell, linux-next, linux-kernel,
Sergey Senozhatsky
In-Reply-To: <20160502184018.502e9e7c@canb.auug.org.au>
On (05/02/16 18:40), Stephen Rothwell wrote:
> Hi all,
>
> Changes since 20160429
Hello,
[ 0.368791] ------------[ cut here ]------------
[ 0.368850] WARNING: CPU: 0 PID: 1 at fs/dcache.c:1688 d_set_d_op+0x5e/0xcc
[ 0.368911] Modules linked in:
[ 0.369002] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.6.0-rc6-next-20160502-dbg-00005-gf58c9da-dirty #404
[ 0.369161] 0000000000000000 ffff880133067908 ffffffff811b8202 0000000000000000
[ 0.369371] 0000000000000000 ffff880133067948 ffffffff81039365 00000698e5dffe26
[ 0.369580] ffff880132c090c0 ffffffff81613680 ffff880132c040a0 ffff880132c08000
[ 0.369791] Call Trace:
[ 0.369846] [<ffffffff811b8202>] dump_stack+0x4d/0x63
[ 0.369904] [<ffffffff81039365>] __warn+0xb8/0xd3
[ 0.369962] [<ffffffff810393e6>] warn_slowpath_null+0x18/0x1a
[ 0.370021] [<ffffffff811012f6>] d_set_d_op+0x5e/0xcc
[ 0.370079] [<ffffffff8110d887>] simple_lookup+0x2e/0x45
[ 0.370137] [<ffffffff810f6fbf>] lookup_slow+0xdb/0x12d
[ 0.370197] [<ffffffff818915d0>] ? initrd_load+0x3f/0x3f
[ 0.370255] [<ffffffff810f86b6>] walk_component+0xc2/0x201
[ 0.370313] [<ffffffff810f7cec>] ? path_init+0x169/0x2a4
[ 0.370371] [<ffffffff810f9083>] path_lookupat+0x7e/0xff
[ 0.370429] [<ffffffff810f917c>] filename_lookup+0x78/0xd4
[ 0.370489] [<ffffffff8104f172>] ? atomic_notifier_call_chain+0xf/0x11
[ 0.370551] [<ffffffff81244346>] ? notify_update+0x29/0x2b
[ 0.370609] [<ffffffff81245d24>] ? vt_console_print+0x2f3/0x302
[ 0.370668] [<ffffffff810f74a9>] ? getname_flags+0x48/0x15a
[ 0.370726] [<ffffffff810fa525>] user_path_at_empty+0x32/0x38
[ 0.370785] [<ffffffff810fa525>] ? user_path_at_empty+0x32/0x38
[ 0.370845] [<ffffffff810f3432>] vfs_fstatat+0x4c/0x87
[ 0.370903] [<ffffffff810ad7ba>] ? get_page_from_freelist+0x567/0x6f1
[ 0.370963] [<ffffffff810f349e>] vfs_lstat+0x19/0x1b
[ 0.371021] [<ffffffff810f356d>] SyS_newlstat+0x15/0x2e
[ 0.371079] [<ffffffff811be1b3>] ? simple_strtoull+0x2c/0x48
[ 0.371138] [<ffffffff818917de>] clean_path+0x20/0x5e
[ 0.371196] [<ffffffff811be1d8>] ? simple_strtoul+0x9/0xb
[ 0.371254] [<ffffffff81891a5f>] ? parse_header+0x2d/0xda
[ 0.371313] [<ffffffff81892219>] do_name+0x75/0x27a
[ 0.371370] [<ffffffff81891705>] write_buffer+0x23/0x34
[ 0.371428] [<ffffffff8189174a>] flush_buffer+0x34/0x8c
[ 0.371487] [<ffffffff818ae483>] __gunzip+0x268/0x308
[ 0.371545] [<ffffffff818ae211>] ? decompress_method+0x66/0x66
[ 0.371604] [<ffffffff81891716>] ? write_buffer+0x34/0x34
[ 0.371662] [<ffffffff81890812>] ? set_debug_rodata+0x12/0x12
[ 0.371721] [<ffffffff818ae534>] gunzip+0x11/0x13
[ 0.371778] [<ffffffff818915d0>] ? initrd_load+0x3f/0x3f
[ 0.371837] [<ffffffff81891e81>] unpack_to_rootfs+0x13b/0x257
[ 0.371896] [<ffffffff818915d0>] ? initrd_load+0x3f/0x3f
[ 0.371954] [<ffffffff818920a1>] ? maybe_link.part.2+0x104/0x104
[ 0.372013] [<ffffffff818920b9>] populate_rootfs+0x18/0x103
[ 0.372072] [<ffffffff818920a1>] ? maybe_link.part.2+0x104/0x104
[ 0.372132] [<ffffffff81000417>] do_one_initcall+0x8b/0x10e
[ 0.372191] [<ffffffff81890812>] ? set_debug_rodata+0x12/0x12
[ 0.372250] [<ffffffff81890f6c>] kernel_init_freeable+0x11e/0x1a6
[ 0.372311] [<ffffffff8144293f>] kernel_init+0x9/0xeb
[ 0.372369] [<ffffffff81446c92>] ret_from_fork+0x22/0x40
[ 0.372428] [<ffffffff81442936>] ? rest_init+0x7d/0x7d
[ 0.372503] ---[ end trace ce49db5ed97cc037 ]---
[ 0.372589] Unpacking initramfs...
-ss
^ permalink raw reply
* Re: linux-next: Tree for May 2 [WARNING: at fs/dcache.c]
From: Mateusz Guzik @ 2016-05-02 10:33 UTC (permalink / raw)
To: Sergey Senozhatsky
Cc: linux-fsdevel, Alexander Viro, Stephen Rothwell, linux-next,
linux-kernel, Sergey Senozhatsky
In-Reply-To: <20160502101524.GA417@swordfish>
On Mon, May 02, 2016 at 07:15:24PM +0900, Sergey Senozhatsky wrote:
> On (05/02/16 18:40), Stephen Rothwell wrote:
> > Hi all,
> >
> > Changes since 20160429
>
> Hello,
>
> [ 0.368791] ------------[ cut here ]------------
> [ 0.368850] WARNING: CPU: 0 PID: 1 at fs/dcache.c:1688 d_set_d_op+0x5e/0xcc
> [ 0.368911] Modules linked in:
> [ 0.369002] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.6.0-rc6-next-20160502-dbg-00005-gf58c9da-dirty #404
> [ 0.369161] 0000000000000000 ffff880133067908 ffffffff811b8202 0000000000000000
> [ 0.369371] 0000000000000000 ffff880133067948 ffffffff81039365 00000698e5dffe26
> [ 0.369580] ffff880132c090c0 ffffffff81613680 ffff880132c040a0 ffff880132c08000
> [ 0.369791] Call Trace:
> [ 0.369846] [<ffffffff811b8202>] dump_stack+0x4d/0x63
> [ 0.369904] [<ffffffff81039365>] __warn+0xb8/0xd3
> [ 0.369962] [<ffffffff810393e6>] warn_slowpath_null+0x18/0x1a
> [ 0.370021] [<ffffffff811012f6>] d_set_d_op+0x5e/0xcc
> [ 0.370079] [<ffffffff8110d887>] simple_lookup+0x2e/0x45
The issue is that 2 macros have the same value:
#define DCACHE_OP_REAL 0x08000000
#define DCACHE_PAR_LOOKUP 0x08000000 /* being looked up
(with parent locked shared) */
Verified with switching one to 0x10000000 and the warning went away.
--
Mateusz Guzik
^ permalink raw reply
* Re: efi_enabled(EFI_PARAVIRT) use
From: Matt Fleming @ 2016-05-02 10:45 UTC (permalink / raw)
To: Shannon Zhao
Cc: Ard Biesheuvel, Stefano Stabellini, Ingo Molnar, Stephen Rothwell,
Luis R. Rodriguez, Jeremy Fitzhardinge, Konrad Rzeszutek Wilk,
Stefano Stabellini, Xen Devel, Thomas Gleixner, Ingo Molnar,
H. Peter Anvin, Peter Zijlstra, linux-next,
linux-kernel@vger.kernel.org, Borislav Petkov
In-Reply-To: <57261483.10500@linaro.org>
On Sun, 01 May, at 10:36:51PM, Shannon Zhao wrote:
> So is there any other way you suggest?
Would this work (compile tested but not runtime tested)?
---
diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
index 3a69ed5ecfcb..13d8be16447a 100644
--- a/drivers/firmware/efi/efi.c
+++ b/drivers/firmware/efi/efi.c
@@ -469,12 +469,14 @@ device_initcall(efi_load_efivars);
FIELD_SIZEOF(struct efi_fdt_params, field) \
}
-static __initdata struct {
+struct params {
const char name[32];
const char propname[32];
int offset;
int size;
-} dt_params[] = {
+};
+
+static __initdata struct params fdt_params[] = {
UEFI_PARAM("System Table", "linux,uefi-system-table", system_table),
UEFI_PARAM("MemMap Address", "linux,uefi-mmap-start", mmap),
UEFI_PARAM("MemMap Size", "linux,uefi-mmap-size", mmap_size),
@@ -482,44 +484,83 @@ static __initdata struct {
UEFI_PARAM("MemMap Desc. Version", "linux,uefi-mmap-desc-ver", desc_ver)
};
+static __initdata struct params xen_fdt_params[] = {
+ UEFI_PARAM("System Table", "xen,uefi-system-table", system_table),
+ UEFI_PARAM("MemMap Address", "xen,uefi-mmap-start", mmap),
+ UEFI_PARAM("MemMap Size", "xen,uefi-mmap-size", mmap_size),
+ UEFI_PARAM("MemMap Desc. Size", "xen,uefi-mmap-desc-size", desc_size),
+ UEFI_PARAM("MemMap Desc. Version", "xen,uefi-mmap-desc-ver", desc_ver)
+};
+
+#define EFI_FDT_PARAMS_SIZE ARRAY_SIZE(fdt_params)
+
+static __initdata struct {
+ const char *uname;
+ struct params *params;
+} dt_params[] = {
+ { "hypervisor", xen_fdt_params },
+ { "chosen", fdt_params },
+};
+
struct param_info {
int found;
void *params;
+ const char *missing;
};
-static int __init fdt_find_uefi_params(unsigned long node, const char *uname,
- int depth, void *data)
+static int __init __find_uefi_params(unsigned long node,
+ struct param_info *info,
+ struct params *params)
{
- struct param_info *info = data;
const void *prop;
void *dest;
u64 val;
int i, len;
- if (depth != 1 || strcmp(uname, "chosen") != 0)
- return 0;
-
- for (i = 0; i < ARRAY_SIZE(dt_params); i++) {
- prop = of_get_flat_dt_prop(node, dt_params[i].propname, &len);
- if (!prop)
+ for (i = 0; i < EFI_FDT_PARAMS_SIZE; i++) {
+ prop = of_get_flat_dt_prop(node, params[i].propname, &len);
+ if (!prop) {
+ info->missing = params[i].name;
return 0;
- dest = info->params + dt_params[i].offset;
+ }
+
+ dest = info->params + params[i].offset;
info->found++;
val = of_read_number(prop, len / sizeof(u32));
- if (dt_params[i].size == sizeof(u32))
+ if (params[i].size == sizeof(u32))
*(u32 *)dest = val;
else
*(u64 *)dest = val;
if (efi_enabled(EFI_DBG))
- pr_info(" %s: 0x%0*llx\n", dt_params[i].name,
- dt_params[i].size * 2, val);
+ pr_info(" %s: 0x%0*llx\n", params[i].name,
+ params[i].size * 2, val);
}
+
return 1;
}
+static int __init fdt_find_uefi_params(unsigned long node, const char *uname,
+ int depth, void *data)
+{
+ struct param_info *info = data;
+ int i;
+
+ for (i = 0; i < ARRAY_SIZE(dt_params); i++) {
+
+ if (depth != 1 || strcmp(uname, dt_params[i].uname) != 0) {
+ info->missing = dt_params[i].params[0].name;
+ continue;
+ }
+
+ return __find_uefi_params(node, info, dt_params[i].params);
+ }
+
+ return 0;
+}
+
int __init efi_get_fdt_params(struct efi_fdt_params *params)
{
struct param_info info;
@@ -535,7 +576,7 @@ int __init efi_get_fdt_params(struct efi_fdt_params *params)
pr_info("UEFI not found.\n");
else if (!ret)
pr_err("Can't find '%s' in device tree!\n",
- dt_params[info.found].name);
+ info.missing);
return ret;
}
^ permalink raw reply related
* Re: linux-next: build failure after merge of the rcu tree
From: Paul E. McKenney @ 2016-05-02 11:06 UTC (permalink / raw)
To: Stephen Rothwell; +Cc: linux-next, linux-kernel, Christoph Hellwig
In-Reply-To: <20160502143736.631f2a44@canb.auug.org.au>
On Mon, May 02, 2016 at 02:37:36PM +1000, Stephen Rothwell wrote:
> Hi Paul,
>
> After merging the rcu tree, today's linux-next build (x86_64 allmodconfig)
> failed like this:
>
> arch/x86/kvm/vmx.c: In function 'vmx_init':
> arch/x86/kvm/vmx.c:11026:2: error: function '_r_a_p__v' is initialized like a variable
> rcu_assign_pointer(crash_vmclear_loaded_vmcss,
> ^
> In file included from include/linux/rbtree.h:34:0,
> from include/linux/mm_types.h:9,
> from arch/x86/kvm/irq.h:25,
> from arch/x86/kvm/vmx.c:19:
> include/linux/rcupdate.h:657:45: warning: the comparison will always evaluate as 'false' for the address of '_r_a_p__v' will never be NULL [-Waddress]
> if (__builtin_constant_p(v) && (_r_a_p__v) == NULL) \
> ^
> arch/x86/kvm/vmx.c:11026:2: note: in expansion of macro 'rcu_assign_pointer'
> rcu_assign_pointer(crash_vmclear_loaded_vmcss,
> ^
> include/linux/rcupdate.h:655:12: error: nested function '_r_a_p__v' declared but never defined
> typeof(v) _r_a_p__v = (v); \
> ^
> arch/x86/kvm/vmx.c:11026:2: note: in expansion of macro 'rcu_assign_pointer'
> rcu_assign_pointer(crash_vmclear_loaded_vmcss,
> ^
>
> Caused by commit
>
> 16d7afcaa530 ("rcu: No ordering for rcu_assign_pointer() of NULL")
>
> I have reverted that commit for today.
Too much fun when rcu_assign_pointer() is invoked on a pointer to a
function... Sorry for the hassle!
Thanx, Paul
^ permalink raw reply
* Re: linux-next: build failure after merge of the tpmdd tree
From: Jarkko Sakkinen @ 2016-05-02 11:10 UTC (permalink / raw)
To: Stephen Rothwell; +Cc: linux-next, linux-kernel, Christophe Ricard
In-Reply-To: <20160501231222.42557edf@canb.auug.org.au>
On Sun, May 01, 2016 at 11:12:22PM +1000, Stephen Rothwell wrote:
> Hi Jarkko,
>
> On Thu, 28 Apr 2016 12:02:24 +0300 Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> wrote:
> >
> > On Thu, 2016-04-28 at 15:32 +1000, Stephen Rothwell wrote:
> > > Hi Jarkko,
> > >
> > > After merging the tpmdd tree, today's linux-next build (powerpc
> > > allyesconfig) failed like this:
> > >
> > > In file included from /home/sfr/next/next/include/linux/rcupdate.h:38:0,
> > > from /home/sfr/next/next/include/linux/idr.h:18,
> > > from /home/sfr/next/next/include/linux/kernfs.h:14,
> > > from /home/sfr/next/next/include/linux/sysfs.h:15,
> > > from /home/sfr/next/next/include/linux/kobject.h:21,
> > > from /home/sfr/next/next/include/linux/device.h:17,
> > > from /home/sfr/next/next/include/linux/dma-mapping.h:6,
> > > from /home/sfr/next/next/drivers/char/tpm/tpm_ibmvtpm.c:18:
> > > /home/sfr/next/next/drivers/char/tpm/tpm_ibmvtpm.c: In function 'tpm_ibmvtpm_probe':
> > > /home/sfr/next/next/include/linux/spinlock.h:295:1: error: expected ';' before 'do'
> > > do { \
> > > ^
> > > /home/sfr/next/next/drivers/char/tpm/tpm_ibmvtpm.c:632:2: note: in expansion of macro
> > > 'spin_lock_init'
> > > spin_lock_init(&ibmvtpm->rtce_lock);
> > > ^
> > >
> > > Caused by commit
> > >
> > > 28157164b056 ("tpm: Remove useless priv field in struct tpm_vendor_specific")
> > >
> > > A ';' was missed.
> > >
> > > I added the following patch for today.
> >
> > Sorry about this and thank you.
> >
> > /Jarkko
> >
> > > From: Stephen Rothwell <sfr@canb.auug.org.au>
> > > Date: Thu, 28 Apr 2016 15:27:17 +1000
> > > Subject: [PATCH] tpm: fix for typo in tpm/tpm_ibmvtpm.c
> > >
> > > Fixes: 28157164b056 ("tpm: Remove useless priv field in struct tpm_vendor_specific")
> > > Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
> > > ---
> > > drivers/char/tpm/tpm_ibmvtpm.c | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/char/tpm/tpm_ibmvtpm.c b/drivers/char/tpm/tpm_ibmvtpm.c
> > > index 6b22826f0e11..946025a7413b 100644
> > > --- a/drivers/char/tpm/tpm_ibmvtpm.c
> > > +++ b/drivers/char/tpm/tpm_ibmvtpm.c
> > > @@ -627,7 +627,7 @@ static int tpm_ibmvtpm_probe(struct vio_dev *vio_dev,
> > >
> > > crq_q->index = 0;
> > >
> > > - dev_set_drvdata(&chip->dev, ibmvtpm)
> > > + dev_set_drvdata(&chip->dev, ibmvtpm);
> > >
> > > spin_lock_init(&ibmvtpm->rtce_lock);
> > >
> > > --
> > > 2.7.0
> > >
>
> Ping?
Acked-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
I applied the fix and merged it.
> --
> Cheers,
> Stephen Rothwell
/Jarkko
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox