Re: [PATCH 1/2] mm: swap: make page_evictable() inline

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 3/14/20 9:01 AM, Matthew Wilcox wrote:
On Sat, Mar 14, 2020 at 02:34:35AM +0800, Yang Shi wrote:
-extern int page_evictable(struct page *page);
+/*
This seems to be in kernel-doc format already; could you add the extra
'*' so it is added to the fine documentation?

Yes, sure.


+ * page_evictable - test whether a page is evictable
+ * @page: the page to test
+ *
+ * Test whether page is evictable--i.e., should be placed on active/inactive
+ * lists vs unevictable list.
+ *
+ * Reasons page might not be evictable:
+ * (1) page's mapping marked unevictable
+ * (2) page is part of an mlocked VMA
+ *
+ */
+static inline int page_evictable(struct page *page)
+{
+	int ret;
+
+	/* Prevent address_space of inode and swap cache from being freed */
+	rcu_read_lock();
+	ret = !mapping_unevictable(page_mapping(page)) && !PageMlocked(page);
+	rcu_read_unlock();
+	return ret;
+}
This seems like it should return bool ... that might even lead to code
generation improvement.

Thanks for catching this. It looks mapping_unevictable() needs to be converted to bool as well.






[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux