freeze_bdev hangs

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

 



Hi,

I am writing a filter driver for ext3 in which it replaces the block
device request queue 'make_request_fn' with the driver custom
function. Calling freeze_bdev() or freeze_super() before replacing the
'make_request_fn' hangs the kernel. What am I doing wrong ? Will this
method work ?

full code : https://gist.github.com/3839380

Snippet :

        sb = freeze_bdev(bd);
        if (sb)
                printk(KERN_INFO "filter: freez block device\n");

        if (bd->bd_disk->queue->make_request_fn == filter_mrqfn) {
                printk(KERN_INFO "filter: modules request function is
already active\n");
        } else {
                orig_mrqfn = bd->bd_disk->queue->make_request_fn;
                bd->bd_disk->queue->make_request_fn = filter_mrqfn;
        }
        thaw_bdev(bd, sb);

Please forgive my ignorance, I am a fresher in file systems :)

Regards.
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux