X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=fs%2Framfs%2Finode.c;h=8428d5b2711de8e901b75dd3c209039c3e2d429a;hb=197cd65accc6a274dabcd81f4811ba5d9a4856df;hp=ff1f7639707b13c74f90737cf7db579050f2e04e;hpb=e0cc09e295f346b7921e921f385fe5213472316a;p=linux-2.6 diff --git a/fs/ramfs/inode.c b/fs/ramfs/inode.c index ff1f763970..8428d5b271 100644 --- a/fs/ramfs/inode.c +++ b/fs/ramfs/inode.c @@ -30,10 +30,9 @@ #include #include #include -#include #include #include - +#include #include #include "internal.h" @@ -61,6 +60,7 @@ struct inode *ramfs_get_inode(struct super_block *sb, int mode, dev_t dev) inode->i_blocks = 0; inode->i_mapping->a_ops = &ramfs_aops; inode->i_mapping->backing_dev_info = &ramfs_backing_dev_info; + mapping_set_gfp_mask(inode->i_mapping, GFP_HIGHUSER); inode->i_atime = inode->i_mtime = inode->i_ctime = CURRENT_TIME; switch (mode & S_IFMT) { default: @@ -223,7 +223,17 @@ module_exit(exit_ramfs_fs) int __init init_rootfs(void) { - return register_filesystem(&rootfs_fs_type); + int err; + + err = bdi_init(&ramfs_backing_dev_info); + if (err) + return err; + + err = register_filesystem(&rootfs_fs_type); + if (err) + bdi_destroy(&ramfs_backing_dev_info); + + return err; } MODULE_LICENSE("GPL");