Roman Muñoz wrote:
> Hi, is there any patch recommended to make unionfs work with -RT patch?
>
> I see a thread about it, but it is not very clear to me. I understand
> that is quite an inconvenience to have various posibilities -kernel
> witouth -RT, kernel with -RT but not activated, kernel with -RT patch
> applied and activated...
>
> I could live with it if there were a patch to unionfs capable to make
> it compile with RT patch applied-and-activated.
>
> Could you give me any poiter?
>
> Thanks,
>
> Roman
Hi Roman

I just applied the unionfs patch 2.2.3 to a 2.6.23-r14 kernel. There is
only one change needed to the patch file before application.

To make this change edit the file

        unionfs-2.2.3_for_2.6.23.14.diff.gz

and search for the string 'nrpages'. There is only one instance at about
line 9006 in the function

        static void unionfs_delete_inode(struct inode *inode)

The function is
+
+/*
+ * we now define delete_inode, because there are two VFS paths that may
+ * destroy an inode: one of them calls clear inode before doing everything
+ * else that's needed, and the other is fine.  This way we truncate the
inode
+ * size (and its pages) and then clear our own inode, which will do an iput
+ * on our and the lower inode.
+ *
+ * No need to lock sb info's rwsem.
+ */
+static void unionfs_delete_inode(struct inode *inode)
+{
+#if BITS_PER_LONG == 32 && defined(CONFIG_SMP)
+       spin_lock(&inode->i_lock);
+#endif
+       i_size_write(inode, 0); /* every f/s seems to do that */
+#if BITS_PER_LONG == 32 && defined(CONFIG_SMP)
+       spin_unlock(&inode->i_lock);
+#endif
+
+       if (inode->i_data.nrpages)
+               truncate_inode_pages(&inode->i_data, 0);
+
+       clear_inode(inode);
+}

Change the one line mentioning nrpages to 2 lines (the original is
commented out):

+       //if (inode->i_data.nrpages)
+       if (mapping_nrpages(&inode->i_data))

Save and apply the patch as normal. Your RT kernel should compile
successfully.

Regards Paul



-- 
Technical Director, GCCS
Tel: 086 111 3433 Fax: 086 111 3520 Cel: 076 072 7906
web: http://www.gccs.co.za


_______________________________________________
unionfs mailing list: http://unionfs.filesystems.org/
unionfs@mail.fsl.cs.sunysb.edu
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs

Reply via email to