Blame view

fs/xfs/xfs_sync.h 1.85 KB
a167b17e8   David Chinner   [XFS] move xfssyn...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  /*
   * Copyright (c) 2000-2006 Silicon Graphics, Inc.
   * All Rights Reserved.
   *
   * This program is free software; you can redistribute it and/or
   * modify it under the terms of the GNU General Public License as
   * published by the Free Software Foundation.
   *
   * This program is distributed in the hope that it would be useful,
   * but WITHOUT ANY WARRANTY; without even the implied warranty of
   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   * GNU General Public License for more details.
   *
   * You should have received a copy of the GNU General Public License
   * along with this program; if not, write the Free Software Foundation,
   * Inc.,  51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
   */
fe4fa4b8e   David Chinner   [XFS] move sync c...
18
19
  #ifndef XFS_SYNC_H
  #define XFS_SYNC_H 1
a167b17e8   David Chinner   [XFS] move xfssyn...
20
  struct xfs_mount;
fcafb71b5   Christoph Hellwig   xfs: get rid of i...
21
  struct xfs_perag;
a167b17e8   David Chinner   [XFS] move xfssyn...
22

8b5403a6d   Christoph Hellwig   xfs: remove SYNC_...
23
24
  #define SYNC_WAIT		0x0001	/* wait for i/o to complete */
  #define SYNC_TRYLOCK		0x0002  /* only try to lock inodes */
a167b17e8   David Chinner   [XFS] move xfssyn...
25

c6d09b666   Dave Chinner   xfs: introduce a ...
26
  extern struct workqueue_struct	*xfs_syncd_wq;	/* sync workqueue */
a167b17e8   David Chinner   [XFS] move xfssyn...
27
28
  int xfs_syncd_init(struct xfs_mount *mp);
  void xfs_syncd_stop(struct xfs_mount *mp);
e9f1c6ee1   David Chinner   [XFS] make SYNC_D...
29
  int xfs_quiesce_data(struct xfs_mount *mp);
76bf105cb   David Chinner   [XFS] Move remain...
30
  void xfs_quiesce_attr(struct xfs_mount *mp);
fe4fa4b8e   David Chinner   [XFS] move sync c...
31

a8d770d98   Dave Chinner   xfs: use xfs_sync...
32
  void xfs_flush_inodes(struct xfs_inode *ip);
a167b17e8   David Chinner   [XFS] move xfssyn...
33

be4f1ac82   Christoph Hellwig   xfs: log all dirt...
34
  int xfs_log_dirty_inode(struct xfs_inode *ip, struct xfs_perag *pag, int flags);
abc106474   Dave Chinner   xfs: remove unuse...
35
  int xfs_reclaim_inodes(struct xfs_mount *mp, int mode);
8daaa8314   Dave Chinner   xfs: make use of ...
36
37
  int xfs_reclaim_inodes_count(struct xfs_mount *mp);
  void xfs_reclaim_inodes_nr(struct xfs_mount *mp, int nr_to_scan);
fce08f2f3   David Chinner   [XFS] move inode ...
38

396beb853   David Chinner   [XFS] mark inodes...
39
  void xfs_inode_set_reclaim_tag(struct xfs_inode *ip);
bc990f5cb   Christoph Hellwig   xfs: fix locking ...
40
  void __xfs_inode_set_reclaim_tag(struct xfs_perag *pag, struct xfs_inode *ip);
396beb853   David Chinner   [XFS] mark inodes...
41
42
  void __xfs_inode_clear_reclaim_tag(struct xfs_mount *mp, struct xfs_perag *pag,
  				struct xfs_inode *ip);
fe588ed32   Christoph Hellwig   xfs: use generic ...
43

78ae52567   Dave Chinner   xfs: implement ba...
44
  int xfs_sync_inode_grab(struct xfs_inode *ip);
fe588ed32   Christoph Hellwig   xfs: use generic ...
45
46
  int xfs_inode_ag_iterator(struct xfs_mount *mp,
  	int (*execute)(struct xfs_inode *ip, struct xfs_perag *pag, int flags),
65d0f2053   Dave Chinner   xfs: split inode ...
47
  	int flags);
9bf729c0a   Dave Chinner   xfs: add a shrink...
48

fe4fa4b8e   David Chinner   [XFS] move sync c...
49
  #endif