~ubuntu-branches/ubuntu/vivid/aufs/vivid

« back to all changes in this revision

Viewing changes to fs/aufs25/sysaufs.c

  • Committer: Bazaar Package Importer
  • Author(s): Julian Andres Klode
  • Date: 2008-08-21 14:58:54 UTC
  • mfrom: (1.1.8 upstream) (4.1.1 lenny)
  • Revision ID: james.westby@ubuntu.com-20080821145854-4b49x09r4zmvlk5o
Tags: 0+20080719-4
01_vserver_apparmor.dpatch: [UPDATE] Disable vserver patches on kernel 
2.6.26, because they are not needed anymore. (Closes: #495921)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*
2
 
 * Copyright (C) 2007-2008 Junjiro Okajima
 
2
 * Copyright (C) 2005-2008 Junjiro Okajima
3
3
 *
4
4
 * This program, aufs is free software; you can redistribute it and/or modify
5
5
 * it under the terms of the GNU General Public License as published by
20
20
 * sysfs interface and lifetime management
21
21
 * they are necessary regardless sysfs is disabled.
22
22
 *
23
 
 * $Id: sysaufs.c,v 1.7 2008/06/02 02:38:50 sfjro Exp $
 
23
 * $Id: sysaufs.c,v 1.9 2008/07/07 01:12:39 sfjro Exp $
24
24
 */
25
25
 
26
26
#include <linux/fs.h>
35
35
 
36
36
/* ---------------------------------------------------------------------- */
37
37
 
38
 
struct kset au_kset;
 
38
struct kset *au_kset;
39
39
 
40
40
#define AuSbiAttr(_name) { \
41
41
        .attr   = { .name = __stringify(_name), .mode = 0444 }, \
64
64
{
65
65
        int err;
66
66
 
67
 
        sbinfo->si_kobj.kset = &au_kset;
 
67
        sbinfo->si_kobj.kset = au_kset;
68
68
        /* some people doesn't like to show a pointer in kernel */
69
69
        err = kobject_init_and_add(&sbinfo->si_kobj, &au_sbi_ktype,
70
 
                                   NULL/*&au_kset.kobj*/,
 
70
                                   NULL/*&au_kset->kobj*/,
71
71
                                   SysaufsSb_PREFIX "%lx",
72
72
                                   au_si_mask ^ (unsigned long)sbinfo);
73
73
        AuTraceErr(err);
79
79
 
80
80
void sysaufs_fin(void)
81
81
{
82
 
        sysfs_remove_group(&au_kset.kobj, au_attr_group);
83
 
        kset_unregister(&au_kset);
 
82
        sysfs_remove_group(&au_kset->kobj, au_attr_group);
 
83
        kset_unregister(au_kset);
84
84
}
85
85
 
86
86
int __init sysaufs_init(void)
89
89
 
90
90
        get_random_bytes(&au_si_mask, sizeof(au_si_mask));
91
91
 
92
 
        sysaufs_brs_init();
93
 
        au_kset.kobj.parent = fs_kobj;
94
 
        kobject_set_name(&au_kset.kobj, AUFS_NAME);
95
 
        au_kset.kobj.ktype = au_ktype;
96
 
        err = kset_register(&au_kset);
97
 
        if (unlikely(err))
 
92
        au_kset = kset_create_and_add(AUFS_NAME, NULL, fs_kobj);
 
93
        err = PTR_ERR(au_kset);
 
94
        if (IS_ERR(au_kset))
98
95
                goto out;
99
 
        err = sysfs_create_group(&au_kset.kobj, au_attr_group);
 
96
        err = sysfs_create_group(&au_kset->kobj, au_attr_group);
100
97
        if (unlikely(err))
101
 
                kset_unregister(&au_kset);
 
98
                kset_unregister(au_kset);
102
99
 
103
100
 out:
104
101
        AuTraceErr(err);