On Fri, Jan 23, 2026 at 10:58:50AM +0100, Pratyush Yadav wrote: > From: "Pratyush Yadav (Google)" <[email protected]> > > Support for preserving file seals will be added to memfd preservation > using the Live Update Orchestrator (LUO). Export > memfd_{add,get}_seals)() so memfd_luo can use them to manipulate the > seals. > > Signed-off-by: Pratyush Yadav (Google) <[email protected]>
Acked-by: Mike Rapoport (Microsoft) <[email protected]> > --- > include/linux/memfd.h | 12 ++++++++++++ > mm/memfd.c | 4 ++-- > 2 files changed, 14 insertions(+), 2 deletions(-) > > diff --git a/include/linux/memfd.h b/include/linux/memfd.h > index c328a7b356d0..b4fda09dab9f 100644 > --- a/include/linux/memfd.h > +++ b/include/linux/memfd.h > @@ -18,6 +18,8 @@ struct folio *memfd_alloc_folio(struct file *memfd, pgoff_t > idx); > */ > int memfd_check_seals_mmap(struct file *file, vm_flags_t *vm_flags_ptr); > struct file *memfd_alloc_file(const char *name, unsigned int flags); > +int memfd_get_seals(struct file *file); > +int memfd_add_seals(struct file *file, unsigned int seals); > #else > static inline long memfd_fcntl(struct file *f, unsigned int c, unsigned int > a) > { > @@ -37,6 +39,16 @@ static inline struct file *memfd_alloc_file(const char > *name, unsigned int flags > { > return ERR_PTR(-EINVAL); > } > + > +static inline int memfd_get_seals(struct file *file) > +{ > + return -EINVAL; > +} > + > +static inline int memfd_add_seals(struct file *file, unsigned int seals) > +{ > + return -EINVAL; > +} > #endif > > #endif /* __LINUX_MEMFD_H */ > diff --git a/mm/memfd.c b/mm/memfd.c > index f032c6052926..46c5508beea4 100644 > --- a/mm/memfd.c > +++ b/mm/memfd.c > @@ -228,7 +228,7 @@ static unsigned int *memfd_file_seals_ptr(struct file > *file) > F_SEAL_WRITE | \ > F_SEAL_FUTURE_WRITE) > > -static int memfd_add_seals(struct file *file, unsigned int seals) > +int memfd_add_seals(struct file *file, unsigned int seals) > { > struct inode *inode = file_inode(file); > unsigned int *file_seals; > @@ -310,7 +310,7 @@ static int memfd_add_seals(struct file *file, unsigned > int seals) > return error; > } > > -static int memfd_get_seals(struct file *file) > +int memfd_get_seals(struct file *file) > { > unsigned int *seals = memfd_file_seals_ptr(file); > > -- > 2.52.0.457.g6b5491de43-goog > -- Sincerely yours, Mike.
