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/
28 * Lustre is a trademark of Sun Microsystems, Inc.
30 * lustre/include/lustre/lustre_rsync.h
34 #ifndef _LUSTRE_RSYNC_H_
35 #define _LUSTRE_RSYNC_H_
37 #define LR_NAME_MAXLEN 64
38 #define LR_FID_STR_LEN 128
40 /* Structure used by lustre_rsync. On-disk structures stored in a log
41 * file. This is used to determine the next start record and other
44 struct lustre_rsync_status {
45 __u32 ls_version; /* Version of the log entry */
46 __u32 ls_size; /* Size of the log entry */
47 __u64 ls_last_recno; /* Last replicated record no. */
48 char ls_registration[LR_NAME_MAXLEN + 1]; /* Changelog registration*/
49 char ls_mdt_device[LR_NAME_MAXLEN + 1]; /* MDT device */
50 char ls_source_fs[LR_NAME_MAXLEN + 1]; /* Source Lustre FS */
51 char ls_source[PATH_MAX + 1];/* Source FS path */
52 __u32 ls_num_targets; /* No of replication targets */
53 char ls_targets[0][PATH_MAX + 1]; /* Target FS path */
56 struct lr_parent_child_log {
57 char pcl_pfid[LR_FID_STR_LEN];
58 char pcl_tfid[LR_FID_STR_LEN];
59 char pcl_name[PATH_MAX];
62 #endif /* _LUSTRE_RSYNC_H_ */