Re: 2.6.18-rt1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On 20/09/06, Ingo Molnar <[email protected]> wrote:
I'm pleased to announce the 2.6.18-rt1 tree, which can be downloaded
from the usual place:

   http://redhat.com/~mingo/realtime-preempt/


2.6.18-rt3

Ingo, can you take a look at this bugs?

BUG: scheduling with irqs disabled: softirq-timer/1/0x00000001/17
caller is rt_spin_lock_slowlock+0x121/0x1af
[<c0104356>] show_trace_log_lvl+0x68/0x193
[<c0104a5a>] show_trace+0x1b/0x20
[<c0104b38>] dump_stack+0x1f/0x24
[<c02edb34>] schedule+0x69/0xe3
[<c02ee8c0>] rt_spin_lock_slowlock+0x121/0x1af
[<c02eef4f>] rt_spin_lock+0x10/0x2c
[<c0171d6d>] __kmalloc+0xad/0x115
[<c020c146>] soft_cursor+0x52/0x16c
[<c020c00b>] bit_cursor+0x483/0x498
[<c02071ab>] fbcon_cursor+0x218/0x24d
[<c0244ac1>] hide_cursor+0x22/0x61
[<c024811f>] vt_console_print+0x91/0x207
[<c0120d31>] __call_console_drivers+0x6f/0x8c
[<c0120dac>] _call_console_drivers+0x5e/0x67
[<c0121367>] release_console_sem+0x132/0x1f2
[<c0121051>] vprintk+0x28d/0x2f5
[<c01210d3>] printk+0x1a/0x1c
[<c0129ab3>] run_timer_softirq+0x77b/0xbb6
[<c012632c>] ksoftirqd+0x11d/0x200
[<c013386b>] kthread+0xc7/0xf8
[<c0101005>] kernel_thread_helper+0x5/0xb
DWARF2 unwinder stuck at kernel_thread_helper+0x5/0xb
Leftover inexact backtrace:
[<c0104a5a>] show_trace+0x1b/0x20
[<c0104b38>] dump_stack+0x1f/0x24
[<c02edb34>] schedule+0x69/0xe3
[<c02ee8c0>] rt_spin_lock_slowlock+0x121/0x1af
[<c02eef4f>] rt_spin_lock+0x10/0x2c
[<c0171d6d>] __kmalloc+0xad/0x115
[<c020c146>] soft_cursor+0x52/0x16c
[<c020c00b>] bit_cursor+0x483/0x498
[<c02071ab>] fbcon_cursor+0x218/0x24d
[<c0244ac1>] hide_cursor+0x22/0x61
[<c024811f>] vt_console_print+0x91/0x207
[<c0120d31>] __call_console_drivers+0x6f/0x8c
[<c0120dac>] _call_console_drivers+0x5e/0x67
[<c0121367>] release_console_sem+0x132/0x1f2
[<c0121051>] vprintk+0x28d/0x2f5
[<c01210d3>] printk+0x1a/0x1c
[<c0129ab3>] run_timer_softirq+0x77b/0xbb6
[<c012632c>] ksoftirqd+0x11d/0x200
[<c013386b>] kthread+0xc7/0xf8
[<c0101005>] kernel_thread_helper+0x5/0xb
---------------------------
| preempt count: 00000001 ]
| 1-level deep critical section nesting:
----------------------------------------
.. [<c02ef447>] .... __spin_lock+0x12/0x35
.....[<c0129387>] ..   ( <= run_timer_softirq+0x4f/0xbb6)

