Skip to content

Commit

Permalink
[PATCH] Remove __devinitdata from notifier block definitions
Browse files Browse the repository at this point in the history
Few of the notifier_chain_register() callers use __devinitdata in the
definition of notifier_block data structure.  It is incorrect as the
data structure should be available after the initializations (they do
not unregister them during initializations).

This was leading to an oops when notifier_chain_register() call is
invoked for those callback chains after initialization.

This patch fixes all such usages to _not_ have the notifier_block data
structure in the init data section.

Signed-off-by: Chandra Seetharaman <sekharan@us.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
chandra2 authored and Linus Torvalds committed Apr 26, 2006
1 parent e7edf9c commit 649bbaa
Show file tree
Hide file tree
Showing 9 changed files with 9 additions and 9 deletions.
2 changes: 1 addition & 1 deletion arch/powerpc/kernel/sysfs.c
Expand Up @@ -297,7 +297,7 @@ static int __devinit sysfs_cpu_notify(struct notifier_block *self,
return NOTIFY_OK;
}

static struct notifier_block __devinitdata sysfs_cpu_nb = {
static struct notifier_block sysfs_cpu_nb = {
.notifier_call = sysfs_cpu_notify,
};

Expand Down
2 changes: 1 addition & 1 deletion arch/s390/appldata/appldata_base.c
Expand Up @@ -652,7 +652,7 @@ appldata_cpu_notify(struct notifier_block *self,
return NOTIFY_OK;
}

static struct notifier_block __devinitdata appldata_nb = {
static struct notifier_block appldata_nb = {
.notifier_call = appldata_cpu_notify,
};

Expand Down
2 changes: 1 addition & 1 deletion block/ll_rw_blk.c
Expand Up @@ -3385,7 +3385,7 @@ static int blk_cpu_notify(struct notifier_block *self, unsigned long action,
}


static struct notifier_block __devinitdata blk_cpu_notifier = {
static struct notifier_block blk_cpu_notifier = {
.notifier_call = blk_cpu_notify,
};

Expand Down
2 changes: 1 addition & 1 deletion kernel/hrtimer.c
Expand Up @@ -860,7 +860,7 @@ static int __devinit hrtimer_cpu_notify(struct notifier_block *self,
return NOTIFY_OK;
}

static struct notifier_block __devinitdata hrtimers_nb = {
static struct notifier_block hrtimers_nb = {
.notifier_call = hrtimer_cpu_notify,
};

Expand Down
2 changes: 1 addition & 1 deletion kernel/rcupdate.c
Expand Up @@ -537,7 +537,7 @@ static int __devinit rcu_cpu_notify(struct notifier_block *self,
return NOTIFY_OK;
}

static struct notifier_block __devinitdata rcu_nb = {
static struct notifier_block rcu_nb = {
.notifier_call = rcu_cpu_notify,
};

Expand Down
2 changes: 1 addition & 1 deletion kernel/sched.c
Expand Up @@ -4814,7 +4814,7 @@ static int migration_call(struct notifier_block *nfb, unsigned long action,
/* Register at highest priority so that task migration (migrate_all_tasks)
* happens before everything else.
*/
static struct notifier_block __devinitdata migration_notifier = {
static struct notifier_block migration_notifier = {
.notifier_call = migration_call,
.priority = 10
};
Expand Down
2 changes: 1 addition & 1 deletion kernel/softirq.c
Expand Up @@ -484,7 +484,7 @@ static int __devinit cpu_callback(struct notifier_block *nfb,
return NOTIFY_OK;
}

static struct notifier_block __devinitdata cpu_nfb = {
static struct notifier_block cpu_nfb = {
.notifier_call = cpu_callback
};

Expand Down
2 changes: 1 addition & 1 deletion kernel/softlockup.c
Expand Up @@ -140,7 +140,7 @@ cpu_callback(struct notifier_block *nfb, unsigned long action, void *hcpu)
return NOTIFY_OK;
}

static struct notifier_block __devinitdata cpu_nfb = {
static struct notifier_block cpu_nfb = {
.notifier_call = cpu_callback
};

Expand Down
2 changes: 1 addition & 1 deletion kernel/timer.c
Expand Up @@ -1334,7 +1334,7 @@ static int __devinit timer_cpu_notify(struct notifier_block *self,
return NOTIFY_OK;
}

static struct notifier_block __devinitdata timers_nb = {
static struct notifier_block timers_nb = {
.notifier_call = timer_cpu_notify,
};

Expand Down

0 comments on commit 649bbaa

Please sign in to comment.