Lines Matching refs:first
790 void *first, *next; in xas_store() local
795 first = xas_create(xas, allow_root); in xas_store()
797 first = xas_load(xas); in xas_store()
801 return first; in xas_store()
805 if ((first == entry) && !xas->xa_sibs) in xas_store()
806 return first; in xas_store()
808 next = first; in xas_store()
833 values += !xa_is_value(first) - !value; in xas_store()
847 first = next; in xas_store()
853 return first; in xas_store()
1823 static void xas_set_range(struct xa_state *xas, unsigned long first, in xas_set_range() argument
1827 unsigned long sibs = last - first; in xas_set_range()
1830 xas_set(xas, first); in xas_set_range()
1832 while ((first & XA_CHUNK_MASK) == 0) { in xas_set_range()
1841 first >>= XA_CHUNK_SHIFT; in xas_set_range()
1844 offset = first & XA_CHUNK_MASK; in xas_set_range()
1847 if ((((first + sibs + 1) << shift) - 1) > last) in xas_set_range()
1872 void *xa_store_range(struct xarray *xa, unsigned long first, in xa_store_range() argument
1879 if (last < first) in xa_store_range()
1894 xas_set_range(&xas, first, last); in xa_store_range()
1898 first += xas_size(&xas); in xa_store_range()
1899 } while (first <= last); in xa_store_range()