Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Linux: Kernel

linux-next: manual merge of the tile tree with Linus' tree

 

 

Linux kernel RSS feed   Index | Next | Previous | View Threaded


sfr at canb

Apr 1, 2012, 5:37 PM

Post #1 of 4 (94 views)
Permalink
linux-next: manual merge of the tile tree with Linus' tree

Hi Chris,

Today's linux-next merge of the tile tree got a conflict in
arch/tile/include/asm/pgtable.h between commit bd119c692393
("Disintegrate asm/system.h for Tile") from Linus' tree and commit
7dc0069e58f6 ("arch/tile: Allow tilegx to build with either 16K or 64K
page size") from the tile tree.

Just context changes. I fixed it up (see below) and can carry the fix as
necessary.

--
Cheers,
Stephen Rothwell sfr [at] canb

diff --cc arch/tile/include/asm/pgtable.h
index 6749091,ff01704..0000000
--- a/arch/tile/include/asm/pgtable.h
+++ b/arch/tile/include/asm/pgtable.h
@@@ -27,8 -27,11 +27,10 @@@
#include <linux/slab.h>
#include <linux/list.h>
#include <linux/spinlock.h>
+ #include <linux/pfn.h>
#include <asm/processor.h>
#include <asm/fixmap.h>
-#include <asm/system.h>
+ #include <asm/page.h>

struct mm_struct;
struct vm_area_struct;


sfr at canb

Apr 1, 2012, 5:46 PM

Post #2 of 4 (88 views)
Permalink
linux-next: manual merge of the tile tree with Linus' tree [In reply to]

Hi Chris,

Today's linux-next merge of the tile tree got a conflict in
arch/tile/include/asm/barrier.h (actually setup.h - git tried its best)
between commit bd119c692393 ("Disintegrate asm/system.h for Tile") from
Linus' tree and commit 8507ce994794 ("arch/tile: fix hardwall for tilegx
and generalize for idn and ipi") from the tile tree.

I used the upstream version of barrier.h and applied the following merge
fixup.

It may be worth while rebasing the tile tree on top of v3.4-rc1 or
(maybe better) merging 3.4-rc1 into the tile tree.

From: Stephen Rothwell <sfr [at] canb>
Date: Mon, 2 Apr 2012 10:41:41 +1000
Subject: [PATCH] tile: apply changes after system/h break up

Signed-off-by: Stephen Rothwell <sfr [at] canb>
---
arch/tile/include/asm/setup.h | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/arch/tile/include/asm/setup.h b/arch/tile/include/asm/setup.h
index e58613e..c67eb70 100644
--- a/arch/tile/include/asm/setup.h
+++ b/arch/tile/include/asm/setup.h
@@ -41,15 +41,15 @@ void restrict_dma_mpls(void);
#ifdef CONFIG_HARDWALL
/* User-level network management functions */
void reset_network_state(void);
-void grant_network_mpls(void);
-void restrict_network_mpls(void);
struct task_struct;
-int hardwall_deactivate(struct task_struct *task);
+void hardwall_switch_tasks(struct task_struct *prev, struct task_struct *next);
+void hardwall_deactivate_all(struct task_struct *task);
+int hardwall_ipi_valid(int cpu);

/* Hook hardwall code into changes in affinity. */
#define arch_set_cpus_allowed(p, new_mask) do { \
- if (p->thread.hardwall && !cpumask_equal(&p->cpus_allowed, new_mask)) \
- hardwall_deactivate(p); \
+ if (!cpumask_equal(&p->cpus_allowed, new_mask)) \
+ hardwall_deactivate_all(p); \
} while (0)
#endif

--
1.7.10.rc3

--
Cheers,
Stephen Rothwell sfr [at] canb


sfr at canb

Apr 9, 2012, 5:34 PM

Post #3 of 4 (77 views)
Permalink
linux-next: manual merge of the tile tree with Linus' tree [In reply to]

Hi Chris,

Today's linux-next merge of the tile tree got a conflict in
arch/tile/kernel/single_step.c between commit cdd8e16feba8 ("arch/tile:
return SIGBUS for addresses that are unaligned AND invalid") from Linus'
tree and commit 25c5acbdcc06 ("arch/tile: support building big-endian
kernel") from the tile tree.

Just context changes. I fixed it up (see below) and can carry the fix as
necessary.
--
Cheers,
Stephen Rothwell sfr [at] canb

diff --cc arch/tile/kernel/single_step.c
index 9efbc13,8935deb..0000000
--- a/arch/tile/kernel/single_step.c
+++ b/arch/tile/kernel/single_step.c
@@@ -153,28 -153,6 +153,25 @@@ static tile_bundle_bits rewrite_load_st
if (((unsigned long)addr % size) == 0)
return bundle;

+ /*
+ * Return SIGBUS with the unaligned address, if requested.
+ * Note that we return SIGBUS even for completely invalid addresses
+ * as long as they are in fact unaligned; this matches what the
+ * tilepro hardware would be doing, if it could provide us with the
+ * actual bad address in an SPR, which it doesn't.
+ */
+ if (unaligned_fixup == 0) {
+ siginfo_t info = {
+ .si_signo = SIGBUS,
+ .si_code = BUS_ADRALN,
+ .si_addr = addr
+ };
+ trace_unhandled_signal("unaligned trap", regs,
+ (unsigned long)addr, SIGBUS);
+ force_sig_info(info.si_signo, &info, current);
+ return (tilepro_bundle_bits) 0;
+ }
+
- #ifndef __LITTLE_ENDIAN
- # error We assume little-endian representation with copy_xx_user size 2 here
- #endif
/* Handle unaligned load/store */
if (mem_op == MEMOP_LOAD || mem_op == MEMOP_LOAD_POSTINCR) {
unsigned short val_16;


sfr at canb

Apr 9, 2012, 5:38 PM

Post #4 of 4 (81 views)
Permalink
linux-next: manual merge of the tile tree with Linus' tree [In reply to]

Hi Chris,

Today's linux-next merge of the tile tree got a conflict in
arch/tile/kernel/stack.c between commit 5f639fdcd8c1 (arch/tile: various
bugs in stack backtracer"") from Linus' tree and commit aa127c855d1e
("arch/tile: Allow tilegx to build with either 16K or 64K page size")
from the tile tree.

The former removed the code modified by the latter, so I did that.
--
Cheers,
Stephen Rothwell sfr [at] canb

Linux kernel RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.