skipping trace printing on CPU#1 != -1
BUG: scheduling while atomic: softirq-timer/1/0x00000001/17, CPU#1
[<c0104356>] show_trace_log_lvl+0x68/0x193
[<c0104a5a>] show_trace+0x1b/0x20
[<c0104b38>] dump_stack+0x1f/0x24
[<c02ecc43>] __schedule+0x7d/0xded
[<c02edb8d>] schedule+0xc2/0xe3
[<c02ee8c0>] rt_spin_lock_slowlock+0x121/0x1af
[<c02eef4f>] rt_spin_lock+0x10/0x2c
[<c0171d6d>] __kmalloc+0xad/0x115
[<c020c146>] soft_cursor+0x52/0x16c
[<c020c00b>] bit_cursor+0x483/0x498
[<c02071ab>] fbcon_cursor+0x218/0x24d
[<c0244ac1>] hide_cursor+0x22/0x61
[<c024811f>] vt_console_print+0x91/0x207
[<c0120d31>] __call_console_drivers+0x6f/0x8c
[<c0120dac>] _call_console_drivers+0x5e/0x67
[<c0121367>] release_console_sem+0x132/0x1f2
[<c0121051>] vprintk+0x28d/0x2f5
[<c01210d3>] printk+0x1a/0x1c
[<c0129ab3>] run_timer_softirq+0x77b/0xbb6
[<c012632c>] ksoftirqd+0x11d/0x200
[<c013386b>] kthread+0xc7/0xf8
[<c0101005>] kernel_thread_helper+0x5/0xb
DWARF2 unwinder stuck at kernel_thread_helper+0x5/0xb
Leftover inexact backtrace:
[<c0104a5a>] show_trace+0x1b/0x20
[<c0104b38>] dump_stack+0x1f/0x24
[<c02ecc43>] __schedule+0x7d/0xded
[<c02edb8d>] schedule+0xc2/0xe3
[<c02ee8c0>] rt_spin_lock_slowlock+0x121/0x1af
[<c02eef4f>] rt_spin_lock+0x10/0x2c
[<c0171d6d>] __kmalloc+0xad/0x115
[<c020c146>] soft_cursor+0x52/0x16c
[<c020c00b>] bit_cursor+0x483/0x498
[<c02071ab>] fbcon_cursor+0x218/0x24d
[<c0244ac1>] hide_cursor+0x22/0x61
[<c024811f>] vt_console_print+0x91/0x207
[<c0120d31>] __call_console_drivers+0x6f/0x8c
[<c0120dac>] _call_console_drivers+0x5e/0x67
[<c0121367>] release_console_sem+0x132/0x1f2
[<c0121051>] vprintk+0x28d/0x2f5
[<c01210d3>] printk+0x1a/0x1c
[<c0129ab3>] run_timer_softirq+0x77b/0xbb6
[<c012632c>] ksoftirqd+0x11d/0x200
[<c013386b>] kthread+0xc7/0xf8
[<c0101005>] kernel_thread_helper+0x5/0xb
---------------------------
| preempt count: 00000001 ]
| 1-level deep critical section nesting:
----------------------------------------
.. [<c02ef447>] .... __spin_lock+0x12/0x35
.....[<c0129387>] ..   ( <= run_timer_softirq+0x4f/0xbb6)

(gdb) l *rt_spin_lock_slowlock+0x121/0x1af
0xc02ee79f is in rt_spin_lock_slowlock (/usr/src/linux-rt/kernel/rtmutex.c:660).
655      * enables the seemless use of arbitrary (blocking) spinlocks within
656      * sleep/wakeup event loops.
657      */
658     static void fastcall noinline __sched
659     rt_spin_lock_slowlock(struct rt_mutex *lock)
660     {
661             struct rt_mutex_waiter waiter;
662             unsigned long saved_state, state;
663
664             debug_rt_mutex_init_waiter(&waiter);

l *__spin_lock+0x12/0x35
0xc02ef435 is in __spin_lock (/usr/src/linux-rt/kernel/spinlock.c:222).
217             _raw_write_lock(lock);
218     }
219     EXPORT_SYMBOL(__write_lock_bh);
220
221     void __lockfunc __spin_lock(raw_spinlock_t *lock)
222     {
223             preempt_disable();
224             spin_acquire(&lock->dep_map, 0, 0, _RET_IP_);
225             _raw_spin_lock(lock);
226     }

l *0xc0129387
0xc0129387 is in run_timer_softirq
(/usr/src/linux-rt/include/linux/seqlock.h:148).
143     }
144
145     static __always_inline void __write_seqlock_raw(raw_seqlock_t *sl)
146     {
147             spin_lock(&sl->lock);
148             ++sl->sequence;
149             smp_wmb();
150     }
151
152     static __always_inline void __write_sequnlock_raw(raw_seqlock_t *sl)

