* [ANNOUNCE] 3.0-rt2
@ 2011-07-23 15:13 Thomas Gleixner
2011-07-23 15:41 ` Kim Leyendecker
` (2 more replies)
0 siblings, 3 replies; 10+ messages in thread
From: Thomas Gleixner @ 2011-07-23 15:13 UTC (permalink / raw)
To: LKML; +Cc: linux-rt-users
Dear RT Folks,
I'm pleased to announce the 3.0-rt2 release.
Changes versus 3.0-rt1:
* mqueue fix (Yoshitake Kobayashi)
* dca locking fix (Mike Galbraith)
* trace updates (Carsten Emde)
* Fixed vprintk wreckage and rcutorture (tglx)
Known issues:
* Some weird "console=..." commandline + config dependent
interactions which have been not yet investigated down to their
root cause. Result in a boot hang. YMMV
Patch against 3.0 can be found here:
http://www.kernel.org/pub/linux/kernel/projects/rt/patch-3.0-rt2.patch.bz2
The split quilt queue is available at:
http://www.kernel.org/pub/linux/kernel/projects/rt/patches-3.0-rt2.tar.bz2
Delta patch below.
Thanks,
tglx
----
arch/arm/kernel/early_printk.c | 17 ++----------
arch/blackfin/kernel/early_printk.c | 2 -
arch/microblaze/kernel/early_printk.c | 25 ++----------------
arch/mips/kernel/early_printk.c | 10 +++----
arch/powerpc/kernel/udbg.c | 6 +---
arch/sh/kernel/sh_bios.c | 2 -
arch/sparc/kernel/setup_32.c | 1
arch/sparc/kernel/setup_64.c | 8 +++++-
arch/tile/kernel/early_printk.c | 26 +++----------------
arch/um/kernel/early_printk.c | 8 +++---
arch/unicore32/kernel/early_printk.c | 12 +++------
arch/x86/kernel/early_printk.c | 28 ---------------------
drivers/dca/dca-core.c | 6 ++--
include/linux/console.h | 1
include/linux/printk.h | 13 +++++----
include/linux/rcupdate.h | 2 -
include/linux/rcutree.h | 4 +--
ipc/mqueue.c | 8 ++++--
kernel/printk.c | 45 +++++++++++++++++++++++++---------
kernel/trace/latency_hist.c | 21 ++++++++++-----
kernel/watchdog.c | 3 --
localversion-rt | 2 -
22 files changed, 104 insertions(+), 146 deletions(-)
Index: linux-2.6/arch/x86/kernel/early_printk.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/early_printk.c
+++ linux-2.6/arch/x86/kernel/early_printk.c
@@ -169,31 +169,6 @@ static struct console early_serial_conso
.index = -1,
};
-/* Direct interface for emergencies */
-static struct console *early_console = &early_vga_console;
-int early_console_initialized;
-
-asmlinkage void early_printk(const char *fmt, ...)
-{
- char buf[512];
- int n;
- va_list ap;
-
- va_start(ap, fmt);
- n = vscnprintf(buf, sizeof(buf), fmt, ap);
- early_console->write(early_console, buf, n);
- va_end(ap);
-}
-
-asmlinkage void early_vprintk(const char *fmt, va_list ap)
-{
- char buf[512];
- int n;
-
- n = vscnprintf(buf, sizeof(buf), fmt, ap);
- early_console->write(early_console, buf, n);
-}
-
static inline void early_console_register(struct console *con, int keep_early)
{
if (early_console->index != -1) {
@@ -216,9 +191,8 @@ static int __init setup_early_printk(cha
if (!buf)
return 0;
- if (early_console_initialized)
+ if (early_console)
return 0;
- early_console_initialized = 1;
keep = (strstr(buf, "keep") != NULL);
Index: linux-2.6/drivers/dca/dca-core.c
===================================================================
--- linux-2.6.orig/drivers/dca/dca-core.c
+++ linux-2.6/drivers/dca/dca-core.c
@@ -101,10 +101,10 @@ static void unregister_dca_providers(voi
INIT_LIST_HEAD(&unregistered_providers);
- spin_lock_irqsave(&dca_lock, flags);
+ raw_spin_lock_irqsave(&dca_lock, flags);
if (list_empty(&dca_domains)) {
- spin_unlock_irqrestore(&dca_lock, flags);
+ raw_spin_unlock_irqrestore(&dca_lock, flags);
return;
}
@@ -116,7 +116,7 @@ static void unregister_dca_providers(voi
dca_free_domain(domain);
- spin_unlock_irqrestore(&dca_lock, flags);
+ raw_spin_unlock_irqrestore(&dca_lock, flags);
list_for_each_entry_safe(dca, _dca, &unregistered_providers, node) {
dca_sysfs_remove_provider(dca);
Index: linux-2.6/include/linux/printk.h
===================================================================
--- linux-2.6.orig/include/linux/printk.h
+++ linux-2.6/include/linux/printk.h
@@ -88,11 +88,15 @@ int no_printk(const char *fmt, ...)
return 0;
}
-extern int early_console_initialized;
-
+#ifdef CONFIG_EARLY_PRINTK
extern asmlinkage __attribute__ ((format (printf, 1, 2)))
void early_printk(const char *fmt, ...);
-void early_vprintk(const char *fmt, va_list args);
+extern void printk_kill(void);
+#else
+static inline __attribute__ ((format (printf, 1, 2))) __cold
+void early_printk(const char *s, ...) { }
+static inline void printk_kill(void) { }
+#endif
extern int printk_needs_cpu(int cpu);
extern void printk_tick(void);
@@ -112,9 +116,6 @@ extern int __printk_ratelimit(const char
#define printk_ratelimit() __printk_ratelimit(__func__)
extern bool printk_timed_ratelimit(unsigned long *caller_jiffies,
unsigned int interval_msec);
-
-extern void printk_kill(void);
-
extern int printk_delay_msec;
extern int dmesg_restrict;
extern int kptr_restrict;
Index: linux-2.6/include/linux/rcupdate.h
===================================================================
--- linux-2.6.orig/include/linux/rcupdate.h
+++ linux-2.6/include/linux/rcupdate.h
@@ -80,7 +80,7 @@ extern void call_rcu_sched(struct rcu_he
extern void synchronize_sched(void);
#ifdef CONFIG_PREEMPT_RT_FULL
-# define rcu_barrier_bh() rcu_barrier()
+# define rcu_barrier_bh rcu_barrier
#else
extern void rcu_barrier_bh(void);
#endif
Index: linux-2.6/include/linux/rcutree.h
===================================================================
--- linux-2.6.orig/include/linux/rcutree.h
+++ linux-2.6/include/linux/rcutree.h
@@ -84,8 +84,8 @@ extern void rcu_sched_force_quiescent_st
extern void rcu_bh_force_quiescent_state(void);
extern long rcu_batches_completed_bh(void);
#else
-# define rcu_bh_force_quiescent_state() rcu_force_quiescent_state()
-# define rcu_batches_completed_bh() rcu_batches_completed()
+# define rcu_bh_force_quiescent_state rcu_force_quiescent_state
+# define rcu_batches_completed_bh rcu_batches_completed
#endif
/* A context switch is a grace period for RCU-sched and RCU-bh. */
Index: linux-2.6/ipc/mqueue.c
===================================================================
--- linux-2.6.orig/ipc/mqueue.c
+++ linux-2.6/ipc/mqueue.c
@@ -841,15 +841,19 @@ static inline void pipelined_receive(str
wake_up_interruptible(&info->wait_q);
return;
}
+ /*
+ * Keep them in one critical section for PREEMPT_RT:
+ */
+ preempt_disable_rt();
msg_insert(sender->msg, info);
list_del(&sender->list);
sender->state = STATE_PENDING;
wake_up_process(sender->task);
smp_wmb();
sender->state = STATE_READY;
+ preempt_enable_rt();
}
-
-SYSCALL_DEFINE5(mq_timedsend, mqd_t, mqdes, const char __user *, u_msg_ptr,
+ SYSCALL_DEFINE5(mq_timedsend, mqd_t, mqdes, const char __user *, u_msg_ptr,
size_t, msg_len, unsigned int, msg_prio,
const struct timespec __user *, u_abs_timeout)
{
Index: linux-2.6/kernel/printk.c
===================================================================
--- linux-2.6.orig/kernel/printk.c
+++ linux-2.6/kernel/printk.c
@@ -44,13 +44,6 @@
#include <asm/uaccess.h>
-/*
- * Architectures can override it:
- */
-void asmlinkage __attribute__((weak)) early_printk(const char *fmt, ...)
-{
-}
-
#define __LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT)
/* printk's without a loglevel use this.. */
@@ -521,6 +514,25 @@ static void __call_console_drivers(unsig
migrate_enable();
}
+#ifdef CONFIG_EARLY_PRINTK
+struct console *early_console;
+
+static void early_vprintk(const char *fmt, va_list ap)
+{
+ char buf[512];
+ int n = vscnprintf(buf, sizeof(buf), fmt, ap);
+ if (early_console)
+ early_console->write(early_console, buf, n);
+}
+
+asmlinkage void early_printk(const char *fmt, ...)
+{
+ va_list ap;
+ va_start(ap, fmt);
+ early_vprintk(fmt, ap);
+ va_end(ap);
+}
+
/*
* This is independent of any log levels - a global
* kill switch that turns off all of printk.
@@ -534,6 +546,20 @@ void printk_kill(void)
printk_killswitch = 1;
}
+static int forced_early_printk(const char *fmt, va_list ap)
+{
+ if (!printk_killswitch)
+ return 0;
+ early_vprintk(fmt, ap);
+ return 1;
+}
+#else
+static inline int forced_early_printk(const char *fmt, va_list ap)
+{
+ return 0;
+}
+#endif
+
static int __read_mostly ignore_loglevel;
static int __init ignore_loglevel_setup(char *str)
@@ -858,10 +884,8 @@ asmlinkage int vprintk(const char *fmt,
* Fall back to early_printk if a debugging subsystem has
* killed printk output
*/
- if (unlikely(printk_killswitch)) {
- early_vprintk(fmt, args);
+ if (unlikely(forced_early_printk(fmt, args)))
return 1;
- }
boot_delay_msec();
printk_delay();
@@ -1575,7 +1599,6 @@ void register_console(struct console *ne
for_each_console(bcon)
if (bcon->flags & CON_BOOT)
unregister_console(bcon);
- early_console_initialized = 0;
} else {
printk(KERN_INFO "%sconsole [%s%d] enabled\n",
(newcon->flags & CON_BOOT) ? "boot" : "" ,
Index: linux-2.6/kernel/trace/latency_hist.c
===================================================================
--- linux-2.6.orig/kernel/trace/latency_hist.c
+++ linux-2.6/kernel/trace/latency_hist.c
@@ -223,9 +223,8 @@ void notrace latency_hist(int latency_ty
} else
my_hist->hist_array[latency]++;
- if (latency < my_hist->min_lat)
- my_hist->min_lat = latency;
- if (latency > my_hist->max_lat) {
+ if (unlikely(latency > my_hist->max_lat ||
+ my_hist->min_lat == ULONG_MAX)) {
#if defined(CONFIG_WAKEUP_LATENCY_HIST) || \
defined(CONFIG_MISSED_TIMER_OFFSETS_HIST)
if (latency_type == WAKEUP_LATENCY ||
@@ -246,6 +245,8 @@ void notrace latency_hist(int latency_ty
#endif
my_hist->max_lat = latency;
}
+ if (unlikely(latency < my_hist->min_lat))
+ my_hist->min_lat = latency;
my_hist->total_samples++;
my_hist->accumulate_lat += latency;
}
@@ -360,7 +361,7 @@ static struct file_operations latency_hi
static void clear_maxlatprocdata(struct maxlatproc_data *mp)
{
mp->comm[0] = mp->current_comm[0] = '\0';
- mp->prio = mp->current_prio = mp->current_pid =
+ mp->prio = mp->current_prio = mp->pid = mp->current_pid =
mp->latency = mp->timeroffset = -1;
mp->timestamp = 0;
}
@@ -372,7 +373,7 @@ static void hist_reset(struct hist_data
memset(hist->hist_array, 0, sizeof(hist->hist_array));
hist->below_hist_bound_samples = 0ULL;
hist->above_hist_bound_samples = 0ULL;
- hist->min_lat = 0xFFFFFFFFUL;
+ hist->min_lat = ULONG_MAX;
hist->max_lat = 0UL;
hist->total_samples = 0ULL;
hist->accumulate_lat = 0ULL;
@@ -496,15 +497,21 @@ show_maxlatproc(struct file *file, char
int strmaxlen = (TASK_COMM_LEN * 2) + (8 * 8);
unsigned long long t;
unsigned long usecs, secs;
- char *buf = kmalloc(strmaxlen, GFP_KERNEL);
+ char *buf;
+ if (mp->pid == -1 || mp->current_pid == -1) {
+ buf = "(none)\n";
+ return simple_read_from_buffer(ubuf, cnt, ppos, buf,
+ strlen(buf));
+ }
+
+ buf = kmalloc(strmaxlen, GFP_KERNEL);
if (buf == NULL)
return -ENOMEM;
t = ns2usecs(mp->timestamp);
usecs = do_div(t, USEC_PER_SEC);
secs = (unsigned long) t;
-
r = snprintf(buf, strmaxlen,
"%d %d %ld (%ld) %s <- %d %d %s %lu.%06lu\n", mp->pid,
MAX_RT_PRIO-1 - mp->prio, mp->latency, mp->timeroffset, mp->comm,
Index: linux-2.6/kernel/watchdog.c
===================================================================
--- linux-2.6.orig/kernel/watchdog.c
+++ linux-2.6/kernel/watchdog.c
@@ -240,8 +240,7 @@ static void watchdog_overflow_callback(s
* If early-printk is enabled then make sure we do not
* lock up in printk() and kill console logging:
*/
- if (early_console_initialized)
- printk_kill();
+ printk_kill();
if (hardlockup_panic) {
panic("Watchdog detected hard LOCKUP on cpu %d", this_cpu);
Index: linux-2.6/localversion-rt
===================================================================
--- linux-2.6.orig/localversion-rt
+++ linux-2.6/localversion-rt
@@ -1 +1 @@
--rt1
+-rt2
Index: linux-2.6/arch/arm/kernel/early_printk.c
===================================================================
--- linux-2.6.orig/arch/arm/kernel/early_printk.c
+++ linux-2.6/arch/arm/kernel/early_printk.c
@@ -29,28 +29,17 @@ static void early_console_write(struct c
early_write(s, n);
}
-static struct console early_console = {
+static struct console early_console_dev = {
.name = "earlycon",
.write = early_console_write,
.flags = CON_PRINTBUFFER | CON_BOOT,
.index = -1,
};
-asmlinkage void early_printk(const char *fmt, ...)
-{
- char buf[512];
- int n;
- va_list ap;
-
- va_start(ap, fmt);
- n = vscnprintf(buf, sizeof(buf), fmt, ap);
- early_write(buf, n);
- va_end(ap);
-}
-
static int __init setup_early_printk(char *buf)
{
- register_console(&early_console);
+ early_console = &early_console_dev;
+ register_console(&early_console_dev);
return 0;
}
Index: linux-2.6/arch/blackfin/kernel/early_printk.c
===================================================================
--- linux-2.6.orig/arch/blackfin/kernel/early_printk.c
+++ linux-2.6/arch/blackfin/kernel/early_printk.c
@@ -25,8 +25,6 @@ extern struct console *bfin_earlyserial_
extern struct console *bfin_jc_early_init(void);
#endif
-static struct console *early_console;
-
/* Default console */
#define DEFAULT_PORT 0
#define DEFAULT_CFLAG CS8|B57600
Index: linux-2.6/arch/microblaze/kernel/early_printk.c
===================================================================
--- linux-2.6.orig/arch/microblaze/kernel/early_printk.c
+++ linux-2.6/arch/microblaze/kernel/early_printk.c
@@ -21,7 +21,6 @@
#include <asm/setup.h>
#include <asm/prom.h>
-static u32 early_console_initialized;
static u32 base_addr;
#ifdef CONFIG_SERIAL_UARTLITE_CONSOLE
@@ -109,31 +108,14 @@ static struct console early_serial_uart1
};
#endif /* CONFIG_SERIAL_8250_CONSOLE */
-static struct console *early_console;
-
-void early_printk(const char *fmt, ...)
-{
- char buf[512];
- int n;
- va_list ap;
-
- if (early_console_initialized) {
- va_start(ap, fmt);
- n = vscnprintf(buf, 512, fmt, ap);
- early_console->write(early_console, buf, n);
- va_end(ap);
- }
-}
-
int __init setup_early_printk(char *opt)
{
- if (early_console_initialized)
+ if (early_console)
return 1;
#ifdef CONFIG_SERIAL_UARTLITE_CONSOLE
base_addr = early_uartlite_console();
if (base_addr) {
- early_console_initialized = 1;
#ifdef CONFIG_MMU
early_console_reg_tlb_alloc(base_addr);
#endif
@@ -151,7 +133,6 @@ int __init setup_early_printk(char *opt)
base_addr = early_uart16550_console();
base_addr &= ~3; /* clear register offset */
if (base_addr) {
- early_console_initialized = 1;
#ifdef CONFIG_MMU
early_console_reg_tlb_alloc(base_addr);
#endif
@@ -171,9 +152,9 @@ int __init setup_early_printk(char *opt)
void __init disable_early_printk(void)
{
- if (!early_console_initialized || !early_console)
+ if (!early_console)
return;
printk(KERN_WARNING "disabling early console\n");
unregister_console(early_console);
- early_console_initialized = 0;
+ early_console = NULL;
}
Index: linux-2.6/arch/mips/kernel/early_printk.c
===================================================================
--- linux-2.6.orig/arch/mips/kernel/early_printk.c
+++ linux-2.6/arch/mips/kernel/early_printk.c
@@ -25,20 +25,18 @@ early_console_write(struct console *con,
}
}
-static struct console early_console __initdata = {
+static struct console early_console_prom = {
.name = "early",
.write = early_console_write,
.flags = CON_PRINTBUFFER | CON_BOOT,
.index = -1
};
-static int early_console_initialized __initdata;
-
void __init setup_early_printk(void)
{
- if (early_console_initialized)
+ if (early_console)
return;
- early_console_initialized = 1;
+ early_console = &early_console_prom;
- register_console(&early_console);
+ register_console(&early_console_prom);
}
Index: linux-2.6/arch/powerpc/kernel/udbg.c
===================================================================
--- linux-2.6.orig/arch/powerpc/kernel/udbg.c
+++ linux-2.6/arch/powerpc/kernel/udbg.c
@@ -169,15 +169,13 @@ static struct console udbg_console = {
.index = 0,
};
-static int early_console_initialized;
-
/*
* Called by setup_system after ppc_md->probe and ppc_md->early_init.
* Call it again after setting udbg_putc in ppc_md->setup_arch.
*/
void __init register_early_udbg_console(void)
{
- if (early_console_initialized)
+ if (early_console)
return;
if (!udbg_putc)
@@ -187,7 +185,7 @@ void __init register_early_udbg_console(
printk(KERN_INFO "early console immortal !\n");
udbg_console.flags &= ~CON_BOOT;
}
- early_console_initialized = 1;
+ early_console = &udbg_console;
register_console(&udbg_console);
}
Index: linux-2.6/arch/sh/kernel/sh_bios.c
===================================================================
--- linux-2.6.orig/arch/sh/kernel/sh_bios.c
+++ linux-2.6/arch/sh/kernel/sh_bios.c
@@ -144,8 +144,6 @@ static struct console bios_console = {
.index = -1,
};
-static struct console *early_console;
-
static int __init setup_early_printk(char *buf)
{
int keep_early = 0;
Index: linux-2.6/arch/sparc/kernel/setup_32.c
===================================================================
--- linux-2.6.orig/arch/sparc/kernel/setup_32.c
+++ linux-2.6/arch/sparc/kernel/setup_32.c
@@ -220,6 +220,7 @@ void __init setup_arch(char **cmdline_p)
boot_flags_init(*cmdline_p);
+ early_console = &prom_early_console;
register_console(&prom_early_console);
/* Set sparc_cpu_model */
Index: linux-2.6/arch/sparc/kernel/setup_64.c
===================================================================
--- linux-2.6.orig/arch/sparc/kernel/setup_64.c
+++ linux-2.6/arch/sparc/kernel/setup_64.c
@@ -278,6 +278,12 @@ void __init boot_cpu_id_too_large(int cp
}
#endif
+static inline void register_prom_console(void)
+{
+ early_console = &prom_early_console;
+ register_console(&prom_early_console);
+}
+
void __init setup_arch(char **cmdline_p)
{
/* Initialize PROM console and command line. */
@@ -289,7 +295,7 @@ void __init setup_arch(char **cmdline_p)
#ifdef CONFIG_EARLYFB
if (btext_find_display())
#endif
- register_console(&prom_early_console);
+ register_prom_console();
if (tlb_type == hypervisor)
printk("ARCH: SUN4V\n");
Index: linux-2.6/arch/tile/kernel/early_printk.c
===================================================================
--- linux-2.6.orig/arch/tile/kernel/early_printk.c
+++ linux-2.6/arch/tile/kernel/early_printk.c
@@ -32,25 +32,8 @@ static struct console early_hv_console =
};
/* Direct interface for emergencies */
-static struct console *early_console = &early_hv_console;
-static int early_console_initialized;
static int early_console_complete;
-static void early_vprintk(const char *fmt, va_list ap)
-{
- char buf[512];
- int n = vscnprintf(buf, sizeof(buf), fmt, ap);
- early_console->write(early_console, buf, n);
-}
-
-void early_printk(const char *fmt, ...)
-{
- va_list ap;
- va_start(ap, fmt);
- early_vprintk(fmt, ap);
- va_end(ap);
-}
-
void early_panic(const char *fmt, ...)
{
va_list ap;
@@ -68,14 +51,13 @@ static int __initdata keep_early;
static int __init setup_early_printk(char *str)
{
- if (early_console_initialized)
+ if (early_console)
return 1;
if (str != NULL && strncmp(str, "keep", 4) == 0)
keep_early = 1;
early_console = &early_hv_console;
- early_console_initialized = 1;
register_console(early_console);
return 0;
@@ -84,12 +66,12 @@ static int __init setup_early_printk(cha
void __init disable_early_printk(void)
{
early_console_complete = 1;
- if (!early_console_initialized || !early_console)
+ if (!early_console)
return;
if (!keep_early) {
early_printk("disabling early console\n");
unregister_console(early_console);
- early_console_initialized = 0;
+ early_console = NULL;
} else {
early_printk("keeping early console\n");
}
@@ -97,7 +79,7 @@ void __init disable_early_printk(void)
void warn_early_printk(void)
{
- if (early_console_complete || early_console_initialized)
+ if (early_console_complete || early_console)
return;
early_printk("\
Machine shutting down before console output is fully initialized.\n\
Index: linux-2.6/arch/um/kernel/early_printk.c
===================================================================
--- linux-2.6.orig/arch/um/kernel/early_printk.c
+++ linux-2.6/arch/um/kernel/early_printk.c
@@ -16,7 +16,7 @@ static void early_console_write(struct c
um_early_printk(s, n);
}
-static struct console early_console = {
+static struct console early_console_dev = {
.name = "earlycon",
.write = early_console_write,
.flags = CON_BOOT,
@@ -25,8 +25,10 @@ static struct console early_console = {
static int __init setup_early_printk(char *buf)
{
- register_console(&early_console);
-
+ if (!early_console) {
+ early_console = &early_console_dev;
+ register_console(&early_console_dev);
+ }
return 0;
}
Index: linux-2.6/arch/unicore32/kernel/early_printk.c
===================================================================
--- linux-2.6.orig/arch/unicore32/kernel/early_printk.c
+++ linux-2.6/arch/unicore32/kernel/early_printk.c
@@ -33,21 +33,17 @@ static struct console early_ocd_console
.index = -1,
};
-/* Direct interface for emergencies */
-static struct console *early_console = &early_ocd_console;
-
-static int __initdata keep_early;
-
static int __init setup_early_printk(char *buf)
{
- if (!buf)
+ int keep_early;
+
+ if (!buf || early_console)
return 0;
if (strstr(buf, "keep"))
keep_early = 1;
- if (!strncmp(buf, "ocd", 3))
- early_console = &early_ocd_console;
+ early_console = &early_ocd_console;
if (keep_early)
early_console->flags &= ~CON_BOOT;
Index: linux-2.6/include/linux/console.h
===================================================================
--- linux-2.6.orig/include/linux/console.h
+++ linux-2.6/include/linux/console.h
@@ -133,6 +133,7 @@ struct console {
for (con = console_drivers; con != NULL; con = con->next)
extern int console_set_on_cmdline;
+extern struct console *early_console;
extern int add_preferred_console(char *name, int idx, char *options);
extern int update_console_cmdline(char *name, int idx, char *name_new, int idx_new, char *options);
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [ANNOUNCE] 3.0-rt2
2011-07-23 15:13 [ANNOUNCE] 3.0-rt2 Thomas Gleixner
@ 2011-07-23 15:41 ` Kim Leyendecker
2011-07-23 16:03 ` Thomas Gleixner
2011-07-23 17:17 ` Ed Tomlinson
2011-07-24 1:09 ` Yong Zhang
2 siblings, 1 reply; 10+ messages in thread
From: Kim Leyendecker @ 2011-07-23 15:41 UTC (permalink / raw)
To: Thomas Gleixner; +Cc: LKML
Am 23.07.2011 17:13, schrieb Thomas Gleixner:
> Patch against 3.0 can be found here:
>
> http://www.kernel.org/pub/linux/kernel/projects/rt/patch-3.0-rt2.patch.bz2
I´m sorry that I have to disturb you again, but if I open your link, I
get only a 404.
This shouldn´t be right, shouldn´t it?
thanks
--
Kim Leyendecker (kdl@k-dl.de.vu)
openSUSE Ambassador, openSUSE Wiki Team DE
HAVE A LOT OF FUN!
http://www.opensuse.org
Have you tried SUSE Studio? Need to create a Live CD, an app you want
to package and distribute or create your own Linux distro. Give SUSE
Studio a try. http://www.susestudio.com
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [ANNOUNCE] 3.0-rt2
2011-07-23 15:41 ` Kim Leyendecker
@ 2011-07-23 16:03 ` Thomas Gleixner
2011-07-23 16:27 ` Kim Leyendecker
0 siblings, 1 reply; 10+ messages in thread
From: Thomas Gleixner @ 2011-07-23 16:03 UTC (permalink / raw)
To: Kim Leyendecker; +Cc: LKML
[-- Attachment #1: Type: TEXT/PLAIN, Size: 422 bytes --]
On Sat, 23 Jul 2011, Kim Leyendecker wrote:
> Am 23.07.2011 17:13, schrieb Thomas Gleixner:
> > Patch against 3.0 can be found here:
> >
> > http://www.kernel.org/pub/linux/kernel/projects/rt/patch-3.0-rt2.patch.bz2
>
> I´m sorry that I have to disturb you again, but if I open your link, I get
> only a 404.
>
> This shouldn´t be right, shouldn´t it?
Works for me. Maybe you hit a mirror which was not yet synced.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [ANNOUNCE] 3.0-rt2
2011-07-23 16:03 ` Thomas Gleixner
@ 2011-07-23 16:27 ` Kim Leyendecker
0 siblings, 0 replies; 10+ messages in thread
From: Kim Leyendecker @ 2011-07-23 16:27 UTC (permalink / raw)
To: Thomas Gleixner; +Cc: LKML
Am 23.07.2011 18:03, schrieb Thomas Gleixner:
> On Sat, 23 Jul 2011, Kim Leyendecker wrote:
>
>> Am 23.07.2011 17:13, schrieb Thomas Gleixner:
>>> Patch against 3.0 can be found here:
>>>
>>> http://www.kernel.org/pub/linux/kernel/projects/rt/patch-3.0-rt2.patch.bz2
>> I´m sorry that I have to disturb you again, but if I open your link, I get
>> only a 404.
>>
>> This shouldn´t be right, shouldn´t it?
> Works for me. Maybe you hit a mirror which was not yet synced.
true. Now it´s working perfect.
-kdl
--
Kim Leyendecker (kdl@k-dl.de.vu)
openSUSE Ambassador, openSUSE Wiki Team DE
HAVE A LOT OF FUN!
http://www.opensuse.org
Have you tried SUSE Studio? Need to create a Live CD, an app you want
to package and distribute or create your own Linux distro. Give SUSE
Studio a try. http://www.susestudio.com
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [ANNOUNCE] 3.0-rt2
2011-07-23 15:13 [ANNOUNCE] 3.0-rt2 Thomas Gleixner
2011-07-23 15:41 ` Kim Leyendecker
@ 2011-07-23 17:17 ` Ed Tomlinson
2011-07-23 17:34 ` Ed Tomlinson
2011-07-24 1:09 ` Yong Zhang
2 siblings, 1 reply; 10+ messages in thread
From: Ed Tomlinson @ 2011-07-23 17:17 UTC (permalink / raw)
To: Thomas Gleixner; +Cc: LKML, linux-rt-users
On Saturday 23 July 2011 11:13:30 Thomas Gleixner wrote:
> I'm pleased to announce the 3.0-rt2 release.
>
> Changes versus 3.0-rt1:
>
> * mqueue fix (Yoshitake Kobayashi)
>
> * dca locking fix (Mike Galbraith)
>
> * trace updates (Carsten Emde)
>
> * Fixed vprintk wreckage and rcutorture (tglx)
>
> Known issues:
>
> * Some weird "console=..." commandline + config dependent
> interactions which have been not yet investigated down to their
> root cause. Result in a boot hang. YMMV
Got this during boot with rt2. The kernel survives and seems to work (eg X starts and kmail can sent this).
[ 1.142427] pci 0000:01:05.0: Boot video device
[ 1.142483] PCI: CLS 64 bytes, default 64
[ 1.145555] PCI-DMA: Disabling AGP.
[ 1.145758] PCI-DMA: aperture base @ b4000000 size 65536 KB
[ 1.145759] PCI-DMA: using GART IOMMU.
[ 1.145764] PCI-DMA: Reserving 64MB of IOMMU area in the AGP aperture
[ 1.176417]
[ 1.176419] =================================
[ 1.176420] [ INFO: inconsistent lock state ]
[ 1.176422] 3.0.0-rt2-crc+ #351
[ 1.176424] ---------------------------------
[ 1.176425] inconsistent {HARDIRQ-ON-W} -> {IN-HARDIRQ-W} usage.
[ 1.176428] swapper/0 [HC1[1]:SC0[18446612140904153088]:HE0:SE1] takes:
[ 1.176430] (&(&(&(*({ do { const void *__vpp_verify = (typeof((&(slab_lock))))((void *)0); (void)__vpp_verify; } while (0); ({ unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*(&(slab_lock))) *)(&(slab_lock)))); (typeof((typeof(*(&(slab_lock))) *)(&(slab_lock)))) (__ptr + (((__per_cpu_offset[__cpu])))); }); })).lock)->lock)->wait_lock){?.+...}, at: [<ffffffff815820db>] rt_spin_lock_slowlock+0x4b/0x250
[ 1.176440] {HARDIRQ-ON-W} state was registered at:
[ 1.176442] [<ffffffff8108c3ed>] __lock_acquire+0x5ed/0x16a0
[ 1.176446] [<ffffffff8108daa5>] lock_acquire+0x95/0x140
[ 1.176449] [<ffffffff8158351b>] _raw_spin_lock+0x3b/0x50
[ 1.176452] [<ffffffff815820db>] rt_spin_lock_slowlock+0x4b/0x250
[ 1.176455] [<ffffffff815829ac>] rt_spin_lock+0x2c/0x60
[ 1.176458] [<ffffffff81146cde>] kmem_cache_alloc_trace+0x7e/0x3f0
[ 1.176461] [<ffffffff811475e7>] do_tune_cpucache+0x47/0x580
[ 1.176463] [<ffffffff81147d00>] enable_cpucache+0x30/0xc0
[ 1.176466] [<ffffffff81bbc879>] kmem_cache_init_late+0x2f/0x82
[ 1.176470] [<ffffffff81ba1ac7>] start_kernel+0x267/0x325
[ 1.176473] [<ffffffff81ba12eb>] x86_64_start_reservations+0xfb/0xff
[ 1.176476] [<ffffffff81ba13dc>] x86_64_start_kernel+0xed/0xf4
[ 1.176478] irq event stamp: 125372
[ 1.176479] hardirqs last enabled at (125371): [<ffffffff8100ac4d>] default_idle+0x19d/0x1b0
[ 1.176483] hardirqs last disabled at (125372): [<ffffffff81583b67>] save_args+0x67/0x70
[ 1.176486] softirqs last enabled at (0): [< (null)>] (null)
[ 1.176487] softirqs last disabled at (0): [< (null)>] (null)
[ 1.176489]
[ 1.176490] other info that might help us debug this:
[ 1.176491] Possible unsafe locking scenario:
[ 1.176491]
[ 1.176492] CPU0
[ 1.176493] ----
[ 1.176493] lock(&(&(&(*({ do { const void *__vpp_verify = (typeof((&(slab_lock))))((void *)0); (void)__vpp_verify; } while (0); ({ unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*(&(slab_lock))) *)(&(slab_lock)))); (typeof((typeof(*(&(slab_lock))) *)(&(slab_lock)))) (__ptr + (((__per_cpu_offset[__cpu])))); }); })).lock)->lock)->wait_lock);
[ 1.176498] <Interrupt>
[ 1.176498] lock(&(&(&(*({ do { const void *__vpp_verify = (typeof((&(slab_lock))))((void *)0); (void)__vpp_verify; } while (0); ({ unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*(&(slab_lock))) *)(&(slab_lock)))); (typeof((typeof(*(&(slab_lock))) *)(&(slab_lock)))) (__ptr + (((__per_cpu_offset[__cpu])))); }); })).lock)->lock)->wait_lock);
[ 1.176502]
[ 1.176503] *** DEADLOCK ***
[ 1.176503]
[ 1.176504] no locks held by swapper/0.
[ 1.176505]
[ 1.176506] stack backtrace:
[ 1.176508] Pid: 0, comm: swapper Not tainted 3.0.0-rt2-crc+ #351
[ 1.176509] Call Trace:
[ 1.176510] <IRQ> [<ffffffff8108ae1f>] print_usage_bug+0x21f/0x270
[ 1.176514] [<ffffffff8108b742>] mark_lock+0x332/0x400
[ 1.176517] [<ffffffff8108c55e>] __lock_acquire+0x75e/0x16a0
[ 1.176519] [<ffffffff8108b608>] ? mark_lock+0x1f8/0x400
[ 1.176521] [<ffffffff815820db>] ? rt_spin_lock_slowlock+0x4b/0x250
[ 1.176523] [<ffffffff8108daa5>] lock_acquire+0x95/0x140
[ 1.176525] [<ffffffff815820db>] ? rt_spin_lock_slowlock+0x4b/0x250
[ 1.176528] [<ffffffff81010294>] ? kzalloc+0x14/0x20
[ 1.176530] [<ffffffff8158351b>] _raw_spin_lock+0x3b/0x50
[ 1.176533] [<ffffffff815820db>] ? rt_spin_lock_slowlock+0x4b/0x250
[ 1.176535] [<ffffffff815820db>] rt_spin_lock_slowlock+0x4b/0x250
[ 1.176537] [<ffffffff81010294>] ? kzalloc+0x14/0x20
[ 1.176539] [<ffffffff815829ac>] rt_spin_lock+0x2c/0x60
[ 1.176541] [<ffffffff81147149>] __kmalloc+0xf9/0x4b0
[ 1.176544] [<ffffffff81010294>] kzalloc+0x14/0x20
[ 1.176546] [<ffffffff81576999>] cpuid4_cache_lookup_regs+0x1bc/0x33a
[ 1.176549] [<ffffffff81079257>] ? __hrtimer_start_range_ns+0x157/0x4a0
[ 1.176551] [<ffffffff81077b48>] ? hrtimer_get_next_event+0xe8/0x110
[ 1.176553] [<ffffffff81581c38>] ? rt_spin_lock_slowunlock+0x78/0x80
[ 1.176555] [<ffffffff815775da>] get_cpu_leaves+0x88/0x318
[ 1.176558] [<ffffffff81095586>] generic_smp_call_function_single_interrupt+0x136/0x190
[ 1.176562] [<ffffffff8101e087>] smp_call_function_single_interrupt+0x27/0x40
[ 1.176565] [<ffffffff8158bb33>] call_function_single_interrupt+0x13/0x20
[ 1.176566] <EOI> [<ffffffff8100ac4f>] ? default_idle+0x19f/0x1b0
[ 1.176570] [<ffffffff8100ac4d>] ? default_idle+0x19d/0x1b0
[ 1.176572] [<ffffffff8100acd0>] amd_e400_idle+0x70/0x120
[ 1.176575] [<ffffffff8100123f>] cpu_idle+0xdf/0x120
[ 1.176577] [<ffffffff8156a7dc>] rest_init+0xbc/0xd0
[ 1.176579] [<ffffffff8156a720>] ? csum_partial_copy_generic+0x170/0x170
[ 1.176582] [<ffffffff81ba1b7a>] start_kernel+0x31a/0x325
[ 1.176584] [<ffffffff81ba12eb>] x86_64_start_reservations+0xfb/0xff
[ 1.176586] [<ffffffff81ba13dc>] x86_64_start_kernel+0xed/0xf4
[ 1.182619] audit: initializing netlink socket (disabled)
[ 1.182648] type=2000 audit(1311440614.181:1): initialized
[ 1.211068] HugeTLB registered 2 MB page size, pre-allocated 0 pages
[ 1.246054] VFS: Disk quotas dquot_6.5.2
[ 1.246104] Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[ 1.246873] msgmni has been set to 15445
Hope this helps.
Ed
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [ANNOUNCE] 3.0-rt2
2011-07-23 17:17 ` Ed Tomlinson
@ 2011-07-23 17:34 ` Ed Tomlinson
2011-07-23 17:41 ` Thomas Gleixner
0 siblings, 1 reply; 10+ messages in thread
From: Ed Tomlinson @ 2011-07-23 17:34 UTC (permalink / raw)
To: Thomas Gleixner; +Cc: LKML, linux-rt-users
On Saturday 23 July 2011 13:17:04 Ed Tomlinson wrote:
> On Saturday 23 July 2011 11:13:30 Thomas Gleixner wrote:
> > I'm pleased to announce the 3.0-rt2 release.
> >
> > Changes versus 3.0-rt1:
> >
> > * mqueue fix (Yoshitake Kobayashi)
> >
> > * dca locking fix (Mike Galbraith)
> >
> > * trace updates (Carsten Emde)
> >
> > * Fixed vprintk wreckage and rcutorture (tglx)
> >
> > Known issues:
> >
> > * Some weird "console=..." commandline + config dependent
> > interactions which have been not yet investigated down to their
> > root cause. Result in a boot hang. YMMV
Got this warning too. Was a change was missed?
[ 364.392603] NOHZ: local_softirq_pending 08
[ 369.320859] NOHZ: local_softirq_pending 08
[ 382.126867] NOHZ: local_softirq_pending 08
[ 388.525880] NOHZ: local_softirq_pending 08
[ 388.526510] NOHZ: local_softirq_pending 08
[ 412.148451] NOHZ: local_softirq_pending 08
[ 418.550136] NOHZ: local_softirq_pending 08
[ 418.550290] NOHZ: local_softirq_pending 08
[ 429.870609] NOHZ: local_softirq_pending 08
[ 453.992649] NOHZ: local_softirq_pending 08
[ 905.155424] ------------[ cut here ]------------
[ 905.155441] WARNING: at kernel/trace/trace.c:2729 tracing_ctrl_write+0x203/0x220()
[ 905.155447] Hardware name: System Product Name
[ 905.155452] tracing_enabled is deprecated. Use tracing_on
[ 905.155456] Modules linked in: hidp loop acpi_pad video pci_slot container fan tun sit tunnel4 ipv6 bnep rfcomm snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss microcode af_packet kvm_amd kvm pciehp pci_hotplug powernow_k8 mperf sr_mod cdrom btusb bluetooth ath3k pl2303 usbserial uas usb_storage joydev hid_microsoft usbhid gspca_ov519 gspca_main videodev v4l2_compat_ioctl32 usblp ata_generic amd64_edac_mod pcspkr k10temp edac_mce_amd pata_atiixp ohci_hcd ehci_hcd snd_hda_codec_hdmi evdev snd_hda_codec_realtek asus_atk0110 snd_hda_intel snd_hda_codec snd_pcm snd_timer snd sky2 soundcore snd_page_alloc wmi button processor unix
[ 905.155555] Pid: 4263, comm: latencytop Not tainted 3.0.0-rt2-crc+ #351
[ 905.155561] Call Trace:
[ 905.155573] [<ffffffff8104b82f>] warn_slowpath_common+0x7f/0xc0
[ 905.155582] [<ffffffff8104b926>] warn_slowpath_fmt+0x46/0x50
[ 905.155593] [<ffffffff81582ecc>] ? _mutex_lock+0x3c/0x50
[ 905.155601] [<ffffffff810d122e>] ? tracing_ctrl_write+0xce/0x220
[ 905.155609] [<ffffffff810d1363>] tracing_ctrl_write+0x203/0x220
[ 905.155618] [<ffffffff811531dc>] ? rw_verify_area+0xec/0x190
[ 905.155625] [<ffffffff8115368c>] vfs_write+0x11c/0x1c0
[ 905.155632] [<ffffffff81153824>] sys_write+0x54/0x90
[ 905.155641] [<ffffffff8158afab>] system_call_fastpath+0x16/0x1b
[ 905.155647] ---[ end trace 0000000000000002 ]---
I've also not seen the "NOHZ: local_softirq_pending 08" messages before.
Thanks
Ed
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [ANNOUNCE] 3.0-rt2
2011-07-23 17:34 ` Ed Tomlinson
@ 2011-07-23 17:41 ` Thomas Gleixner
0 siblings, 0 replies; 10+ messages in thread
From: Thomas Gleixner @ 2011-07-23 17:41 UTC (permalink / raw)
To: Ed Tomlinson; +Cc: LKML, linux-rt-users
On Sat, 23 Jul 2011, Ed Tomlinson wrote:
> On Saturday 23 July 2011 13:17:04 Ed Tomlinson wrote:
> > On Saturday 23 July 2011 11:13:30 Thomas Gleixner wrote:
> > > I'm pleased to announce the 3.0-rt2 release.
> > >
> > > Changes versus 3.0-rt1:
> > >
> > > * mqueue fix (Yoshitake Kobayashi)
> > >
> > > * dca locking fix (Mike Galbraith)
> > >
> > > * trace updates (Carsten Emde)
> > >
> > > * Fixed vprintk wreckage and rcutorture (tglx)
> > >
> > > Known issues:
> > >
> > > * Some weird "console=..." commandline + config dependent
> > > interactions which have been not yet investigated down to their
> > > root cause. Result in a boot hang. YMMV
>
> Got this warning too. Was a change was missed?
>
> [ 364.392603] NOHZ: local_softirq_pending 08
Forgot to disable NOHZ for now, have not yet had time to investigate
that local_softirq_pending warning.
> [ 905.155441] WARNING: at kernel/trace/trace.c:2729 tracing_ctrl_write+0x203/0x220()
> [ 905.155447] Hardware name: System Product Name
> [ 905.155452] tracing_enabled is deprecated. Use tracing_on
^^^^
Thanks,
tglx
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [ANNOUNCE] 3.0-rt2
2011-07-23 15:13 [ANNOUNCE] 3.0-rt2 Thomas Gleixner
2011-07-23 15:41 ` Kim Leyendecker
2011-07-23 17:17 ` Ed Tomlinson
@ 2011-07-24 1:09 ` Yong Zhang
2011-07-24 10:05 ` Thomas Gleixner
2 siblings, 1 reply; 10+ messages in thread
From: Yong Zhang @ 2011-07-24 1:09 UTC (permalink / raw)
To: Thomas Gleixner; +Cc: LKML, linux-rt-users
[-- Attachment #1: Type: text/plain, Size: 1990 bytes --]
On Sat, Jul 23, 2011 at 05:13:30PM +0200, Thomas Gleixner wrote:
> Dear RT Folks,
>
> I'm pleased to announce the 3.0-rt2 release.
>
> Changes versus 3.0-rt1:
>
> * mqueue fix (Yoshitake Kobayashi)
>
> * dca locking fix (Mike Galbraith)
>
> * trace updates (Carsten Emde)
>
> * Fixed vprintk wreckage and rcutorture (tglx)
>
> Known issues:
>
> * Some weird "console=..." commandline + config dependent
> interactions which have been not yet investigated down to their
> root cause. Result in a boot hang. YMMV
>
> Patch against 3.0 can be found here:
>
> http://www.kernel.org/pub/linux/kernel/projects/rt/patch-3.0-rt2.patch.bz2
>
> The split quilt queue is available at:
>
> http://www.kernel.org/pub/linux/kernel/projects/rt/patches-3.0-rt2.tar.bz2
>
I get below bug on my notebook:
[ 1244.912596] BUG: sleeping function called from invalid context at kernel/rtmutex.c:645
[ 1244.912599] in_atomic(): 1, irqs_disabled(): 0, pid: 1713, name: chromium-browse
[ 1244.912603] Pid: 1713, comm: chromium-browse Not tainted 3.0.0-rt2-00236-g4cf2acd #59
[ 1244.912605] Call Trace:
[ 1244.912613] [<c15cee54>] ? printk+0x1d/0x21
[ 1244.912618] [<c1036086>] __might_sleep+0xe6/0x110
[ 1244.912621] [<c15d151c>] rt_spin_lock+0x1c/0x40
[ 1244.912626] [<c111f763>] mem_cgroup_split_huge_fixup+0x43/0xd0
[ 1244.912629] [<c11195d8>] split_huge_page+0x208/0x770
[ 1244.912632] [<c15d1a25>] ? _raw_spin_lock+0x15/0x30
[ 1244.912635] [<c1040362>] ? migrate_enable+0xc2/0x130
[ 1244.912638] [<c111a20b>] __split_huge_page_pmd+0x7b/0xc0
[ 1244.912641] [<c10fadb5>] unmap_vmas+0x5a5/0x620
[ 1244.912645] [<c10e5e73>] ? lru_add_drain+0xe3/0x1d0
[ 1244.912648] [<c10faeaa>] zap_page_range+0x7a/0xa0
[ 1244.912651] [<c15d0d5f>] ? rt_mutex_lock+0x1f/0x50
[ 1244.912653] [<c10f81a4>] sys_madvise+0x294/0x5f0
[ 1244.912656] [<c10fe520>] ? remove_vma+0x50/0x70
[ 1244.912660] [<c15d7ddf>] sysenter_do_call+0x12/0x2d
And kernel config is attached.
Thanks,
Yong
[-- Attachment #2: config.gz --]
[-- Type: application/octet-stream, Size: 24475 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [ANNOUNCE] 3.0-rt2
2011-07-24 1:09 ` Yong Zhang
@ 2011-07-24 10:05 ` Thomas Gleixner
2011-07-25 1:57 ` Yong Zhang
0 siblings, 1 reply; 10+ messages in thread
From: Thomas Gleixner @ 2011-07-24 10:05 UTC (permalink / raw)
To: Yong Zhang; +Cc: LKML, linux-rt-users
On Sun, 24 Jul 2011, Yong Zhang wrote:
> [ 1244.912621] [<c15d151c>] rt_spin_lock+0x1c/0x40
> [ 1244.912626] [<c111f763>] mem_cgroup_split_huge_fixup+0x43/0xd0
Can you please disable CONFIG_TRANSPARENT_HUGEPAGE for now? That's not
easy to fix, but I put it on the todo list.
Thanks,
tglx
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [ANNOUNCE] 3.0-rt2
2011-07-24 10:05 ` Thomas Gleixner
@ 2011-07-25 1:57 ` Yong Zhang
0 siblings, 0 replies; 10+ messages in thread
From: Yong Zhang @ 2011-07-25 1:57 UTC (permalink / raw)
To: Thomas Gleixner; +Cc: LKML, linux-rt-users
On Sun, Jul 24, 2011 at 6:05 PM, Thomas Gleixner <tglx@linutronix.de> wrote:
> On Sun, 24 Jul 2011, Yong Zhang wrote:
>> [ 1244.912621] [<c15d151c>] rt_spin_lock+0x1c/0x40
>> [ 1244.912626] [<c111f763>] mem_cgroup_split_huge_fixup+0x43/0xd0
>
> Can you please disable CONFIG_TRANSPARENT_HUGEPAGE for now? That's not
> easy to fix, but I put it on the todo list.
That's ok.
Will try 3.0-rt3 :)
Thanks,
Yong
--
Only stand for myself
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2011-07-25 1:57 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-07-23 15:13 [ANNOUNCE] 3.0-rt2 Thomas Gleixner
2011-07-23 15:41 ` Kim Leyendecker
2011-07-23 16:03 ` Thomas Gleixner
2011-07-23 16:27 ` Kim Leyendecker
2011-07-23 17:17 ` Ed Tomlinson
2011-07-23 17:34 ` Ed Tomlinson
2011-07-23 17:41 ` Thomas Gleixner
2011-07-24 1:09 ` Yong Zhang
2011-07-24 10:05 ` Thomas Gleixner
2011-07-25 1:57 ` Yong Zhang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox