diff options
| -rw-r--r-- | repos/extra/linux/.checksum | 2 | ||||
| -rw-r--r-- | repos/extra/linux/abuild | 5 | ||||
| -rw-r--r-- | repos/extra/linux/andes_export_filldir_readdir.patch | 87 |
3 files changed, 90 insertions, 4 deletions
diff --git a/repos/extra/linux/.checksum b/repos/extra/linux/.checksum deleted file mode 100644 index 832683ed..00000000 --- a/repos/extra/linux/.checksum +++ /dev/null @@ -1,2 +0,0 @@ -f76bedd6581a8d061e83fddd79fb61323c69459c6f5c0e7fed79c374dda9bfc3 dotconfig -0520ad524a15cc21a0624314bfecf9cf9ebb60c70dbb543f15671335b44f1e3c linux-6.12.11.tar.xz diff --git a/repos/extra/linux/abuild b/repos/extra/linux/abuild index b5c2d078..085515ea 100644 --- a/repos/extra/linux/abuild +++ b/repos/extra/linux/abuild @@ -1,8 +1,9 @@ name=linux -version=6.12.11 +version=6.12.31 release=1 source="https://cdn.kernel.org/pub/$name/kernel/v6.x/$name-$version.tar.xz - dotconfig" + dotconfig + andes_export_filldir_readdir.patch" build() { make mrproper diff --git a/repos/extra/linux/andes_export_filldir_readdir.patch b/repos/extra/linux/andes_export_filldir_readdir.patch new file mode 100644 index 00000000..854969fa --- /dev/null +++ b/repos/extra/linux/andes_export_filldir_readdir.patch @@ -0,0 +1,87 @@ +--- linux-6.10.6/fs/readdir.c ++++ ./readdir.c +@@ -180,7 +180,7 @@ + int result; + }; + +-static bool fillonedir(struct dir_context *ctx, const char *name, int namlen, ++bool fillonedir(struct dir_context *ctx, const char *name, int namlen, + loff_t offset, u64 ino, unsigned int d_type) + { + struct readdir_callback *buf = +@@ -216,6 +216,7 @@ + buf->result = -EFAULT; + return false; + } ++EXPORT_SYMBOL(fillonedir); + + SYSCALL_DEFINE3(old_readdir, unsigned int, fd, + struct old_linux_dirent __user *, dirent, unsigned int, count) +@@ -259,7 +260,7 @@ + int error; + }; + +-static bool filldir(struct dir_context *ctx, const char *name, int namlen, ++bool filldir(struct dir_context *ctx, const char *name, int namlen, + loff_t offset, u64 ino, unsigned int d_type) + { + struct linux_dirent __user *dirent, *prev; +@@ -307,6 +308,7 @@ + buf->error = -EFAULT; + return false; + } ++EXPORT_SYMBOL(filldir); + + SYSCALL_DEFINE3(getdents, unsigned int, fd, + struct linux_dirent __user *, dirent, unsigned int, count) +@@ -347,7 +349,7 @@ + int error; + }; + +-static bool filldir64(struct dir_context *ctx, const char *name, int namlen, ++bool filldir64(struct dir_context *ctx, const char *name, int namlen, + loff_t offset, u64 ino, unsigned int d_type) + { + struct linux_dirent64 __user *dirent, *prev; +@@ -390,6 +392,7 @@ + buf->error = -EFAULT; + return false; + } ++EXPORT_SYMBOL(filldir64); + + SYSCALL_DEFINE3(getdents64, unsigned int, fd, + struct linux_dirent64 __user *, dirent, unsigned int, count) +@@ -437,7 +440,7 @@ + int result; + }; + +-static bool compat_fillonedir(struct dir_context *ctx, const char *name, ++bool compat_fillonedir(struct dir_context *ctx, const char *name, + int namlen, loff_t offset, u64 ino, + unsigned int d_type) + { +@@ -474,6 +477,7 @@ + buf->result = -EFAULT; + return false; + } ++EXPORT_SYMBOL(compat_fillonedir); + + COMPAT_SYSCALL_DEFINE3(old_readdir, unsigned int, fd, + struct compat_old_linux_dirent __user *, dirent, unsigned int, count) +@@ -511,7 +515,7 @@ + int error; + }; + +-static bool compat_filldir(struct dir_context *ctx, const char *name, int namlen, ++bool compat_filldir(struct dir_context *ctx, const char *name, int namlen, + loff_t offset, u64 ino, unsigned int d_type) + { + struct compat_linux_dirent __user *dirent, *prev; +@@ -558,6 +562,7 @@ + buf->error = -EFAULT; + return false; + } ++EXPORT_SYMBOL(compat_filldir); + + COMPAT_SYSCALL_DEFINE3(getdents, unsigned int, fd, + struct compat_linux_dirent __user *, dirent, unsigned int, count) |