Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dc86e88c authored by Christoph Lameter's avatar Christoph Lameter Committed by Tony Luck
Browse files

[IA64] Add __read_mostly support for IA64



sparc64, i386 and x86_64 have support for a special data section dedicated
to rarely updated data that is frequently read. The section was created to
avoid false sharing of those rarely read data with frequently written kernel
data.

This patch creates such a data section for ia64 and will group rarely written
data into this section.

Signed-off-by: default avatarChristoph Lameter <clameter@sgi.com>
Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
parent d5bf3165
Loading
Loading
Loading
Loading
+3 −0
Original line number Original line Diff line number Diff line
@@ -177,6 +177,9 @@ SECTIONS
	}
	}
  . = ALIGN(PAGE_SIZE);		/* make sure the gate page doesn't expose kernel data */
  . = ALIGN(PAGE_SIZE);		/* make sure the gate page doesn't expose kernel data */


  .data.read_mostly : AT(ADDR(.data.read_mostly) - LOAD_OFFSET)
        { *(.data.read_mostly) }

  .data.cacheline_aligned : AT(ADDR(.data.cacheline_aligned) - LOAD_OFFSET)
  .data.cacheline_aligned : AT(ADDR(.data.cacheline_aligned) - LOAD_OFFSET)
        { *(.data.cacheline_aligned) }
        { *(.data.cacheline_aligned) }


+1 −1
Original line number Original line Diff line number Diff line
@@ -13,7 +13,7 @@
#define SMP_CACHE_BYTES L1_CACHE_BYTES
#define SMP_CACHE_BYTES L1_CACHE_BYTES
#endif
#endif


#if defined(CONFIG_X86) || defined(CONFIG_SPARC64)
#if defined(CONFIG_X86) || defined(CONFIG_SPARC64) || defined(CONFIG_IA64)
#define __read_mostly __attribute__((__section__(".data.read_mostly")))
#define __read_mostly __attribute__((__section__(".data.read_mostly")))
#else
#else
#define __read_mostly
#define __read_mostly