SELinux stuff.

=============================================
[ INFO: possible recursive locking detected ]
---------------------------------------------
init/1 is trying to acquire lock:
(policy_rwlock){--..}, at: [<c01df7ab>] security_genfs_sid+0x1f/0xeb

but task is already holding lock:
(policy_rwlock){--..}, at: [<c01df88c>] security_fs_use+0x15/0xbb

other info that might help us debug this:
3 locks held by init/1:
#0:  (sel_mutex){--..}, at: [<c01da736>] sel_write_load+0x1b/0x2c0
#1:  (&type->s_umount_key#14){--..}, at: [<c01d6de7>]
selinux_complete_init+0x67/0xbe
#2:  (policy_rwlock){--..}, at: [<c01df88c>] security_fs_use+0x15/0xbb

stack backtrace:
[<c0104356>] show_trace_log_lvl+0x68/0x193
[<c0104a5a>] show_trace+0x1b/0x20
[<c0104b38>] dump_stack+0x1f/0x24
[<c013b795>] __lock_acquire+0x788/0x9be
[<c013bca4>] lock_acquire+0x55/0x72
[<c02ef13d>] rt_read_lock+0x1f/0x5f
[<c01df7ab>] security_genfs_sid+0x1f/0xeb
[<c01df913>] security_fs_use+0x9c/0xbb
[<c01d667e>] superblock_doinit+0xb5/0x6b5
[<c01d6df5>] selinux_complete_init+0x75/0xbe
[<c01e0ec5>] security_load_policy+0xc9/0x275
[<c01da7c1>] sel_write_load+0xa6/0x2c0
[<c0176411>] vfs_write+0xaf/0x153
[<c0176a71>] sys_write+0x3f/0x66
[<c0103216>] sysenter_past_esp+0x63/0xa1
DWARF2 unwinder stuck at sysenter_past_esp+0x63/0xa1
Leftover inexact backtrace:
[<c0104a5a>] show_trace+0x1b/0x20
[<c0104b38>] dump_stack+0x1f/0x24
[<c013b795>] __lock_acquire+0x788/0x9be
[<c013bca4>] lock_acquire+0x55/0x72
[<c02ef13d>] rt_read_lock+0x1f/0x5f
[<c01df7ab>] security_genfs_sid+0x1f/0xeb
[<c01df913>] security_fs_use+0x9c/0xbb
[<c01d667e>] superblock_doinit+0xb5/0x6b5
[<c01d6df5>] selinux_complete_init+0x75/0xbe
[<c01e0ec5>] security_load_policy+0xc9/0x275
[<c01da7c1>] sel_write_load+0xa6/0x2c0
[<c0176411>] vfs_write+0xaf/0x153
[<c0176a71>] sys_write+0x3f/0x66
[<c0103216>] sysenter_past_esp+0x63/0xa1
---------------------------
| preempt count: 00000000 ]
| 0-level deep critical section nesting:
----------------------------------------

skipping trace printing on CPU#1 != -1

l *security_genfs_sid+0x1f/0xeb
0xc01df78c is in security_genfs_sid
(/usr/src/linux-rt/security/selinux/ss/services.c:1612).
1607     */
1608    int security_genfs_sid(const char *fstype,
1609                           char *path,
1610                           u16 sclass,
1611                           u32 *sid)
1612    {
1613            int len;
1614            struct genfs *genfs;
1615            struct ocontext *c;
1616            int rc = 0, cmp = 0;

l *security_fs_use+0x15/0xbb
0xc01df877 is in security_fs_use
(/usr/src/linux-rt/security/selinux/ss/services.c:1669).
1664     */
1665    int security_fs_use(
1666            const char *fstype,
1667            unsigned int *behavior,
1668            u32 *sid)
1669    {
1670            int rc = 0;
1671            struct ocontext *c;
1672
1673            POLICY_RDLOCK;

config & dmesg http://www.stardust.webpages.pl/files/o_bugs/rt/2.6.18-rt1/

Regards,
Michal

--
Michal K. K. Piotrowski
LTG - Linux Testers Group
(http://www.stardust.webpages.pl/ltg/)
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux