* [Cluster-devel] cluster/gfs-kernel/src/gfs super.c
@ 2006-08-02 1:28 wcheng
0 siblings, 0 replies; 5+ messages in thread
From: wcheng @ 2006-08-02 1:28 UTC (permalink / raw)
To: cluster-devel.redhat.com
CVSROOT: /cvs/cluster
Module name: cluster
Branch: RHEL4
Changes by: wcheng at sourceware.org 2006-08-02 01:28:57
Modified files:
gfs-kernel/src/gfs: super.c
Log message:
Bugzilla 199984: Increasing gt_statfs_slots tunable could significantly
boost gfs "df" performance; e.g. set it to 128 from current default (64)
could cut the "df" wall time in half with larger filesystem size. However,
the kmalloc call within stat_gfs_async() has the possibility to fail due
to increased gt_statfs_slots. There is really no need for this array to
be on a piece of contiguous memory. Switch to vmalloc().
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs-kernel/src/gfs/super.c.diff?cvsroot=cluster&only_with_tag=RHEL4&r1=1.12.2.3&r2=1.12.2.4
--- cluster/gfs-kernel/src/gfs/super.c 2006/02/15 17:19:22 1.12.2.3
+++ cluster/gfs-kernel/src/gfs/super.c 2006/08/02 01:28:57 1.12.2.4
@@ -840,7 +840,7 @@
memset(sg, 0, sizeof(struct gfs_stat_gfs));
- gha = kmalloc(slots * sizeof(struct gfs_holder), GFP_KERNEL);
+ gha = vmalloc(slots * sizeof(struct gfs_holder));
if (!gha)
return -ENOMEM;
memset(gha, 0, slots * sizeof(struct gfs_holder));
@@ -884,7 +884,7 @@
yield();
}
- kfree(gha);
+ vfree(gha);
return error;
}
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Cluster-devel] cluster/gfs-kernel/src/gfs super.c
@ 2006-08-02 1:37 wcheng
0 siblings, 0 replies; 5+ messages in thread
From: wcheng @ 2006-08-02 1:37 UTC (permalink / raw)
To: cluster-devel.redhat.com
CVSROOT: /cvs/cluster
Module name: cluster
Changes by: wcheng at sourceware.org 2006-08-02 01:37:17
Modified files:
gfs-kernel/src/gfs: super.c
Log message:
Bugzilla 199984: Increasing gt_statfs_slots tunable could significantly
boost gfs "df" performance; e.g. set it to 128 from current default (64)
could cut the "df" wall time in half with larger filesystem size. However,
the kmalloc call within stat_gfs_async() has the possibility to fail due
to increased gt_statfs_slots. There is really no need for this array to
be on a piece of contiguous memory. Switch to vmalloc().
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs-kernel/src/gfs/super.c.diff?cvsroot=cluster&r1=1.19&r2=1.20
--- cluster/gfs-kernel/src/gfs/super.c 2006/07/11 17:29:24 1.19
+++ cluster/gfs-kernel/src/gfs/super.c 2006/08/02 01:37:16 1.20
@@ -840,7 +840,7 @@
memset(sg, 0, sizeof(struct gfs_stat_gfs));
- gha = kmalloc(slots * sizeof(struct gfs_holder), GFP_KERNEL);
+ gha = vmalloc(slots * sizeof(struct gfs_holder));
if (!gha)
return -ENOMEM;
memset(gha, 0, slots * sizeof(struct gfs_holder));
@@ -884,7 +884,7 @@
yield();
}
- kfree(gha);
+ vfree(gha);
return error;
}
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Cluster-devel] cluster/gfs-kernel/src/gfs super.c
@ 2006-08-09 20:28 rpeterso
0 siblings, 0 replies; 5+ messages in thread
From: rpeterso @ 2006-08-09 20:28 UTC (permalink / raw)
To: cluster-devel.redhat.com
CVSROOT: /cvs/cluster
Module name: cluster
Changes by: rpeterso at sourceware.org 2006-08-09 20:28:51
Modified files:
gfs-kernel/src/gfs: super.c
Log message:
Fix compile error with vmalloc.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs-kernel/src/gfs/super.c.diff?cvsroot=cluster&r1=1.20&r2=1.21
--- cluster/gfs-kernel/src/gfs/super.c 2006/08/02 01:37:16 1.20
+++ cluster/gfs-kernel/src/gfs/super.c 2006/08/09 20:28:51 1.21
@@ -18,6 +18,7 @@
#include <asm/semaphore.h>
#include <linux/completion.h>
#include <linux/buffer_head.h>
+#include <linux/vmalloc.h>
#include "gfs.h"
#include "dio.h"
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Cluster-devel] cluster/gfs-kernel/src/gfs super.c
@ 2006-09-20 4:45 wcheng
0 siblings, 0 replies; 5+ messages in thread
From: wcheng @ 2006-09-20 4:45 UTC (permalink / raw)
To: cluster-devel.redhat.com
CVSROOT: /cvs/cluster
Module name: cluster
Branch: RHEL4
Changes by: wcheng at sourceware.org 2006-09-20 04:45:48
Modified files:
gfs-kernel/src/gfs: super.c
Log message:
Bugzilla 199984: This kmalloc to vmalloc change seems to cause panic in
x86_64 machine. Cause unknown but will reset back until
the problem is figured out.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs-kernel/src/gfs/super.c.diff?cvsroot=cluster&only_with_tag=RHEL4&r1=1.12.2.4&r2=1.12.2.5
--- cluster/gfs-kernel/src/gfs/super.c 2006/08/02 01:28:57 1.12.2.4
+++ cluster/gfs-kernel/src/gfs/super.c 2006/09/20 04:45:48 1.12.2.5
@@ -840,7 +840,7 @@
memset(sg, 0, sizeof(struct gfs_stat_gfs));
- gha = vmalloc(slots * sizeof(struct gfs_holder));
+ gha = kmalloc(slots * sizeof(struct gfs_holder), GFP_KERNEL);
if (!gha)
return -ENOMEM;
memset(gha, 0, slots * sizeof(struct gfs_holder));
@@ -884,7 +884,7 @@
yield();
}
- vfree(gha);
+ kfree(gha);
return error;
}
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Cluster-devel] cluster/gfs-kernel/src/gfs super.c
@ 2007-02-06 22:08 wcheng
0 siblings, 0 replies; 5+ messages in thread
From: wcheng @ 2007-02-06 22:08 UTC (permalink / raw)
To: cluster-devel.redhat.com
CVSROOT: /cvs/cluster
Module name: cluster
Branch: RHEL4
Changes by: wcheng at sourceware.org 2007-02-06 22:08:37
Modified files:
gfs-kernel/src/gfs: super.c
Log message:
Bugzilla 220622:
Allow vmalloc in stat_gfs_async() (as in RHEL5) to alleviate statfs
performance issue. This should allow statfs_slot tunable to take
more asynchronous locks. Hopefully "df" and "ls" could run a little
bit faster with this.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs-kernel/src/gfs/super.c.diff?cvsroot=cluster&only_with_tag=RHEL4&r1=1.12.2.6&r2=1.12.2.7
--- cluster/gfs-kernel/src/gfs/super.c 2007/01/22 07:43:52 1.12.2.6
+++ cluster/gfs-kernel/src/gfs/super.c 2007/02/06 22:08:36 1.12.2.7
@@ -18,6 +18,7 @@
#include <asm/semaphore.h>
#include <linux/completion.h>
#include <linux/buffer_head.h>
+#include <linux/vmalloc.h>
#include "gfs.h"
#include "dio.h"
@@ -841,7 +842,7 @@
memset(sg, 0, sizeof(struct gfs_stat_gfs));
- gha = kmalloc(slots * sizeof(struct gfs_holder), GFP_KERNEL);
+ gha = vmalloc(slots * sizeof(struct gfs_holder));
if (!gha)
return -ENOMEM;
memset(gha, 0, slots * sizeof(struct gfs_holder));
@@ -885,7 +886,7 @@
yield();
}
- kfree(gha);
+ vfree(gha);
return error;
}
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2007-02-06 22:08 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-08-02 1:37 [Cluster-devel] cluster/gfs-kernel/src/gfs super.c wcheng
-- strict thread matches above, loose matches on Subject: below --
2007-02-06 22:08 wcheng
2006-09-20 4:45 wcheng
2006-08-09 20:28 rpeterso
2006-08-02 1:28 wcheng
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).