lkml.org 
[lkml]   [2006]   [May]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: 2.6.17-rc5-mm1
    From
    Date
    On Tue, 2006-05-30 at 20:39 +0200, Michal Piotrowski wrote:
    > Hi,
    >
    > On 30/05/06, Andrew Morton <akpm@osdl.org> wrote:
    > >
    > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.17-rc5/2.6.17-rc5-mm1/
    > >
    >
    > I get this on 2.6.17-rc5-mm1 + hot fixes + Arjan's net/ipv4/igmp.c patch.
    >
    > May 30 20:25:56 ltg01-fedora kernel:
    > May 30 20:25:56 ltg01-fedora kernel:
    > =====================================================
    > May 30 20:25:56 ltg01-fedora kernel: [ BUG: possible circular locking
    > deadlock detected! ]
    > May 30 20:25:56 ltg01-fedora kernel:
    > -----------------------------------------------------
    > May 30 20:25:56 ltg01-fedora kernel: umount/2322 is trying to acquire lock:
    > May 30 20:25:56 ltg01-fedora kernel: (sb_security_lock){--..}, at:
    > [<c01d6400>] selinux_sb_free_security+0x17/0x4e


    ok so selinux_complete_init() does
    spin_lock(&sb_security_lock);
    next_sb:
    if (!list_empty(&superblock_security_head)) {
    struct superblock_security_struct *sbsec =
    list_entry(superblock_security_head.next,
    struct superblock_security_struct,
    list);
    struct super_block *sb = sbsec->sb;
    spin_lock(&sb_lock);
    sb->s_count++;
    spin_unlock(&sb_lock);
    spin_unlock(&sb_security_lock);

    nesting sb_lock inside sb_security_lock

    while

    put_super() takes the sb_lock, then calls __put_super() which calls
    selinux_sb_free_security which calls superblock_free_security() which takes sb_security_lock
    which means the nesting is opposite.


    textbook AB-BA deadlock
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-05-30 21:08    [W:0.025 / U:0.184 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site