summaryrefslogtreecommitdiff
path: root/arch/s390/appldata/appldata_mem.c
diff options
context:
space:
mode:
authorGerald Schaefer <gerald.schaefer@de.ibm.com>2009-04-23 13:58:07 +0200
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2009-04-23 13:58:17 +0200
commitb1ad171efa089ae26aba750d747d8149a4f860d5 (patch)
treeaecfd29ad345e2bc288c6e4ea046f7d559c87270 /arch/s390/appldata/appldata_mem.c
parent3bd5f3ef290627efa3c219fa21a82eea90bc4cb0 (diff)
downloadlwn-b1ad171efa089ae26aba750d747d8149a4f860d5.tar.gz
lwn-b1ad171efa089ae26aba750d747d8149a4f860d5.zip
[S390] appldata: avoid deadlock with appldata_mem
The appldata_ops callbacks are called with a spin_lock held. But the appldata_mem callback then calls all_vm_events(), which calls get_online_cpus(), which might sleep. This possible deadlock is fixed by using a mutex instead of a spin_lock. Signed-off-by: Gerald Schaefer <gerald.schaefer@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/appldata/appldata_mem.c')
-rw-r--r--arch/s390/appldata/appldata_mem.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/s390/appldata/appldata_mem.c b/arch/s390/appldata/appldata_mem.c
index 3ed56b7d1b2f..4188cbe63a54 100644
--- a/arch/s390/appldata/appldata_mem.c
+++ b/arch/s390/appldata/appldata_mem.c
@@ -78,7 +78,7 @@ static void appldata_get_mem_data(void *data)
{
/*
* don't put large structures on the stack, we are
- * serialized through the appldata_ops_lock and can use static
+ * serialized through the appldata_ops_mutex and can use static
*/
static struct sysinfo val;
unsigned long ev[NR_VM_EVENT_ITEMS];