Message ID | 20250410153908.612984-1-shikemeng@huaweicloud.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | mm: swap: add __maybe_unused attribute for swap_is_last_ref() and update it's comment | expand |
On 04/10/25 at 11:39pm, Kemeng Shi wrote: > Add __maybe_unused attribute for swap_is_last_ref ()to fix following > building warning: > mm/swapfile.c:1517:20: warning: function 'swap_is_last_ref' is not needed and will not be emitted [-Wunneeded-internal-declaration] > 1517 | static inline bool swap_is_last_ref(unsigned char count) > | ^~~~~~~~~~~~~~~~ > 1 warning generated. > > Besides, original comment for swap_entries_free() is placed before > swap_is_last_ref() which may introduce confusion. Update comment to > address this. > > Fixes: 6bb001b6b64ec ("mm: swap: enable swap_entry_range_free() to drop any kind of last ref") > Suggested-by: Baoquan He <bhe@redhat.com> > Tested-by: SeongJae Park <sj@kernel.org> > Signed-off-by: Kemeng Shi <shikemeng@huaweicloud.com> > --- > mm/swapfile.c | 10 +++++++--- > 1 file changed, 7 insertions(+), 3 deletions(-) LGTM, Reviewed-by: Baoquan He <bhe@redhat.com> > > diff --git a/mm/swapfile.c b/mm/swapfile.c > index c46b56d636af..4b5fc0c33a85 100644 > --- a/mm/swapfile.c > +++ b/mm/swapfile.c > @@ -1537,15 +1537,19 @@ static bool swap_entries_put_map_nr(struct swap_info_struct *si, > } > > /* > - * Drop the last ref(1, SWAP_HAS_CACHE or SWAP_MAP_SHMEM) of swap entries, > - * caller have to ensure all entries belong to the same cgroup and cluster. > + * Check if it's the last ref of swap entry in the freeing path. > + * Qualified vlaue includes 1, SWAP_HAS_CACHE or SWAP_MAP_SHMEM. > */ > -static inline bool swap_is_last_ref(unsigned char count) > +static inline bool __maybe_unused swap_is_last_ref(unsigned char count) > { > return (count == SWAP_HAS_CACHE) || (count == 1) || > (count == SWAP_MAP_SHMEM); > } > > +/* > + * Drop the last ref of swap entries, caller have to ensure all entries > + * belong to the same cgroup and cluster. > + */ > static void swap_entries_free(struct swap_info_struct *si, > struct swap_cluster_info *ci, > swp_entry_t entry, unsigned int nr_pages) > -- > 2.30.0 >
diff --git a/mm/swapfile.c b/mm/swapfile.c index c46b56d636af..4b5fc0c33a85 100644 --- a/mm/swapfile.c +++ b/mm/swapfile.c @@ -1537,15 +1537,19 @@ static bool swap_entries_put_map_nr(struct swap_info_struct *si, } /* - * Drop the last ref(1, SWAP_HAS_CACHE or SWAP_MAP_SHMEM) of swap entries, - * caller have to ensure all entries belong to the same cgroup and cluster. + * Check if it's the last ref of swap entry in the freeing path. + * Qualified vlaue includes 1, SWAP_HAS_CACHE or SWAP_MAP_SHMEM. */ -static inline bool swap_is_last_ref(unsigned char count) +static inline bool __maybe_unused swap_is_last_ref(unsigned char count) { return (count == SWAP_HAS_CACHE) || (count == 1) || (count == SWAP_MAP_SHMEM); } +/* + * Drop the last ref of swap entries, caller have to ensure all entries + * belong to the same cgroup and cluster. + */ static void swap_entries_free(struct swap_info_struct *si, struct swap_cluster_info *ci, swp_entry_t entry, unsigned int nr_pages)