summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZhangZhen <zhenzhang.zhang@huawei.com>2014-02-26 10:32:41 +0800
committerJan Kara <jack@suse.cz>2014-03-04 12:19:03 +0100
commite878167af92fda03eb3a8597eec24128d4d47c43 (patch)
tree27eb1888379fd6e6a182ea0d01401140c9819ba4
parent4ddb987a478aa303c38cfc543d309247ccbfa395 (diff)
downloadop-kernel-dev-e878167af92fda03eb3a8597eec24128d4d47c43.zip
op-kernel-dev-e878167af92fda03eb3a8597eec24128d4d47c43.tar.gz
ext2/3: use prandom_u32() instead of get_random_bytes()
Many of the uses of get_random_bytes() do not actually need cryptographically secure random numbers. Replace those uses with a call to prandom_u32(), which is faster and which doesn't consume entropy from the /dev/random driver. The commit dd1f723bf56bd96efc9d90e9e60dc511c79de48f has made that for ext4, and i did the same for ext2/3. Signed-off-by: Zhang Zhen <zhenzhang.zhang@huawei.com> Signed-off-by: Jan Kara <jack@suse.cz>
-rw-r--r--fs/ext2/ialloc.c2
-rw-r--r--fs/ext3/ialloc.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/fs/ext2/ialloc.c b/fs/ext2/ialloc.c
index 7cadd82..7d66fb0 100644
--- a/fs/ext2/ialloc.c
+++ b/fs/ext2/ialloc.c
@@ -284,7 +284,7 @@ static int find_group_orlov(struct super_block *sb, struct inode *parent)
int best_ndir = inodes_per_group;
int best_group = -1;
- get_random_bytes(&group, sizeof(group));
+ group = prandom_u32();
parent_group = (unsigned)group % ngroups;
for (i = 0; i < ngroups; i++) {
group = (parent_group + i) % ngroups;
diff --git a/fs/ext3/ialloc.c b/fs/ext3/ialloc.c
index 082afd7..a1b8102 100644
--- a/fs/ext3/ialloc.c
+++ b/fs/ext3/ialloc.c
@@ -215,7 +215,7 @@ static int find_group_orlov(struct super_block *sb, struct inode *parent)
int best_ndir = inodes_per_group;
int best_group = -1;
- get_random_bytes(&group, sizeof(group));
+ group = prandom_u32();
parent_group = (unsigned)group % ngroups;
for (i = 0; i < ngroups; i++) {
group = (parent_group + i) % ngroups;
OpenPOWER on IntegriCloud