Linux-Next discussions
 help / color / mirror / Atom feed
* linux-next: manual merge of the kvm-arm tree with the kvm tree
From: Stephen Rothwell @ 2016-07-24  5:59 UTC (permalink / raw)
  To: Christoffer Dall, Marc Zyngier, Marcelo Tosatti, Gleb Natapov,
	kvm
  Cc: linux-next, linux-kernel, Eric Auger, Radim Krčmář,
	Paolo Bonzini

Hi all,

Today's linux-next merge of the kvm-arm tree got a conflict in:

  Documentation/virtual/kvm/api.txt

between commit:

  3713131345fb ("KVM: x86: add KVM_CAP_X2APIC_API")

from the kvm tree and commit:

  76a10b86785c ("KVM: api: Pass the devid in the msi routing entry")

from the kvm-arm 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 Documentation/virtual/kvm/api.txt
index 5237e1b2fd66,7a04216d7278..000000000000
--- a/Documentation/virtual/kvm/api.txt
+++ b/Documentation/virtual/kvm/api.txt
@@@ -1479,14 -1486,20 +1486,25 @@@ struct kvm_irq_routing_msi 
  	__u32 address_lo;
  	__u32 address_hi;
  	__u32 data;
- 	__u32 pad;
+ 	union {
+ 		__u32 pad;
+ 		__u32 devid;
+ 	};
  };
  
 +On x86, address_hi is ignored unless the KVM_X2APIC_API_USE_32BIT_IDS
 +feature of KVM_CAP_X2APIC_API capability is enabled.  If it is enabled,
 +address_hi bits 31-8 provide bits 31-8 of the destination id.  Bits 7-0 of
 +address_hi must be zero.
 +
+ devid: If KVM_MSI_VALID_DEVID is set, contains a unique device identifier
+        for the device that wrote the MSI message.
+        For PCI, this is usually a BFD identifier in the lower 16 bits.
+ 
+ The per-VM KVM_CAP_MSI_DEVID capability advertises the requirement to
+ provide the device ID. If this capability is not set, userland cannot
+ rely on the kernel to allow the KVM_MSI_VALID_DEVID flag being set.
+ 
  struct kvm_irq_routing_s390_adapter {
  	__u64 ind_addr;
  	__u64 summary_addr;

^ permalink raw reply

* linux-next: build warning after merge of the tip tree
From: Stephen Rothwell @ 2016-07-24  5:32 UTC (permalink / raw)
  To: Thomas Gleixner, Ingo Molnar, H. Peter Anvin, Peter Zijlstra,
	Rich Felker
  Cc: linux-next, linux-kernel, Daniel Lezcano

Hi all,

After merging the tip tree, today's linux-next build (x86_64 allmodconfig)
produced this warning:

In file included from include/linux/clocksource.h:18:0,
                 from include/linux/clockchips.h:13,
                 from drivers/clocksource/jcore-pit.c:14:
include/linux/of.h:1004:20: warning: comparison of distinct pointer types lacks a cast
        .data = (fn == (fn_type)NULL) ? fn : fn  }
                    ^
include/linux/of.h:1020:3: note: in expansion of macro '_OF_DECLARE'
   _OF_DECLARE(table, name, compat, fn, of_init_fn_1_ret)
   ^
include/linux/clocksource.h:247:2: note: in expansion of macro 'OF_DECLARE_1_RET'
  OF_DECLARE_1_RET(clksrc, name, compat, fn)
  ^
drivers/clocksource/jcore-pit.c:277:1: note: in expansion of macro 'CLOCKSOURCE_OF_DECLARE'
 CLOCKSOURCE_OF_DECLARE(jcore_pit, "jcore,pit", jcore_pit_init);
 ^

Introduced by commits

  b7c4db861683 ("clocksource/drivers/clksrc-probe: Introduce init functions with return code")
  177cf6e52b0a ("clocksources: Switch back to the clksrc table")

interacting with commit

  e0aa0655c60b ("clocksource: add J-Core timer/clocksource driver")

from the sh tree.

-- 
Cheers,
Stephen Rothwell

^ permalink raw reply

* linux-next: manual merge of the tip tree with the sh tree
From: Stephen Rothwell @ 2016-07-24  5:13 UTC (permalink / raw)
  To: Thomas Gleixner, Ingo Molnar, H. Peter Anvin, Peter Zijlstra,
	Rich Felker
  Cc: linux-next, linux-kernel

Hi all,

Today's linux-next merge of the tip tree got a conflict in:

  arch/sh/include/asm/spinlock.h

between commit:

  2da83dfce7df ("sh: add J2 atomics using the cas.l instruction")

from the sh tree and commit:

  726328d92a42 ("locking/spinlock, arch: Update and fix spin_unlock_wait() implementations")

from the tip tree.

