diff --git a/meta-openembedded/meta-filesystems/recipes-utils/fatcat/fatcat/0001-Replace-std-ptr_fun-for-c-17.patch b/meta-openembedded/meta-filesystems/recipes-utils/fatcat/fatcat/0001-Replace-std-ptr_fun-for-c-17.patch
new file mode 100644
index 0000000..277a368
--- /dev/null
+++ b/meta-openembedded/meta-filesystems/recipes-utils/fatcat/fatcat/0001-Replace-std-ptr_fun-for-c-17.patch
@@ -0,0 +1,48 @@
+From 455001cb0112f7324ab50f555aa5ed5eae1bb93b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 16 Jan 2023 19:23:18 -0800
+Subject: [PATCH] Replace std::ptr_fun for c++17
+
+std::ptr_fun was deprecated in C++11, and removed completely in C++17.
+Similarly, std::not1 is deprecated since C++17.
+
+Modern compilers like clang >= 16 have started to notice it
+
+src/FatUtils.h:41:46: error: use of undeclared identifier 'ptr_fun'
+|   s.erase(find_if(s.rbegin(), s.rend(), not1(ptr_fun<int, int>(isspace))).base(), s.end());
+
+Therefore replace ptr_fun with lambda
+
+Also use 'unsigned char' parameter to std::isspace, for reason see [1]
+
+[1] https://en.cppreference.com/w/cpp/string/byte/isspace#Notes
+
+Upstream-Status: Submitted [https://github.com/Gregwar/fatcat/pull/36]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/FatUtils.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/FatUtils.h b/src/FatUtils.h
+index 5080f2a..a8d69ee 100644
+--- a/src/FatUtils.h
++++ b/src/FatUtils.h
+@@ -32,13 +32,13 @@ using namespace std;
+ 
+ // trim from start
+ static inline string ltrim(string s) {
+-  s.erase(s.begin(), find_if(s.begin(), s.end(), not1(ptr_fun<int, int>(isspace))));
++  s.erase(s.begin(), find_if(s.begin(), s.end(), [](unsigned char c) {return !isspace(c);}));
+   return s;
+ }
+ 
+ // trim from end
+ static inline string rtrim(string s) {
+-  s.erase(find_if(s.rbegin(), s.rend(), not1(ptr_fun<int, int>(isspace))).base(), s.end());
++  s.erase(find_if(s.rbegin(), s.rend(), [](unsigned char c) {return !isspace(c);}).base(), s.end());
+   return s;
+ }
+ 
+-- 
+2.39.0
+
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/fatcat/fatcat_1.1.1.bb b/meta-openembedded/meta-filesystems/recipes-utils/fatcat/fatcat_1.1.1.bb
index 982a52d..214b3f9 100644
--- a/meta-openembedded/meta-filesystems/recipes-utils/fatcat/fatcat_1.1.1.bb
+++ b/meta-openembedded/meta-filesystems/recipes-utils/fatcat/fatcat_1.1.1.bb
@@ -10,6 +10,7 @@
 SRC_URI = "git://github.com/Gregwar/fatcat.git;branch=master;protocol=https \
            file://0001-Use-unistd.h-not-argp.h-for-all-POSIX-systems.patch \
            file://0002-Enable-64bit-off_t.patch \
+           file://0001-Replace-std-ptr_fun-for-c-17.patch \
            "
 
 SRCREV = "99cb99fc86eb1601ac7ae27f5bba23add04d2543"
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/0005-Replace-off64_t-stat64-with-off_t-stat.patch b/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/0005-Replace-off64_t-stat64-with-off_t-stat.patch
index e10364a..731c001 100644
--- a/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/0005-Replace-off64_t-stat64-with-off_t-stat.patch
+++ b/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/0005-Replace-off64_t-stat64-with-off_t-stat.patch
@@ -1,4 +1,4 @@
-From 1ff0d95604c406ddfc764c97ed2cb147d155f608 Mon Sep 17 00:00:00 2001
+From f260099fc45f0653aa4758d1d581e07f5b9c6a54 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Wed, 21 Dec 2022 17:43:07 -0800
 Subject: [PATCH] Replace off64_t/stat64 with off_t/stat
@@ -11,6 +11,7 @@
 
 Upstream-Status: Submitted [https://lore.kernel.org/linux-xfs/20221222015327.939932-1-raj.khem@gmail.com/T/#t]
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
 ---
  copy/xfs_copy.c           |  2 +-
  fsr/xfs_fsr.c             |  2 +-
@@ -41,7 +42,7 @@
  26 files changed, 74 insertions(+), 74 deletions(-)
 
 diff --git a/copy/xfs_copy.c b/copy/xfs_copy.c
-index 79f65946..854fd7f4 100644
+index 79f6594..854fd7f 100644
 --- a/copy/xfs_copy.c
 +++ b/copy/xfs_copy.c
 @@ -888,7 +888,7 @@ main(int argc, char **argv)
@@ -54,7 +55,7 @@
  			/* ensure device files are sufficiently large */
  
 diff --git a/fsr/xfs_fsr.c b/fsr/xfs_fsr.c
-index ba02506d..12fffbd8 100644
+index ba02506..12fffbd 100644
 --- a/fsr/xfs_fsr.c
 +++ b/fsr/xfs_fsr.c
 @@ -1148,7 +1148,7 @@ packfile(char *fname, char *tname, int fd,
@@ -67,7 +68,7 @@
  	int 		ct, wc, wc_b4;
  	char		ffname[SMBUFSZ];
 diff --git a/io/bmap.c b/io/bmap.c
-index 27383ca6..0b14bb7b 100644
+index 27383ca..0b14bb7 100644
 --- a/io/bmap.c
 +++ b/io/bmap.c
 @@ -257,7 +257,7 @@ bmap_f(
@@ -91,7 +92,7 @@
  			swidth = (fsgeo.swidth * fsgeo.blocksize) / BBSIZE;
  		}
 diff --git a/io/copy_file_range.c b/io/copy_file_range.c
-index d154fa76..422e691a 100644
+index d154fa7..422e691 100644
 --- a/io/copy_file_range.c
 +++ b/io/copy_file_range.c
 @@ -54,7 +54,7 @@ copy_file_range_cmd(int fd, long long *src_off, long long *dst_off, size_t len)
@@ -113,7 +114,7 @@
  		sz = copy_src_filesize(fd);
  		if (sz < 0 || (unsigned long long)sz > SIZE_MAX) {
 diff --git a/io/cowextsize.c b/io/cowextsize.c
-index f6b134df..00e40c6f 100644
+index f6b134d..00e40c6 100644
 --- a/io/cowextsize.c
 +++ b/io/cowextsize.c
 @@ -50,10 +50,10 @@ static int
@@ -131,7 +132,7 @@
  		return 0;
  	}
 diff --git a/io/fadvise.c b/io/fadvise.c
-index 60cc0f08..0966c41b 100644
+index 60cc0f0..0966c41 100644
 --- a/io/fadvise.c
 +++ b/io/fadvise.c
 @@ -39,7 +39,7 @@ fadvise_f(
@@ -144,7 +145,7 @@
  
  	while ((c = getopt(argc, argv, "dnrsw")) != EOF) {
 diff --git a/io/fiemap.c b/io/fiemap.c
-index f0c74dfe..b41f71bf 100644
+index f0c74df..b41f71b 100644
 --- a/io/fiemap.c
 +++ b/io/fiemap.c
 @@ -234,9 +234,9 @@ fiemap_f(
@@ -161,7 +162,7 @@
  	struct stat	st;
  
 diff --git a/io/fsmap.c b/io/fsmap.c
-index 9dd19cc0..dfdaa1b4 100644
+index 7db5184..bf11963 100644
 --- a/io/fsmap.c
 +++ b/io/fsmap.c
 @@ -170,7 +170,7 @@ dump_map_verbose(
@@ -185,7 +186,7 @@
  	swidth = (fsgeo->swidth * fsgeo->blocksize);
  
 diff --git a/io/io.h b/io/io.h
-index 64b7a663..5f423016 100644
+index 64b7a66..5f42301 100644
 --- a/io/io.h
 +++ b/io/io.h
 @@ -53,7 +53,7 @@ extern int stat_f(int argc, char **argv);
@@ -226,7 +227,7 @@
  extern void		attr_init(void);
  extern void		bmap_init(void);
 diff --git a/io/madvise.c b/io/madvise.c
-index bde31539..6e9c5b12 100644
+index bde3153..6e9c5b1 100644
 --- a/io/madvise.c
 +++ b/io/madvise.c
 @@ -39,7 +39,7 @@ madvise_f(
@@ -239,7 +240,7 @@
  	void		*start;
  	int		advise = MADV_NORMAL, c;
 diff --git a/io/mincore.c b/io/mincore.c
-index 67f1d6c4..24147ac2 100644
+index 67f1d6c..24147ac 100644
 --- a/io/mincore.c
 +++ b/io/mincore.c
 @@ -17,7 +17,7 @@ mincore_f(
@@ -252,7 +253,7 @@
  	size_t		blocksize, sectsize;
  	void		*start;
 diff --git a/io/mmap.c b/io/mmap.c
-index 7114404b..128a2c06 100644
+index 7114404..128a2c0 100644
 --- a/io/mmap.c
 +++ b/io/mmap.c
 @@ -64,11 +64,11 @@ print_mapping(
@@ -306,11 +307,11 @@
  	void		*start;
  	char		*sp;
 diff --git a/io/pread.c b/io/pread.c
-index 458a78b8..89fab81d 100644
+index 0f1d8b9..79990c6 100644
 --- a/io/pread.c
 +++ b/io/pread.c
 @@ -116,7 +116,7 @@ alloc_buffer(
- void
+ static void
  __dump_buffer(
  	void		*buf,
 -	off64_t		offset,
@@ -404,7 +405,7 @@
  	long long	count, total, tmp;
  	size_t		fsblocksize, fssectsize;
 diff --git a/io/pwrite.c b/io/pwrite.c
-index 467bfa9f..8d134c56 100644
+index 467bfa9..8d134c5 100644
 --- a/io/pwrite.c
 +++ b/io/pwrite.c
 @@ -54,7 +54,7 @@ pwrite_help(void)
@@ -489,7 +490,7 @@
  	unsigned int	zeed = 0, seed = 0xcdcdcdcd;
  	size_t		fsblocksize, fssectsize;
 diff --git a/io/reflink.c b/io/reflink.c
-index 8e4f3899..b6a3c05a 100644
+index 8e4f389..b6a3c05 100644
 --- a/io/reflink.c
 +++ b/io/reflink.c
 @@ -98,7 +98,7 @@ dedupe_f(
@@ -511,7 +512,7 @@
  	char		*infile = NULL;
  	int		condensed, quiet_flag;
 diff --git a/io/seek.c b/io/seek.c
-index 6734ecb5..ffe7439c 100644
+index 6734ecb..ffe7439 100644
 --- a/io/seek.c
 +++ b/io/seek.c
 @@ -63,8 +63,8 @@ static void
@@ -535,7 +536,7 @@
  	int		c;
  	int		current;	/* specify data or hole */
 diff --git a/io/sendfile.c b/io/sendfile.c
-index a003bb55..2ce569c2 100644
+index a003bb5..2ce569c 100644
 --- a/io/sendfile.c
 +++ b/io/sendfile.c
 @@ -34,12 +34,12 @@ sendfile_help(void)
@@ -563,7 +564,7 @@
  	size_t		blocksize, sectsize;
  	struct timeval	t1, t2;
 diff --git a/io/stat.c b/io/stat.c
-index b57f9eef..e8f68dc3 100644
+index b57f9ee..e8f68dc 100644
 --- a/io/stat.c
 +++ b/io/stat.c
 @@ -21,7 +21,7 @@ static cmdinfo_t stat_cmd;
@@ -576,7 +577,7 @@
  {
  	struct stat	st;
 diff --git a/io/sync_file_range.c b/io/sync_file_range.c
-index 94285c22..2375a060 100644
+index 94285c2..2375a06 100644
 --- a/io/sync_file_range.c
 +++ b/io/sync_file_range.c
 @@ -30,7 +30,7 @@ sync_range_f(
@@ -589,7 +590,7 @@
  	size_t		blocksize, sectsize;
  
 diff --git a/io/truncate.c b/io/truncate.c
-index 1d049194..a74b6131 100644
+index 1d04919..a74b613 100644
 --- a/io/truncate.c
 +++ b/io/truncate.c
 @@ -16,7 +16,7 @@ truncate_f(
@@ -602,10 +603,10 @@
  
  	init_cvtnum(&blocksize, &sectsize);
 diff --git a/libxfs/rdwr.c b/libxfs/rdwr.c
-index 20e0793c..0e67b7b0 100644
+index d5aad3e..0faa05b 100644
 --- a/libxfs/rdwr.c
 +++ b/libxfs/rdwr.c
-@@ -568,7 +568,7 @@ libxfs_balloc(
+@@ -576,7 +576,7 @@ libxfs_balloc(
  
  
  static int
@@ -614,7 +615,7 @@
  {
  	int	sts;
  
-@@ -631,7 +631,7 @@ libxfs_readbufr_map(struct xfs_buftarg *btp, struct xfs_buf *bp, int flags)
+@@ -639,7 +639,7 @@ libxfs_readbufr_map(struct xfs_buftarg *btp, struct xfs_buf *bp, int flags)
  	fd = libxfs_device_to_fd(btp->bt_bdev);
  	buf = bp->b_addr;
  	for (i = 0; i < bp->b_nmaps; i++) {
@@ -623,7 +624,7 @@
  		int len = BBTOB(bp->b_maps[i].bm_len);
  
  		error = __read_buf(fd, buf, len, offset, flags);
-@@ -790,7 +790,7 @@ err:
+@@ -798,7 +798,7 @@ err:
  }
  
  static int
@@ -632,7 +633,7 @@
  {
  	int	sts;
  
-@@ -856,7 +856,7 @@ libxfs_bwrite(
+@@ -864,7 +864,7 @@ libxfs_bwrite(
  		void	*buf = bp->b_addr;
  
  		for (i = 0; i < bp->b_nmaps; i++) {
@@ -642,7 +643,7 @@
  
  			bp->b_error = __write_buf(fd, buf, len, offset,
 diff --git a/mdrestore/xfs_mdrestore.c b/mdrestore/xfs_mdrestore.c
-index 7c1a66c4..bb54e382 100644
+index 7c1a66c..bb54e38 100644
 --- a/mdrestore/xfs_mdrestore.c
 +++ b/mdrestore/xfs_mdrestore.c
 @@ -116,7 +116,7 @@ perform_restore(
@@ -655,7 +656,7 @@
  		off = sb.sb_dblocks * sb.sb_blocksize - sizeof(lb);
  		if (pwrite(dst_fd, lb, sizeof(lb), off) < 0)
 diff --git a/repair/prefetch.c b/repair/prefetch.c
-index 017750e9..35b50134 100644
+index 017750e..35b5013 100644
 --- a/repair/prefetch.c
 +++ b/repair/prefetch.c
 @@ -475,7 +475,7 @@ pf_batch_read(
@@ -668,7 +669,7 @@
  	int			i;
  	int			inode_bufs;
 diff --git a/scrub/spacemap.c b/scrub/spacemap.c
-index 03440d3a..00bee179 100644
+index 03440d3..00bee17 100644
 --- a/scrub/spacemap.c
 +++ b/scrub/spacemap.c
 @@ -97,11 +97,11 @@ scan_ag_rmaps(
@@ -687,7 +688,7 @@
  	memset(keys, 0, sizeof(struct fsmap) * 2);
  	keys->fmr_device = ctx->fsinfo.fs_datadev;
 diff --git a/spaceman/freesp.c b/spaceman/freesp.c
-index 423568a4..df878ce8 100644
+index 423568a..df878ce 100644
 --- a/spaceman/freesp.c
 +++ b/spaceman/freesp.c
 @@ -62,7 +62,7 @@ static void
@@ -709,7 +710,7 @@
  	unsigned long long	freeblks = 0;
  	unsigned long long	freeexts = 0;
 diff --git a/spaceman/trim.c b/spaceman/trim.c
-index e9ed47e4..727dd818 100644
+index e9ed47e..727dd81 100644
 --- a/spaceman/trim.c
 +++ b/spaceman/trim.c
 @@ -26,7 +26,7 @@ trim_f(
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_6.0.0.bb b/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_6.1.1.bb
similarity index 96%
rename from meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_6.0.0.bb
rename to meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_6.1.1.bb
index bb8c55d..6267fd9 100644
--- a/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_6.0.0.bb
+++ b/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_6.1.1.bb
@@ -13,7 +13,7 @@
            file://0004-configure-Use-AC_SYS_LARGERFILE-autoconf-macro.patch \
            file://0005-Replace-off64_t-stat64-with-off_t-stat.patch \
            "
-SRC_URI[sha256sum] = "b77cec2364aab0b8ae8d8c67daac7fdb3801e0979f1d8328d9c3469e57ca9ca0"
+SRC_URI[sha256sum] = "05e8a137870db1d6182df72dda98ab7a7100deb376947e854b9d59c914c2c7bb"
 inherit autotools-brokensep pkgconfig
 
 PACKAGES =+ "${PN}-fsck ${PN}-mkfs ${PN}-repair libhandle"
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/xfstests/xfstests_2022.12.18.bb b/meta-openembedded/meta-filesystems/recipes-utils/xfstests/xfstests_2023.01.01.bb
similarity index 96%
rename from meta-openembedded/meta-filesystems/recipes-utils/xfstests/xfstests_2022.12.18.bb
rename to meta-openembedded/meta-filesystems/recipes-utils/xfstests/xfstests_2023.01.01.bb
index b1cb9d0..defa11c 100644
--- a/meta-openembedded/meta-filesystems/recipes-utils/xfstests/xfstests_2022.12.18.bb
+++ b/meta-openembedded/meta-filesystems/recipes-utils/xfstests/xfstests_2023.01.01.bb
@@ -10,7 +10,7 @@
            file://0002-Drop-detached_mounts_propagation-and-remove-sys-moun.patch \
            "
 
-SRCREV_xfstests = "e263104046712af5fb5dcc7d289ac3fa5f14b764"
+SRCREV_xfstests = "fbd489798b31e32f0eaefcd754326a06aa5b166f"
 SRCREV_unionmount = "e3825b16b46f4c4574a1a69909944c059835f914"
 
 S = "${WORKDIR}/git"
