Merge branch 'linus' into core/printk
authorIngo Molnar <mingo@elte.hu>
Sat, 28 Mar 2009 22:34:14 +0000 (23:34 +0100)
committerIngo Molnar <mingo@elte.hu>
Sat, 28 Mar 2009 22:34:14 +0000 (23:34 +0100)
1  2 
include/linux/kernel.h
lib/Kconfig

diff --combined include/linux/kernel.h
index 2755165bb291d0783a34fc88396a602af6157461,914918abfdd122a5bf9a6c564fd7c41693917c9b..6e4406e12c6bc9b9353607450f9ddb564694a570
@@@ -16,7 -16,7 +16,7 @@@
  #include <linux/log2.h>
  #include <linux/typecheck.h>
  #include <linux/ratelimit.h>
- #include <linux/dynamic_printk.h>
+ #include <linux/dynamic_debug.h>
  #include <asm/byteorder.h>
  #include <asm/bug.h>
  
@@@ -242,19 -242,6 +242,19 @@@ extern struct ratelimit_state printk_ra
  extern int printk_ratelimit(void);
  extern bool printk_timed_ratelimit(unsigned long *caller_jiffies,
                                   unsigned int interval_msec);
 +
 +/*
 + * Print a one-time message (analogous to WARN_ONCE() et al):
 + */
 +#define printk_once(x...) ({                  \
 +      static int __print_once = 1;            \
 +                                              \
 +      if (__print_once) {                     \
 +              __print_once = 0;               \
 +              printk(x);                      \
 +      }                                       \
 +})
 +
  #else
  static inline int vprintk(const char *s, va_list args)
        __attribute__ ((format (printf, 1, 0)));
@@@ -266,10 -253,6 +266,10 @@@ static inline int printk_ratelimit(void
  static inline bool printk_timed_ratelimit(unsigned long *caller_jiffies, \
                                          unsigned int interval_msec)   \
                { return false; }
 +
 +/* No effect, but we still get type checking even in the !PRINTK case: */
 +#define printk_once(x...) printk(x)
 +
  #endif
  
  extern int printk_needs_cpu(int cpu);
@@@ -375,9 -358,10 +375,10 @@@ static inline char *pack_hex_byte(char 
  #if defined(DEBUG)
  #define pr_debug(fmt, ...) \
        printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
- #elif defined(CONFIG_DYNAMIC_PRINTK_DEBUG)
+ #elif defined(CONFIG_DYNAMIC_DEBUG)
+ /* dynamic_pr_debug() uses pr_fmt() internally so we don't need it here */
  #define pr_debug(fmt, ...) do { \
-       dynamic_pr_debug(pr_fmt(fmt), ##__VA_ARGS__); \
+       dynamic_pr_debug(fmt, ##__VA_ARGS__); \
        } while (0)
  #else
  #define pr_debug(fmt, ...) \
diff --combined lib/Kconfig
index 97d62cf091a7253aa960442e585f747273e3d937,2a9c69f3448216e8ce3f6a0f5488a947dfa55060..8ade0a7a91e09ae11e4921338d5363ee74803d05
@@@ -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
  #
@@@ -139,12 -150,6 +153,6 @@@ config TEXTSEARCH_B
  config TEXTSEARCH_FSM
        tristate
  
- #
- # plist support is select#ed if needed
- #
- config PLIST
-       boolean
  config HAS_IOMEM
        boolean
        depends on !NO_IOMEM
@@@ -177,4 -182,10 +185,10 @@@ config DISABLE_OBSOLETE_CPUMASK_FUNCTIO
         bool "Disable obsolete cpumask functions" if DEBUG_PER_CPU_MAPS
         depends on EXPERIMENTAL && BROKEN
  
+ #
+ # Netlink attribute parsing support is select'ed if needed
+ #
+ config NLATTR
+       bool
  endmenu