diff --git a/include/linux/pagevec.h b/include/linux/pagevec.h index 87cc678adc85..208f9a99889f 100644 --- a/include/linux/pagevec.h +++ b/include/linux/pagevec.h @@ -71,7 +71,9 @@ static inline unsigned int folio_batch_space(struct folio_batch *fbatch) static inline unsigned folio_batch_add(struct folio_batch *fbatch, struct folio *folio) { - fbatch->folios[fbatch->nr++] = folio; + if (folio_batch_space(fbatch)) + fbatch->folios[fbatch->nr++] = folio; + return folio_batch_space(fbatch); }