public inbox for linux-ia64@vger.kernel.org
 help / color / mirror / Atom feed
* [git pull] Fix ia64 build breakage
@ 2010-05-27 23:34 Luck, Tony
  2010-05-28  1:13 ` Andrew Morton
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Luck, Tony @ 2010-05-27 23:34 UTC (permalink / raw)
  To: linux-ia64

Hi Linus,

please pull from:

	git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6.git release

This will update the files shown below.

Thanks!

-Tony

 arch/ia64/kernel/smpboot.c |    4 ++++
 arch/ia64/mm/numa.c        |   17 +++++++++++++++++
 2 files changed, 21 insertions(+), 0 deletions(-)

Tony Luck (1):
      [IA64] Fix build breakage

Andrew: These changes appear to have gone to Linus without passing
through linux-next (where I'd have caught the breakage earlier).
Did they slip through a crack?

---

commit 4ec37de89d8c758ee8115e0e64b3f994910789ee
Author: Tony Luck <tony.luck@intel.com>
Date:   Thu May 27 15:35:13 2010 -0700

    [IA64] Fix build breakage
    
    In commit 0ac0c0d0f837c499afd02a802f9cf52d3027fa3b
    cpusets: randomize node rotor used in cpuset_mem_spread_node()
    
    Jack Steiner fixed a problem with too many small tasks being
    assigned to node 0. Copy his code to ia64 to avoid build error.
    
        arch/ia64/kernel/smpboot.c:641: error: ‘cpu_to_node_map’ undeclared (first use in this function)
    
    In commit 3bccd996276b108c138e8176793a26ecef54d573
    numa: ia64: use generic percpu var numa_node_id() implementation
    
    Lee Schermerhorn added some set_numa_node() calls - but these
    only work on CONFIG_NUMA=y configurations. Surround the calls
    with #ifdef CONFIG_NUMA
    
    Signed-off-by: Tony Luck <tony.luck@intel.com>

diff --git a/arch/ia64/kernel/smpboot.c b/arch/ia64/kernel/smpboot.c
index 518e876..6a1380e 100644
--- a/arch/ia64/kernel/smpboot.c
+++ b/arch/ia64/kernel/smpboot.c
@@ -390,11 +390,13 @@ smp_callin (void)
 
 	fix_b0_for_bsp();
 
+#ifdef CONFIG_NUMA
 	/*
 	 * numa_node_id() works after this.
 	 */
 	set_numa_node(cpu_to_node_map[cpuid]);
 	set_numa_mem(local_memory_node(cpu_to_node_map[cpuid]));
+#endif
 
 	ipi_call_lock_irq();
 	spin_lock(&vector_lock);
@@ -638,7 +640,9 @@ void __devinit smp_prepare_boot_cpu(void)
 {
 	cpu_set(smp_processor_id(), cpu_online_map);
 	cpu_set(smp_processor_id(), cpu_callin_map);
+#ifdef CONFIG_NUMA
 	set_numa_node(cpu_to_node_map[smp_processor_id()]);
+#endif
 	per_cpu(cpu_state, smp_processor_id()) = CPU_ONLINE;
 	paravirt_post_smp_prepare_boot_cpu();
 }
diff --git a/arch/ia64/mm/numa.c b/arch/ia64/mm/numa.c
index 3efea7d..2437718 100644
--- a/arch/ia64/mm/numa.c
+++ b/arch/ia64/mm/numa.c
@@ -17,6 +17,7 @@
 #include <linux/init.h>
 #include <linux/bootmem.h>
 #include <linux/module.h>
+#include <linux/random.h>
 #include <asm/mmzone.h>
 #include <asm/numa.h>
 
@@ -50,6 +51,22 @@ paddr_to_nid(unsigned long paddr)
 	return (i < num_node_memblks) ? node_memblk[i].nid : (num_node_memblks ? -1 : 0);
 }
 
+/*
+ * Return the bit number of a random bit set in the nodemask.
+ *   (returns -1 if nodemask is empty)
+ */
+int __node_random(const nodemask_t *maskp)
+{
+	int w, bit = -1;
+
+	w = nodes_weight(*maskp);
+	if (w)
+		bit = bitmap_ord_to_pos(maskp->bits,
+			get_random_int() % w, MAX_NUMNODES);
+	return bit;
+}
+EXPORT_SYMBOL(__node_random);
+
 #if defined(CONFIG_SPARSEMEM) && defined(CONFIG_NUMA)
 /*
  * Because of holes evaluate on section limits.

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [git pull] Fix ia64 build breakage
  2010-05-27 23:34 [git pull] Fix ia64 build breakage Luck, Tony
@ 2010-05-28  1:13 ` Andrew Morton
  2010-05-28 20:58 ` Lee Schermerhorn
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Andrew Morton @ 2010-05-28  1:13 UTC (permalink / raw)
  To: linux-ia64

On Thu, 27 May 2010 16:34:48 -0700 "Luck, Tony" <tony.luck@intel.com> wrote:

> Andrew: These changes appear to have gone to Linus without passing
> through linux-next (where I'd have caught the breakage earlier).
> Did they slip through a crack?

Sorry, I suck.  I still need to get my junk into linux-next.  It's a
bit tricky but that's no excuse.  <thinks of a better excuse>.  Tell
everyone to stop sending me stuff.  And my dog ate it.  And you broke
both gcc-2.4.5 and gas-2.15 so I didn't test it so it's your fault and
my dog will eat you.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [git pull] Fix ia64 build breakage
  2010-05-27 23:34 [git pull] Fix ia64 build breakage Luck, Tony
  2010-05-28  1:13 ` Andrew Morton
