4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 only,
8 * as published by the Free Software Foundation.
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * General Public License version 2 for more details (a copy is included
14 * in the LICENSE file that accompanied this code).
16 * You should have received a copy of the GNU General Public License
17 * version 2 along with this program; If not, see
18 * http://www.gnu.org/licenses/gpl-2.0.html
23 * Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
24 * Use is subject to license terms.
27 * This file is part of Lustre, http://www.lustre.org/
29 * lustre/include/lustre/lustre_rsync.h
33 #ifndef _LUSTRE_RSYNC_H_
34 #define _LUSTRE_RSYNC_H_
36 #define LR_NAME_MAXLEN 64
37 #define LR_FID_STR_LEN 128
39 /* Structure used by lustre_rsync. On-disk structures stored in a log
40 * file. This is used to determine the next start record and other
43 struct lustre_rsync_status {
44 __u32 ls_version; /* Version of the log entry */
45 __u32 ls_size; /* Size of the log entry */
46 __u64 ls_last_recno; /* Last replicated record no. */
47 char ls_registration[LR_NAME_MAXLEN + 1]; /* Changelog registration*/
48 char ls_mdt_device[LR_NAME_MAXLEN + 1]; /* MDT device */
49 char ls_source_fs[LR_NAME_MAXLEN + 1]; /* Source Lustre FS */
50 char ls_source[PATH_MAX + 1];/* Source FS path */
51 __u32 ls_num_targets; /* No of replication targets */
52 char ls_targets[0][PATH_MAX + 1]; /* Target FS path */
55 struct lr_parent_child_log {
56 char pcl_pfid[LR_FID_STR_LEN];
57 char pcl_tfid[LR_FID_STR_LEN];
58 char pcl_name[PATH_MAX];
61 #endif /* _LUSTRE_RSYNC_H_ */