Coda Distributed File System
|
#include <stdio.h>
#include <sys/types.h>
#include <sys/param.h>
#include <sys/stat.h>
#include <sys/time.h>
#include <netinet/in.h>
#include <struct.h>
#include <inodeops.h>
#include <unistd.h>
#include <stdlib.h>
#include "coda_string.h"
#include <lwp/lwp.h>
#include <rpc2/rpc2.h>
#include <rpc2/se.h>
#include <util.h>
#include <rvmlib.h>
#include <prs.h>
#include <al.h>
#include <vice.h>
#include <vmindex.h>
#include <srv.h>
#include <recov_vollog.h>
#include "coppend.h"
#include <lockqueue.h>
#include <vldb.h>
#include <vrdb.h>
#include <repio.h>
#include <vlist.h>
#include <callback.h>
#include "codaproc.h"
#include <codadir.h>
#include <nettohost.h>
#include <operations.h>
#include <res.h>
#include <resutil.h>
#include <rescomm.h>
#include <ops.h>
#include <timing.h>
#include "treeremove.h"
Classes | |
class | rmblk |
Macros | |
#define | EMPTYDIRBLOCKS 2 |
#define | MAX_HINTS 5 |
#define | ISCREATE(op) |
Functions | |
int | CmpPlus (AL_AccessEntry *a, AL_AccessEntry *b) |
int | CmpMinus (AL_AccessEntry *a, AL_AccessEntry *b) |
int | CheckWriteMode (ClientEntry *, Vnode *) |
int | FetchFileByFD (RPC2_Handle, int fd, ClientEntry *) |
int | GetSubTree (ViceFid *, Volume *, dlist *) EXCLUDES_TRANSACTION |
int | PerformTreeRemoval (struct DirEntry *, void *) EXCLUDES_TRANSACTION |
void | UpdateVVs (ViceVersionVector *, ViceVersionVector *, ViceVersionVector *) |
long | FS_ViceAllocFids (RPC2_Handle cid, VolumeId Vid, ViceDataType Type, ViceFidRange *Range) EXCLUDES_TRANSACTION |
long | FS_OldViceAllocFids (RPC2_Handle cid, VolumeId Vid, ViceDataType Type, ViceFidRange *Range, RPC2_Unsigned AllocHost, RPC2_CountedBS *PiggyBS) EXCLUDES_TRANSACTION |
long | FS_ViceCOP2 (RPC2_Handle cid, RPC2_CountedBS *PiggyBS) EXCLUDES_TRANSACTION |
long | FS_ViceResolve (RPC2_Handle cid, ViceFid *Fid) EXCLUDES_TRANSACTION |
long | FS_ViceSetVV (RPC2_Handle cid, ViceFid *Fid, ViceVersionVector *VV, RPC2_CountedBS *PiggyBS) EXCLUDES_TRANSACTION |
long | FS_ViceRepair (RPC2_Handle cid, ViceFid *Fid, ViceStatus *status, ViceStoreId *StoreId, SE_Descriptor *BD) EXCLUDES_TRANSACTION |
int | SetRights (Vnode *vptr, char *name, int rights) |
int | SetNRights (Vnode *vptr, char *name, int rights) |
int | PerformTreeRemoval (PDirEntry de, void *data) |
long | InternalCOP2 (RPC2_Handle cid, ViceStoreId *StoreId, ViceVersionVector *UpdateSet) |
void | NewCOP1Update (Volume *volptr, Vnode *vptr, ViceStoreId *StoreId, RPC2_Integer *vsptr, bool isReplicated) |
void | PollAndYield () |
long | FS_ViceGetVolVS (RPC2_Handle cid, VolumeId Vid, RPC2_Integer *VS, CallBackStatus *CBStatus) EXCLUDES_TRANSACTION |
void | GetMyVS (Volume *volptr, RPC2_CountedBS *VSList, RPC2_Integer *MyVS, int voltype) |
void | SetVSStatus (ClientEntry *client, Volume *volptr, RPC2_Integer *NewVS, CallBackStatus *VCBStatus, int voltype) |
long | FS_ViceValidateVols (RPC2_Handle cid, RPC2_Unsigned numVids, ViceVolumeIdStruct Vids[], RPC2_CountedBS *VSBS, RPC2_BoundedBS *VFlagBS) EXCLUDES_TRANSACTION |
Variables | |
ViceVersionVector | NullVV = { { 0, 0, 0, 0, 0, 0, 0, 0 }, { 0, 0 }, 0 } |
int | OngoingRepairs = 0 |
const int | MaxFidAlloc = 32 |
#define EMPTYDIRBLOCKS 2 |
#define ISCREATE | ( | op | ) |
#define MAX_HINTS 5 |
int CheckWriteMode | ( | ClientEntry * | client, |
Vnode * | vptr | ||
) |
int CmpMinus | ( | AL_AccessEntry * | a, |
AL_AccessEntry * | b | ||
) |
int CmpPlus | ( | AL_AccessEntry * | a, |
AL_AccessEntry * | b | ||
) |
int FetchFileByFD | ( | RPC2_Handle | RPCid, |
int | fd, | ||
ClientEntry * | client | ||
) |
long FS_OldViceAllocFids | ( | RPC2_Handle | cid, |
VolumeId | Vid, | ||
ViceDataType | Type, | ||
ViceFidRange * | Range, | ||
RPC2_Unsigned | AllocHost, | ||
RPC2_CountedBS * | PiggyBS | ||
) |
long FS_ViceAllocFids | ( | RPC2_Handle | cid, |
VolumeId | Vid, | ||
ViceDataType | Type, | ||
ViceFidRange * | Range | ||
) |
long FS_ViceCOP2 | ( | RPC2_Handle | cid, |
RPC2_CountedBS * | PiggyBS | ||
) |
long FS_ViceGetVolVS | ( | RPC2_Handle | cid, |
VolumeId | Vid, | ||
RPC2_Integer * | VS, | ||
CallBackStatus * | CBStatus | ||
) |
long FS_ViceRepair | ( | RPC2_Handle | cid, |
ViceFid * | Fid, | ||
ViceStatus * | status, | ||
ViceStoreId * | StoreId, | ||
SE_Descriptor * | BD | ||
) |
long FS_ViceResolve | ( | RPC2_Handle | cid, |
ViceFid * | Fid | ||
) |
long FS_ViceSetVV | ( | RPC2_Handle | cid, |
ViceFid * | Fid, | ||
ViceVersionVector * | VV, | ||
RPC2_CountedBS * | PiggyBS | ||
) |
long FS_ViceValidateVols | ( | RPC2_Handle | cid, |
RPC2_Unsigned | numVids, | ||
ViceVolumeIdStruct | Vids[], | ||
RPC2_CountedBS * | VSBS, | ||
RPC2_BoundedBS * | VFlagBS | ||
) |
void GetMyVS | ( | Volume * | volptr, |
RPC2_CountedBS * | VSList, | ||
RPC2_Integer * | MyVS, | ||
int | voltype | ||
) |
long InternalCOP2 | ( | RPC2_Handle | cid, |
ViceStoreId * | StoreId, | ||
ViceVersionVector * | UpdateSet | ||
) |
void NewCOP1Update | ( | Volume * | volptr, |
Vnode * | vptr, | ||
ViceStoreId * | StoreId, | ||
RPC2_Integer * | vsptr, | ||
bool | isReplicated | ||
) |
int PerformTreeRemoval | ( | PDirEntry | de, |
void * | data | ||
) |
int PerformTreeRemoval | ( | struct DirEntry * | , |
void * | |||
) |
void PollAndYield | ( | ) |
int SetNRights | ( | Vnode * | vptr, |
char * | name, | ||
int | rights | ||
) |
int SetRights | ( | Vnode * | vptr, |
char * | name, | ||
int | rights | ||
) |
void SetVSStatus | ( | ClientEntry * | client, |
Volume * | volptr, | ||
RPC2_Integer * | NewVS, | ||
CallBackStatus * | VCBStatus, | ||
int | voltype | ||
) |
void UpdateVVs | ( | ViceVersionVector * | VVV, |
ViceVersionVector * | VV, | ||
ViceVersionVector * | US | ||
) |
const int MaxFidAlloc = 32 |
ViceVersionVector NullVV = { { 0, 0, 0, 0, 0, 0, 0, 0 }, { 0, 0 }, 0 } |
int OngoingRepairs = 0 |