goto fail;
        inode->i_mode = S_IFREG | 0444;
        inode->i_fop = &pstore_file_operations;
-       private = kzalloc(sizeof(*private), GFP_KERNEL);
-       if (!private)
-               goto fail_alloc;
-       private->record = record;
-
        scnprintf(name, sizeof(name), "%s-%s-%llu%s",
                        pstore_type_to_name(record->type),
                        record->psi->name, record->id,
                        record->compressed ? ".enc.z" : "");
 
+       private = kzalloc(sizeof(*private), GFP_KERNEL);
+       if (!private)
+               goto fail_inode;
+
        dentry = d_alloc_name(root, name);
        if (!dentry)
                goto fail_private;
 
+       private->record = record;
        inode->i_size = private->total_size = size;
-
        inode->i_private = private;
 
        if (record->time.tv_sec)
 
 fail_private:
        free_pstore_private(private);
-fail_alloc:
+fail_inode:
        iput(inode);
 
 fail: