blob: b567e12c52d30af3d4fe9c2eb83723468cca2698 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
Dave Kleikamp63f83c92006-10-02 09:55:27 -05002 * Copyright (C) International Business Machines Corp., 2000-2001
Linus Torvalds1da177e2005-04-16 15:20:36 -07003 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
Dave Kleikamp63f83c92006-10-02 09:55:27 -05006 * the Free Software Foundation; either version 2 of the License, or
Linus Torvalds1da177e2005-04-16 15:20:36 -07007 * (at your option) any later version.
Dave Kleikamp63f83c92006-10-02 09:55:27 -05008 *
Linus Torvalds1da177e2005-04-16 15:20:36 -07009 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
12 * the GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
Dave Kleikamp63f83c92006-10-02 09:55:27 -050015 * along with this program; if not, write to the Free Software
Linus Torvalds1da177e2005-04-16 15:20:36 -070016 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 */
18#ifndef _H_JFS_EXTENT
19#define _H_JFS_EXTENT
20
21/* get block allocation allocation hint as location of disk inode */
22#define INOHINT(ip) \
23 (addressPXD(&(JFS_IP(ip)->ixpxd)) + lengthPXD(&(JFS_IP(ip)->ixpxd)) - 1)
24
Richard Knutsson4d817152006-09-30 23:27:14 -070025extern int extAlloc(struct inode *, s64, s64, xad_t *, bool);
Linus Torvalds1da177e2005-04-16 15:20:36 -070026extern int extFill(struct inode *, xad_t *);
27extern int extHint(struct inode *, s64, xad_t *);
Richard Knutsson4d817152006-09-30 23:27:14 -070028extern int extRealloc(struct inode *, s64, xad_t *, bool);
Linus Torvalds1da177e2005-04-16 15:20:36 -070029extern int extRecord(struct inode *, xad_t *);
30
31#endif /* _H_JFS_EXTENT */