bcache.h (de1fafab649f944d97e45fc043b55a3a5a371744) | bcache.h (c954ac8d6610255b2fb11a30fb9ebb206f3da48d) |
---|---|
1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef _BCACHE_H 3#define _BCACHE_H 4 5/* 6 * SOME HIGH LEVEL CODE DOCUMENTATION: 7 * 8 * Bcache mostly works with cache sets, cache devices, and backing devices. --- 768 unchanged lines hidden (view full) --- 777 return n; 778} 779 780static inline unsigned int meta_bucket_bytes(struct cache_sb *sb) 781{ 782 return meta_bucket_pages(sb) << PAGE_SHIFT; 783} 784 | 1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef _BCACHE_H 3#define _BCACHE_H 4 5/* 6 * SOME HIGH LEVEL CODE DOCUMENTATION: 7 * 8 * Bcache mostly works with cache sets, cache devices, and backing devices. --- 768 unchanged lines hidden (view full) --- 777 return n; 778} 779 780static inline unsigned int meta_bucket_bytes(struct cache_sb *sb) 781{ 782 return meta_bucket_pages(sb) << PAGE_SHIFT; 783} 784 |
785#define prios_per_bucket(c) \ 786 ((bucket_bytes(c) - sizeof(struct prio_set)) / \ | 785#define prios_per_bucket(ca) \ 786 ((meta_bucket_bytes(&(ca)->sb) - sizeof(struct prio_set)) / \ |
787 sizeof(struct bucket_disk)) | 787 sizeof(struct bucket_disk)) |
788#define prio_buckets(c) \ 789 DIV_ROUND_UP((size_t) (c)->sb.nbuckets, prios_per_bucket(c)) | |
790 | 788 |
789#define prio_buckets(ca) \ 790 DIV_ROUND_UP((size_t) (ca)->sb.nbuckets, prios_per_bucket(ca)) 791 |
|
791static inline size_t sector_to_bucket(struct cache_set *c, sector_t s) 792{ 793 return s >> c->bucket_bits; 794} 795 796static inline sector_t bucket_to_sector(struct cache_set *c, size_t b) 797{ 798 return ((sector_t) b) << c->bucket_bits; --- 256 unchanged lines hidden --- | 792static inline size_t sector_to_bucket(struct cache_set *c, sector_t s) 793{ 794 return s >> c->bucket_bits; 795} 796 797static inline sector_t bucket_to_sector(struct cache_set *c, size_t b) 798{ 799 return ((sector_t) b) << c->bucket_bits; --- 256 unchanged lines hidden --- |