diff --git a/libs/libfdt/Android.bp b/libs/libfdt/Android.bp
index 7a7d71f..7dc9e64 100644
--- a/libs/libfdt/Android.bp
+++ b/libs/libfdt/Android.bp
@@ -39,7 +39,6 @@
     rustlibs: [
         "libcstr",
         "liblibfdt_bindgen",
-        "libmemoffset_nostd",
         "libstatic_assertions",
         "libzerocopy_nostd",
     ],
diff --git a/libs/libfdt/src/libfdt.rs b/libs/libfdt/src/libfdt.rs
index 9ddfbaa..b2250f5 100644
--- a/libs/libfdt/src/libfdt.rs
+++ b/libs/libfdt/src/libfdt.rs
@@ -248,8 +248,7 @@
         let prop = unsafe { libfdt_bindgen::fdt_get_property_by_offset(fdt, offset, &mut len) };
 
         let data_len = FdtRawResult::from(len).try_into()?;
-        // TODO(stable_feature(offset_of)): mem::offset_of!(fdt_property, data).
-        let data_offset = memoffset::offset_of!(libfdt_bindgen::fdt_property, data);
+        let data_offset = mem::offset_of!(libfdt_bindgen::fdt_property, data);
         let len = data_offset.checked_add(data_len).ok_or(FdtError::Internal)?;
 
         if !is_aligned(prop) || get_slice_at_ptr(self.as_fdt_slice(), prop.cast(), len).is_none() {
diff --git a/libs/libfdt/src/safe_types.rs b/libs/libfdt/src/safe_types.rs
index 3848542..03b5bc2 100644
--- a/libs/libfdt/src/safe_types.rs
+++ b/libs/libfdt/src/safe_types.rs
@@ -15,6 +15,7 @@
 //! Safe zero-cost wrappers around integer values used by libfdt.
 
 use core::ffi::c_int;
+use core::mem::offset_of;
 
 use crate::result::FdtRawResult;
 use crate::{FdtError, Result};
@@ -23,13 +24,9 @@
 use zerocopy::{FromBytes, FromZeroes};
 
 macro_rules! assert_offset_eq {
-    // TODO(stable_feature(offset_of)): mem::offset_of
     // TODO(const_feature(assert_eq)): assert_eq!()
     ($t:ty, $u:ty, $id:ident) => {
-        static_assertions::const_assert_eq!(
-            memoffset::offset_of!($t, $id),
-            memoffset::offset_of!($u, $id),
-        );
+        static_assertions::const_assert_eq!(offset_of!($t, $id), offset_of!($u, $id));
     };
 }
 
diff --git a/vmbase/src/bionic.rs b/vmbase/src/bionic.rs
index 63a6894..a38fd25 100644
--- a/vmbase/src/bionic.rs
+++ b/vmbase/src/bionic.rs
@@ -188,8 +188,7 @@
     } else {
         // SAFETY: Just like libc, we need to assume that `s` is a valid NULL-terminated string.
         let c_str = unsafe { CStr::from_ptr(s) };
-        // TODO(Rust 1.71): if c_str.is_empty() {
-        if c_str.to_bytes().is_empty() {
+        if c_str.is_empty() {
             None
         } else {
             Some(c_str.to_str().unwrap())
