#include <linux/module.h>
#include <asm/unaligned.h>
#include <linux/dynlocks.h>
-
/*
* linux/include/linux/osd_iam.h
*/
};
#ifdef __KERNEL__
-/* handle_t, journal_start(), journal_stop() */
-#include <linux/jbd.h>
/*
* Debugging.
* Underlying flat file. IO against this object is issued to
* read/write nodes.
*/
- struct inode *ic_object;
+ struct inode *ic_object;
/*
* container flavor.
*/
- struct iam_descr *ic_descr;
+ struct iam_descr *ic_descr;
/*
* read-write lock protecting index consistency.
*/
- struct rw_semaphore ic_sem;
+ cfs_rw_semaphore_t ic_sem;
};
/*
return path->ip_data->ipd_key_scratch[nr];
}
+
static inline struct dynlock *path_dynlock(struct iam_path *path)
{
return &LDISKFS_I(iam_path_obj(path))->i_htree_lock;
int iam_node_read(struct iam_container *c, iam_ptr_t ptr,
handle_t *handle, struct buffer_head **bh);
-int iam_lvar_create(struct inode *obj, int keysize, int ptrsize,
- int recsize, handle_t *handle);
-int iam_lfix_create(struct inode *obj, int keysize, int ptrsize,
- int recsize, handle_t *handle);
+int iam_lvar_create(struct inode *obj,
+ int keysize, int ptrsize, int recsize, handle_t *handle);
#ifndef swap
#define swap(x, y) do { typeof(x) z = x; x = y; y = z; } while (0)
{
DX_DEVAL(iam_lock_stats.dls_bh_lock++);
#ifdef CONFIG_SMP
- while (test_and_set_bit(BH_DXLock, &bh->b_state)) {
+ while (cfs_test_and_set_bit(BH_DXLock, &bh->b_state)) {
DX_DEVAL(iam_lock_stats.dls_bh_busy++);
- while (test_bit(BH_DXLock, &bh->b_state))
+ while (cfs_test_bit(BH_DXLock, &bh->b_state))
cpu_relax();
}
#endif
/*
* Linkage into global list of container formats.
*/
- struct list_head if_linkage;
+ cfs_list_t if_linkage;
};
void iam_format_register(struct iam_format *fmt);
void iam_lvar_format_init(void);
void iam_htree_format_init(void);
+int iam_lfix_create(struct inode *obj,
+ int keysize, int ptrsize, int recsize, handle_t *handle);
struct iam_private_info;
void ldiskfs_iam_release(struct file *filp, struct inode *inode);