I fixed it up (I used this file from the sh tree and then added the merge
fix patch 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.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Sun, 24 Jul 2016 15:09:57 +1000
Subject: [PATCH] locking/spinlock, arch: merge fix for "sh: add J2 atomics
 using the cas.l instruction"

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 arch/sh/include/asm/spinlock-cas.h  | 10 ++++++++--
 arch/sh/include/asm/spinlock-llsc.h | 10 ++++++++--
 2 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/arch/sh/include/asm/spinlock-cas.h b/arch/sh/include/asm/spinlock-cas.h
index a2a7c10b30d9..c46e8cc7b515 100644
--- a/arch/sh/include/asm/spinlock-cas.h
+++ b/arch/sh/include/asm/spinlock-cas.h
@@ -10,6 +10,9 @@
 #ifndef __ASM_SH_SPINLOCK_CAS_H
 #define __ASM_SH_SPINLOCK_CAS_H
 
+#include <asm/barrier.h>
+#include <asm/processor.h>
+
 static inline unsigned __sl_cas(volatile unsigned *p, unsigned old, unsigned new)
 {
 	__asm__ __volatile__("cas.l %1,%0,@r0"
@@ -25,8 +28,11 @@ static inline unsigned __sl_cas(volatile unsigned *p, unsigned old, unsigned new
 
 #define arch_spin_is_locked(x)		((x)->lock <= 0)
 #define arch_spin_lock_flags(lock, flags) arch_spin_lock(lock)
-#define arch_spin_unlock_wait(x) \
-	do { while (arch_spin_is_locked(x)) cpu_relax(); } while (0)
+
+static inline void arch_spin_unlock_wait(arch_spinlock_t *lock)
+{
+	smp_cond_load_acquire(&lock->lock, VAL > 0);
+}
 
 static inline void arch_spin_lock(arch_spinlock_t *lock)
 {
diff --git a/arch/sh/include/asm/spinlock-llsc.h b/arch/sh/include/asm/spinlock-llsc.h
index 238ef6f54dcc..cec78143fa83 100644
--- a/arch/sh/include/asm/spinlock-llsc.h
+++ b/arch/sh/include/asm/spinlock-llsc.h
@@ -11,14 +11,20 @@
 #ifndef __ASM_SH_SPINLOCK_LLSC_H
 #define __ASM_SH_SPINLOCK_LLSC_H
 
+#include <asm/barrier.h>
+#include <asm/processor.h>
+
 /*
  * Your basic SMP spinlocks, allowing only a single CPU anywhere
  */
 
 #define arch_spin_is_locked(x)		((x)->lock <= 0)
 #define arch_spin_lock_flags(lock, flags) arch_spin_lock(lock)
-#define arch_spin_unlock_wait(x) \
-	do { while (arch_spin_is_locked(x)) cpu_relax(); } while (0)
+
+static inline void arch_spin_unlock_wait(arch_spinlock_t *lock)
+{
+	smp_cond_load_acquire(&lock->lock, VAL > 0);
+}
 
 /*
  * Simple spin lock operations.  There are two variants, one clears IRQ's
-- 
2.8.1

-- 
Cheers,
Stephen Rothwell

^ permalink raw reply related

* linux-next: build warning after merge of the sh tree
From: Stephen Rothwell @ 2016-07-24  1:00 UTC (permalink / raw)
  To: Rich Felker; +Cc: linux-next, linux-kernel

Hi Rich,

After merging the sh tree, today's linux-next build (x86_64
allmodconfig) produced this warning:

WARNING: modpost: missing MODULE_LICENSE() in drivers/spi/spi-jcore.o

Introduced by commit

  8c7f438f0661 ("spi: add driver for J-Core SPI controller")

-- 
Cheers,
Stephen Rothwell

^ permalink raw reply

* Re: [PATCH/RFC] Re: linux-next: build failure after merge of the luto-misc tree
From: Stephen Rothwell @ 2016-07-23  5:08 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo
  Cc: Josh Poimboeuf, Andy Lutomirski, Arnaldo Carvalho de Melo,
	Peter Zijlstra, Thomas Gleixner, Ingo Molnar, H. Peter Anvin,
	linux-next@vger.kernel.org, linux-kernel@vger.kernel.org
In-Reply-To: <20160722195734.GK18962@kernel.org>

Hi Arnaldo,

On Fri, 22 Jul 2016 16:57:34 -0300 Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
>
> Em Fri, Jul 22, 2016 at 02:44:17PM -0500, Josh Poimboeuf escreveu:
> > On Fri, Jul 22, 2016 at 04:36:55PM -0300, Arnaldo Carvalho de Melo wrote:  
> > > Em Fri, Jul 22, 2016 at 02:19:20PM -0500, Josh Poimboeuf escreveu:  
> > > > On Fri, Jul 22, 2016 at 11:37:39AM -0300, Arnaldo Carvalho de Melo wrote:  
> > > > > I.e. with the two patches I mentioned, that are equivalent to the last patch I
> > > > > sent to Stephen for testing, we would end up with HOSTARCH=powerpc and
> > > > > ARCH=x86, no?  
> 
> > > > Thanks for spelling it out, that helped a lot.  
> 
> > > Glad you liked it, I had to do it for my own sanity :-)  
> 
> > > And something that gave me mixed feelings was an e-mail from the kbuild
> > > test bot that noticed my perf/core changes and said that the build was
> > > broken for "make ARCH=x86_64", so I had to reinstate this part:  
> 
> > > ifeq ($(ARCH),x86_64)
> > > ARCH := x86
> > > endif  
> 
> > > Because, as you say, 'make ARCH=x86' works :-\ I think it will not be
> > > needed with your patch, right? I'm checking your patch below right now,  
> 
> > Yeah, that shouldn't be needed with my patch.  I think either would
> > work, but my patch is more of a permanent solution.  
> 
> Sure, I left it there because then we don't have bisection broke at that
> fix I made, i.e. 'make ARCH=x86_64' works at that point too.
> 
> I applied your patch and will push it to Ingo, now we must cross our
> fingers so that Stephen doesn't come back to us once more telling it is
> still broken :o)

Unfortunately, this is what I get when I just build perf/core:

  DESCEND  objtool
  CC       /home/sfr/next/x86_64_allmodconfig/tools/objtool/builtin-check.o
  LD       /home/sfr/next/x86_64_allmodconfig/tools/objtool/objtool-in.o
Warning: objtool: x86 instruction decoder differs from kernel
  LINK     /home/sfr/next/x86_64_allmodconfig/tools/objtool/objtool
In file included from /home/sfr/next/next/arch/x86/include/uapi/asm/bitsperlong.h:10:0,
                 from /home/sfr/next/next/include/uapi/asm-generic/int-ll64.h:11,
                 from /home/sfr/next/next/include/uapi/asm-generic/types.h:6,
                 from /home/sfr/next/next/arch/x86/include/uapi/asm/types.h:4,
                 from /home/sfr/next/next/tools/include/linux/types.h:9,
                 from /home/sfr/next/next/include/uapi/linux/elf.h:4,
                 from /home/sfr/next/next/arch/x86/entry/vdso/vdso2c.c:66:
/home/sfr/next/next/tools/include/asm-generic/bitsperlong.h:13:2: error: #error Inconsistent word size. Check asm/bitsperlong.h
 #error Inconsistent word size. Check asm/bitsperlong.h
  ^

The be clear: this is a ppc64le hosted, x86_64 target cross build.

I than added the following patch, and the build finishes successfully.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Sat, 23 Jul 2016 14:35:40 +1000
Subject: [PATCH] x86: make the vdso2c compiler use the host architecture
 headers

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 arch/x86/entry/vdso/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/entry/vdso/Makefile b/arch/x86/entry/vdso/Makefile
index 253b72eaade6..25e88c030c47 100644
--- a/arch/x86/entry/vdso/Makefile
+++ b/arch/x86/entry/vdso/Makefile
@@ -55,7 +55,7 @@ VDSO_LDFLAGS_vdso.lds = -m64 -Wl,-soname=linux-vdso.so.1 \
 $(obj)/vdso64.so.dbg: $(src)/vdso.lds $(vobjs) FORCE
 	$(call if_changed,vdso)
 
-HOST_EXTRACFLAGS += -I$(srctree)/tools/include -I$(srctree)/include/uapi -I$(srctree)/arch/x86/include/uapi
+HOST_EXTRACFLAGS += -I$(srctree)/tools/include -I$(srctree)/include/uapi -I$(srctree)/arch/$(SUBARCH)/include/uapi
 hostprogs-y			+= vdso2c
 
 quiet_cmd_vdso2c = VDSO2C  $@
-- 
2.8.1

There may be a more correct way to do this ...
-- 
Cheers,
Stephen Rothwell

^ permalink raw reply related

* Re: linux-next: build failure after merge of the nvdimm tree
From: Dan Williams @ 2016-07-23  3:54 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: Alasdair G Kergon, Mike Snitzer, linux-next,
	linux-kernel@vger.kernel.org, Toshi Kani
In-Reply-To: <CAPcyv4hyw8v=9Fg3c9ZSPnvPTvQyzgScahddnyq3vJiqq1pzAg@mail.gmail.com>

On Fri, Jul 22, 2016 at 6:04 PM, Dan Williams <dan.j.williams@intel.com> wrote:
> On Thu, Jul 21, 2016 at 11:13 PM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>> Hi Dan,
>>
>> After merging the nvdimm tree, today's linux-next build (powerpc
>> ppc64_defconfig) failed like this:
>>
>> In file included from drivers/md/dm.h:14:0,
>>                  from drivers/md/dm-uevent.c:27:
>> include/linux/device-mapper.h:134:22: error: expected ';', ',' or ')' before '*' token
>>           void __pmem **kaddr, pfn_t *pfn, long size);
>>                       ^
>> include/linux/device-mapper.h:182:2: error: unknown type name 'dm_direct_access_fn'
>>   dm_direct_access_fn direct_access;
>>   ^
>>
>> Caused by commit
>>
>>   7a9eb2066631 ("pmem: kill __pmem address space")
>>
>> interacting with commit
>>
>>   545ed20e6df6 ("dm: add infrastructure for DAX support")
>>
>> from the device-mapper tree.
>>
>> I applied the following merge fix patch for today.  Someone needs to
>> tell Linus about this when he merges the trees.
>
> There's no real rush to remove "__pmem" I'll pull this out until after
> DM DAX support has merged.
>
> Thanks Stephen!

Sorry, I forgot that some ARM patches already depend on this change...
so we'll need to roll forward and notify Linus about this merge
interaction.

^ permalink raw reply

* Re: linux-next: build failure after merge of the nvdimm tree
From: Dan Williams @ 2016-07-23  1:04 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: Alasdair G Kergon, Mike Snitzer, linux-next,
	linux-kernel@vger.kernel.org, Toshi Kani
In-Reply-To: <20160722161320.144b7514@canb.auug.org.au>

On Thu, Jul 21, 2016 at 11:13 PM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> Hi Dan,
>
> After merging the nvdimm tree, today's linux-next build (powerpc
> ppc64_defconfig) failed like this:
>
> In file included from drivers/md/dm.h:14:0,
>                  from drivers/md/dm-uevent.c:27:
> include/linux/device-mapper.h:134:22: error: expected ';', ',' or ')' before '*' token
>           void __pmem **kaddr, pfn_t *pfn, long size);
>                       ^
> include/linux/device-mapper.h:182:2: error: unknown type name 'dm_direct_access_fn'
>   dm_direct_access_fn direct_access;
>   ^
>
> Caused by commit
>
>   7a9eb2066631 ("pmem: kill __pmem address space")
>
> interacting with commit
>
>   545ed20e6df6 ("dm: add infrastructure for DAX support")
>
> from the device-mapper tree.
>
> I applied the following merge fix patch for today.  Someone needs to
> tell Linus about this when he merges the trees.

There's no real rush to remove "__pmem" I'll pull this out until after
DM DAX support has merged.

Thanks Stephen!

^ permalink raw reply

* Re: linux-next: Tree for Jul 22
From: Paul Gortmaker @ 2016-07-23  0:54 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: linux-next@vger.kernel.org, LKML
In-Reply-To: <CAP=VYLrkNuvwL0T=0ot_3Wk_VpSzdiJ-ZTcGA71D1od6dQRzAg@mail.gmail.com>

On Fri, Jul 22, 2016 at 3:28 PM, Paul Gortmaker
<paul.gortmaker@windriver.com> wrote:

[...]

>
> For x86-64 allmod, I am seeing this issue for the 1st time today
> in my local builds, even though it doesn't appear in sfr's builds:
>
> FATAL: drivers/input/evbug: sizeof(struct input_device_id)=312 is not
> a modulo of the size of section
> __mod_input__<identifier>_device_table=384.
> Fix definition of struct input_device_id in mod_devicetable.h
> make[2]: *** [__modpost] Error 1
> make[1]: *** [modules] Error 2
> make: *** [sub-make] Error 2
>
> paul@builder:~/git/linux-head$ git describe
> next-20160722
>
> Nothing has touched drivers/input/evbug.c for years...

Circling back to look at this more, it seems to be a result of the
makefiles not clobbering something properly when using the
same build directory from yesterday's next build today.

Once I executed a "make clean" I could not reproduce it.

P.
--

^ permalink raw reply

* mmotm 2016-07-22-15-51 uploaded
From: akpm @ 2016-07-22 22:51 UTC (permalink / raw)
  To: mm-commits, linux-kernel, linux-mm, linux-fsdevel, linux-next,
	sfr, mhocko, broonie

The mm-of-the-moment snapshot 2016-07-22-15-51 has been uploaded to

   http://www.ozlabs.org/~akpm/mmotm/

mmotm-readme.txt says

README for mm-of-the-moment:

http://www.ozlabs.org/~akpm/mmotm/

This is a snapshot of my -mm patch queue.  Uploaded at random hopefully
more than once a week.

You will need quilt to apply these patches to the latest Linus release (4.x
or 4.x-rcY).  The series file is in broken-out.tar.gz and is duplicated in
http://ozlabs.org/~akpm/mmotm/series

The file broken-out.tar.gz contains two datestamp files: .DATE and
.DATE-yyyy-mm-dd-hh-mm-ss.  Both contain the string yyyy-mm-dd-hh-mm-ss,
followed by the base kernel version against which this patch series is to
be applied.

This tree is partially included in linux-next.  To see which patches are
included in linux-next, consult the `series' file.  Only the patches
within the #NEXT_PATCHES_START/#NEXT_PATCHES_END markers are included in
linux-next.

A git tree which contains the memory management portion of this tree is
maintained at git://git.kernel.org/pub/scm/linux/kernel/git/mhocko/mm.git
by Michal Hocko.  It contains the patches which are between the
"#NEXT_PATCHES_START mm" and "#NEXT_PATCHES_END" markers, from the series
file, http://www.ozlabs.org/~akpm/mmotm/series.


A full copy of the full kernel tree with the linux-next and mmotm patches
already applied is available through git within an hour of the mmotm
release.  Individual mmotm releases are tagged.  The master branch always
points to the latest release, so it's constantly rebasing.

http://git.cmpxchg.org/cgit.cgi/linux-mmotm.git/

To develop on top of mmotm git:

  $ git remote add mmotm git://git.kernel.org/pub/scm/linux/kernel/git/mhocko/mm.git
  $ git remote update mmotm
  $ git checkout -b topic mmotm/master
  <make changes, commit>
  $ git send-email mmotm/master.. [...]

To rebase a branch with older patches to a new mmotm release:

  $ git remote update mmotm
  $ git rebase --onto mmotm/master <topic base> topic




The directory http://www.ozlabs.org/~akpm/mmots/ (mm-of-the-second)
contains daily snapshots of the -mm tree.  It is updated more frequently
than mmotm, and is untested.

A git copy of this tree is available at

	http://git.cmpxchg.org/cgit.cgi/linux-mmots.git/

and use of this tree is similar to
http://git.cmpxchg.org/cgit.cgi/linux-mmotm.git/, described above.


This mmotm tree contains the following patches against 4.7-rc7:
(patches marked "*" will be included in linux-next)

  origin.patch
  i-need-old-gcc.patch
  arch-alpha-kernel-systblss-remove-debug-check.patch
* mm-memcontrol-fix-cgroup-creation-failure-after-many-small-jobs.patch
* radix-tree-fix-radix_tree_iter_retry-for-tagged-iterators.patch
* testing-radix-tree-fix-a-macro-expansion-bug.patch
* tools-vm-slabinfo-fix-an-unintentional-printf.patch
* pps-do-not-crash-when-failed-to-register.patch
* mm-hugetlb-fix-race-when-migrate-pages.patch
* arm-get-rid-of-superfluous-__gfp_repeat.patch
* arm-arch-arm-include-asm-pageh-needs-personalityh.patch
* dax-some-small-updates-to-daxtxt-documentation.patch
* dax-remote-unused-fault-wrappers.patch
* dma-debug-track-bucket-lock-state-for-static-checkers.patch
* fbmon-remove-unused-function-argument.patch
* cflags-add-wunused-but-set-parameter.patch
* kbuild-abort-build-on-bad-stack-protector-flag.patch
* kbuild-simpler-generation-of-assembly-constants.patch
* scripts-bloat-o-meter-fix-percent-on-1%-changes.patch
* m32r-add-__ucmpdi2-to-fix-build-failure.patch
* debugobjectsh-fix-trivial-kernel-doc-warning.patch
* ocfs2-fix-a-redundant-re-initialization.patch
* ocfs2-improve-recovery-performance.patch
* ocfs2-improve-recovery-performance-v2.patch
* ocfs2-improve-recovery-performance-v2-fix.patch
* ocfs2-cleanup-unneeded-goto-in-ocfs2_create_new_inode_locks.patch
* ocfs2-dlm-fix-memory-leak-of-dlm_debug_ctxt.patch
* ocfs2-cleanup-implemented-prototypes.patch
* ocfs2-remove-obscure-bug_on-in-dlmglue.patch
* ocfs2-cluster-clean-up-unnecessary-assignment-for-ret.patch
* ocfs2-insure-dlm-lockspace-is-created-by-kernel-module.patch
* ocfs2-retry-on-enospc-if-sufficient-space-in-truncate-log.patch
* ocfs2-retry-on-enospc-if-sufficient-space-in-truncate-log-v3.patch
* ocfs2-dlm-disable-bug_on-when-dlm_lock_res_dropping_ref-is-cleared-before-dlm_deref_lockres_done_handler.patch
* ocfs2-dlm-disable-bug_on-when-dlm_lock_res_dropping_ref-is-cleared-before-dlm_deref_lockres_done_handler-fix.patch
* ocfs2-dlm-solve-a-bug-when-deref-failed-in-dlm_drop_lockres_ref.patch
* ocfs2-dlm-continue-to-purge-recovery-lockres-when-recovery-master-goes-down.patch
* block-restore-proc-partitions-to-not-display-non-partitionable-removable-devices.patch
* sb-add-a-new-writeback-list-for-sync.patch
* wb-inode-writeback-list-tracking-tracepoints.patch
* kernel-watchdog-use-nmi-registers-snapshot-in-hardlockup-handler.patch
  mm.patch
* mm-reorganize-slab-freelist-randomization.patch
* mm-reorganize-slab-freelist-randomization-fix.patch
* mm-slub-freelist-randomization.patch
* slab-make-gfp_slab_bug_mask-information-more-human-readable.patch
* slab-do-not-panic-on-invalid-gfp_mask.patch
* mm-faster-kmalloc_array-kcalloc.patch
* mm-slab-use-list_move-instead-of-list_del-list_add.patch
* mm-memcontrol-remove-the-useless-parameter-for-mc_handle_swap_pte.patch
* mm-init-fix-zone-boundary-creation.patch
* memory-hotplug-add-move_pfn_range.patch
* memory-hotplug-more-general-validation-of-zone-during-online.patch
* memory-hotplug-use-zone_can_shift-for-sysfs-valid_zones-attribute.patch
* mm-zap-zone_oom_locked.patch
* mm-oom-add-memcg-to-oom_control.patch
* mm-debug-add-vm_warn-which-maps-to-warn.patch
* powerpc-mm-check-for-irq-disabled-only-if-debug_vm-is-enabled.patch
* zram-rename-zstrm-find-release-functions.patch
* zram-switch-to-crypto-compress-api.patch
* zram-use-crypto-api-to-check-alg-availability.patch
* zram-use-crypto-api-to-check-alg-availability-v3.patch
* zram-cosmetic-cleanup-documentation.patch
* zram-delete-custom-lzo-lz4.patch
* zram-delete-custom-lzo-lz4-v3.patch
* zram-add-more-compression-algorithms.patch
* zram-add-more-compression-algorithms-v3.patch
* zram-drop-gfp_t-from-zcomp_strm_alloc.patch
* mm-use-put_page-to-free-page-instead-of-putback_lru_page.patch
* mm-migrate-support-non-lru-movable-page-migration.patch
* mm-migrate-support-non-lru-movable-page-migration-fix.patch
* mm-balloon-use-general-non-lru-movable-page-feature.patch
* mm-balloon-use-general-non-lru-movable-page-feature-fix.patch
* zsmalloc-keep-max_object-in-size_class.patch
* zsmalloc-use-bit_spin_lock.patch
* zsmalloc-use-accessor.patch
* zsmalloc-factor-page-chain-functionality-out.patch
* zsmalloc-introduce-zspage-structure.patch
* zsmalloc-separate-free_zspage-from-putback_zspage.patch
* zsmalloc-use-freeobj-for-index.patch
* zsmalloc-page-migration-support.patch
* zsmalloc-page-migration-support-fix.patch
* zsmalloc-page-migration-support-fix-2.patch
* zram-use-__gfp_movable-for-memory-allocation.patch
* zsmalloc-use-obj_tag_bit-for-bit-shifter.patch
* mm-compaction-split-freepages-without-holding-the-zone-lock.patch
* mm-compaction-split-freepages-without-holding-the-zone-lock-fix.patch
* mm-compaction-split-freepages-without-holding-the-zone-lock-fix-2.patch
* mm-page_owner-initialize-page-owner-without-holding-the-zone-lock.patch
* mm-page_owner-copy-last_migrate_reason-in-copy_page_owner.patch
* mm-page_owner-introduce-split_page_owner-and-replace-manual-handling.patch
* tools-vm-page_owner-increase-temporary-buffer-size.patch
* mm-page_owner-use-stackdepot-to-store-stacktrace.patch
* mm-page_owner-use-stackdepot-to-store-stacktrace-v3.patch
* mm-page_alloc-introduce-post-allocation-processing-on-page-allocator.patch
* mm-page_alloc-introduce-post-allocation-processing-on-page-allocator-v3.patch
* mm-page_isolation-clean-up-confused-code.patch
* mm-thp-check-pmd_trans_unstable-after-split_huge_pmd.patch
* mm-hugetlb-simplify-hugetlb-unmap.patch
* mm-change-the-interface-for-__tlb_remove_page.patch
* mm-change-the-interface-for-__tlb_remove_page-v3.patch
* mm-mmu_gather-track-page-size-with-mmu-gather-and-force-flush-if-page-size-change.patch
* mm-remove-pointless-struct-in-struct-page-definition.patch
* mm-clean-up-non-standard-page-_mapcount-users.patch
* mm-memcontrol-cleanup-kmem-charge-functions.patch
* mm-charge-uncharge-kmemcg-from-generic-page-allocator-paths.patch
* mm-memcontrol-teach-uncharge_list-to-deal-with-kmem-pages.patch
* arch-x86-charge-page-tables-to-kmemcg.patch
* pipe-account-to-kmemcg.patch
* af_unix-charge-buffers-to-kmemcg.patch
* mmoom-remove-unused-argument-from-oom_scan_process_thread.patch
* mm-frontswap-convert-frontswap_enabled-to-static-key.patch
* mm-frontswap-convert-frontswap_enabled-to-static-key-checkpatch-fixes.patch
* mm-add-nr_zsmalloc-to-vmstat.patch
* mm-add-nr_zsmalloc-to-vmstat-fix.patch
* mm-add-nr_zsmalloc-to-vmstat-fix-2.patch
* include-linux-memblockh-clean-up-code-for-several-trivial-details.patch
* mm-oom_reaper-make-sure-that-mmput_async-is-called-only-when-memory-was-reaped.patch
* mm-memcg-use-consistent-gfp-flags-during-readahead.patch
* mm-memcg-use-consistent-gfp-flags-during-readahead-fix.patch
* mm-memcg-use-consistent-gfp-flags-during-readahead-checkpatch-fixes.patch
* mm-memblock-if-nr_new-is-0-just-return.patch
* mm-make-optimistic-check-for-swapin-readahead.patch
* mm-make-optimistic-check-for-swapin-readahead-fix-2.patch
* mm-make-optimistic-check-for-swapin-readahead-fix-3.patch
* mm-make-optimistic-check-for-swapin-readahead-fix-4.patch
* mm-make-swapin-readahead-to-improve-thp-collapse-rate.patch
* mm-make-swapin-readahead-to-improve-thp-collapse-rate-fix.patch
* mm-make-swapin-readahead-to-improve-thp-collapse-rate-fix-2.patch
* mm-make-swapin-readahead-to-improve-thp-collapse-rate-fix-3.patch
* mm-thp-make-swapin-readahead-under-down_read-of-mmap_sem-ks.patch
* mm-thp-make-swapin-readahead-under-down_read-of-mmap_sem-fix.patch
* mm-thp-fix-locking-inconsistency-in-collapse_huge_page.patch
* mm-thp-make-swapin-readahead-under-down_read-of-mmap_sem-fix-2-fix.patch
* khugepaged-recheck-pmd-after-mmap_sem-re-acquired.patch
* thp-mlock-update-unevictable-lrutxt.patch
* mm-do-not-pass-mm_struct-into-handle_mm_fault.patch
* mm-introduce-fault_env.patch
* mm-postpone-page-table-allocation-until-we-have-page-to-map.patch
* rmap-support-file-thp.patch
* mm-introduce-do_set_pmd.patch
* thp-vmstats-add-counters-for-huge-file-pages.patch
* thp-support-file-pages-in-zap_huge_pmd.patch
* thp-handle-file-pages-in-split_huge_pmd.patch
* thp-handle-file-cow-faults.patch
* thp-skip-file-huge-pmd-on-copy_huge_pmd.patch
* thp-prepare-change_huge_pmd-for-file-thp.patch
* thp-run-vma_adjust_trans_huge-outside-i_mmap_rwsem.patch
* thp-file-pages-support-for-split_huge_page.patch
* thp-mlock-do-not-mlock-pte-mapped-file-huge-pages.patch
* vmscan-split-file-huge-pages-before-paging-them-out.patch
* page-flags-relax-policy-for-pg_mappedtodisk-and-pg_reclaim.patch
* radix-tree-implement-radix_tree_maybe_preload_order.patch
* filemap-prepare-find-and-delete-operations-for-huge-pages.patch
* truncate-handle-file-thp.patch
* mm-rmap-account-shmem-thp-pages.patch
* shmem-prepare-huge=-mount-option-and-sysfs-knob.patch
* shmem-get_unmapped_area-align-huge-page.patch
* shmem-add-huge-pages-support.patch
* shmem-thp-respect-madv_nohugepage-for-file-mappings.patch
* thp-extract-khugepaged-from-mm-huge_memoryc.patch
* khugepaged-move-up_readmmap_sem-out-of-khugepaged_alloc_page.patch
* shmem-make-shmem_inode_info-lock-irq-safe.patch
* khugepaged-add-support-of-collapse-for-tmpfs-shmem-pages.patch
* thp-introduce-config_transparent_huge_pagecache.patch
* shmem-split-huge-pages-beyond-i_size-under-memory-pressure.patch
* thp-update-documentation-vm-transhugefilesystems-proctxt.patch
* mm-thp-fix-comment-inconsistency-for-swapin-readahead-functions.patch
* mm-thp-convert-from-optimistic-swapin-collapsing-to-conservative.patch
* mm-zsmalloc-add-trace-events-for-zs_compact.patch
* mm-fix-build-warnings-in-linux-compactionh.patch
* mm-fix-build-warnings-in-linux-compactionh-fix.patch
* mm-memcontrol-remove-bug_on-in-uncharge_list.patch
* mm-memcontrol-fix-documentation-for-compound-parameter.patch
* cgroup-fix-idr-leak-for-the-first-cgroup-root.patch
* cgroup-remove-unnecessary-0-check-from-css_from_id.patch
* thp-fix-comments-of-__pmd_trans_huge_lock.patch
* proc-oom-drop-bogus-task_lock-and-mm-check.patch
* proc-oom-drop-bogus-sighand-lock.patch
* proc-oom_adj-extract-oom_score_adj-setting-into-a-helper.patch
* mm-oom_adj-make-sure-processes-sharing-mm-have-same-view-of-oom_score_adj.patch
* mm-oom-skip-vforked-tasks-from-being-selected.patch
* mm-oom-kill-all-tasks-sharing-the-mm.patch
* mm-oom-fortify-task_will_free_mem.patch
* mm-oom-task_will_free_mem-should-skip-oom_reaped-tasks.patch
* mm-oom_reaper-do-not-attempt-to-reap-a-task-more-than-twice.patch
* mm-oom-hide-mm-which-is-shared-with-kthread-or-global-init.patch
* mm-oom-fortify-task_will_free_mem-fix.patch
* mm-update-the-comment-in-__isolate_free_page.patch
* mm-update-the-comment-in-__isolate_free_page-checkpatch-fixes.patch
* mm-fix-vm-scalability-regression-in-cgroup-aware-workingset-code.patch
* mm-fix-vm-scalability-regression-in-cgroup-aware-workingset-code-fix.patch
* mm-compaction-remove-unnecessary-order-check-in-try_to_compact_pages.patch
* freezer-oom-check-tif_memdie-on-the-correct-task.patch
* cpuset-mm-fix-tif_memdie-check-in-cpuset_change_task_nodemask.patch
* mm-meminit-remove-early_page_nid_uninitialised.patch
* mm-vmstat-add-infrastructure-for-per-node-vmstats.patch
* mm-vmscan-move-lru_lock-to-the-node.patch
* mm-vmscan-move-lru-lists-to-node.patch
* mm-mmzone-clarify-the-usage-of-zone-padding.patch
* mm-vmscan-begin-reclaiming-pages-on-a-per-node-basis.patch
* mm-vmscan-have-kswapd-only-scan-based-on-the-highest-requested-zone.patch
* mm-vmscan-make-kswapd-reclaim-in-terms-of-nodes.patch
* mm-vmscan-remove-balance-gap.patch
* mm-vmscan-simplify-the-logic-deciding-whether-kswapd-sleeps.patch
* mm-vmscan-by-default-have-direct-reclaim-only-shrink-once-per-node.patch
* mm-vmscan-remove-duplicate-logic-clearing-node-congestion-and-dirty-state.patch
* mm-vmscan-do-not-reclaim-from-kswapd-if-there-is-any-eligible-zone.patch
* mm-vmscan-make-shrink_node-decisions-more-node-centric.patch
* mm-vmscan-make-shrink_node-decisions-more-node-centric-fix.patch
* mm-memcg-move-memcg-limit-enforcement-from-zones-to-nodes.patch
* mm-workingset-make-working-set-detection-node-aware.patch
* mm-page_alloc-consider-dirtyable-memory-in-terms-of-nodes.patch
* mm-move-page-mapped-accounting-to-the-node.patch
* mm-rename-nr_anon_pages-to-nr_anon_mapped.patch
* mm-move-most-file-based-accounting-to-the-node.patch
* mm-move-most-file-based-accounting-to-the-node-fix.patch
* mm-move-vmscan-writes-and-file-write-accounting-to-the-node.patch
* mm-vmscan-only-wakeup-kswapd-once-per-node-for-the-requested-classzone.patch
* mm-page_alloc-wake-kswapd-based-on-the-highest-eligible-zone.patch
* mm-convert-zone_reclaim-to-node_reclaim.patch
* mm-vmscan-avoid-passing-in-classzone_idx-unnecessarily-to-shrink_node.patch
* mm-vmscan-avoid-passing-in-classzone_idx-unnecessarily-to-compaction_ready.patch
* mm-vmscan-avoid-passing-in-classzone_idx-unnecessarily-to-compaction_ready-fix.patch
* mm-vmscan-avoid-passing-in-remaining-unnecessarily-to-prepare_kswapd_sleep.patch
* mm-vmscan-have-kswapd-reclaim-from-all-zones-if-reclaiming-and-buffer_heads_over_limit.patch
* mm-vmscan-have-kswapd-reclaim-from-all-zones-if-reclaiming-and-buffer_heads_over_limit-fix.patch
* mm-vmscan-add-classzone-information-to-tracepoints.patch
* mm-page_alloc-remove-fair-zone-allocation-policy.patch
* mm-page_alloc-cache-the-last-node-whose-dirty-limit-is-reached.patch
* mm-vmstat-replace-__count_zone_vm_events-with-a-zone-id-equivalent.patch
* mm-vmstat-account-per-zone-stalls-and-pages-skipped-during-reclaim.patch
* mm-vmstat-account-per-zone-stalls-and-pages-skipped-during-reclaim-fix.patch
* mm-vmstat-print-node-based-stats-in-zoneinfo-file.patch
* mm-vmstat-remove-zone-and-node-double-accounting-by-approximating-retries.patch
* mm-vmstat-remove-zone-and-node-double-accounting-by-approximating-retries-fix.patch
* mm-page_alloc-fix-dirtyable-highmem-calculation.patch
* mm-pagevec-release-reacquire-lru_lock-on-pgdat-change.patch
* mm-show-node_pages_scanned-per-node-not-zone.patch
* mm-show-node_pages_scanned-per-node-not-zone-fix.patch
* mm-vmscan-update-all-zone-lru-sizes-before-updating-memcg.patch
* mm-vmscan-remove-redundant-check-in-shrink_zones.patch
* mm-vmscan-release-reacquire-lru_lock-on-pgdat-change.patch
* mm-vmscan-release-reacquire-lru_lock-on-pgdat-change-fix.patch
* mm-add-per-zone-lru-list-stat.patch
* mm-vmscan-remove-highmem_file_pages.patch
* mm-remove-reclaim-and-compaction-retry-approximations.patch
* mm-consider-whether-to-decivate-based-on-eligible-zones-inactive-ratio.patch
* mm-vmscan-account-for-skipped-pages-as-a-partial-scan.patch
* mm-zsmalloc-use-obj_index-to-keep-consistent-with-others.patch
* mm-zsmalloc-take-obj-index-back-from-find_alloced_obj.patch
* mm-zsmalloc-use-class-objs_per_zspage-to-get-num-of-max-objects.patch
* mm-zsmalloc-avoid-calculate-max-objects-of-zspage-twice.patch
* mm-zsmalloc-keep-comments-consistent-with-code.patch
* mm-zsmalloc-add-__init__exit-attribute.patch
* mm-zsmalloc-use-helper-to-clear-page-flags-bit.patch
* mm-zsmalloc-add-per-class-compact-trace-event.patch
* mm-thp-clean-up-return-value-of-madvise_free_huge_pmd.patch
* memblock-include-asm-sectionsh-instead-of-asm-generic-sectionsh.patch
* mm-config_zone_device-stop-depending-on-config_expert.patch
* mm-cleanup-ifdef-guards-for-vmem_altmap.patch
* mm-track-nr_kernel_stack-in-kib-instead-of-number-of-stacks.patch
* mm-fix-memcg-stack-accounting-for-sub-page-stacks.patch
* kdb-use-task_cpu-instead-of-task_thread_info-cpu.patch
* printk-when-dumping-regs-show-the-stack-not-thread_info.patch
* mm-memblock-add-new-infrastructure-to-address-the-mem-limit-issue.patch
* arm64-acpi-fix-the-acpi-alignment-exception-when-mem=-specified.patch
* mem-hotplug-use-gfp_highuser_movable-in-alloc_migrate_target.patch
* mem-hotplug-use-different-mempolicy-in-alloc_migrate_target.patch
* kmemleak-dont-hang-if-user-disables-scanning-early.patch
* mm-page_owner-align-with-pageblock_nr-pages.patch
* make-__section_nr-more-efficient.patch
* mm-hwpoison-remove-incorrect-comment.patch
* mm-compaction-dont-isolate-pagewriteback-pages-in-migrate_sync_light-mode.patch
* revert-mm-mempool-only-set-__gfp_nomemalloc-if-there-are-free-elements.patch
* revert-mm-mempool-only-set-__gfp_nomemalloc-if-there-are-free-elements-checkpatch-fixes.patch
* mm-add-cond_resched-to-generic_swapfile_activate.patch
* mm-optimize-copy_page_to-from_iter_iovec.patch
* mm-kasan-account-for-object-redzone-in-slubs-nearest_obj.patch
* mm-kasan-switch-slub-to-stackdepot-enable-memory-quarantine-for-slub.patch
* mm-kasan-switch-slub-to-stackdepot-enable-memory-quarantine-for-slub-fix.patch
* lib-stackdepotc-use-__gfp_nowarn-for-stack-allocations.patch
* mm-page_alloc-set-alloc_flags-only-once-in-slowpath.patch
* mm-page_alloc-dont-retry-initial-attempt-in-slowpath.patch
* mm-page_alloc-restructure-direct-compaction-handling-in-slowpath.patch
* mm-page_alloc-make-thp-specific-decisions-more-generic.patch
* mm-thp-remove-__gfp_noretry-from-khugepaged-and-madvised-allocations.patch
* mm-compaction-introduce-direct-compaction-priority.patch
* mm-compaction-simplify-contended-compaction-handling.patch
* proc_oom_score-remove-tasklist_lock-and-pid_alive.patch
* procfs-avoid-32-bit-time_t-in-proc-stat.patch
* proc-relax-proc-tid-timerslack_ns-capability-requirements.patch
* proc-add-lsm-hook-checks-to-proc-tid-timerslack_ns.patch
* make-compile_test-depend-on-uml.patch
* memstick-dont-allocate-unused-major-for-ms_block.patch
* treewide-replace-obsolete-_refok-by-__ref.patch
* treewide-replace-obsolete-_refok-by-__ref-checkpatch-fixes.patch
* uapi-move-forward-declarations-of-internal-structures.patch
* mailmap-add-linus-lussing.patch
* task_work-use-read_once-lockless_dereference-avoid-pi_lock-if-task_works.patch
* dynamic_debug-only-add-header-when-used.patch
* dynamic_debug-only-add-header-when-used-fix.patch
* printk-do-not-include-interrupth.patch
* printk-create-pr_level-functions.patch
* printk-create-pr_level-functions-fix.patch
* printk-introduce-suppress_message_printing.patch
* printk-include-asm-sectionsh-instead-of-asm-generic-sectionsh.patch
* ratelimit-extend-to-print-suppressed-messages-on-release.patch
* printk-add-kernel-parameter-to-control-writes-to-dev-kmsg.patch
* printk-add-kernel-parameter-to-control-writes-to-dev-kmsg-update.patch
* lib-switch-config_printk_time-to-int.patch
* printk-allow-different-timestamps-for-printktime.patch
* lib-iommu-helper-skip-to-next-segment.patch
* crc32-use-ktime_get_ns-for-measurement.patch
* radix-tree-fix-comment-about-exceptional-bits.patch
* lib-add-crc64-ecma-module.patch
* compat-remove-compat_printk.patch
* firmware-consolidate-kmap-read-write-logic.patch
* firmware-provide-infrastructure-to-make-fw-caching-optional.patch
* firmware-support-loading-into-a-pre-allocated-buffer.patch
* firmware-support-loading-into-a-pre-allocated-buffer-fix.patch
* checkpatch-skip-long-lines-that-use-an-efi_guid-macro.patch
* checkpatch-allow-c99-style-comments.patch
* checkpatch-yet-another-commit-id-improvement.patch
* checkpatch-dont-complain-about-bit-macro-in-uapi.patch
* binfmt_elf-fix-calculations-for-bss-padding.patch
* mm-refuse-wrapped-vm_brk-requests.patch
* samples-kprobe-convert-the-printk-to-pr_info-pr_err.patch
* samples-jprobe-convert-the-printk-to-pr_info-pr_err.patch
* samples-kretprobe-convert-the-printk-to-pr_info-pr_err.patch
* samples-kretprobe-fix-the-wrong-type.patch
* fs-befs-move-useless-assignment.patch
* fs-befs-check-silent-flag-before-logging-errors.patch
* fs-befs-remove-useless-pr_err.patch
* fs-befs-remove-useless-befs_error.patch
* fs-befs-remove-useless-pr_err-in-befs_init_inodecache.patch
* befs-check-return-of-sb_min_blocksize.patch
* befs-fix-function-name-in-documentation.patch
* befs-remove-unused-functions.patch
* fs-befs-replace-befs_bread-by-sb_bread.patch
* nilfs2-hide-function-name-argument-from-nilfs_error.patch
* nilfs2-add-nilfs_msg-message-interface.patch
* nilfs2-embed-a-back-pointer-to-super-block-instance-in-nilfs-object.patch
* nilfs2-reduce-bare-use-of-printk-with-nilfs_msg.patch
* nilfs2-replace-nilfs_warning-with-nilfs_msg.patch
* nilfs2-replace-nilfs_warning-with-nilfs_msg-fix.patch
* nilfs2-emit-error-message-when-i-o-error-is-detected.patch
* nilfs2-do-not-use-yield.patch
* nilfs2-refactor-parser-of-snapshot-mount-option.patch
* nilfs2-fix-misuse-of-a-semaphore-in-sysfs-code.patch
* nilfs2-use-bit-macro.patch
* nilfs2-move-ioctl-interface-and-disk-layout-to-uapi-separately.patch
* reiserfs-fix-new_insert_key-may-be-used-uninitialized.patch
* signal-consolidate-tstlf_restore_sigmask-code.patch
* exit-quieten-greatest-stack-depth-printk.patch
* cpumask-fix-code-comment.patch
* kexec-return-error-number-directly.patch
* arm-kdump-advertise-boot-aliased-crash-kernel-resource.patch
* arm-kexec-advertise-location-of-bootable-ram.patch
* kexec-dont-invoke-oom-killer-for-control-page-allocation.patch
* kexec-ensure-user-memory-sizes-do-not-wrap.patch
* kexec-ensure-user-memory-sizes-do-not-wrap-fix.patch
* kdump-arrange-for-paddr_vmcoreinfo_note-to-return-phys_addr_t.patch
* kexec-allow-architectures-to-override-boot-mapping.patch
* kexec-allow-architectures-to-override-boot-mapping-fix.patch
* arm-keystone-dts-add-psci-command-definition.patch
* arm-kexec-fix-kexec-for-keystone-2.patch
* kexec-use-core_param-for-crash_kexec_post_notifiers-boot-option.patch
* add-a-kexec_crash_loaded-function.patch
* allow-kdump-with-crash_kexec_post_notifiers.patch
* allow-kdump-with-crash_kexec_post_notifiers-fix.patch
* kexec-add-resriction-on-the-kexec_load.patch
* kexec-add-resriction-on-the-kexec_load-fix.patch
* kdump-vmcoreinfo-report-actual-value-of-phys_base.patch
* rapidio-add-rapidio-channelized-messaging-driver.patch
* rapidio-add-rapidio-channelized-messaging-driver-fix-return-value-check-in-riocm_init.patch
* rapidio-remove-unnecessary-0x-prefixes-before-%pa-extension-uses.patch
* rapidio-documentation-fix-mangled-paragraph-in-mport_cdev.patch
* rapidio-fix-return-value-description-for-dma_prep-functions.patch
* rapidio-tsi721_dma-add-channel-mask-and-queue-size-parameters.patch
* rapidio-tsi721-add-pcie-mrrs-override-parameter.patch
* rapidio-tsi721-add-messaging-mbox-selector-parameter.patch
* rapidio-tsi721_dma-advance-queue-processing-from-transfer-submit-call.patch
* rapidio-fix-error-handling-in-mbox-request-release-functions.patch
* rapidio-idt_gen2-fix-locking-warning.patch
* rapidio-change-inbound-window-size-type-to-u64.patch
* rapidio-modify-for-rev3-specification-changes.patch
* rapidio-modify-for-rev3-specification-changes-fix-docbook-warning-for-gen3-update.patch
* powerpc-fsl_rio-apply-changes-for-rio-spec-rev-3.patch
* rapidio-switches-add-driver-for-idt-gen3-switches.patch
* rapidio-switches-add-driver-for-idt-gen3-switches-fix.patch
* futex-fix-shared-futex-operations-on-nommu.patch
* w1-remove-need-for-ida-and-use-platform_devid_auto.patch
* w1-add-helper-macro-module_w1_family.patch
* init-allow-blacklisting-of-module_init-functions.patch
* relay-add-global-mode-support-for-buffer-only-channels.patch
* ban-config_localversion_auto-with-allmodconfig.patch
* config-add-android-config-fragments.patch
* kcov-allow-more-fine-grained-coverage-instrumentation.patch
* ipc-delete-nr_ipc_ns.patch
* ipc-msgc-msgsnd-use-freezable-blocking-call.patch
* msgrcv-use-freezable-blocking-call.patch
  linux-next.patch
  linux-next-rejects.patch
* drivers-net-wireless-intel-iwlwifi-dvm-calibc-fix-min-warning.patch
* fpga-zynq-fpga-fix-build-failure.patch
* tree-wide-replace-config_enabled-with-is_enabled.patch
* bitmap-bitmap_equal-memcmp-optimization-fix.patch
* powerpc-add-explicit-include-asm-asm-compath-for-jump-label.patch
* sparc-support-static_key-usage-in-non-module-__exit-sections.patch
* tile-support-static_key-usage-in-non-module-__exit-sections.patch
* arm-jump-label-may-reference-text-in-__exit.patch
* jump_label-remove-bugh-atomich-dependencies-for-have_jump_label.patch
* dynamic_debug-add-jump-label-support.patch
* ipc-semc-fix-complex_count-vs-simple-op-race.patch
* ipc-semc-remove-duplicated-memory-barriers.patch
* media-mtk-vcodec-remove-unused-dma_attrs.patch
* dma-mapping-use-unsigned-long-for-dma_attrs.patch
* alpha-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* arc-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* arm-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* arm64-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* avr32-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* blackfin-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* c6x-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* cris-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* frv-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* drm-exynos-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* drm-mediatek-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* drm-msm-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* drm-nouveau-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* drm-rockship-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* infiniband-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* iommu-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* media-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* xen-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* swiotlb-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* powerpc-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* video-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* x86-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* iommu-intel-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* h8300-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* hexagon-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* ia64-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* m68k-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* metag-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* microblaze-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* mips-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* mn10300-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* nios2-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* openrisc-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* parisc-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* misc-mic-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* s390-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* sh-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* sparc-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* tile-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* unicore32-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* xtensa-dma-mapping-use-unsigned-long-for-dma_attrs.patch
* remoteproc-qcom-use-unsigned-long-for-dma_attrs.patch
* dma-mapping-remove-dma_get_attr.patch
* dma-mapping-document-the-dma-attributes-next-to-the-declaration.patch
  mm-add-strictlimit-knob-v2.patch
  make-sure-nobodys-leaking-resources.patch
  releasing-resources-with-children.patch
  make-frame_pointer-default=y.patch
  kernel-forkc-export-kernel_thread-to-modules.patch
  mutex-subsystem-synchro-test-module.patch
  slab-leaks3-default-y.patch
  add-debugging-aid-for-memory-initialisation-problems.patch
  workaround-for-a-pci-restoring-bug.patch

^ permalink raw reply

* Re: [PATCH/RFC] Re: linux-next: build failure after merge of the luto-misc tree
From: Arnaldo Carvalho de Melo @ 2016-07-22 19:57 UTC (permalink / raw)
  To: Josh Poimboeuf
  Cc: Stephen Rothwell, Andy Lutomirski, Arnaldo Carvalho de Melo,
	Peter Zijlstra, Thomas Gleixner, Ingo Molnar, H. Peter Anvin,
	linux-next@vger.kernel.org, linux-kernel@vger.kernel.org
In-Reply-To: <20160722194416.pxbsnyhaqcyoigsj@treble>

Em Fri, Jul 22, 2016 at 02:44:17PM -0500, Josh Poimboeuf escreveu:
> On Fri, Jul 22, 2016 at 04:36:55PM -0300, Arnaldo Carvalho de Melo wrote:
> > Em Fri, Jul 22, 2016 at 02:19:20PM -0500, Josh Poimboeuf escreveu:
> > > On Fri, Jul 22, 2016 at 11:37:39AM -0300, Arnaldo Carvalho de Melo wrote:
> > > > I.e. with the two patches I mentioned, that are equivalent to the last patch I
> > > > sent to Stephen for testing, we would end up with HOSTARCH=powerpc and
> > > > ARCH=x86, no?

> > > Thanks for spelling it out, that helped a lot.

> > Glad you liked it, I had to do it for my own sanity :-)

> > And something that gave me mixed feelings was an e-mail from the kbuild
> > test bot that noticed my perf/core changes and said that the build was
> > broken for "make ARCH=x86_64", so I had to reinstate this part:

> > ifeq ($(ARCH),x86_64)
> > ARCH := x86
> > endif

> > Because, as you say, 'make ARCH=x86' works :-\ I think it will not be
> > needed with your patch, right? I'm checking your patch below right now,

> Yeah, that shouldn't be needed with my patch.  I think either would
> work, but my patch is more of a permanent solution.

Sure, I left it there because then we don't have bisection broke at that
fix I made, i.e. 'make ARCH=x86_64' works at that point too.

I applied your patch and will push it to Ingo, now we must cross our
fingers so that Stephen doesn't come back to us once more telling it is
still broken :o)

Best regards,

- Arnaldo

^ permalink raw reply

* Re: [PATCH/RFC] Re: linux-next: build failure after merge of the luto-misc tree
From: Josh Poimboeuf @ 2016-07-22 19:44 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo
  Cc: Stephen Rothwell, Andy Lutomirski, Arnaldo Carvalho de Melo,
	Peter Zijlstra, Thomas Gleixner, Ingo Molnar, H. Peter Anvin,
	linux-next@vger.kernel.org, linux-kernel@vger.kernel.org
In-Reply-To: <20160722193655.GJ18962@kernel.org>

On Fri, Jul 22, 2016 at 04:36:55PM -0300, Arnaldo Carvalho de Melo wrote:
> Em Fri, Jul 22, 2016 at 02:19:20PM -0500, Josh Poimboeuf escreveu:
> > On Fri, Jul 22, 2016 at 11:37:39AM -0300, Arnaldo Carvalho de Melo wrote:
> > > Em Thu, Jul 21, 2016 at 10:41:18PM -0500, Josh Poimboeuf escreveu:
> > > > On Fri, Jul 22, 2016 at 09:23:02AM +1000, Stephen Rothwell wrote:
> > > > > It just looks like objtool was not written with cross compilation in
> > > > > mind?
> > >  
> > > > I don't know yet what the specific problem is, but objtool should work
> > > > fine in a cross-compiled environment.  It needs to be compiled with the
> > > > host (powerpc) compiler, but then it needs to disassemble target (x86)
> > > > files.  It worked fine before the bitsperlong.h files were merged.
> > > 
> > > So, trying to summarize from the various messages in this thread:
> > > 
> > > In Tue, Jul 19, 2016 at 01:26:08PM +1000, Stephen Rothwell wrote:
> > > 
> > > > It produces these errors (from the x86_64 allmodconfig build):
> > > >
> > > > In file included from
> > > > /home/sfr/next/next/tools/arch/x86/include/uapi/asm/bitsperlong.h:10:0,
> > > >                  from /usr/include/asm-generic/int-ll64.h:11,
> > > >                  from /usr/include/powerpc64le-linux-gnu/asm/types.h:27,
> > > >                  from /home/sfr/next/next/tools/include/linux/types.h:9,
> > > >                  from /home/sfr/next/next/tools/include/linux/list.h:4,
> > > >                  from elf.h:23,
> > > >                  from elf.c:30:
> > > > /home/sfr/next/next/tools/include/asm-generic/bitsperlong.h:13:2:
> > > > error: #error Inconsistent word size. Check asm/bitsperlong.h
> > > >  #error Inconsistent word size. Check asm/bitsperlong.h
> > > >   ^
> > > 
> > > So it starts at tools/arch/x86/include/uapi/asm/bitsperlong.h, and as
> > > you mention, this should've instead be using the host headers, i.e.:
> > > 
> > >    tools/arch/powerpc/include/uapi/asm/bitsperlong.h
> > > 
> > > Which it will if it uses HOSTARCH in tools/objtool/Makefile when setting
> > > up the header search path, I have two csets in my perf/core branch that
> > > fixes this, and that are equivalent to the last patch Stephen tried:
> > > 
> > >   $ git log --oneline -2
> > >   87f7dc54366a objtool: Use tools/scripts/Makefile.arch to get ARCH and HOSTARCH
> > >   0eec6770ab60 tools build: Add HOSTARCH Makefile variable
> > >   $ 
> > > 
> > > Ok, so now it uses the right file, see the whole sequence at the end of this
> > > e-mail, but it boils down to:
> > > 
> > > -----------------------------------------------------------------------------
> > > #if defined(__powerpc64__)
> > > # define __BITS_PER_LONG 64
> > > #else
> > > # define __BITS_PER_LONG 32
> > > #endif
> > > 
> > > #ifdef __SIZEOF_LONG__
> > > #define BITS_PER_LONG (__CHAR_BIT__ * __SIZEOF_LONG__)
> > > #else
> > > #define BITS_PER_LONG __WORDSIZE
> > > #endif
> > > 
> > > #if BITS_PER_LONG != __BITS_PER_LONG
> > > #error Inconsistent word size. Check asm/bitsperlong.h
> > > #endif
> > > -----------------------------------------------------------------------------
> > > 
> > > Which I think has no problems, right? The last problem reported ty Stephen now is:
> > > 
> > > In Fri, 22 Jul 2016 09:23:02 +1000, Stephen Rothwell wrote:
> > > 
> > > > That gets me this errors from the x86_64 allmodconfig build:
> > > 
> > > > tools/objtool/objtool-in.o: In function `decode_instructions':
> > > > tools/objtool/builtin-check.c:276: undefined reference to `arch_decode_instruction'
> > > 
> > > Should work, since ARCH should be x86 and then tools/objtool/Build will have
> > > this:
> > > 
> > > objtool-y += arch/$(ARCH)/
> > > 
> > > Turned into:
> > > 
> > > objtool-y += arch/x86/
> > > 
> > > Which will build tools/objtool/arch/x86/decode.c, that will provide that
> > > arch_decode_instruction() function :-\
> > > 
> > > I.e. with the two patches I mentioned, that are equivalent to the last patch I
> > > sent to Stephen for testing, we would end up with HOSTARCH=powerpc and
> > > ARCH=x86, no?
> > 
> > Thanks for spelling it out, that helped a lot.
> 
> Glad you liked it, I had to do it for my own sanity :-)
> 
> And something that gave me mixed feelings was an e-mail from the kbuild
> test bot that noticed my perf/core changes and said that the build was
> broken for "make ARCH=x86_64", so I had to reinstate this part:
> 
> ifeq ($(ARCH),x86_64)
> ARCH := x86
> endif
> 
> Because, as you say, 'make ARCH=x86' works :-\ I think it will not be
> needed with your patch, right? I'm checking your patch below right now,

Yeah, that shouldn't be needed with my patch.  I think either would
work, but my patch is more of a permanent solution.

-- 
Josh

^ permalink raw reply

* Re: [PATCH/RFC] Re: linux-next: build failure after merge of the luto-misc tree
From: Arnaldo Carvalho de Melo @ 2016-07-22 19:36 UTC (permalink / raw)
  To: Josh Poimboeuf
  Cc: Stephen Rothwell, Andy Lutomirski, Arnaldo Carvalho de Melo,
	Peter Zijlstra, Thomas Gleixner, Ingo Molnar, H. Peter Anvin,
	linux-next@vger.kernel.org, linux-kernel@vger.kernel.org
In-Reply-To: <20160722191920.ej62fnspnqurbaa7@treble>

Em Fri, Jul 22, 2016 at 02:19:20PM -0500, Josh Poimboeuf escreveu:
> On Fri, Jul 22, 2016 at 11:37:39AM -0300, Arnaldo Carvalho de Melo wrote:
> > Em Thu, Jul 21, 2016 at 10:41:18PM -0500, Josh Poimboeuf escreveu:
> > > On Fri, Jul 22, 2016 at 09:23:02AM +1000, Stephen Rothwell wrote:
> > > > It just looks like objtool was not written with cross compilation in
> > > > mind?
> >  
> > > I don't know yet what the specific problem is, but objtool should work
> > > fine in a cross-compiled environment.  It needs to be compiled with the
> > > host (powerpc) compiler, but then it needs to disassemble target (x86)
> > > files.  It worked fine before the bitsperlong.h files were merged.
> > 
> > So, trying to summarize from the various messages in this thread:
> > 
> > In Tue, Jul 19, 2016 at 01:26:08PM +1000, Stephen Rothwell wrote:
> > 
> > > It produces these errors (from the x86_64 allmodconfig build):
> > >
> > > In file included from
> > > /home/sfr/next/next/tools/arch/x86/include/uapi/asm/bitsperlong.h:10:0,
> > >                  from /usr/include/asm-generic/int-ll64.h:11,
> > >                  from /usr/include/powerpc64le-linux-gnu/asm/types.h:27,
> > >                  from /home/sfr/next/next/tools/include/linux/types.h:9,
> > >                  from /home/sfr/next/next/tools/include/linux/list.h:4,
> > >                  from elf.h:23,
> > >                  from elf.c:30:
> > > /home/sfr/next/next/tools/include/asm-generic/bitsperlong.h:13:2:
> > > error: #error Inconsistent word size. Check asm/bitsperlong.h
> > >  #error Inconsistent word size. Check asm/bitsperlong.h
> > >   ^
> > 
> > So it starts at tools/arch/x86/include/uapi/asm/bitsperlong.h, and as
> > you mention, this should've instead be using the host headers, i.e.:
> > 
> >    tools/arch/powerpc/include/uapi/asm/bitsperlong.h
> > 
> > Which it will if it uses HOSTARCH in tools/objtool/Makefile when setting
> > up the header search path, I have two csets in my perf/core branch that
> > fixes this, and that are equivalent to the last patch Stephen tried:
> > 
> >   $ git log --oneline -2
> >   87f7dc54366a objtool: Use tools/scripts/Makefile.arch to get ARCH and HOSTARCH
> >   0eec6770ab60 tools build: Add HOSTARCH Makefile variable
> >   $ 
> > 
> > Ok, so now it uses the right file, see the whole sequence at the end of this
> > e-mail, but it boils down to:
> > 
> > -----------------------------------------------------------------------------
> > #if defined(__powerpc64__)
> > # define __BITS_PER_LONG 64
> > #else
> > # define __BITS_PER_LONG 32
> > #endif
> > 
> > #ifdef __SIZEOF_LONG__
> > #define BITS_PER_LONG (__CHAR_BIT__ * __SIZEOF_LONG__)
> > #else
> > #define BITS_PER_LONG __WORDSIZE
> > #endif
> > 
> > #if BITS_PER_LONG != __BITS_PER_LONG
> > #error Inconsistent word size. Check asm/bitsperlong.h
> > #endif
> > -----------------------------------------------------------------------------
> > 
> > Which I think has no problems, right? The last problem reported ty Stephen now is:
> > 
> > In Fri, 22 Jul 2016 09:23:02 +1000, Stephen Rothwell wrote:
> > 
> > > That gets me this errors from the x86_64 allmodconfig build:
> > 
> > > tools/objtool/objtool-in.o: In function `decode_instructions':
> > > tools/objtool/builtin-check.c:276: undefined reference to `arch_decode_instruction'
> > 
> > Should work, since ARCH should be x86 and then tools/objtool/Build will have
> > this:
> > 
> > objtool-y += arch/$(ARCH)/
> > 
> > Turned into:
> > 
> > objtool-y += arch/x86/
> > 
> > Which will build tools/objtool/arch/x86/decode.c, that will provide that
> > arch_decode_instruction() function :-\
> > 
> > I.e. with the two patches I mentioned, that are equivalent to the last patch I
> > sent to Stephen for testing, we would end up with HOSTARCH=powerpc and
> > ARCH=x86, no?
> 
> Thanks for spelling it out, that helped a lot.

Glad you liked it, I had to do it for my own sanity :-)

And something that gave me mixed feelings was an e-mail from the kbuild
test bot that noticed my perf/core changes and said that the build was
broken for "make ARCH=x86_64", so I had to reinstate this part:

ifeq ($(ARCH),x86_64)
ARCH := x86
endif

Because, as you say, 'make ARCH=x86' works :-\ I think it will not be
needed with your patch, right? I'm checking your patch below right now,

- Arnaldo
 
> I'm guessing Stephen is setting ARCH=x86_64 on the command-line rather
> than ARCH=x86.  How about the following patch?  Stephen, can you confirm
> this fixes it?  This is on top of Arnaldo's other two fixes here:
> 
>   https://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git perf/core
> 
> From: Josh Poimboeuf <jpoimboe@redhat.com>
> Subject: [PATCH] tools build: fix objtool build with ARCH=x86_64
> 
> The objtool build fails in a cross-compiled environment on a non-x86
> host with "ARCH=x86_64":
> 
>   tools/objtool/objtool-in.o: In function `decode_instructions':
>   tools/objtool/builtin-check.c:276: undefined reference to `arch_decode_instruction'
> 
> We could override the ARCH environment variable and change it back to
> x86, similar to what the objtool Makefile was doing before; but it's
> tricky to override environment variables consistently.
> 
> Instead, take a similar approach used by the Linux top-level Makefile
> and introduce a SRCARCH Makefile variable which evaluates to "x86" when
> ARCH is either "x86_64" or "x86".
> 
> Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
> Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
> ---
>  tools/objtool/Build         |  2 +-
>  tools/objtool/Makefile      |  2 +-
>  tools/scripts/Makefile.arch | 32 ++++++++++++++++++++++++++++++++
>  3 files changed, 34 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/objtool/Build b/tools/objtool/Build
> index 2457916..d6cdece 100644
> --- a/tools/objtool/Build
> +++ b/tools/objtool/Build
> @@ -1,4 +1,4 @@
> -objtool-y += arch/$(ARCH)/
> +objtool-y += arch/$(SRCARCH)/
>  objtool-y += builtin-check.o
>  objtool-y += elf.o
>  objtool-y += special.o
> diff --git a/tools/objtool/Makefile b/tools/objtool/Makefile
> index c9ad80a..577f2d4 100644
> --- a/tools/objtool/Makefile
> +++ b/tools/objtool/Makefile
> @@ -29,7 +29,7 @@ elfshdr := $(shell echo '\#include <libelf.h>' | $(CC) $(CFLAGS) -x c -E - | gre
>  CFLAGS += $(if $(elfshdr),,-DLIBELF_USE_DEPRECATED)
>  
>  AWK = awk
> -export srctree OUTPUT CFLAGS ARCH AWK
> +export srctree OUTPUT CFLAGS SRCARCH AWK
>  include $(srctree)/tools/build/Makefile.include
>  
>  $(OBJTOOL_IN): fixdep FORCE
> diff --git a/tools/scripts/Makefile.arch b/tools/scripts/Makefile.arch
> index 887321c..ad85b92 100644
> --- a/tools/scripts/Makefile.arch
> +++ b/tools/scripts/Makefile.arch
> @@ -5,10 +5,42 @@ HOSTARCH := $(shell uname -m | sed -e s/i.86/x86/ -e s/x86_64/x86/ \
>                                    -e s/ppc.*/powerpc/ -e s/mips.*/mips/ \
>                                    -e s/sh[234].*/sh/ -e s/aarch64.*/arm64/ \
>                                    -e s/tile.*/tile/ )
> +
>  ifndef ARCH
>  ARCH := $(HOSTARCH)
>  endif
>  
> +SRCARCH := $(ARCH)
> +
> +# Additional ARCH settings for x86
> +ifeq ($(ARCH),i386)
> +        SRCARCH := x86
> +endif
> +ifeq ($(ARCH),x86_64)
> +        SRCARCH := x86
> +endif
> +
> +# Additional ARCH settings for sparc
> +ifeq ($(ARCH),sparc32)
> +       SRCARCH := sparc
> +endif
> +ifeq ($(ARCH),sparc64)
> +       SRCARCH := sparc
> +endif
> +
> +# Additional ARCH settings for sh
> +ifeq ($(ARCH),sh64)
> +       SRCARCH := sh
> +endif
> +
> +# Additional ARCH settings for tile
> +ifeq ($(ARCH),tilepro)
> +       SRCARCH := tile
> +endif
> +ifeq ($(ARCH),tilegx)
> +       SRCARCH := tile
> +endif
> +
>  LP64 := $(shell echo __LP64__ | ${CC} ${CFLAGS} -E -x c - | tail -n 1)
>  ifeq ($(LP64), 1)
>    IS_64_BIT := 1

^ permalink raw reply

* Re: linux-next: Tree for Jul 22
From: Paul Gortmaker @ 2016-07-22 19:28 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: linux-next@vger.kernel.org, LKML
In-Reply-To: <20160722171035.1886c8b0@canb.auug.org.au>

On Fri, Jul 22, 2016 at 3:10 AM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> Hi all,
>
> Changes since 20160721:
>
> The powerpc tree gained a build failure for which I applied a fix patch.

There still are new failures in corenet32/64 and mpc85xx; looks like:

arch/powerpc/sysdev/fsl_rio.c:702:11: error: 'struct rio_mport' has no
member named 'phy_type'
arch/powerpc/sysdev/fsl_rio.c:702:25: error: 'RIO_PHY_SERIAL'
undeclared (first use in this function)
make[2]: *** [arch/powerpc/sysdev/fsl_rio.o] Error 1

http://kisskb.ellerman.id.au/kisskb/buildresult/12750610/

>
> The fuse tree gained a build failure due to an interaction with the
> btrfs-kdave tree, so I applied a merge fix patch.
>
> The pm tree gained a build failure, so I used the version from
> next-20160721.
>
> The nvdimm tree lost its build failure but gained another due to an
> interaction with the device-mapper tree.  I applied a merge fix patch.
>
> Non-merge commits (relative to Linus' tree): 10807
>  9936 files changed, 548899 insertions(+), 195049 deletions(-)

The crypto issue I mentioned yesterday seems to be gone.

The allmod xfs issue for mips/sparc  remains.

For x86-64 allmod, I am seeing this issue for the 1st time today
in my local builds, even though it doesn't appear in sfr's builds:

FATAL: drivers/input/evbug: sizeof(struct input_device_id)=312 is not
a modulo of the size of section
__mod_input__<identifier>_device_table=384.
Fix definition of struct input_device_id in mod_devicetable.h
make[2]: *** [__modpost] Error 1
make[1]: *** [modules] Error 2
make: *** [sub-make] Error 2

paul@builder:~/git/linux-head$ git describe
next-20160722

Nothing has touched drivers/input/evbug.c for years...

Paul.
--

>
> ----------------------------------------------------------------------------
>
> 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 239 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
>

^ permalink raw reply

* Re: [PATCH/RFC] Re: linux-next: build failure after merge of the luto-misc tree
From: Josh Poimboeuf @ 2016-07-22 19:19 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo
  Cc: Stephen Rothwell, Andy Lutomirski, Arnaldo Carvalho de Melo,
	Peter Zijlstra, Thomas Gleixner, Ingo Molnar, H. Peter Anvin,
	linux-next@vger.kernel.org, linux-kernel@vger.kernel.org
In-Reply-To: <20160722143739.GI18962@kernel.org>

On Fri, Jul 22, 2016 at 11:37:39AM -0300, Arnaldo Carvalho de Melo wrote:
> Em Thu, Jul 21, 2016 at 10:41:18PM -0500, Josh Poimboeuf escreveu:
> > On Fri, Jul 22, 2016 at 09:23:02AM +1000, Stephen Rothwell wrote:
> > > It just looks like objtool was not written with cross compilation in
> > > mind?
>  
> > I don't know yet what the specific problem is, but objtool should work
> > fine in a cross-compiled environment.  It needs to be compiled with the
> > host (powerpc) compiler, but then it needs to disassemble target (x86)
> > files.  It worked fine before the bitsperlong.h files were merged.
> 
> So, trying to summarize from the various messages in this thread:
> 
> In Tue, Jul 19, 2016 at 01:26:08PM +1000, Stephen Rothwell wrote:
> 
> > It produces these errors (from the x86_64 allmodconfig build):
> >
> > In file included from
> > /home/sfr/next/next/tools/arch/x86/include/uapi/asm/bitsperlong.h:10:0,
> >                  from /usr/include/asm-generic/int-ll64.h:11,
> >                  from /usr/include/powerpc64le-linux-gnu/asm/types.h:27,
> >                  from /home/sfr/next/next/tools/include/linux/types.h:9,
> >                  from /home/sfr/next/next/tools/include/linux/list.h:4,
> >                  from elf.h:23,
> >                  from elf.c:30:
> > /home/sfr/next/next/tools/include/asm-generic/bitsperlong.h:13:2:
> > error: #error Inconsistent word size. Check asm/bitsperlong.h
> >  #error Inconsistent word size. Check asm/bitsperlong.h
> >   ^
> 
> So it starts at tools/arch/x86/include/uapi/asm/bitsperlong.h, and as
> you mention, this should've instead be using the host headers, i.e.:
> 
>    tools/arch/powerpc/include/uapi/asm/bitsperlong.h
> 
> Which it will if it uses HOSTARCH in tools/objtool/Makefile when setting
> up the header search path, I have two csets in my perf/core branch that
> fixes this, and that are equivalent to the last patch Stephen tried:
> 
>   $ git log --oneline -2
>   87f7dc54366a objtool: Use tools/scripts/Makefile.arch to get ARCH and HOSTARCH
>   0eec6770ab60 tools build: Add HOSTARCH Makefile variable
>   $ 
> 
> Ok, so now it uses the right file, see the whole sequence at the end of this
> e-mail, but it boils down to:
> 
> -----------------------------------------------------------------------------
> #if defined(__powerpc64__)
> # define __BITS_PER_LONG 64
> #else
> # define __BITS_PER_LONG 32
> #endif
> 
> #ifdef __SIZEOF_LONG__
> #define BITS_PER_LONG (__CHAR_BIT__ * __SIZEOF_LONG__)
> #else
> #define BITS_PER_LONG __WORDSIZE
> #endif
> 
> #if BITS_PER_LONG != __BITS_PER_LONG
> #error Inconsistent word size. Check asm/bitsperlong.h
> #endif
> -----------------------------------------------------------------------------
> 
> Which I think has no problems, right? The last problem reported ty Stephen now is:
> 
> In Fri, 22 Jul 2016 09:23:02 +1000, Stephen Rothwell wrote:
> 
> > That gets me this errors from the x86_64 allmodconfig build:
> 
> > tools/objtool/objtool-in.o: In function `decode_instructions':
> > tools/objtool/builtin-check.c:276: undefined reference to `arch_decode_instruction'
> 
> Should work, since ARCH should be x86 and then tools/objtool/Build will have
> this:
> 
> objtool-y += arch/$(ARCH)/
> 
> Turned into:
> 
> objtool-y += arch/x86/
> 
> Which will build tools/objtool/arch/x86/decode.c, that will provide that
> arch_decode_instruction() function :-\
> 
> I.e. with the two patches I mentioned, that are equivalent to the last patch I
> sent to Stephen for testing, we would end up with HOSTARCH=powerpc and
> ARCH=x86, no?

Thanks for spelling it out, that helped a lot.

I'm guessing Stephen is setting ARCH=x86_64 on the command-line rather
than ARCH=x86.  How about the following patch?  Stephen, can you confirm
this fixes it?  This is on top of Arnaldo's other two fixes here:

  https://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git perf/core

From: Josh Poimboeuf <jpoimboe@redhat.com>
Subject: [PATCH] tools build: fix objtool build with ARCH=x86_64

The objtool build fails in a cross-compiled environment on a non-x86
host with "ARCH=x86_64":

  tools/objtool/objtool-in.o: In function `decode_instructions':
  tools/objtool/builtin-check.c:276: undefined reference to `arch_decode_instruction'

We could override the ARCH environment variable and change it back to
x86, similar to what the objtool Makefile was doing before; but it's
tricky to override environment variables consistently.

Instead, take a similar approach used by the Linux top-level Makefile
and introduce a SRCARCH Makefile variable which evaluates to "x86" when
ARCH is either "x86_64" or "x86".

Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
---
 tools/objtool/Build         |  2 +-
 tools/objtool/Makefile      |  2 +-
 tools/scripts/Makefile.arch | 32 ++++++++++++++++++++++++++++++++
 3 files changed, 34 insertions(+), 2 deletions(-)

diff --git a/tools/objtool/Build b/tools/objtool/Build
index 2457916..d6cdece 100644
--- a/tools/objtool/Build
+++ b/tools/objtool/Build
@@ -1,4 +1,4 @@
-objtool-y += arch/$(ARCH)/
+objtool-y += arch/$(SRCARCH)/
 objtool-y += builtin-check.o
 objtool-y += elf.o
 objtool-y += special.o
diff --git a/tools/objtool/Makefile b/tools/objtool/Makefile
index c9ad80a..577f2d4 100644
--- a/tools/objtool/Makefile
+++ b/tools/objtool/Makefile
@@ -29,7 +29,7 @@ elfshdr := $(shell echo '\#include <libelf.h>' | $(CC) $(CFLAGS) -x c -E - | gre
 CFLAGS += $(if $(elfshdr),,-DLIBELF_USE_DEPRECATED)
 
 AWK = awk
-export srctree OUTPUT CFLAGS ARCH AWK
+export srctree OUTPUT CFLAGS SRCARCH AWK
 include $(srctree)/tools/build/Makefile.include
 
 $(OBJTOOL_IN): fixdep FORCE
diff --git a/tools/scripts/Makefile.arch b/tools/scripts/Makefile.arch
index 887321c..ad85b92 100644
--- a/tools/scripts/Makefile.arch
+++ b/tools/scripts/Makefile.arch
@@ -5,10 +5,42 @@ HOSTARCH := $(shell uname -m | sed -e s/i.86/x86/ -e s/x86_64/x86/ \
                                   -e s/ppc.*/powerpc/ -e s/mips.*/mips/ \
                                   -e s/sh[234].*/sh/ -e s/aarch64.*/arm64/ \
                                   -e s/tile.*/tile/ )
+
 ifndef ARCH
 ARCH := $(HOSTARCH)
 endif
 
+SRCARCH := $(ARCH)
+
+# Additional ARCH settings for x86
+ifeq ($(ARCH),i386)
+        SRCARCH := x86
+endif
+ifeq ($(ARCH),x86_64)
+        SRCARCH := x86
+endif
+
+# Additional ARCH settings for sparc
+ifeq ($(ARCH),sparc32)
+       SRCARCH := sparc
+endif
+ifeq ($(ARCH),sparc64)
+       SRCARCH := sparc
+endif
+
+# Additional ARCH settings for sh
+ifeq ($(ARCH),sh64)
+       SRCARCH := sh
+endif
+
+# Additional ARCH settings for tile
+ifeq ($(ARCH),tilepro)
+       SRCARCH := tile
+endif
+ifeq ($(ARCH),tilegx)
+       SRCARCH := tile
+endif
+
 LP64 := $(shell echo __LP64__ | ${CC} ${CFLAGS} -E -x c - | tail -n 1)
 ifeq ($(LP64), 1)
   IS_64_BIT := 1

^ permalink raw reply related

* Re: linux-next: error fetching the y2038 tree
From: Arnd Bergmann @ 2016-07-22 19:03 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: linux-next, linux-kernel
In-Reply-To: <20160722100159.72aa6476@canb.auug.org.au>

On Friday, July 22, 2016 10:01:59 AM CEST Stephen Rothwell wrote:
> Hi Arnd,
> 
> Fetching the y2038
> (git://git.kernel.org/pub/scm/linux/kernel/git/arnd/playground.git#y2038)
> this morning produces this error:
> 
> fatal: Couldn't find remote ref refs/heads/y2038
> 
> I am still using the last version of this tree I fetched which contains:
> 
> 4b277763c5b3 vfs: Add support to document max and min inode times
> 0b38aceef3f3 vfs: Add vfs_time accessors
> df5999b78b01 fs: Add current_fs_time_sec() function
> 549eb7b22e24 AFS: Correctly use 64-bit time for UUID

Hi Stephen,

my mistake, I wanted to remove the contents since Deepa has done
a replacement series that obsolete three of the four patches
(Linus didn't take the branch last time).

I'll push a mainline commit to the branch instead, to make the
contents disappear from -next.

Thanks for letting me know about the problem.

	Arnd

^ permalink raw reply

* [PATCH resend v3 3/5] libata-scsi: use u8 array to store mode page copy
From: tom.ty89 @ 2016-07-22 18:34 UTC (permalink / raw)
  To: tj, hare, sergei.shtylyov, arnd
  Cc: sfr, linux-ide, linux-scsi, linux-kernel, linux-next, Tom Yan
In-Reply-To: <CAGnHSEmTC06_NKrBDVyFkLSqx4qDRy+OhXvpcySk6HHYLSRsuw@mail.gmail.com>

From: Tom Yan <tom.ty89@gmail.com>

ata_mselect_*() would initialize a char array for storing a copy of
the current mode page. However, char could be signed char. In that
case, bytes larger than 127 would be converted to negative number.

For example, 0xff from def_control_mpage[] would become -1. This
prevented ata_mselect_control() from working at all, since when it
did the read-only bits check, there would always be a mismatch.

Signed-off-by: Tom Yan <tom.ty89@gmail.com>

diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c
index 4a4e6f1..5cfcb4b 100644
--- a/drivers/ata/libata-scsi.c
+++ b/drivers/ata/libata-scsi.c
@@ -3610,7 +3610,7 @@ static int ata_mselect_caching(struct ata_queued_cmd *qc,
 {
 	struct ata_taskfile *tf = &qc->tf;
 	struct ata_device *dev = qc->dev;
-	char mpage[CACHE_MPAGE_LEN];
+	u8 mpage[CACHE_MPAGE_LEN];
 	u8 wce, mask;
 	int i;
 
@@ -3668,7 +3668,7 @@ static int ata_mselect_control(struct ata_queued_cmd *qc,
 			       const u8 *buf, int len, u16 *fp)
 {
 	struct ata_device *dev = qc->dev;
-	char mpage[CONTROL_MPAGE_LEN];
+	u8 mpage[CONTROL_MPAGE_LEN];
 	u8 d_sense, mask;
 	int i;
 
-- 
2.9.0

^ permalink raw reply related

* Re: [PATCH resend v2 3/5] libata-scsi: use u8 array to store mode page copy
From: Tom Yan @ 2016-07-22 18:22 UTC (permalink / raw)
  To: Sergei Shtylyov
  Cc: Tejun Heo, Hannes Reinecke, Arnd Bergmann, Stephen Rothwell,
	linux-ide, linux-scsi, linux-kernel, linux-next
In-Reply-To: <65ee2deb-200c-a467-1eb8-ed2eb5f14a70@cogentembedded.com>

Strange. I merely changed the two "char" to "u8". I wonder how the tab
became spaces. Anyway, sorry about that, resending soon.

On 22 July 2016 at 17:59, Sergei Shtylyov
<sergei.shtylyov@cogentembedded.com> wrote:
> Hello.
>
>
> On 7/22/2016 2:29 AM, tom.ty89@gmail.com wrote:
>
>> From: Tom Yan <tom.ty89@gmail.com>
>>
>> ata_mselect_*() would initialize a char array for storing a copy of
>> the current mode page. However, char could be signed char. In that
>> case, bytes larger than 127 would be converted to negative number.
>>
>> For example, 0xff from def_control_mpage[] would become -1. This
>> prevented ata_mselect_control() from working at all, since when it
>> did the read-only bits check, there would always be a mismatch.
>>
>> Signed-off-by: Tom Yan <tom.ty89@gmail.com>
>>
>> diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c
>> index 4a4e6f1..a28e2ea94 100644
>> --- a/drivers/ata/libata-scsi.c
>> +++ b/drivers/ata/libata-scsi.c
>> @@ -3610,7 +3610,7 @@ static int ata_mselect_caching(struct ata_queued_cmd
>> *qc,
>>  {
>>         struct ata_taskfile *tf = &qc->tf;
>>         struct ata_device *dev = qc->dev;
>> -       char mpage[CACHE_MPAGE_LEN];
>> +       u8 mpage[CACHE_MPAGE_LEN];
>>         u8 wce, mask;
>>         int i;
>>
>> @@ -3668,7 +3668,7 @@ static int ata_mselect_control(struct ata_queued_cmd
>> *qc,
>>                                const u8 *buf, int len, u16 *fp)
>>  {
>>         struct ata_device *dev = qc->dev;
>> -       char mpage[CONTROL_MPAGE_LEN];
>> +        u8 mpage[CONTROL_MPAGE_LEN];
>
>
>    Indent with tabs please, as above.
>
> [...]
>
> MBR, Sergei
>

^ permalink raw reply

* Re: [PATCH -next] pinctrl: fix build, PINCTRL_CYGNUS_MUX depends on OF
From: Randy Dunlap @ 2016-07-22 18:17 UTC (permalink / raw)
  To: Ray Jui, linux-next@vger.kernel.org
  Cc: Ray Jui, bcm-kernel-feedback-list, linux-arm-kernel,
	Linus Walleij, linux-gpio, LKML
In-Reply-To: <e8bd2919-53f1-6fe9-0188-c52d44fdc54b@broadcom.com>

On 07/22/16 11:09, Ray Jui wrote:
> Hi Randy,
> 
> On 7/22/2016 11:06 AM, Randy Dunlap wrote:
>> From: Randy Dunlap <rdunlap@infradead.org>
>>
>> Fix pinctrl-cygnus-mux.c build when ARCH_BCM_CYGNUS is not enabled
>> but COMPILE_TEST is enabled by making the driver depend on OF.
>>
>> ../drivers/pinctrl/bcm/pinctrl-cygnus-mux.c:739:20: error: 'pinconf_generic_dt_node_to_map_group' undeclared here (not in a function)
>>   .dt_node_to_map = pinconf_generic_dt_node_to_map_group,
>>
>> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
>> Cc: Ray Jui <rjui@broadcom.com>
>> Cc: bcm-kernel-feedback-list@broadcom.com
>> Cc: linux-arm-kernel@lists.infradead.org
>> Cc: Linus Walleij <linus.walleij@linaro.org>
>> Cc: linux-gpio@vger.kernel.org
>> ---
>>  drivers/pinctrl/bcm/Kconfig |    1 +
>>  1 file changed, 1 insertion(+)
>>
>> --- linux-next-20160722.orig/drivers/pinctrl/bcm/Kconfig
>> +++ linux-next-20160722/drivers/pinctrl/bcm/Kconfig
>> @@ -60,6 +60,7 @@ config PINCTRL_IPROC_GPIO
>>  config PINCTRL_CYGNUS_MUX
>>      bool "Broadcom Cygnus IOMUX driver"
>>      depends on (ARCH_BCM_CYGNUS || COMPILE_TEST)
>> +    depends on OF
>>      select PINMUX
>>      select GENERIC_PINCONF
>>      default ARCH_BCM_CYGNUS
>>
> 
> Thanks, but a fix was already submitted by Arnd and picked up by Linus: https://lkml.org/lkml/2016/7/15/649

OK, it's just not in linux-next yet.

Thanks.


-- 
~Randy

^ permalink raw reply

* Re: [PATCH -next] pinctrl: fix build, PINCTRL_CYGNUS_MUX depends on OF
From: Ray Jui @ 2016-07-22 18:09 UTC (permalink / raw)
  To: Randy Dunlap, linux-next@vger.kernel.org
  Cc: Ray Jui, bcm-kernel-feedback-list, linux-arm-kernel,
	Linus Walleij, linux-gpio, LKML
In-Reply-To: <fbda11e7-273c-c91a-777d-5eaa61c86b82@infradead.org>

Hi Randy,

On 7/22/2016 11:06 AM, Randy Dunlap wrote:
> From: Randy Dunlap <rdunlap@infradead.org>
>
> Fix pinctrl-cygnus-mux.c build when ARCH_BCM_CYGNUS is not enabled
> but COMPILE_TEST is enabled by making the driver depend on OF.
>
> ../drivers/pinctrl/bcm/pinctrl-cygnus-mux.c:739:20: error: 'pinconf_generic_dt_node_to_map_group' undeclared here (not in a function)
>   .dt_node_to_map = pinconf_generic_dt_node_to_map_group,
>
> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
> Cc: Ray Jui <rjui@broadcom.com>
> Cc: bcm-kernel-feedback-list@broadcom.com
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: Linus Walleij <linus.walleij@linaro.org>
> Cc: linux-gpio@vger.kernel.org
> ---
>  drivers/pinctrl/bcm/Kconfig |    1 +
>  1 file changed, 1 insertion(+)
>
> --- linux-next-20160722.orig/drivers/pinctrl/bcm/Kconfig
> +++ linux-next-20160722/drivers/pinctrl/bcm/Kconfig
> @@ -60,6 +60,7 @@ config PINCTRL_IPROC_GPIO
>  config PINCTRL_CYGNUS_MUX
>  	bool "Broadcom Cygnus IOMUX driver"
>  	depends on (ARCH_BCM_CYGNUS || COMPILE_TEST)
> +	depends on OF
>  	select PINMUX
>  	select GENERIC_PINCONF
>  	default ARCH_BCM_CYGNUS
>

Thanks, but a fix was already submitted by Arnd and picked up by Linus: 
https://lkml.org/lkml/2016/7/15/649

Ray

^ permalink raw reply

* [PATCH -next] pinctrl: fix build, PINCTRL_CYGNUS_MUX depends on OF
From: Randy Dunlap @ 2016-07-22 18:06 UTC (permalink / raw)
  To: linux-next@vger.kernel.org
  Cc: Ray Jui, bcm-kernel-feedback-list, linux-arm-kernel,
	Linus Walleij, linux-gpio, LKML

From: Randy Dunlap <rdunlap@infradead.org>

Fix pinctrl-cygnus-mux.c build when ARCH_BCM_CYGNUS is not enabled
but COMPILE_TEST is enabled by making the driver depend on OF.

../drivers/pinctrl/bcm/pinctrl-cygnus-mux.c:739:20: error: 'pinconf_generic_dt_node_to_map_group' undeclared here (not in a function)
  .dt_node_to_map = pinconf_generic_dt_node_to_map_group,

Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Cc: Ray Jui <rjui@broadcom.com>
Cc: bcm-kernel-feedback-list@broadcom.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: linux-gpio@vger.kernel.org
---
 drivers/pinctrl/bcm/Kconfig |    1 +
 1 file changed, 1 insertion(+)

--- linux-next-20160722.orig/drivers/pinctrl/bcm/Kconfig
+++ linux-next-20160722/drivers/pinctrl/bcm/Kconfig
@@ -60,6 +60,7 @@ config PINCTRL_IPROC_GPIO
 config PINCTRL_CYGNUS_MUX
 	bool "Broadcom Cygnus IOMUX driver"
 	depends on (ARCH_BCM_CYGNUS || COMPILE_TEST)
+	depends on OF
 	select PINMUX
 	select GENERIC_PINCONF
 	default ARCH_BCM_CYGNUS

^ permalink raw reply

* Re: [PATCH/RFC] Re: linux-next: build failure after merge of the luto-misc tree
From: Arnaldo Carvalho de Melo @ 2016-07-22 14:37 UTC (permalink / raw)
  To: Josh Poimboeuf
  Cc: Stephen Rothwell, Andy Lutomirski, Arnaldo Carvalho de Melo,
	Peter Zijlstra, Thomas Gleixner, Ingo Molnar, H. Peter Anvin,
	linux-next@vger.kernel.org, linux-kernel@vger.kernel.org
In-Reply-To: <20160722034118.guckaniobf3f7czc@treble>

Em Thu, Jul 21, 2016 at 10:41:18PM -0500, Josh Poimboeuf escreveu:
> On Fri, Jul 22, 2016 at 09:23:02AM +1000, Stephen Rothwell wrote:
> > It just looks like objtool was not written with cross compilation in
> > mind?
 
> I don't know yet what the specific problem is, but objtool should work
> fine in a cross-compiled environment.  It needs to be compiled with the
> host (powerpc) compiler, but then it needs to disassemble target (x86)
> files.  It worked fine before the bitsperlong.h files were merged.

So, trying to summarize from the various messages in this thread:

In Tue, Jul 19, 2016 at 01:26:08PM +1000, Stephen Rothwell wrote:

> It produces these errors (from the x86_64 allmodconfig build):
>
> In file included from
> /home/sfr/next/next/tools/arch/x86/include/uapi/asm/bitsperlong.h:10:0,
>                  from /usr/include/asm-generic/int-ll64.h:11,
>                  from /usr/include/powerpc64le-linux-gnu/asm/types.h:27,
>                  from /home/sfr/next/next/tools/include/linux/types.h:9,
>                  from /home/sfr/next/next/tools/include/linux/list.h:4,
>                  from elf.h:23,
>                  from elf.c:30:
> /home/sfr/next/next/tools/include/asm-generic/bitsperlong.h:13:2:
> error: #error Inconsistent word size. Check asm/bitsperlong.h
>  #error Inconsistent word size. Check asm/bitsperlong.h
>   ^

So it starts at tools/arch/x86/include/uapi/asm/bitsperlong.h, and as
you mention, this should've instead be using the host headers, i.e.:

   tools/arch/powerpc/include/uapi/asm/bitsperlong.h

Which it will if it uses HOSTARCH in tools/objtool/Makefile when setting
up the header search path, I have two csets in my perf/core branch that
fixes this, and that are equivalent to the last patch Stephen tried:

  $ git log --oneline -2
  87f7dc54366a objtool: Use tools/scripts/Makefile.arch to get ARCH and HOSTARCH
  0eec6770ab60 tools build: Add HOSTARCH Makefile variable
  $ 

Ok, so now it uses the right file, see the whole sequence at the end of this
e-mail, but it boils down to:

-----------------------------------------------------------------------------
#if defined(__powerpc64__)
# define __BITS_PER_LONG 64
#else
# define __BITS_PER_LONG 32
#endif

#ifdef __SIZEOF_LONG__
#define BITS_PER_LONG (__CHAR_BIT__ * __SIZEOF_LONG__)
#else
#define BITS_PER_LONG __WORDSIZE
#endif

#if BITS_PER_LONG != __BITS_PER_LONG
#error Inconsistent word size. Check asm/bitsperlong.h
#endif
-----------------------------------------------------------------------------

Which I think has no problems, right? The last problem reported ty Stephen now is:

In Fri, 22 Jul 2016 09:23:02 +1000, Stephen Rothwell wrote:

> That gets me this errors from the x86_64 allmodconfig build:

> tools/objtool/objtool-in.o: In function `decode_instructions':
> tools/objtool/builtin-check.c:276: undefined reference to `arch_decode_instruction'

Should work, since ARCH should be x86 and then tools/objtool/Build will have
this:

objtool-y += arch/$(ARCH)/

Turned into:

objtool-y += arch/x86/

Which will build tools/objtool/arch/x86/decode.c, that will provide that
arch_decode_instruction() function :-\

I.e. with the two patches I mentioned, that are equivalent to the last patch I
sent to Stephen for testing, we would end up with HOSTARCH=powerpc and
ARCH=x86, no?

- Arnaldo

Full sequence:

[acme@jouet linux]$ cat tools/arch/powerpc/include/uapi/asm/bitsperlong.h 
#ifndef __ASM_POWERPC_BITSPERLONG_H
#define __ASM_POWERPC_BITSPERLONG_H

#if defined(__powerpc64__)
# define __BITS_PER_LONG 64
#else
# define __BITS_PER_LONG 32
#endif

#include <asm-generic/bitsperlong.h>

#endif /* __ASM_POWERPC_BITSPERLONG_H */
[acme@jouet linux]$

It, like the kernel, where these files come from, has:

[acme@jouet linux]$ cat tools/include/asm-generic/bitsperlong.h 
#ifndef __ASM_GENERIC_BITS_PER_LONG
#define __ASM_GENERIC_BITS_PER_LONG

#include <uapi/asm-generic/bitsperlong.h>

#ifdef __SIZEOF_LONG__
#define BITS_PER_LONG (__CHAR_BIT__ * __SIZEOF_LONG__)
#else
#define BITS_PER_LONG __WORDSIZE
#endif

#if BITS_PER_LONG != __BITS_PER_LONG
#error Inconsistent word size. Check asm/bitsperlong.h
#endif

#endif /* __ASM_GENERIC_BITS_PER_LONG */
[acme@jouet linux]$

And finally:

[acme@jouet linux]$ cat tools/include/uapi/asm-generic/bitsperlong.h 
#ifndef _UAPI__ASM_GENERIC_BITS_PER_LONG
#define _UAPI__ASM_GENERIC_BITS_PER_LONG

/*
 * There seems to be no way of detecting this automatically from user
 * space, so 64 bit architectures should override this in their
 * bitsperlong.h. In particular, an architecture that supports
 * both 32 and 64 bit user space must not rely on CONFIG_64BIT
 * to decide it, but rather check a compiler provided macro.
 */
#ifndef __BITS_PER_LONG
#define __BITS_PER_LONG 32
#endif

#endif /* _UAPI__ASM_GENERIC_BITS_PER_LONG */
[acme@jouet linux]$ 

^ permalink raw reply

* Re: linux-next: build failure after merge of the pm tree
From: Fengguang Wu @ 2016-07-22 12:16 UTC (permalink / raw)
  To: Rafael J. Wysocki
  Cc: Steve Muckle, Stephen Rothwell, linux-next, linux-kernel,
	kbuild-all
In-Reply-To: <4317240.GoBAVxA9mF@vostro.rjw.lan>

On Fri, Jul 22, 2016 at 02:08:35PM +0200, Rafael J. Wysocki wrote:
>On Thursday, July 21, 2016 07:26:28 PM Steve Muckle wrote:
>> On Fri, Jul 22, 2016 at 11:56:20AM +1000, Stephen Rothwell wrote:
>> > Hi Rafael,
>> >
>> > After merging the pm tree, today's linux-next build (arm
>> > multi_v7_defconfig) failed like this:
>> >
>> > ERROR: "cpufreq_driver_resolve_freq" [kernel/sched/cpufreq_schedutil.ko] undefined!
>> >
>> > Caused by commit
>> >
>> >   5cbea46984d6 ("cpufreq: schedutil: map raw required frequency to driver frequency")
>> >
>> > I used the pm tree from next-20160721 for today.
>>
>> Sorry - I have just sent a patch to address this.
>
>OK, thanks!
>
>Interestingly enough, that hasn't been caught by 0-day.

Sorry it's bisected to a merge commit, hence not reported..
It should be better handled in future.

tree:   git://internal_merge_and_test_tree devel-catchup-201607140443
head:   5f2b635268c560fa7a531e0bdc7765800287ab0f
commit: a868e9fc557aa84ea307d1a394a161420ac20498 [2/12] Merge 'linux-review/Steve-Muckle/cpufreq-avoid-redundant-driver-calls-in-schedutil/20160714-042907' into devel-catchup-201607140443
config: i386-randconfig-s1-201628 (attached as .config)
compiler: gcc-6 (Debian 6.1.1-1) 6.1.1 20160430
reproduce:
        git checkout a868e9fc557aa84ea307d1a394a161420ac20498
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

>> ERROR: "cpufreq_driver_resolve_freq" [kernel/sched/cpufreq_schedutil.ko] undefined!

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

^ permalink raw reply

* Re: linux-next: build failure after merge of the pm tree
From: Rafael J. Wysocki @ 2016-07-22 12:08 UTC (permalink / raw)
  To: Steve Muckle
  Cc: Stephen Rothwell, linux-next, linux-kernel, Fengguang Wu,
	kbuild-all
In-Reply-To: <20160722022628.GE27987@graphite.smuckle.net>

On Thursday, July 21, 2016 07:26:28 PM Steve Muckle wrote:
> On Fri, Jul 22, 2016 at 11:56:20AM +1000, Stephen Rothwell wrote:
> > Hi Rafael,
> > 
> > After merging the pm tree, today's linux-next build (arm
> > multi_v7_defconfig) failed like this:
> > 
> > ERROR: "cpufreq_driver_resolve_freq" [kernel/sched/cpufreq_schedutil.ko] undefined!
> > 
> > Caused by commit
> > 
> >   5cbea46984d6 ("cpufreq: schedutil: map raw required frequency to driver frequency")
> > 
> > I used the pm tree from next-20160721 for today.
> 
> Sorry - I have just sent a patch to address this.

OK, thanks!

Interestingly enough, that hasn't been caught by 0-day.

Thanks,
Rafael

^ permalink raw reply

* Re: next-20160722 build: 1 failures 5 warnings (next-20160722)
From: Dave Chinner @ 2016-07-22 11:58 UTC (permalink / raw)
  To: Mark Brown
  Cc: Matthew Wilcox, Christoph Hellwig, Dave Chinner, xfs,
	linaro-kernel, linux-next, linux-arm-kernel, kernel-build-reports
In-Reply-To: <20160722103829.GY6509@sirena.org.uk>

On Fri, Jul 22, 2016 at 11:38:29AM +0100, Mark Brown wrote:
> On Fri, Jul 22, 2016 at 11:13:41AM +0100, Build bot for Mark Brown wrote:
> 
> Today's -next fails to build an ARM allmodconfig due to:
> 
> > 	arm-allmodconfig
> > ERROR: "dax_do_io" [fs/xfs/xfs.ko] undefined!

Already fixed.

https://git.kernel.org/cgit/linux/kernel/git/dgc/linux-xfs.git/commit/?h=for-next&id=f021bd071f06b545926b1031348873b05442139f

-- 
Dave Chinner
david@fromorbit.com

^ permalink raw reply

* Re: next-20160722 build: 1 failures 5 warnings (next-20160722)
From: Robin Murphy @ 2016-07-22 11:29 UTC (permalink / raw)
  To: Mark Brown, Matthew Wilcox, Christoph Hellwig, Dave Chinner
  Cc: xfs, linaro-kernel, linux-next, linux-arm-kernel,
	kernel-build-reports
In-Reply-To: <20160722103829.GY6509@sirena.org.uk>

On 22/07/16 11:38, Mark Brown wrote:
[...]
> DAX is explicitly disabled on
> 32 bit ARM due to problems with virtual aliasing caches (it's not clear
> to me that it shouldn't also be disabled for arm64 for the same reason).

>From ARMv7 onwards, data caches have to behave as if PIPT, so I wouldn't
expect there to be a problem for arm64.

Robin.

^ permalink raw reply


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox