|
Kmods SIG |
8b815c |
From 528c9b3d1edf291685151afecd741d176f527ddf Mon Sep 17 00:00:00 2001
|
|
Kmods SIG |
8b815c |
From: Kari Argillander <kari.argillander@gmail.com>
|
|
Kmods SIG |
8b815c |
Date: Mon, 16 Aug 2021 13:37:32 +0300
|
|
Kmods SIG |
8b815c |
Subject: [Backport 528c9b3d1edf] src: Use linux/log2 is_power_of_2
|
|
Kmods SIG |
8b815c |
function
|
|
Kmods SIG |
8b815c |
|
|
Kmods SIG |
8b815c |
We do not need our own implementation for this function in this
|
|
Kmods SIG |
8b815c |
driver. It is much better to use generic one.
|
|
Kmods SIG |
8b815c |
|
|
Kmods SIG |
8b815c |
Signed-off-by: Kari Argillander <kari.argillander@gmail.com>
|
|
Kmods SIG |
8b815c |
Signed-off-by: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
|
|
Kmods SIG |
8b815c |
---
|
|
Kmods SIG |
8b815c |
src/ntfs_fs.h | 5 -----
|
|
Kmods SIG |
8b815c |
src/run.c | 3 ++-
|
|
Kmods SIG |
8b815c |
src/super.c | 9 +++++----
|
|
Kmods SIG |
8b815c |
3 files changed, 7 insertions(+), 10 deletions(-)
|
|
Kmods SIG |
8b815c |
|
|
Kmods SIG |
8b815c |
diff --git a/src/ntfs_fs.h b/src/ntfs_fs.h
|
|
Kmods SIG |
8b815c |
index 0c3ac89c3115da8131a66281c1c3c7da112d07ff..c8ea6dd38c213bf9ef5dd52aa46ae3cb3e8cd43b 100644
|
|
Kmods SIG |
8b815c |
--- a/src/ntfs_fs.h
|
|
Kmods SIG |
8b815c |
+++ b/src/ntfs_fs.h
|
|
Kmods SIG |
8b815c |
@@ -972,11 +972,6 @@ static inline struct buffer_head *ntfs_bread(struct super_block *sb,
|
|
Kmods SIG |
8b815c |
return NULL;
|
|
Kmods SIG |
8b815c |
}
|
|
Kmods SIG |
8b815c |
|
|
Kmods SIG |
8b815c |
-static inline bool is_power_of2(size_t v)
|
|
Kmods SIG |
8b815c |
-{
|
|
Kmods SIG |
8b815c |
- return v && !(v & (v - 1));
|
|
Kmods SIG |
8b815c |
-}
|
|
Kmods SIG |
8b815c |
-
|
|
Kmods SIG |
8b815c |
static inline struct ntfs_inode *ntfs_i(struct inode *inode)
|
|
Kmods SIG |
8b815c |
{
|
|
Kmods SIG |
8b815c |
return container_of(inode, struct ntfs_inode, vfs_inode);
|
|
Kmods SIG |
8b815c |
diff --git a/src/run.c b/src/run.c
|
|
Kmods SIG |
8b815c |
index f9c362ac672e96b9430ab211de4952d6dce7797a..60c64deab7389261b9cb21f03118f2e8e2b8dc05 100644
|
|
Kmods SIG |
8b815c |
--- a/src/run.c
|
|
Kmods SIG |
8b815c |
+++ b/src/run.c
|
|
Kmods SIG |
8b815c |
@@ -9,6 +9,7 @@
|
|
Kmods SIG |
8b815c |
#include <linux/blkdev.h>
|
|
Kmods SIG |
8b815c |
#include <linux/buffer_head.h>
|
|
Kmods SIG |
8b815c |
#include <linux/fs.h>
|
|
Kmods SIG |
8b815c |
+#include <linux/log2.h>
|
|
Kmods SIG |
8b815c |
#include <linux/nls.h>
|
|
Kmods SIG |
8b815c |
|
|
Kmods SIG |
8b815c |
#include "debug.h"
|
|
Kmods SIG |
8b815c |
@@ -376,7 +377,7 @@ bool run_add_entry(struct runs_tree *run, CLST vcn, CLST lcn, CLST len,
|
|
Kmods SIG |
8b815c |
if (!used) {
|
|
Kmods SIG |
8b815c |
bytes = 64;
|
|
Kmods SIG |
8b815c |
} else if (used <= 16 * PAGE_SIZE) {
|
|
Kmods SIG |
8b815c |
- if (is_power_of2(run->allocated))
|
|
Kmods SIG |
8b815c |
+ if (is_power_of_2(run->allocated))
|
|
Kmods SIG |
8b815c |
bytes = run->allocated << 1;
|
|
Kmods SIG |
8b815c |
else
|
|
Kmods SIG |
8b815c |
bytes = (size_t)1
|
|
Kmods SIG |
8b815c |
diff --git a/src/super.c b/src/super.c
|
|
Kmods SIG |
8b815c |
index 84d4f389f6855091f3dc9be77f50c5e6acf99706..903975b7e832f627476fd8da4ec6e5fc9f080818 100644
|
|
Kmods SIG |
8b815c |
--- a/src/super.c
|
|
Kmods SIG |
8b815c |
+++ b/src/super.c
|
|
Kmods SIG |
8b815c |
@@ -29,6 +29,7 @@
|
|
Kmods SIG |
8b815c |
#include <linux/exportfs.h>
|
|
Kmods SIG |
8b815c |
#include <linux/fs.h>
|
|
Kmods SIG |
8b815c |
#include <linux/iversion.h>
|
|
Kmods SIG |
8b815c |
+#include <linux/log2.h>
|
|
Kmods SIG |
8b815c |
#include <linux/module.h>
|
|
Kmods SIG |
8b815c |
#include <linux/nls.h>
|
|
Kmods SIG |
8b815c |
#include <linux/parser.h>
|
|
Kmods SIG |
8b815c |
@@ -735,13 +736,13 @@ static int ntfs_init_from_boot(struct super_block *sb, u32 sector_size,
|
|
Kmods SIG |
8b815c |
|
|
Kmods SIG |
8b815c |
boot_sector_size = (u32)boot->bytes_per_sector[1] << 8;
|
|
Kmods SIG |
8b815c |
if (boot->bytes_per_sector[0] || boot_sector_size < SECTOR_SIZE ||
|
|
Kmods SIG |
8b815c |
- !is_power_of2(boot_sector_size)) {
|
|
Kmods SIG |
8b815c |
+ !is_power_of_2(boot_sector_size)) {
|
|
Kmods SIG |
8b815c |
goto out;
|
|
Kmods SIG |
8b815c |
}
|
|
Kmods SIG |
8b815c |
|
|
Kmods SIG |
8b815c |
/* cluster size: 512, 1K, 2K, 4K, ... 2M */
|
|
Kmods SIG |
8b815c |
sct_per_clst = true_sectors_per_clst(boot);
|
|
Kmods SIG |
8b815c |
- if (!is_power_of2(sct_per_clst))
|
|
Kmods SIG |
8b815c |
+ if (!is_power_of_2(sct_per_clst))
|
|
Kmods SIG |
8b815c |
goto out;
|
|
Kmods SIG |
8b815c |
|
|
Kmods SIG |
8b815c |
mlcn = le64_to_cpu(boot->mft_clst);
|
|
Kmods SIG |
8b815c |
@@ -757,14 +758,14 @@ static int ntfs_init_from_boot(struct super_block *sb, u32 sector_size,
|
|
Kmods SIG |
8b815c |
/* Check MFT record size */
|
|
Kmods SIG |
8b815c |
if ((boot->record_size < 0 &&
|
|
Kmods SIG |
8b815c |
SECTOR_SIZE > (2U << (-boot->record_size))) ||
|
|
Kmods SIG |
8b815c |
- (boot->record_size >= 0 && !is_power_of2(boot->record_size))) {
|
|
Kmods SIG |
8b815c |
+ (boot->record_size >= 0 && !is_power_of_2(boot->record_size))) {
|
|
Kmods SIG |
8b815c |
goto out;
|
|
Kmods SIG |
8b815c |
}
|
|
Kmods SIG |
8b815c |
|
|
Kmods SIG |
8b815c |
/* Check index record size */
|
|
Kmods SIG |
8b815c |
if ((boot->index_size < 0 &&
|
|
Kmods SIG |
8b815c |
SECTOR_SIZE > (2U << (-boot->index_size))) ||
|
|
Kmods SIG |
8b815c |
- (boot->index_size >= 0 && !is_power_of2(boot->index_size))) {
|
|
Kmods SIG |
8b815c |
+ (boot->index_size >= 0 && !is_power_of_2(boot->index_size))) {
|
|
Kmods SIG |
8b815c |
goto out;
|
|
Kmods SIG |
8b815c |
}
|
|
Kmods SIG |
8b815c |
|
|
Kmods SIG |
8b815c |
--
|
|
Kmods SIG |
8b815c |
2.31.1
|
|
Kmods SIG |
8b815c |
|