void f_dput(struct dentry *);
struct dentry *filter_fid2dentry(struct obd_device *, struct dentry *dir,
obd_mode mode, obd_id id);
-struct dentry *__filter_oa2dentry(struct obd_device *obd,struct obdo *oa,
- char *what);
+struct dentry *__filter_oa2dentry(struct obd_device *obd, struct obdo *oa,
+ const char *what);
#define filter_oa2dentry(obd, oa) __filter_oa2dentry(obd, oa, __FUNCTION__)
int filter_finish_transno(struct obd_export *, struct obd_trans_info *, int rc);
obd_id oid, obd_count ogen, struct llog_cookie *);
int filter_log_op_orphan(struct llog_handle *cathandle, obd_id oid,
obd_count ogen, struct llog_cookie *);
+struct llog_handle *filter_get_catalog(struct obd_device *);
+void filter_put_catalog(struct llog_handle *cathandle);
/* filter_san.c */
int filter_san_setup(struct obd_device *obd, obd_count len, void *buf);
LASSERT(to <= PAGE_SIZE);
err = page->mapping->a_ops->commit_write(NULL, page, from, to);
+#warning 2.4 folks: wait_on_page_locked does NOT return its error here.
if (!err && IS_SYNC(inode))
- err = wait_on_page_locked(page);
+ wait_on_page_locked(page);
//SetPageUptodate(page); // the client commit_write will do this
SetPageReferenced(page);
/* This page is currently locked, so get a temporary page instead. */
if (page == NULL) {
- CDEBUG(D_ERROR,"ino %lu page %ld locked\n", inode->i_ino,index);
+ CDEBUG(D_INFO, "ino %lu page %ld locked\n", inode->i_ino,index);
page = alloc_pages(GFP_KERNEL, 0); /* locked page */
if (page == NULL) {
CERROR("no memory for a temp page\n");
goto retry;
}
- rc = vfs_create(dparent->d_inode, dchild, S_IFREG);
+ rc = ll_vfs_create(dparent->d_inode, dchild, S_IFREG, NULL);
if (rc) {
CERROR("log create failed rc = %d\n", rc);
GOTO(out_child, rc);
}
/* This is called from filter_setup() and should be single threaded */
-static struct llog_handle *filter_get_catalog(struct obd_device *obd)
+struct llog_handle *filter_get_catalog(struct obd_device *obd)
{
struct filter_obd *filter = &obd->u.filter;
struct filter_server_data *fsd = filter->fo_fsd;
goto out;
}
-static void filter_put_catalog(struct llog_handle *cathandle)
+void filter_put_catalog(struct llog_handle *cathandle)
{
struct llog_handle *loghandle, *n;
int rc;