linux/fs/xfs/libxfs/xfs_ag.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2/*
   3 * Copyright (c) 2018 Red Hat, Inc.
   4 * All rights reserved.
   5 */
   6
   7#ifndef __LIBXFS_AG_H
   8#define __LIBXFS_AG_H 1
   9
  10struct xfs_mount;
  11struct xfs_trans;
  12
  13struct aghdr_init_data {
  14        /* per ag data */
  15        xfs_agblock_t           agno;           /* ag to init */
  16        xfs_extlen_t            agsize;         /* new AG size */
  17        struct list_head        buffer_list;    /* buffer writeback list */
  18        xfs_rfsblock_t          nfree;          /* cumulative new free space */
  19
  20        /* per header data */
  21        xfs_daddr_t             daddr;          /* header location */
  22        size_t                  numblks;        /* size of header */
  23        xfs_btnum_t             type;           /* type of btree root block */
  24};
  25
  26int xfs_ag_init_headers(struct xfs_mount *mp, struct aghdr_init_data *id);
  27int xfs_ag_extend_space(struct xfs_mount *mp, struct xfs_trans *tp,
  28                        struct aghdr_init_data *id, xfs_extlen_t len);
  29int xfs_ag_get_geometry(struct xfs_mount *mp, xfs_agnumber_t agno,
  30                        struct xfs_ag_geometry *ageo);
  31
  32#endif /* __LIBXFS_AG_H */
  33