"Fossies" - the Fresh Open Source Software Archive

Member "glusterfs-6.9/xlators/cluster/afr/src/afr-transaction.h" (23 Apr 2020, 2079 Bytes) of package /linux/misc/glusterfs-6.9.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "afr-transaction.h" see the Fossies "Dox" file reference documentation.

    1 /*
    2   Copyright (c) 2008-2012 Red Hat, Inc. <http://www.redhat.com>
    3   This file is part of GlusterFS.
    4 
    5   This file is licensed to you under your choice of the GNU Lesser
    6   General Public License, version 3 or any later version (LGPLv3 or
    7   later), or the GNU General Public License, version 2 (GPLv2), in all
    8   cases as published by the Free Software Foundation.
    9 */
   10 
   11 #ifndef __TRANSACTION_H__
   12 #define __TRANSACTION_H__
   13 
   14 #include "afr.h"
   15 
   16 void
   17 afr_transaction_fop_failed(call_frame_t *frame, xlator_t *this,
   18                            int child_index);
   19 
   20 int32_t
   21 afr_transaction(call_frame_t *frame, xlator_t *this, afr_transaction_type type);
   22 
   23 int
   24 afr_set_pending_dict(afr_private_t *priv, dict_t *xattr, int32_t **pending);
   25 
   26 void
   27 afr_delayed_changelog_wake_up(xlator_t *this, fd_t *fd);
   28 
   29 void
   30 __mark_all_success(call_frame_t *frame, xlator_t *this);
   31 
   32 gf_boolean_t
   33 afr_txn_nothing_failed(call_frame_t *frame, xlator_t *this);
   34 
   35 int
   36 afr_read_txn(call_frame_t *frame, xlator_t *this, inode_t *inode,
   37              afr_read_txn_wind_t readfn, afr_transaction_type type);
   38 
   39 int
   40 afr_read_txn_continue(call_frame_t *frame, xlator_t *this, int subvol);
   41 
   42 void
   43 afr_pending_read_increment(afr_private_t *priv, int child_index);
   44 
   45 void
   46 afr_pending_read_decrement(afr_private_t *priv, int child_index);
   47 
   48 call_frame_t *
   49 afr_transaction_detach_fop_frame(call_frame_t *frame);
   50 gf_boolean_t
   51 afr_has_quorum(unsigned char *subvols, xlator_t *this, call_frame_t *frame);
   52 gf_boolean_t
   53 afr_needs_changelog_update(afr_local_t *local);
   54 void
   55 afr_zero_fill_stat(afr_local_t *local);
   56 
   57 void
   58 afr_pick_error_xdata(afr_local_t *local, afr_private_t *priv, inode_t *inode1,
   59                      unsigned char *readable1, inode_t *inode2,
   60                      unsigned char *readable2);
   61 int
   62 afr_transaction_resume(call_frame_t *frame, xlator_t *this);
   63 
   64 int
   65 afr_lock(call_frame_t *frame, xlator_t *this);
   66 
   67 void
   68 afr_delayed_changelog_wake_up_cbk(void *data);
   69 
   70 int
   71 afr_release_notify_lock_for_ta(void *opaque);
   72 
   73 int
   74 afr_ta_lock_release_done(int ret, call_frame_t *ta_frame, void *opaque);
   75 #endif /* __TRANSACTION_H__ */