]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
Merge branches 'tracing/doc', 'tracing/ftrace', 'tracing/printk' and 'tracing/textedi...
authorIngo Molnar <mingo@elte.hu>
Sun, 8 Mar 2009 15:48:51 +0000 (16:48 +0100)
committerIngo Molnar <mingo@elte.hu>
Sun, 8 Mar 2009 15:48:51 +0000 (16:48 +0100)
1  2 
include/asm-generic/vmlinux.lds.h
lib/Kconfig

index 48ade3168b137839f7cead761c31968b328b9b99,9d974914e914883886fa782e01941bd6bdfb75ab..89997dfdf3d09f5147326912128ba882c57e39d8
  #define FTRACE_EVENTS()
  #endif
  
 +#ifdef CONFIG_TRACING
 +#define TRACE_PRINTKS() VMLINUX_SYMBOL(__start___trace_bprintk_fmt) = .;      \
 +                       *(__trace_printk_fmt) /* Trace_printk fmt' pointer */ \
 +                       VMLINUX_SYMBOL(__stop___trace_bprintk_fmt) = .;
 +#else
 +#define TRACE_PRINTKS()
 +#endif
 +
  /* .data section */
  #define DATA_DATA                                                     \
        *(.data)                                                        \
                *(__vermagic)           /* Kernel version magic */      \
                *(__markers_strings)    /* Markers: strings */          \
                *(__tracepoints_strings)/* Tracepoints: strings */      \
 +              TRACE_PRINTKS()                                 \
        }                                                               \
                                                                        \
        .rodata1          : AT(ADDR(.rodata1) - LOAD_OFFSET) {          \
        *(.initcall7.init)                                              \
        *(.initcall7s.init)
  
+ /**
+  * PERCPU_VADDR - define output section for percpu area
+  * @vaddr: explicit base address (optional)
+  * @phdr: destination PHDR (optional)
+  *
+  * Macro which expands to output section for percpu area.  If @vaddr
+  * is not blank, it specifies explicit base address and all percpu
+  * symbols will be offset from the given address.  If blank, @vaddr
+  * always equals @laddr + LOAD_OFFSET.
+  *
+  * @phdr defines the output PHDR to use if not blank.  Be warned that
+  * output PHDR is sticky.  If @phdr is specified, the next output
+  * section in the linker script will go there too.  @phdr should have
+  * a leading colon.
+  *
+  * Note that this macros defines __per_cpu_load as an absolute symbol.
+  * If there is no need to put the percpu section at a predetermined
+  * address, use PERCPU().
+  */
+ #define PERCPU_VADDR(vaddr, phdr)                                     \
+       VMLINUX_SYMBOL(__per_cpu_load) = .;                             \
+       .data.percpu vaddr : AT(VMLINUX_SYMBOL(__per_cpu_load)          \
+                               - LOAD_OFFSET) {                        \
+               VMLINUX_SYMBOL(__per_cpu_start) = .;                    \
+               *(.data.percpu.first)                                   \
+               *(.data.percpu.page_aligned)                            \
+               *(.data.percpu)                                         \
+               *(.data.percpu.shared_aligned)                          \
+               VMLINUX_SYMBOL(__per_cpu_end) = .;                      \
+       } phdr                                                          \
+       . = VMLINUX_SYMBOL(__per_cpu_load) + SIZEOF(.data.percpu);
+ /**
+  * PERCPU - define output section for percpu area, simple version
+  * @align: required alignment
+  *
+  * Align to @align and outputs output section for percpu area.  This
+  * macro doesn't maniuplate @vaddr or @phdr and __per_cpu_load and
+  * __per_cpu_start will be identical.
+  *
+  * This macro is equivalent to ALIGN(align); PERCPU_VADDR( , ) except
+  * that __per_cpu_load is defined as a relative symbol against
+  * .data.percpu which is required for relocatable x86_32
+  * configuration.
+  */
  #define PERCPU(align)                                                 \
        . = ALIGN(align);                                               \
-       VMLINUX_SYMBOL(__per_cpu_start) = .;                            \
-       .data.percpu  : AT(ADDR(.data.percpu) - LOAD_OFFSET) {          \
+       .data.percpu    : AT(ADDR(.data.percpu) - LOAD_OFFSET) {        \
+               VMLINUX_SYMBOL(__per_cpu_load) = .;                     \
+               VMLINUX_SYMBOL(__per_cpu_start) = .;                    \
+               *(.data.percpu.first)                                   \
                *(.data.percpu.page_aligned)                            \
                *(.data.percpu)                                         \
                *(.data.percpu.shared_aligned)                          \
-       }                                                               \
-       VMLINUX_SYMBOL(__per_cpu_end) = .;
+               VMLINUX_SYMBOL(__per_cpu_end) = .;                      \
+       }
diff --combined lib/Kconfig
index 97d62cf091a7253aa960442e585f747273e3d937,daa481824d9c9a68438d097ec4bedd9c2114dc2e..206f36a9efb4a4d0f998068263d6f839c5422832
@@@ -2,9 -2,6 +2,9 @@@
  # Library configuration
  #
  
 +config BINARY_PRINTF
 +      def_bool n
 +
  menu "Library routines"
  
  config BITREVERSE
@@@ -100,6 -97,20 +100,20 @@@ config LZO_COMPRES
  config LZO_DECOMPRESS
        tristate
  
+ #
+ # These all provide a common interface (hence the apparent duplication with
+ # ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.)
+ #
+ config DECOMPRESS_GZIP
+       select ZLIB_INFLATE
+       tristate
+ config DECOMPRESS_BZIP2
+       tristate
+ config DECOMPRESS_LZMA
+       tristate
  #
  # Generic allocator support is selected if needed
  #