This requires to change Android.bp in AOSP.

Signed-off-by: Jaegeuk Kim <[email protected]>
Change-Id: I28a4a701513cb2420cdf0e0e2aa3f60e712f2fcb
---
 configure.ac             |  9 ++++++++-
 fsck/fsck.c              |  2 +-
 include/android_config.h |  4 ++++
 include/f2fs_fs.h        |  4 +++-
 lib/libf2fs.c            | 10 +++-------
 5 files changed, 19 insertions(+), 10 deletions(-)

diff --git a/configure.ac b/configure.ac
index f0ed5f6528d9..e8ce0057c4ff 100644
--- a/configure.ac
+++ b/configure.ac
@@ -95,6 +95,7 @@ AC_CHECK_HEADERS(m4_flatten([
        blkid/blkid.h
        byteswap.h
        fcntl.h
+       kernel/uapi/linux/blkzoned.h
        linux/blkzoned.h
        linux/falloc.h
        linux/fiemap.h
@@ -222,7 +223,13 @@ AC_CONFIG_FILES([
 
 AC_CHECK_MEMBER([struct blk_zone.capacity],
                [AC_DEFINE(HAVE_BLK_ZONE_REP_V2, [1], [report zones includes 
zone capacity])],
-               [], [[#include <linux/blkzoned.h>]])
+               [], [[
+#ifdef HAVE_KERNEL_UAPI_LINUX_BLKZONED_H
+#include <kernel/uapi/linux/blkzoned.h>
+#elif defined(HAVE_LINUX_BLKZONED_H)
+#include <linux/blkzoned.h>
+#endif
+               ]])
 
 # export library version info for mkfs/libf2fs_format_la
 AC_SUBST(FMT_CURRENT, 7)
diff --git a/fsck/fsck.c b/fsck/fsck.c
index 19a28b0eedad..3b37519e9054 100644
--- a/fsck/fsck.c
+++ b/fsck/fsck.c
@@ -2994,7 +2994,7 @@ struct write_pointer_check_data {
        int dev_index;
 };
 
-static int chk_and_fix_wp_with_sit(int i, void *blkzone, void *opaque)
+static int chk_and_fix_wp_with_sit(int UNUSED(i), void *blkzone, void *opaque)
 {
        struct blk_zone *blkz = (struct blk_zone *)blkzone;
        struct write_pointer_check_data *wpd = opaque;
diff --git a/include/android_config.h b/include/android_config.h
index ce6723309447..d7e4f60d91c6 100644
--- a/include/android_config.h
+++ b/include/android_config.h
@@ -1,7 +1,10 @@
 #if defined(__linux__)
+#define HAVE_BLK_ZONE_REP_V2 1
 #define HAVE_BYTESWAP_H 1
 #define HAVE_FCNTL_H 1
 #define HAVE_FALLOC_H 1
+#define HAVE_KERNEL_UAPI_LINUX_BLKZONED_H 1
+#define HAVE_LINUX_BLKZONED_H 1
 #define HAVE_LINUX_HDREG_H 1
 #define HAVE_LINUX_LIMITS_H 1
 #define HAVE_POSIX_ACL_H 1
@@ -19,6 +22,7 @@
 #define HAVE_SYS_SYSMACROS_H 1
 #define HAVE_SYS_XATTR_H 1
 #define HAVE_UNISTD_H 1
+#define HAVE_SCSI_SG_H 1
 
 #define HAVE_FALLOCATE 1
 #define HAVE_FSETXATTR 1
diff --git a/include/f2fs_fs.h b/include/f2fs_fs.h
index 1d7103c1d6fe..d6374270c188 100644
--- a/include/f2fs_fs.h
+++ b/include/f2fs_fs.h
@@ -50,7 +50,9 @@
 #endif
 #include <sys/types.h>
 
-#ifdef HAVE_LINUX_BLKZONED_H
+#ifdef HAVE_KERNEL_UAPI_LINUX_BLKZONED_H
+#include <kernel/uapi/linux/blkzoned.h>
+#elif defined(HAVE_LINUX_BLKZONED_H)
 #include <linux/blkzoned.h>
 #endif
 
diff --git a/lib/libf2fs.c b/lib/libf2fs.c
index 63d07f26c739..afdbbbe17d84 100644
--- a/lib/libf2fs.c
+++ b/lib/libf2fs.c
@@ -34,11 +34,9 @@
 #ifdef HAVE_SYS_UTSNAME_H
 #include <sys/utsname.h>
 #endif
-#ifndef WITH_ANDROID
 #ifdef HAVE_SCSI_SG_H
 #include <scsi/sg.h>
 #endif
-#endif
 #ifdef HAVE_LINUX_HDREG_H
 #include <linux/hdreg.h>
 #endif
@@ -46,10 +44,8 @@
 #include <linux/limits.h>
 #endif
 
-#ifndef WITH_ANDROID
 /* SCSI command for standard inquiry*/
 #define MODELINQUIRY   0x12,0x00,0x00,0x00,0x4A,0x00
-#endif
 
 #ifndef _WIN32 /* O_BINARY is windows-specific flag */
 #define O_BINARY 0
@@ -900,7 +896,7 @@ int get_device_info(int i)
 #ifdef HDIO_GETGIO
        struct hd_geometry geom;
 #endif
-#if !defined(WITH_ANDROID) && defined(__linux__)
+#ifdef __linux__
        sg_io_hdr_t io_hdr;
        unsigned char reply_buffer[96] = {0};
        unsigned char model_inq[6] = {MODELINQUIRY};
@@ -1002,7 +998,7 @@ int get_device_info(int i)
 #endif
                }
 
-#if !defined(WITH_ANDROID) && defined(__linux__)
+#ifdef __linux__
                /* Send INQUIRY command */
                memset(&io_hdr, 0, sizeof(sg_io_hdr_t));
                io_hdr.interface_id = 'S';
@@ -1033,7 +1029,7 @@ int get_device_info(int i)
                return -1;
        }
 
-#if !defined(WITH_ANDROID) && defined(__linux__)
+#ifdef __linux__
        if (S_ISBLK(stat_buf->st_mode)) {
                if (f2fs_get_zoned_model(i) < 0) {
                        free(stat_buf);
-- 
2.36.0.rc2.479.g8af0fa9b8e-goog



_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to