diff --git a/meta/classes-global/insane.bbclass b/meta/classes-global/insane.bbclass
index 69741a6a79..1ff6a319c4 100644
--- a/meta/classes-global/insane.bbclass
+++ b/meta/classes-global/insane.bbclass
@@ -598,6 +598,37 @@ def check_32bit_symbols(path, packagename, d, elf, messages):
         "fts_set",
         # /usr/include/netdb.h
         "gai_suspend",
+
+        # Since _TIME_BITS=64 forces the use of _FILE_OFFSET_BITS=64,
+        # also check for functions redirected only based on _FILE_OFFSET_BITS
+        # and __USE_FILE_OFFSET64
+        # /usr/include/bits/fcntl-linux.h
+        "fallocate",
+        # /usr/include/bits/resource.h
+        "prlimit",
+        # /usr/include/sys/statfs.h
+        "statfs", "fstatfs", "statvfs", "fstatvfs",
+        # /usr/include/sys/sendfile.h
+        "sendfile",
+        # /usr/include/sys/resource.h
+        "getrlimit", "setrlimit",
+        # /usr/include/sys/uio.h
+        "preadv", "pwritev", "preadv2", "pwritev2",
+        # /usr/include/sys/mman.h
+        "mmap",
+        # /usr/include/stdlib.h
+        "mkstemp", "mkstemps", "mkostemp", "mkostemps",
+        # /usr/include/stdio.h
+        "fopen", "tmpfile", "freopen", "fseeko", "ftello", "fgetpos",
+        "fsetpos",
+        # /usr/include/dirent.h
+        "readdir",
+        "readdir_r", "scandir", "scandirat", "alphasort", "getdirentries",
+        "versionsort",
+        # /usr/include/unistd.h
+        "lseek", "pread", "pwrite", "truncate", "ftruncate", "lockf",
+        # /usr/include/fcntl.h
+        "open", "openat", "creat", "posix_fadvise", "posix_fallocate",
     }
 
     ptrn = re.compile(
