diff options
author | Daniel Drake <dsd@gentoo.org> | 2006-10-14 13:56:56 +0000 |
---|---|---|
committer | Daniel Drake <dsd@gentoo.org> | 2006-10-14 13:56:56 +0000 |
commit | 0d29cfb701ad2e2309c485f6aa114179c136f670 (patch) | |
tree | a7cc35772036a6a8d9c965e536a9c8c7009b16ab /sys-fs | |
parent | Fix compile problem with USE=qt3 when Qt4 is installed (#114872). Compilation... (diff) | |
download | historical-0d29cfb701ad2e2309c485f6aa114179c136f670.tar.gz historical-0d29cfb701ad2e2309c485f6aa114179c136f670.tar.bz2 historical-0d29cfb701ad2e2309c485f6aa114179c136f670.zip |
Add 2.6.18 compatibility patch, tested by Phillip Berndt and Simonas Leleiva in bug #148381
Package-Manager: portage-2.1.2_pre2-r9
Diffstat (limited to 'sys-fs')
-rw-r--r-- | sys-fs/submount/ChangeLog | 7 | ||||
-rw-r--r-- | sys-fs/submount/Manifest | 30 | ||||
-rw-r--r-- | sys-fs/submount/files/submount-0.9-2.6.18.patch | 154 | ||||
-rw-r--r-- | sys-fs/submount/submount-0.9-r2.ebuild | 5 |
4 files changed, 176 insertions, 20 deletions
diff --git a/sys-fs/submount/ChangeLog b/sys-fs/submount/ChangeLog index 51240d11b4bf..aa5453c69438 100644 --- a/sys-fs/submount/ChangeLog +++ b/sys-fs/submount/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for sys-fs/submount # Copyright 2000-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/submount/ChangeLog,v 1.20 2006/08/18 10:12:46 phreak Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-fs/submount/ChangeLog,v 1.21 2006/10/14 13:56:56 dsd Exp $ + + 14 Oct 2006; Daniel Drake <dsd@gentoo.org> + +files/submount-0.9-2.6.18.patch, submount-0.9-r2.ebuild: + Add 2.6.18 compatibility patch, tested by Phillip Berndt and Simonas Leleiva + in bug #148381 18 Aug 2006; Christian Heim <phreak@gentoo.org> metadata.xml: Reassigning the package to kernel@g.o, the x86-kernel bugzilla-alias is diff --git a/sys-fs/submount/Manifest b/sys-fs/submount/Manifest index 90fea71e2f93..f21fb7797167 100644 --- a/sys-fs/submount/Manifest +++ b/sys-fs/submount/Manifest @@ -1,20 +1,21 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - +AUX submount-0.9-2.6.18.patch 4620 RMD160 753e80144566c59a475dfef278d4e2fc5d463d30 SHA1 8f5f2489920be8cfd1f9ea54b869b7998f56b3e7 SHA256 6690f7722a2f26051240b07a13ee0c0771f4228649005e4a943c12932ae32458 +MD5 5a15107b0be83f81f9c94b1760caac57 files/submount-0.9-2.6.18.patch 4620 +RMD160 753e80144566c59a475dfef278d4e2fc5d463d30 files/submount-0.9-2.6.18.patch 4620 +SHA256 6690f7722a2f26051240b07a13ee0c0771f4228649005e4a943c12932ae32458 files/submount-0.9-2.6.18.patch 4620 AUX submount-0.9-sem2mutex.patch 1164 RMD160 4af8161dc6eb5317e1f14845e506c9976e3e65bc SHA1 86a83040cf00b57a3976562ee159b4adf51b3c25 SHA256 ef4a24d39c95e0e6d474ebc9bce9741a9b3edc446e5d3ea9ba2874865955fd78 MD5 ef98bc688f9dee82aae9db84f21542bd files/submount-0.9-sem2mutex.patch 1164 RMD160 4af8161dc6eb5317e1f14845e506c9976e3e65bc files/submount-0.9-sem2mutex.patch 1164 SHA256 ef4a24d39c95e0e6d474ebc9bce9741a9b3edc446e5d3ea9ba2874865955fd78 files/submount-0.9-sem2mutex.patch 1164 DIST submount-0.9.tar.gz 75476 RMD160 5ab49645abc51ba8bd252ab63bfb2ee88205111b SHA1 f182f68f63323b233122ae24421446357b28e19a SHA256 914452d95b7766633ca12e12dd4cb0a9a98d71e7c08ed20c3077da363cef2fd9 DIST submount-2.4-0.9.tar.gz 88203 RMD160 a22bbf652836a68f74a02c539f942ed601e28870 SHA1 4b342d690ba41141dd10613994686ba607b80b20 SHA256 37888b2304991e8ff710de316740ff3f60e3b0794d988578bfebe74ef734b83b -EBUILD submount-0.9-r2.ebuild 1503 RMD160 05c5ae6da3f9127f7b61878b2e2d08c879e41e64 SHA1 863670df33a5cf61fcf3c51a3f8f884464deb920 SHA256 8d3524f92f89c28c52b2164a75f80d226ad6e9d3e42f88433e25c3050f439466 -MD5 776977f8dba405aa0b4fcf8b1daa67bb submount-0.9-r2.ebuild 1503 -RMD160 05c5ae6da3f9127f7b61878b2e2d08c879e41e64 submount-0.9-r2.ebuild 1503 -SHA256 8d3524f92f89c28c52b2164a75f80d226ad6e9d3e42f88433e25c3050f439466 submount-0.9-r2.ebuild 1503 -MISC ChangeLog 2862 RMD160 9d85ccfa06833717e130d78e57fe7085cf4211de SHA1 1ccdaba2b865fd8ca9eef508dea7ff7a5f4fe51f SHA256 01e13b1d03aeec2ef62e5e0ef9171678735a851485733e450024931b6d252dae -MD5 a7d4e7a966dfad430a46a1143598ece4 ChangeLog 2862 -RMD160 9d85ccfa06833717e130d78e57fe7085cf4211de ChangeLog 2862 -SHA256 01e13b1d03aeec2ef62e5e0ef9171678735a851485733e450024931b6d252dae ChangeLog 2862 +EBUILD submount-0.9-r2.ebuild 1580 RMD160 cb6de91a95549cb72361d3f6d2a5e79ca52b23e1 SHA1 1a8ba7682190406412e9268b1de300ee4ac7d576 SHA256 1b8a0c5452defb13eb14af26248016fea6d4fcc69595206fbedde42b48f590c0 +MD5 f7989b6ad6bcf5c92a78b080b2b1af63 submount-0.9-r2.ebuild 1580 +RMD160 cb6de91a95549cb72361d3f6d2a5e79ca52b23e1 submount-0.9-r2.ebuild 1580 +SHA256 1b8a0c5452defb13eb14af26248016fea6d4fcc69595206fbedde42b48f590c0 submount-0.9-r2.ebuild 1580 +MISC ChangeLog 3061 RMD160 ad60ed57454c129d42081fe21bc4a6172a6c06b1 SHA1 f1f59fe7d91e6c0373bd0f230dd16153fa7ee2fa SHA256 b10c478a5c251d34872d394d129069b869450dbf9e0f71869c1670ef5151751a +MD5 6e0fc1b0db3c9eb127122c36dd11bfcc ChangeLog 3061 +RMD160 ad60ed57454c129d42081fe21bc4a6172a6c06b1 ChangeLog 3061 +SHA256 b10c478a5c251d34872d394d129069b869450dbf9e0f71869c1670ef5151751a ChangeLog 3061 MISC metadata.xml 317 RMD160 6d5afa7fd5c7d83928e3176b9fa3128e72a4ecaa SHA1 3ce092630ed3273552ea893818dd240292968706 SHA256 ba4d28906073d50a42bc48d26c7c0c3d875ac485e8f41d7f8d87b3ba7bbfdd34 MD5 90821bcb65c5089c9970076ae5e3cc9c metadata.xml 317 RMD160 6d5afa7fd5c7d83928e3176b9fa3128e72a4ecaa metadata.xml 317 @@ -22,10 +23,3 @@ SHA256 ba4d28906073d50a42bc48d26c7c0c3d875ac485e8f41d7f8d87b3ba7bbfdd34 metadata MD5 159b619c79c36c4e0f6cb94573440f8b files/digest-submount-0.9-r2 482 RMD160 2fec30ca24cb7733c219c4e7999e5364738850af files/digest-submount-0.9-r2 482 SHA256 377c4bf13f3ca08eccdeb7f398c32b49bbf67238749c4f2ed762ced2ed1848ae files/digest-submount-0.9-r2 482 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.4.5 (GNU/Linux) - -iD8DBQFE5ZKmyuNVb5qfaOYRAnDkAJ96IcPYPq0UZokDJoasx8nIElWuuACgu3ba -AVYux+0ySRmN8aq5bvbbXGQ= -=EKHu ------END PGP SIGNATURE----- diff --git a/sys-fs/submount/files/submount-0.9-2.6.18.patch b/sys-fs/submount/files/submount-0.9-2.6.18.patch new file mode 100644 index 000000000000..77ceb7a91b3d --- /dev/null +++ b/sys-fs/submount/files/submount-0.9-2.6.18.patch @@ -0,0 +1,154 @@ +From: Daniel Drake <dsd@gentoo.org> + +Index: submount-0.9/subfs-0.9/subfs.c +=================================================================== +--- submount-0.9.orig/subfs-0.9/subfs.c ++++ submount-0.9/subfs-0.9/subfs.c +@@ -26,6 +26,7 @@ + #include <linux/signal.h> + #include <linux/sched.h> + #include <linux/version.h> ++#include <linux/rcupdate.h> + + #include "subfs.h" + +@@ -95,11 +96,11 @@ static void subfs_send_signal(void) + struct task_struct *task = current; + int signal = SIGCONT; + +- read_lock(&tasklist_lock); ++ rcu_read_lock(); + spin_lock_irq(&task->sighand->siglock); + sigaddset(&task->pending.signal, signal); + spin_unlock_irq(&task->sighand->siglock); +- read_unlock(&tasklist_lock); ++ rcu_read_unlock(); + set_tsk_thread_flag(task, TIF_SIGPENDING); + return; + } +@@ -279,9 +280,15 @@ static int subfs_open(struct inode *inod + + /* Implements the statfs method so df and such will work on the mountpoint. + */ ++#ifdef NEW_VFS_ROOT_DENTRY_API ++static int subfs_statfs(struct dentry *dentry, struct kstatfs *buf) ++{ ++ struct subfs_mount *sfs_mnt = dentry->d_sb->s_fs_info; ++#else + static int subfs_statfs(struct super_block *sb, struct kstatfs *buf) + { + struct subfs_mount *sfs_mnt = sb->s_fs_info; ++#endif + struct vfsmount *child; + if (down_interruptible(&sfs_mnt->sem)) + return -ERESTARTSYS; +@@ -405,33 +412,61 @@ static int proc_opts(struct subfs_mount + * subfs_mount structure is pointed to by the s_fs_info field of the + * superblock structure. + */ ++#ifdef NEW_VFS_ROOT_DENTRY_API ++static int subfs_get_super(struct file_system_type *fst, ++ int flags, const char *devname, void *data, ++ struct vfsmount *mnt) ++#else + static struct super_block *subfs_get_super(struct file_system_type *fst, + int flags, const char *devname, void *data) ++#endif + { + char *device; + struct subfs_mount *newmount; + int ret; + +- if (!(newmount = kmalloc(sizeof(struct subfs_mount), GFP_KERNEL))) +- return ERR_PTR(-ENOMEM); ++ if (!(newmount = kmalloc(sizeof(struct subfs_mount), GFP_KERNEL))) { ++ ret = -ENOMEM; ++ goto err; ++ } + newmount->req_fs = NULL; + newmount->sb = NULL; + newmount->mount = NULL; + newmount->procuid = 0; + sema_init(&newmount->sem, 1); +- if (!(device = kmalloc((strlen(devname) + 1), GFP_KERNEL))) +- return ERR_PTR(-ENOMEM); ++ if (!(device = kmalloc((strlen(devname) + 1), GFP_KERNEL))) { ++ ret = -ENOMEM; ++ goto err; ++ } + strcpy(device, devname); + newmount->device = device; + if (!(newmount->helper_prog = +- kmalloc(sizeof(SUBMOUNTD_PATH), GFP_KERNEL))) +- return ERR_PTR(-ENOMEM); ++ kmalloc(sizeof(SUBMOUNTD_PATH), GFP_KERNEL))) { ++ ret = -ENOMEM; ++ goto err; ++ } + strcpy(newmount->helper_prog, SUBMOUNTD_PATH); + if ((ret = proc_opts(newmount, data))) +- return ERR_PTR(ret); ++ goto err; ++#ifdef NEW_VFS_ROOT_DENTRY_API ++ ret = get_sb_nodev(fst, flags, data, subfs_fill_super, mnt); ++ if (ret) ++ goto err; ++ newmount->sb = mnt->mnt_sb; ++ newmount->sb->s_fs_info = newmount; ++ return ret; ++#else + newmount->sb = get_sb_nodev(fst, flags, data, subfs_fill_super); + newmount->sb->s_fs_info = newmount; + return newmount->sb; ++#endif ++ ++err: ++#ifdef NEW_VFS_ROOT_DENTRY_API ++ return ret; ++#else ++ return ERR_PTR(ret); ++#endif + } + + +Index: submount-0.9/subfs-0.9/subfs.h +=================================================================== +--- submount-0.9.orig/subfs-0.9/subfs.h ++++ submount-0.9/subfs-0.9/subfs.h +@@ -19,6 +19,10 @@ + + #define ROOT_MODE 0777 + ++#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,17) ++#define NEW_VFS_ROOT_DENTRY_API ++#endif ++ + struct subfs_mount { + char *device; + char *options; +@@ -33,8 +37,17 @@ struct subfs_mount { + + + static void subfs_kill_super(struct super_block *sb); ++ ++#ifdef NEW_VFS_ROOT_DENTRY_API ++static int subfs_get_super(struct file_system_type *fst, ++ int flags, const char *devname, void *data, struct vfsmount *mnt); ++static int subfs_statfs(struct dentry *dentry, struct kstatfs *buf); ++#else + static struct super_block *subfs_get_super(struct file_system_type *fst, + int flags, const char *devname, void *data); ++static int subfs_statfs(struct super_block *sb, struct kstatfs *buf); ++#endif ++ + static struct vfsmount *get_subfs_vfsmount(struct super_block *sb); + static int subfs_fill_super(struct super_block *sb, void *data, + int silent); +@@ -47,7 +60,6 @@ static int mount_real_fs(struct subfs_mo + static void subfs_send_signal(void); + static void subfs_set_fs_pwd(struct fs_struct *fs, struct vfsmount *mnt, + struct dentry *dentry); +-static int subfs_statfs(struct super_block *sb, struct kstatfs *buf); + + + static struct file_system_type subfs_type = { diff --git a/sys-fs/submount/submount-0.9-r2.ebuild b/sys-fs/submount/submount-0.9-r2.ebuild index 8d7a6f3824bd..4fc9b5530cf6 100644 --- a/sys-fs/submount/submount-0.9-r2.ebuild +++ b/sys-fs/submount/submount-0.9-r2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/submount/submount-0.9-r2.ebuild,v 1.8 2006/03/25 14:07:54 dsd Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-fs/submount/submount-0.9-r2.ebuild,v 1.9 2006/10/14 13:56:56 dsd Exp $ inherit linux-mod eutils @@ -40,6 +40,9 @@ src_unpack() { # Fix compile on 2.6.16, bug #119538 epatch ${FILESDIR}/${P}-sem2mutex.patch + + # Fix compile on 2.6.18, bug #148381 + epatch ${FILESDIR}/${P}-2.6.18.patch } src_compile() { |