@ 2010-05-28 20:58 ` Lee Schermerhorn
  2010-05-28 21:57 ` Luck, Tony
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Lee Schermerhorn @ 2010-05-28 20:58 UTC (permalink / raw)
  To: linux-ia64

On Thu, 2010-05-27 at 16:34 -0700, Luck, Tony wrote:
> Hi Linus,
> 
> please pull from:
> 
> 	git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6.git release
> 
> This will update the files shown below.
> 
> Thanks!
> 
> -Tony
> 
>  arch/ia64/kernel/smpboot.c |    4 ++++
>  arch/ia64/mm/numa.c        |   17 +++++++++++++++++
>  2 files changed, 21 insertions(+), 0 deletions(-)
> 
> Tony Luck (1):
>       [IA64] Fix build breakage
> 
> Andrew: These changes appear to have gone to Linus without passing
> through linux-next (where I'd have caught the breakage earlier).
> Did they slip through a crack?
> 
> ---
> 
> commit 4ec37de89d8c758ee8115e0e64b3f994910789ee
> Author: Tony Luck <tony.luck@intel.com>
> Date:   Thu May 27 15:35:13 2010 -0700
> 
>     [IA64] Fix build breakage
>     
>     In commit 0ac0c0d0f837c499afd02a802f9cf52d3027fa3b
>     cpusets: randomize node rotor used in cpuset_mem_spread_node()
>     
>     Jack Steiner fixed a problem with too many small tasks being
>     assigned to node 0. Copy his code to ia64 to avoid build error.
>     
>         arch/ia64/kernel/smpboot.c:641: error: ‘cpu_to_node_map’ undeclared (first use in this function)
>     
>     In commit 3bccd996276b108c138e8176793a26ecef54d573
>     numa: ia64: use generic percpu var numa_node_id() implementation
>     
>     Lee Schermerhorn added some set_numa_node() calls - but these
>     only work on CONFIG_NUMA=y configurations. Surround the calls
>     with #ifdef CONFIG_NUMA

Tony:

Can I get your .config?  I thought I tested ia64 !NUMA, but I see now
that when I edit the .config and 'make silentoldconfig', IA64_GENERIC
just selects NUMA again.  Even 'make allnoconfig' on ia64 generates
a .config with NUMA=y.  I tried changing IA64_GENERIC to IA64_HP_ZX1
that does not select NUMA, but the build fails elsewhere because
NODE_DATA is apparently not defined for !NUMA.  So, I'd like to get
your .config to duplicate the build error that you're fixing here.

I had intended that asm-generic/topology.h define the stubs for the
missing calls when !NUMA as it does for several other functions and
avoid the ifdefs in the code.  Apparently I just dreamed that I did
that...

I'll send an update patch when I get it figured out.

Thanks,
Lee

>     
>     Signed-off-by: Tony Luck <tony.luck@intel.com>
> 
> diff --git a/arch/ia64/kernel/smpboot.c b/arch/ia64/kernel/smpboot.c
> index 518e876..6a1380e 100644
> --- a/arch/ia64/kernel/smpboot.c
> +++ b/arch/ia64/kernel/smpboot.c
> @@ -390,11 +390,13 @@ smp_callin (void)
>  
>  	fix_b0_for_bsp();
>  
> +#ifdef CONFIG_NUMA
>  	/*
>  	 * numa_node_id() works after this.
>  	 */
>  	set_numa_node(cpu_to_node_map[cpuid]);
>  	set_numa_mem(local_memory_node(cpu_to_node_map[cpuid]));
> +#endif
>  
>  	ipi_call_lock_irq();
>  	spin_lock(&vector_lock);
> @@ -638,7 +640,9 @@ void __devinit smp_prepare_boot_cpu(void)
>  {
>  	cpu_set(smp_processor_id(), cpu_online_map);
>  	cpu_set(smp_processor_id(), cpu_callin_map);
> +#ifdef CONFIG_NUMA
>  	set_numa_node(cpu_to_node_map[smp_processor_id()]);
> +#endif
>  	per_cpu(cpu_state, smp_processor_id()) = CPU_ONLINE;
>  	paravirt_post_smp_prepare_boot_cpu();
>  }
> diff --git a/arch/ia64/mm/numa.c b/arch/ia64/mm/numa.c
> index 3efea7d..2437718 100644
> --- a/arch/ia64/mm/numa.c
> +++ b/arch/ia64/mm/numa.c
> @@ -17,6 +17,7 @@
>  #include <linux/init.h>
>  #include <linux/bootmem.h>
>  #include <linux/module.h>
> +#include <linux/random.h>
>  #include <asm/mmzone.h>
>  #include <asm/numa.h>
>  
> @@ -50,6 +51,22 @@ paddr_to_nid(unsigned long paddr)
>  	return (i < num_node_memblks) ? node_memblk[i].nid : (num_node_memblks ? -1 : 0);
>  }
>  
> +/*
> + * Return the bit number of a random bit set in the nodemask.
> + *   (returns -1 if nodemask is empty)
> + */
> +int __node_random(const nodemask_t *maskp)
> +{
> +	int w, bit = -1;
> +
> +	w = nodes_weight(*maskp);
> +	if (w)
> +		bit = bitmap_ord_to_pos(maskp->bits,
> +			get_random_int() % w, MAX_NUMNODES);
> +	return bit;
> +}
> +EXPORT_SYMBOL(__node_random);
> +
>  #if defined(CONFIG_SPARSEMEM) && defined(CONFIG_NUMA)
>  /*
>   * Because of holes evaluate on section limits.


^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: [git pull] Fix ia64 build breakage
  2010-05-27 23:34 [git pull] Fix ia64 build breakage Luck, Tony
  2010-05-28  1:13 ` Andrew Morton
  2010-05-28 20:58 ` Lee Schermerhorn
@ 2010-05-28 21:57 ` Luck, Tony
  2013-02-22 17:38 ` [GIT PULL] " Luck, Tony
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Luck, Tony @ 2010-05-28 21:57 UTC (permalink / raw)
  To: linux-ia64

>Can I get your .config?  I thought I tested ia64 !NUMA, but I see now
>that when I edit the .config and 'make silentoldconfig', IA64_GENERIC
>just selects NUMA again.

One of the configs that failed was arch/ia64/configs/tiger_defconfig.

> Even 'make allnoconfig' on ia64 generates a .config with NUMA=y.

Yup, that's definitely an anomaly (since SMP=n). It catches some
strange stuff :-)

> I'll send an update patch when I get it figured out.

That would drop the ugly #ifdefs that I added. Good!

Thanks

-Tony

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [GIT PULL] Fix ia64 build breakage
  2010-05-27 23:34 [git pull] Fix ia64 build breakage Luck, Tony
                   ` (2 preceding siblings ...)
  2010-05-28 21:57 ` Luck, Tony
@ 2013-02-22 17:38 ` Luck, Tony
  2013-06-17 20:47 ` Luck, Tony
  2016-01-13 19:14 ` [GIT PULL] fix " Luck, Tony
  5 siblings, 0 replies; 7+ messages in thread
From: Luck, Tony @ 2013-02-22 17:38 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-kernel, linux-ia64, Clark Williams

The following changes since commit 2ef14f465b9e096531343f5b734cffc5f759f4a6:

  Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip (2013-02-21 18:06:55 -0800)

are available in the git repository at:


  git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux.git tags/please-pull-fix-ia64-build

for you to fetch changes up to bc681593b588786e6326b3e5f78ccc1683e2269c:

  sched: move RR_TIMESLICE from sysctl.h to rt.h (2013-02-22 09:20:11 -0800)

----------------------------------------------------------------
Fix ia64 build

----------------------------------------------------------------
Clark Williams (1):
      sched: move RR_TIMESLICE from sysctl.h to rt.h

 include/linux/sched/rt.h     | 6 ++++++
 include/linux/sched/sysctl.h | 6 ------
 2 files changed, 6 insertions(+), 6 deletions(-)

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [GIT PULL] Fix ia64 build breakage
  2010-05-27 23:34 [git pull] Fix ia64 build breakage Luck, Tony
                   ` (3 preceding siblings ...)
  2013-02-22 17:38 ` [GIT PULL] " Luck, Tony
@ 2013-06-17 20:47 ` Luck, Tony
  2016-01-13 19:14 ` [GIT PULL] fix " Luck, Tony
  5 siblings, 0 replies; 7+ messages in thread
From: Luck, Tony @ 2013-06-17 20:47 UTC (permalink / raw)
  To: linux-ia64

The following changes since commit 8177a9d79c0e942dcac3312f15585d0344d505a5:

  lseek(fd, n, SEEK_END) does *not* go to eof - n (2013-06-16 08:10:53 -1000)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux.git tags/please-pull-fixia64

for you to fetch changes up to f75773103d24faaa75323597c2804edfb4a48a52:

  [IA64] Fix include dependency in asm/irqflags.h (2013-06-17 13:39:52 -0700)

----------------------------------------------------------------
Fix ia64 build breakage by adding newly needed #include

----------------------------------------------------------------
David Daney (1):
      [IA64] Fix include dependency in asm/irqflags.h

 arch/ia64/include/asm/irqflags.h | 1 +
 1 file changed, 1 insertion(+)

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [GIT PULL] fix ia64 build breakage
  2010-05-27 23:34 [git pull] Fix ia64 build breakage Luck, Tony
                   ` (4 preceding siblings ...)
  2013-06-17 20:47 ` Luck, Tony
@ 2016-01-13 19:14 ` Luck, Tony
  5 siblings, 0 replies; 7+ messages in thread
From: Luck, Tony @ 2016-01-13 19:14 UTC (permalink / raw)
  To: linux-ia64

The following changes since commit 67990608c8b95d2b8ccc29932376ae73d5818727:

  Merge tag 'pm+acpi-4.5-rc1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm (2016-01-12 20:25:09 -0800)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux.git tags/please-pull-fixefi

for you to fetch changes up to 0f7f2f0c0fcbe5e2bcba707a628ebaedfe2be4b4:

  efi: include asm/early_ioremap.h not asm/efi.h to get early_memremap (2016-01-13 10:35:14 -0800)

----------------------------------------------------------------
ARM guys broke ia64 build ... but gave me fixes, so it's all good now

----------------------------------------------------------------
Ard Biesheuvel (2):
      ia64: split off early_ioremap() declarations into asm/early_ioremap.h
      efi: include asm/early_ioremap.h not asm/efi.h to get early_memremap

 arch/ia64/include/asm/early_ioremap.h | 10 ++++++++++
 arch/ia64/include/asm/io.h            |  5 +----
 drivers/firmware/efi/efi.c            |  2 +-
 3 files changed, 12 insertions(+), 5 deletions(-)
 create mode 100644 arch/ia64/include/asm/early_ioremap.h

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-01-13 19:14 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-05-27 23:34 [git pull] Fix ia64 build breakage Luck, Tony
2010-05-28  1:13 ` Andrew Morton
2010-05-28 20:58 ` Lee Schermerhorn
2010-05-28 21:57 ` Luck, Tony
2013-02-22 17:38 ` [GIT PULL] " Luck, Tony
2013-06-17 20:47 ` Luck, Tony
2016-01-13 19:14 ` [GIT PULL] fix " Luck, Tony

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