lkml.org 
[lkml]   [2008]   [Mar]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [2.6.25-rc5-mm1] BUG() at mnt_want_write().
On Tue, 11 Mar 2008 20:03:30 -0700 Dave Hansen <haveblue@us.ibm.com> wrote:

> On Wed, 2008-03-12 at 10:37 +0900, penguin-kernel@i-love.sakura.ne.jp
> ...
> > checking TSC synchronization [CPU#0 -> CPU#1]: passed.
> > Brought up 2 CPUs
> > khelper used greatest stack depth: 2684 bytes left
> > net_namespace: 320 bytes
> > NET: Registered protocol family 16
> > INFO: trying to register non-static key.
> > the code is fine but needs lockdep annotation.
> > turning off the locking correctness validator.
> > Pid: 1, comm: swapper Not tainted 2.6.25-rc5-mm1 #1
> > [<c013dd91>] __lock_acquire+0x194/0x6a3
> > [<c0167ded>] ? cache_free_debugcheck+0x1fd/0x219
> > [<c0168938>] ? kfree+0xdb/0xe5
> > [<c013e775>] lock_acquire+0x6a/0x87
> > [<c01368e4>] ? down+0xc/0x2f
> > [<c03492b1>] _spin_lock_irqsave+0x25/0x55
> > [<c01368e4>] ? down+0xc/0x2f
> > [<c01368e4>] down+0xc/0x2f
> > [<c022caf3>] device_add+0x152/0x243
> > [<c022cbf6>] device_register+0x12/0x15
> > [<c022ce9b>] device_create+0x76/0x90
> > [<c04a1861>] vtconsole_class_init+0x72/0xb9
> > [<c048d8ae>] ? kernel_init+0x0/0x88
> > [<c048d784>] do_initcalls+0x59/0x134
> > [<c014bcb1>] ? register_irq_proc+0xb1/0xca
> > [<c01a0000>] ? proc_symlink+0x5/0x73
> > [<c048d8ae>] ? kernel_init+0x0/0x88
> > [<c048d87b>] do_basic_setup+0x1c/0x1e
> > [<c048d8fb>] kernel_init+0x4d/0x88
> > [<c01045b7>] kernel_thread_helper+0x7/0x10
> > =======================
>
> What is that, btw?? ^^

gregstuff. There are changes to vt.c in -mm but afacit they aren't related
to vtconsole_class_init().


static int __init vtconsole_class_init(void)
{
int i;

vtconsole_class = class_create(THIS_MODULE, "vtconsole");
if (IS_ERR(vtconsole_class)) {
printk(KERN_WARNING "Unable to create vt console class; "
"errno = %ld\n", PTR_ERR(vtconsole_class));
vtconsole_class = NULL;
}

/* Add system drivers to sysfs */
for (i = 0; i < MAX_NR_CON_DRIVER; i++) {
struct con_driver *con = &registered_con_driver[i];

if (con->con && !con->dev) {
con->dev = device_create(vtconsole_class, NULL,
MKDEV(0, con->node),
"vtcon%i", con->node);

if (IS_ERR(con->dev)) {
printk(KERN_WARNING "Unable to create "
"device for %s; errno = %ld\n",
con->desc, PTR_ERR(con->dev));
con->dev = NULL;
} else {
vtconsole_init_device(con);
}
}
}

return 0;
}
postcore_initcall(vtconsole_class_init);

These lockdep-internal things keep on popping up but they're always rather
inscrutable and bound up in internal implementation minutiae and few know
what they mean. Could this be improved in any way? Maybe some huge
what-can-i-do-to-fix-this comments in lockdep.c?


\
 
 \ /
  Last update: 2008-03-12 04:25    [W:0.088 / U:0.300 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site