Lines Matching defs:swap_info_struct
301 struct swap_info_struct { struct
302 struct percpu_ref users; /* indicate and keep swap device valid. */
303 unsigned long flags; /* SWP_USED etc: see above */
304 signed short prio; /* swap priority of this type */
305 struct plist_node list; /* entry in swap_active_head */
306 signed char type; /* strange name for an index */
307 unsigned int max; /* extent of the swap_map */
308 unsigned char *swap_map; /* vmalloc'ed array of usage counts */
309 unsigned long *zeromap; /* kvmalloc'ed bitmap to track zero pages */
310 struct swap_cluster_info *cluster_info; /* cluster info. Only for SSD */
311 struct list_head free_clusters; /* free clusters list */
312 struct list_head full_clusters; /* full clusters list */
313 struct list_head nonfull_clusters[SWAP_NR_ORDERS];
315 struct list_head frag_clusters[SWAP_NR_ORDERS];
317 atomic_long_t frag_cluster_nr[SWAP_NR_ORDERS];
318 unsigned int pages; /* total of usable pages of swap */
319 atomic_long_t inuse_pages; /* number of those currently in use */
320 struct percpu_cluster __percpu *percpu_cluster; /* per cpu's swap location */
321 struct percpu_cluster *global_cluster; /* Use one global cluster for rotating device */
322 spinlock_t global_cluster_lock; /* Serialize usage of global cluster */
323 struct rb_root swap_extent_root;/* root of the swap extent rbtree */
324 struct block_device *bdev; /* swap device or bdev of swap file */
325 struct file *swap_file; /* seldom referenced */
326 struct completion comp; /* seldom referenced */
327 spinlock_t lock; /*
340 spinlock_t cont_lock; /*
344 struct work_struct discard_work; /* discard worker */
345 struct work_struct reclaim_work; /* reclaim worker */
346 struct list_head discard_clusters; /* discard clusters list */
347 struct plist_node avail_lists[]; /*