~ubuntu-branches/ubuntu/raring/linux-ti-omap4/raring-proposed

« back to all changes in this revision

Viewing changes to fs/notify/inode_mark.c

  • Committer: Package Import Robot
  • Author(s): Paolo Pisati, Paolo Pisati, Ubuntu: 3.5.0-25.38
  • Date: 2013-02-20 22:03:31 UTC
  • mfrom: (74.1.1 quantal-proposed)
  • Revision ID: package-import@ubuntu.com-20130220220331-0ea4l33x3cr61nch
Tags: 3.5.0-220.28
* Release Tracking Bug
  - LP: #1130311

[ Paolo Pisati ]

* rebased on Ubuntu-3.5.0-25.38

[ Ubuntu: 3.5.0-25.38 ]

* Release Tracking Bug
  - LP: #1129472
* ptrace: introduce signal_wake_up_state() and ptrace_signal_wake_up()
  - LP: #1119885, #1129192
  - CVE-2013-0871
* ptrace: ensure arch_ptrace/ptrace_request can never race with SIGKILL
  - LP: #1119885, #1129192
  - CVE-2013-0871
* wake_up_process() should be never used to wakeup a TASK_STOPPED/TRACED
  task
  - LP: #1119885, #1129192
  - CVE-2013-0871

Show diffs side-by-side

added added

removed removed

Lines of Context:
63
63
{
64
64
        struct inode *inode = mark->i.inode;
65
65
 
 
66
        BUG_ON(!mutex_is_locked(&mark->group->mark_mutex));
66
67
        assert_spin_locked(&mark->lock);
67
 
        assert_spin_locked(&mark->group->mark_lock);
68
68
 
69
69
        spin_lock(&inode->i_lock);
70
70
 
99
99
        spin_unlock(&inode->i_lock);
100
100
 
101
101
        list_for_each_entry_safe(mark, lmark, &free_list, i.free_i_list) {
102
 
                fsnotify_destroy_mark(mark);
 
102
                struct fsnotify_group *group;
 
103
 
 
104
                spin_lock(&mark->lock);
 
105
                fsnotify_get_group(mark->group);
 
106
                group = mark->group;
 
107
                spin_unlock(&mark->lock);
 
108
 
 
109
                fsnotify_destroy_mark(mark, group);
103
110
                fsnotify_put_mark(mark);
 
111
                fsnotify_put_group(group);
104
112
        }
105
113
}
106
114
 
191
199
 
192
200
        mark->flags |= FSNOTIFY_MARK_FLAG_INODE;
193
201
 
 
202
        BUG_ON(!mutex_is_locked(&group->mark_mutex));
194
203
        assert_spin_locked(&mark->lock);
195
 
        assert_spin_locked(&group->mark_lock);
196
204
 
197
205
        spin_lock(&inode->i_lock);
198
206