File: [Development] / xfs-cmds / xfsdump / restore / win.h (download)
Revision 1.6, Wed Nov 9 05:04:17 2005 UTC (11 years, 11 months ago) by nathans.longdrop.melbourne.sgi.com
Branch: MAIN
Changes since 1.5: +14 -28
lines
Update copyright annotations and license boilerplates to correspond with SGI Legals preferences.
Merge of master-melb:xfs-cmds:24334a by kenmcd.
|
/*
* Copyright (c) 2000-2001 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
*/
#ifndef WIN_H
#define WIN_H
/* win.[ch] - windows into a very large file
*/
/* initialize the window abstraction
*/
void win_init( intgen_t fd,
off64_t rngoff, /* offset into file of windowing */
size_t winsz, /* window size */
size_t wincntmax ); /* max number of windows to manage */
/* supply a pointer to the portion of the file identified by off.
*/
void win_map( off64_t off, /* file offset relative to rngoff */
void **pp ); /* returns pointer by reference */
/* invalidate the pointer previously supplied. SIDE-EFFECT: zeros
* by reference the caller's pointer.
*/
void win_unmap( off64_t off, /* must match win_map param */
void **pp ); /* ptr generated by win_map: ZEROED */
/*
* Functions used to disable the window locking from happening.
* This is used in the directory reconstruction phase where only
* one thread is actually executing this code.
*
* Assumes called in region where only 1 thread can execute it.
*/
void win_locks_off(void);
void win_locks_on(void);
/*
* Find out how many mmap calls were made for windows.
*/
size_t win_getnum_mmaps(void);
#endif /* WIN_H */