[lkml]   [2003]   [May]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: kernel BUG at include/linux/dcache.h:271!
    Maneesh Soni <> wrote:
    > The problem is that we have multiple ramdisks but all have
    > common request queue and common elevator. In terms of sysfs we
    > have multiple kobjects for multiple ramdisks, but one single kobject for the
    > ramdisks' common elevator.
    > While initializing, different kobjects are allocated for the ramdisks but,
    > the common elevator uses the same kobject. In other words, every init
    > of a ramdisk, the common elevator.kobj->parent will be different and it will
    > allocate a new dentry, overwrite the elevator.kobj->dentry
    > and loose the earlier allocated dentries. (see: elv_register_queue())
    > While exiting, it ends up in removing the same dentry (allocated at the last)
    > again and BUGs in dget on dentry with zero ref count.
    > Not sure where it should be fixed
    > ramdisk
    > - should have separate queues on for each ramdisk
    > elevator
    > - should not re-register already registered queue in elv_register_queue
    > sysfs
    > - should handle kobject with multiple parent kobjects

    I can't think of anywhere else where we are likely to want to support
    multiple devices from a single queue in this manner, so perhaps the best
    solution is to remove the exceptional case: allocate a separate queue for
    each ramdisk instance.

    Jens, do you agree?

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:35    [W:0.021 / U:17.584 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site