|
@@ -972,12 +972,16 @@ static __always_inline struct zoneref *next_zones_zonelist(struct zoneref *z,
|
|
|
* @zonelist - The zonelist to search for a suitable zone
|
|
|
* @highest_zoneidx - The zone index of the highest zone to return
|
|
|
* @nodes - An optional nodemask to filter the zonelist with
|
|
|
- * @zone - The first suitable zone found is returned via this parameter
|
|
|
+ * @return - Zoneref pointer for the first suitable zone found (see below)
|
|
|
*
|
|
|
* This function returns the first zone at or below a given zone index that is
|
|
|
* within the allowed nodemask. The zoneref returned is a cursor that can be
|
|
|
* used to iterate the zonelist with next_zones_zonelist by advancing it by
|
|
|
* one before calling.
|
|
|
+ *
|
|
|
+ * When no eligible zone is found, zoneref->zone is NULL (zoneref itself is
|
|
|
+ * never NULL). This may happen either genuinely, or due to concurrent nodemask
|
|
|
+ * update due to cpuset modification.
|
|
|
*/
|
|
|
static inline struct zoneref *first_zones_zonelist(struct zonelist *zonelist,
|
|
|
enum zone_type highest_zoneidx,
|