linux/fs/ocfs2/localalloc.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-or-later */
   2/*
   3 * localalloc.h
   4 *
   5 * Function prototypes
   6 *
   7 * Copyright (C) 2002, 2004 Oracle.  All rights reserved.
   8 */
   9
  10#ifndef OCFS2_LOCALALLOC_H
  11#define OCFS2_LOCALALLOC_H
  12
  13int ocfs2_load_local_alloc(struct ocfs2_super *osb);
  14
  15void ocfs2_shutdown_local_alloc(struct ocfs2_super *osb);
  16
  17void ocfs2_la_set_sizes(struct ocfs2_super *osb, int requested_mb);
  18unsigned int ocfs2_la_default_mb(struct ocfs2_super *osb);
  19
  20int ocfs2_begin_local_alloc_recovery(struct ocfs2_super *osb,
  21                                     int node_num,
  22                                     struct ocfs2_dinode **alloc_copy);
  23
  24int ocfs2_complete_local_alloc_recovery(struct ocfs2_super *osb,
  25                                        struct ocfs2_dinode *alloc);
  26
  27int ocfs2_alloc_should_use_local(struct ocfs2_super *osb,
  28                                 u64 bits);
  29
  30struct ocfs2_alloc_context;
  31int ocfs2_reserve_local_alloc_bits(struct ocfs2_super *osb,
  32                                   u32 bits_wanted,
  33                                   struct ocfs2_alloc_context *ac);
  34
  35int ocfs2_claim_local_alloc_bits(struct ocfs2_super *osb,
  36                                 handle_t *handle,
  37                                 struct ocfs2_alloc_context *ac,
  38                                 u32 bits_wanted,
  39                                 u32 *bit_off,
  40                                 u32 *num_bits);
  41
  42int ocfs2_free_local_alloc_bits(struct ocfs2_super *osb,
  43                                handle_t *handle,
  44                                struct ocfs2_alloc_context *ac,
  45                                u32 bit_off,
  46                                u32 num_bits);
  47
  48void ocfs2_local_alloc_seen_free_bits(struct ocfs2_super *osb,
  49                                      unsigned int num_clusters);
  50void ocfs2_la_enable_worker(struct work_struct *work);
  51
  52#endif /* OCFS2_LOCALALLOC_H */
  53