On Mon, Jan 06, 2025 at 06:35:23PM -0800, James Bottomley wrote: > Make the inodes the default management vehicle for struct > efivar_entry, so they are now all freed automatically if the file is > removed and on unmount in kill_litter_super(). Remove the now > superfluous iterator to free the entries after kill_litter_super(). > > Also fixes a bug where some entry freeing was missing causing efivarfs > to leak memory. Umm... I'd rather coallocate struct inode and struct efivar_entry; that way once you get rid of the list you don't need ->evict_inode() anymore. It's pretty easy - see e.g. https://lore.kernel.org/all/20250112080705.141166-1-viro@xxxxxxxxxxxxxxxxxx/ for recent example of such conversion.