• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/staging/zram/

Lines Matching refs:index

41 static int zram_test_flag(struct zram *zram, u32 index,
44 return zram->table[index].flags & BIT(flag);
47 static void zram_set_flag(struct zram *zram, u32 index,
50 zram->table[index].flags |= BIT(flag);
53 static void zram_clear_flag(struct zram *zram, u32 index,
56 zram->table[index].flags &= ~BIT(flag);
146 static void zram_free_page(struct zram *zram, size_t index)
151 struct page *page = zram->table[index].page;
152 u32 offset = zram->table[index].offset;
159 if (zram_test_flag(zram, index, ZRAM_ZERO)) {
160 zram_clear_flag(zram, index, ZRAM_ZERO);
166 if (unlikely(zram_test_flag(zram, index, ZRAM_UNCOMPRESSED))) {
169 zram_clear_flag(zram, index, ZRAM_UNCOMPRESSED);
186 zram->table[index].page = NULL;
187 zram->table[index].offset = 0;
202 struct page *page, u32 index)
207 cmem = kmap_atomic(zram->table[index].page, KM_USER1) +
208 zram->table[index].offset;
221 u32 index;
226 index = bio->bi_sector >> SECTORS_PER_PAGE_SHIFT;
236 if (zram_test_flag(zram, index, ZRAM_ZERO)) {
238 index++;
243 if (unlikely(!zram->table[index].page)) {
247 index++;
252 if (unlikely(zram_test_flag(zram, index, ZRAM_UNCOMPRESSED))) {
253 handle_uncompressed_page(zram, page, index);
254 index++;
261 cmem = kmap_atomic(zram->table[index].page, KM_USER1) +
262 zram->table[index].offset;
275 ret, index);
281 index++;
296 u32 index;
301 index = bio->bi_sector >> SECTORS_PER_PAGE_SHIFT;
318 if (zram->table[index].page ||
319 zram_test_flag(zram, index, ZRAM_ZERO))
320 zram_free_page(zram, index);
329 zram_set_flag(zram, index, ZRAM_ZERO);
330 index++;
357 "incompressible page: %u\n", index);
364 zram_set_flag(zram, index, ZRAM_UNCOMPRESSED);
366 zram->table[index].page = page_store;
372 &zram->table[index].page, &offset,
376 "page: %u, size=%zu\n", index, clen);
382 zram->table[index].offset = offset;
384 cmem = kmap_atomic(zram->table[index].page, KM_USER1) +
385 zram->table[index].offset;
391 if (unlikely(zram_test_flag(zram, index, ZRAM_UNCOMPRESSED)))
401 index++;
464 size_t index;
477 for (index = 0; index < zram->disksize >> PAGE_SHIFT; index++) {
481 page = zram->table[index].page;
482 offset = zram->table[index].offset;
487 if (unlikely(zram_test_flag(zram, index, ZRAM_UNCOMPRESSED)))
645 void zram_slot_free_notify(struct block_device *bdev, unsigned long index)
650 zram_free_page(zram, index);