Update to novfs 2.0.0

This commit is contained in:
geos_one 2007-01-26 22:34:44 +00:00
parent 2f6ff04893
commit e7d32311b6
10 changed files with 33586 additions and 5 deletions

View File

@ -1,7 +1,16 @@
# ChangeLog for net-fs/novell-novfs
# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
26 Jan 2007; Mario Fetka <mario-fetka@gmx.at>
+files/novell-novfs-1.2.0_to_2.0.0.patch,
+novell-novfs-2.0.0_p2.ebuild, +files/novell-novfs-2.0.0-config_h.patch,
+files/novell-novfs-2.0.0-dont_use_tasklist_lock.patch,
+files/novell-novfs-2.0.0-generic_file_read.patch,
+files/novell-novfs-2.0.0-i_blksize.patch,
+files/novell-novfs-2.0.0-u.generic_ip.patch:
Update to novfs 2.0.0
18 Oct 2006; Mario Fetka <mario-fetka@gmx.at>
-novell-novfs-1.2.0_p17-r1.ebuild, +novell-novfs-1.2.0_p17-r2.ebuild,
-files/novell-novfs-1.2.0-2.6.17.patch,

View File

@ -18,15 +18,43 @@ AUX novell-novfs-1.2.0-license.patch 18620 RMD160 0685ae1d2fe1b88872f83aac50dd54
MD5 9e1367517129a2381c4b29ba27f32052 files/novell-novfs-1.2.0-license.patch 18620
RMD160 0685ae1d2fe1b88872f83aac50dd545a90ec0bc3 files/novell-novfs-1.2.0-license.patch 18620
SHA256 e6e2c5c13b3f4fb6225532d53c1de264d6d3994fe86277b6ab15b4910c140c35 files/novell-novfs-1.2.0-license.patch 18620
AUX novell-novfs-1.2.0_to_2.0.0.patch 934748 RMD160 83cf2e11354171acc045b3571e08654e082833fc SHA1 f6982ddf4f018baaeafbc5f19457b5ed52817643 SHA256 5a53ea406ac75848301a2d4d2e6f64a2610e1be5901de7638cdac18fb1db4667
MD5 e835b754e6295e6c912284f19a53fa1e files/novell-novfs-1.2.0_to_2.0.0.patch 934748
RMD160 83cf2e11354171acc045b3571e08654e082833fc files/novell-novfs-1.2.0_to_2.0.0.patch 934748
SHA256 5a53ea406ac75848301a2d4d2e6f64a2610e1be5901de7638cdac18fb1db4667 files/novell-novfs-1.2.0_to_2.0.0.patch 934748
AUX novell-novfs-2.0.0-config_h.patch 387 RMD160 c029426c8cfe7d6f8c63aefa3f94c801c8f397d8 SHA1 b43868344bc1d0d93ed12b325278a85fe49da767 SHA256 6ef79f82f4fbc2e15e0e914767166a9e7424426bc6a2a8a6597f6cc33738e17c
MD5 ce1ba8bd6c62ed620571dfd89e97eb9c files/novell-novfs-2.0.0-config_h.patch 387
RMD160 c029426c8cfe7d6f8c63aefa3f94c801c8f397d8 files/novell-novfs-2.0.0-config_h.patch 387
SHA256 6ef79f82f4fbc2e15e0e914767166a9e7424426bc6a2a8a6597f6cc33738e17c files/novell-novfs-2.0.0-config_h.patch 387
AUX novell-novfs-2.0.0-dont_use_tasklist_lock.patch 697 RMD160 a431437c46ba7ae8dd2105f785533d07c632e353 SHA1 c35467e9646d196e6a13f8edf19a266a9f42c512 SHA256 57e09616338ef0d6c8084b31eb5faf4acdcf8a2789a95462dde11e4bc7832818
MD5 d37acca52d7eed5a32fc59ce0c03027f files/novell-novfs-2.0.0-dont_use_tasklist_lock.patch 697
RMD160 a431437c46ba7ae8dd2105f785533d07c632e353 files/novell-novfs-2.0.0-dont_use_tasklist_lock.patch 697
SHA256 57e09616338ef0d6c8084b31eb5faf4acdcf8a2789a95462dde11e4bc7832818 files/novell-novfs-2.0.0-dont_use_tasklist_lock.patch 697
AUX novell-novfs-2.0.0-generic_file_read.patch 749 RMD160 5e57f0392dfa973fc94100c032463292347b883c SHA1 b2f985d366c1031fbc3d664d8933fabb61e2fe0a SHA256 9783dc6082597175af79073ec32e550210907cc7b0f1130d43cf65c9fed6d419
MD5 ad0967dafd28c60736f5bacd80431300 files/novell-novfs-2.0.0-generic_file_read.patch 749
RMD160 5e57f0392dfa973fc94100c032463292347b883c files/novell-novfs-2.0.0-generic_file_read.patch 749
SHA256 9783dc6082597175af79073ec32e550210907cc7b0f1130d43cf65c9fed6d419 files/novell-novfs-2.0.0-generic_file_read.patch 749
AUX novell-novfs-2.0.0-i_blksize.patch 2920 RMD160 8ae931e01954ee69288ece87bf67bafb81172ae3 SHA1 728aa3f689fbfe64966b78d54e85a2dd9df0ba58 SHA256 5fa30bf88f252e07481f03b2e875cfaff639d017f8f20c356930e973bf6e3740
MD5 763e227d6b1ba5218633a2bc5d08402b files/novell-novfs-2.0.0-i_blksize.patch 2920
RMD160 8ae931e01954ee69288ece87bf67bafb81172ae3 files/novell-novfs-2.0.0-i_blksize.patch 2920
SHA256 5fa30bf88f252e07481f03b2e875cfaff639d017f8f20c356930e973bf6e3740 files/novell-novfs-2.0.0-i_blksize.patch 2920
AUX novell-novfs-2.0.0-u.generic_ip.patch 24168 RMD160 37046de7e80c853327f2865f45f05458970feea9 SHA1 01b9aada0bdcd411e9b152c65b6fcdc591b3dd9b SHA256 950b959d82a21902ac0579bbb8721fc22a0813bd4ed5e0bf1ee835b1ad8dfbca
MD5 95fe1b20b61bda4152c6140ef7b07241 files/novell-novfs-2.0.0-u.generic_ip.patch 24168
RMD160 37046de7e80c853327f2865f45f05458970feea9 files/novell-novfs-2.0.0-u.generic_ip.patch 24168
SHA256 950b959d82a21902ac0579bbb8721fc22a0813bd4ed5e0bf1ee835b1ad8dfbca files/novell-novfs-2.0.0-u.generic_ip.patch 24168
DIST novell-client-1.2-SLE10.tar.gz 13963983 RMD160 98a0aa1ecd9c4f36c158fa2cce77f51927d2f693 SHA1 14278f74c8226afabc0c602bdc31d4e20acff6b9 SHA256 ddf55b7a757a4f4e104c4aefb04639f4022d43c31171d0a914d1b765d6e78241
EBUILD novell-novfs-1.2.0_p17-r2.ebuild 1489 RMD160 ceb5173d5207ef5de76a81299baaaf16c3db9ce4 SHA1 2d7a71e11c7fd9477e3546e2c0383a46e4fcdb08 SHA256 662bf378500afaa0d561f6779ef9a67c7d68a4b8215bef128b402dd976478592
MD5 656ac481e9df037933ac960dbff7055e novell-novfs-1.2.0_p17-r2.ebuild 1489
RMD160 ceb5173d5207ef5de76a81299baaaf16c3db9ce4 novell-novfs-1.2.0_p17-r2.ebuild 1489
SHA256 662bf378500afaa0d561f6779ef9a67c7d68a4b8215bef128b402dd976478592 novell-novfs-1.2.0_p17-r2.ebuild 1489
MISC ChangeLog 999 RMD160 4f77e534464f968a067785085aa17753f6a3fe7d SHA1 2b49e4067542fcffe97f3955b16573fb1fa130ce SHA256 c7a9bc989c2665e5700c4112d4cc7f0e40d9464c28ee43f9f844bed0b291130d
MD5 a7b5d13e1012cc93be895e2c8d459532 ChangeLog 999
RMD160 4f77e534464f968a067785085aa17753f6a3fe7d ChangeLog 999
SHA256 c7a9bc989c2665e5700c4112d4cc7f0e40d9464c28ee43f9f844bed0b291130d ChangeLog 999
EBUILD novell-novfs-2.0.0_p2.ebuild 1555 RMD160 22b10dc232d47fb23783ac59fd39576f5e06b63b SHA1 a61b70010717297cd8e5ea15906cad4ad85edb7b SHA256 46721a52d5d4ad0b8a0bb048aee3e2f5689730209a4aa2f229507ea3be45ee1c
MD5 c26f538973a4b4dc22a95fb3b0a0b716 novell-novfs-2.0.0_p2.ebuild 1555
RMD160 22b10dc232d47fb23783ac59fd39576f5e06b63b novell-novfs-2.0.0_p2.ebuild 1555
SHA256 46721a52d5d4ad0b8a0bb048aee3e2f5689730209a4aa2f229507ea3be45ee1c novell-novfs-2.0.0_p2.ebuild 1555
MISC ChangeLog 1342 RMD160 23786f799a6d783fc533b8c9542b541d787f7aab SHA1 e64ca10d54f8cb5f91ef7861431c9b9a1bba0378 SHA256 3ed62003b6977d444e0d98f194575432423402e88f18437064b053b7280a8855
MD5 d668e2d81331acb7233358f640394cc1 ChangeLog 1342
RMD160 23786f799a6d783fc533b8c9542b541d787f7aab ChangeLog 1342
SHA256 3ed62003b6977d444e0d98f194575432423402e88f18437064b053b7280a8855 ChangeLog 1342
MISC metadata.xml 170 RMD160 645927a396fdc21cdeb089fe42c5397332420ea6 SHA1 ac7f48a14fec325926f9ce1be8fbf1f311b4f2e4 SHA256 d797a2ec6f9dc516c9f9c1a758ee87ad3e8c43101b5dc76c2f872d5bd4639b42
MD5 1e678929a9fec6632e227bdf2262e9a1 metadata.xml 170
RMD160 645927a396fdc21cdeb089fe42c5397332420ea6 metadata.xml 170
@ -34,3 +62,6 @@ SHA256 d797a2ec6f9dc516c9f9c1a758ee87ad3e8c43101b5dc76c2f872d5bd4639b42 metadata
MD5 dcdc80c8269e53d3a5ecd72aa4034a06 files/digest-novell-novfs-1.2.0_p17-r2 277
RMD160 4767389e6f47ba8fb5b8907a954b9f80ce106b78 files/digest-novell-novfs-1.2.0_p17-r2 277
SHA256 aa21d5b182ad571f4bedf0694cc608f211146d09e0af2bdd1addd6415a2bf0b8 files/digest-novell-novfs-1.2.0_p17-r2 277
MD5 dcdc80c8269e53d3a5ecd72aa4034a06 files/digest-novell-novfs-2.0.0_p2 277
RMD160 4767389e6f47ba8fb5b8907a954b9f80ce106b78 files/digest-novell-novfs-2.0.0_p2 277
SHA256 aa21d5b182ad571f4bedf0694cc608f211146d09e0af2bdd1addd6415a2bf0b8 files/digest-novell-novfs-2.0.0_p2 277

View File

@ -0,0 +1,3 @@
MD5 2aab6c7358a733d1d8d9a4e893500a36 novell-client-1.2-SLE10.tar.gz 13963983
RMD160 98a0aa1ecd9c4f36c158fa2cce77f51927d2f693 novell-client-1.2-SLE10.tar.gz 13963983
SHA256 ddf55b7a757a4f4e104c4aefb04639f4022d43c31171d0a914d1b765d6e78241 novell-client-1.2-SLE10.tar.gz 13963983

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,12 @@
Index: novfs-2.0.0/src/inode.c
===================================================================
--- novfs-2.0.0.orig/src/inode.c
+++ novfs-2.0.0/src/inode.c
@@ -29,7 +29,6 @@
/*===[ Include files specific to Linux ]==================================*/
#include <linux/module.h>
-#include <linux/config.h>
#include <linux/init.h>
#include <linux/fs.h>
#include <linux/dcache.h>

View File

@ -0,0 +1,21 @@
diff -uNr novfs-1.2.0.orig/novfs/scope.c novfs-1.2.0/novfs/scope.c
--- novfs-1.2.0.orig/src/scope.c 2006-08-30 22:32:57.000000000 +0200
+++ novfs-1.2.0/src/scope.c 2006-10-15 16:35:47.000000000 +0200
@@ -869,7 +869,7 @@
sl = sl->next;
rscope = NULL;
- read_lock(&tasklist_lock);
+ rcu_read_lock();
for_each_process(task)
{
if ( (task->uid == scope->ScopeUid) || (task->euid == scope->ScopeUid) )
@@ -878,7 +878,7 @@
break;
}
}
- read_unlock(&tasklist_lock);
+ rcu_read_unlock();
if ( !rscope )
{
list_move( &scope->ScopeList, &cleanup );

View File

@ -0,0 +1,22 @@
Index: novfs-2.0.0/src/inode.c
===================================================================
--- novfs-2.0.0.orig/src/inode.c
+++ novfs-2.0.0/src/inode.c
@@ -1629,7 +1629,7 @@ ssize_t Novfs_f_read(struct file *file,
!(file->f_flags & O_DIRECT) &&
id->CacheFlag )
{
- totalread = generic_file_read(file, buf, len, off);
+ totalread = do_sync_read(file, buf, len, off);
}
else
{
@@ -1693,7 +1693,7 @@ ssize_t Novfs_f_write(struct file *file,
!(file->f_flags & O_DIRECT) &&
id->CacheFlag )
{
- totalwrite = generic_file_write(file, buf, len, off);
+ totalwrite = do_sync_write(file, buf, len, off);
}
else
{

View File

@ -0,0 +1,67 @@
---
src/inode.c | 14 ++++++--------
1 file changed, 6 insertions(+), 8 deletions(-)
Index: novfs-2.0.0/src/inode.c
===================================================================
--- novfs-2.0.0.orig/src/inode.c
+++ novfs-2.0.0/src/inode.c
@@ -1731,7 +1731,7 @@ ssize_t Novfs_f_write(struct file *file,
if (offset > i_size_read(inode))
{
i_size_write(inode, offset);
- inode->i_blocks = (offset + inode->i_blksize - 1) >> inode->i_blkbits;
+ inode->i_blocks = (offset + inode->i_sb->s_blocksize - 1) >> inode->i_blkbits;
}
inode->i_mtime = inode->i_atime = CURRENT_TIME;
id->Flags |= UPDATE_INODE;
@@ -2913,12 +2913,12 @@ void update_inode(struct inode *Inode, P
Inode->i_ctime = Info->ctime;
Inode->i_mtime = Info->mtime;
- if (Inode->i_size && Inode->i_blksize)
+ if (Inode->i_size && Inode->i_sb->s_blocksize)
{
Inode->i_blocks = (u_long)(Info->size >> (loff_t)Inode->i_blkbits);
- Inode->i_bytes = Info->size & (Inode->i_blksize - 1);
+ Inode->i_bytes = Info->size & (Inode->i_sb->s_blocksize - 1);
- DbgPrint("update_inode: i_blksize=%d\n", Inode->i_blksize);
+ DbgPrint("update_inode: i_blksize=%d\n", Inode->i_sb->s_blocksize);
DbgPrint("update_inode: i_blkbits=%d\n", Inode->i_blkbits);
DbgPrint("update_inode: i_blocks=%d\n", Inode->i_blocks);
DbgPrint("update_inode: i_bytes=%d\n", Inode->i_bytes);
@@ -3604,7 +3604,7 @@ int Novfs_i_getattr(struct vfsmount *mnt
kstat->atime = inode->i_atime;
kstat->mtime = inode->i_mtime;
kstat->ctime = inode->i_ctime;
- kstat->blksize = inode->i_blksize;
+ kstat->blksize = inode->i_sb->s_blocksize;
kstat->blocks = inode->i_blocks;
if (inode->i_bytes)
{
@@ -3909,7 +3909,6 @@ struct inode *Novfs_get_inode(struct sup
inode->i_mode = mode;
inode->i_uid = Uid;
inode->i_gid = 0;
- inode->i_blksize = sb->s_blocksize;
inode->i_blkbits = sb->s_blocksize_bits;
inode->i_blocks = 0;
inode->i_rdev = 0;
@@ -3962,7 +3961,6 @@ struct inode *Novfs_get_inode(struct sup
case S_IFDIR:
inode->i_op = &Novfs_inode_operations;
inode->i_fop = &Novfs_dir_operations;
- inode->i_blksize = 0;
inode->i_blkbits = 0;
break;
@@ -3973,7 +3971,7 @@ struct inode *Novfs_get_inode(struct sup
DbgPrint("Novfs_get_inode: size=%lld\n", inode->i_size);
DbgPrint("Novfs_get_inode: mode=0%o\n", inode->i_mode);
- DbgPrint("Novfs_get_inode: i_blksize=%d\n", inode->i_blksize);
+ DbgPrint("Novfs_get_inode: i_blksize=%d\n", inode->i_sb->s_blocksize);
DbgPrint("Novfs_get_inode: i_blkbits=%d\n", inode->i_blkbits);
DbgPrint("Novfs_get_inode: i_blocks=%d\n", inode->i_blocks);
DbgPrint("Novfs_get_inode: i_bytes=%d\n", inode->i_bytes);

View File

@ -0,0 +1,609 @@
---
src/inode.c | 194 ++++++++++++++++++++++++++++++------------------------------
1 file changed, 97 insertions(+), 97 deletions(-)
Index: novfs-2.0.0/src/inode.c
===================================================================
--- novfs-2.0.0.orig/src/inode.c
+++ novfs-2.0.0/src/inode.c
@@ -422,9 +422,9 @@ int Novfs_Remove_from_Root(char *RemoveN
dentry = d_lookup( Novfs_root, &name);
if (dentry)
{
- if (dentry->d_inode && dentry->d_inode->u.generic_ip)
+ if (dentry->d_inode && dentry->d_inode->i_private)
{
- ((PINODE_DATA)(dentry->d_inode->u.generic_ip))->Scope = NULL;
+ ((PINODE_DATA)(dentry->d_inode->i_private))->Scope = NULL;
}
dput(dentry);
}
@@ -535,9 +535,9 @@ int Novfs_Add_to_Root2(char *AddName)
inode->i_mtime = CURRENT_TIME;
if ( !Novfs_d_add(Novfs_root, entry, inode, 1))
{
- if (inode->u.generic_ip)
+ if (inode->i_private)
{
- ((PINODE_DATA)inode->u.generic_ip)->Flags = USER_INODE;
+ ((PINODE_DATA)inode->i_private)->Flags = USER_INODE;
}
PRINT_DENTRY("After Novfs_d_add", entry);
}
@@ -651,7 +651,7 @@ int verify_dentry( struct dentry *dentry
if ( dentry && dentry->d_parent &&
(dir = dentry->d_parent->d_inode) &&
- (id = dir->u.generic_ip) )
+ (id = dir->i_private) )
{
parent = dget_parent(dentry);
@@ -675,7 +675,7 @@ int verify_dentry( struct dentry *dentry
/*
* Values don't match so update.
*/
- ((PINODE_DATA)inode->u.generic_ip)->Flags |= UPDATE_INODE;
+ ((PINODE_DATA)inode->i_private)->Flags |= UPDATE_INODE;
}
ctime = get_jiffies_64() - ctime;
@@ -776,9 +776,9 @@ int verify_dentry( struct dentry *dentry
id->Flags &= ~UPDATE_INODE;
dentry->d_inode->i_flags &= ~S_DEAD;
- if (dentry->d_inode->u.generic_ip)
+ if (dentry->d_inode->i_private)
{
- ((PINODE_DATA)dentry->d_inode->u.generic_ip)->Scope = id->Scope;
+ ((PINODE_DATA)dentry->d_inode->i_private)->Scope = id->Scope;
}
}
}
@@ -877,9 +877,9 @@ int Novfs_d_add(struct dentry *Parent, s
Novfs_Free(buf);
}
- if ( Parent && Parent->d_inode && Parent->d_inode->u.generic_ip)
+ if ( Parent && Parent->d_inode && Parent->d_inode->i_private)
{
- id = (PINODE_DATA)Parent->d_inode->u.generic_ip;
+ id = (PINODE_DATA)Parent->d_inode->i_private;
}
if (id && id->Scope)
@@ -891,7 +891,7 @@ int Novfs_d_add(struct dentry *Parent, s
scope = Scope_Get_ScopefromPath( d );
}
- ((PINODE_DATA)i->u.generic_ip)->Scope = scope;
+ ((PINODE_DATA)i->i_private)->Scope = scope;
d->d_time = jiffies+(File_update_timeout*HZ);
if (a)
@@ -944,7 +944,7 @@ int Novfs_d_revalidate(struct dentry *de
if ( dentry->d_inode &&
dentry->d_parent &&
(dir = dentry->d_parent->d_inode) &&
- (id = dir->u.generic_ip) )
+ (id = dir->i_private) )
{
/*
* Check timer to see if in valid time limit
@@ -1399,15 +1399,15 @@ int Novfs_dir_readdir(struct file * file
{
if (!file->private_data)
{
- if ( inode && inode->u.generic_ip )
+ if ( inode && inode->i_private )
{
- sessionId = Scope_Get_SessionId(((PINODE_DATA)inode->u.generic_ip)->Scope);
+ sessionId = Scope_Get_SessionId(((PINODE_DATA)inode->i_private)->Scope);
if (0 == sessionId)
{
- ((PINODE_DATA)inode->u.generic_ip)->Scope = Scope_Get_ScopefromPath(file->f_dentry);
- sessionId = Scope_Get_SessionId(((PINODE_DATA)inode->u.generic_ip)->Scope);
+ ((PINODE_DATA)inode->i_private)->Scope = Scope_Get_ScopefromPath(file->f_dentry);
+ sessionId = Scope_Get_SessionId(((PINODE_DATA)inode->i_private)->Scope);
}
- uid = Scope_Get_Uid(((PINODE_DATA)inode->u.generic_ip)->Scope);
+ uid = Scope_Get_Uid(((PINODE_DATA)inode->i_private)->Scope);
}
else
{
@@ -1501,9 +1501,9 @@ int Novfs_dir_readdir(struct file * file
struct inode *dinode = file->private_data;
PINODE_DATA id = (PINODE_DATA)((char *)file->private_data+sizeof(struct inode));
- dinode->u.generic_ip = id;
+ dinode->i_private = id;
- id->Scope = ((PINODE_DATA)inode->u.generic_ip)->Scope;
+ id->Scope = ((PINODE_DATA)inode->i_private)->Scope;
id->Flags = 0;
INIT_LIST_HEAD( &id->DirCache );
init_MUTEX( &id->DirCacheLock );
@@ -1616,7 +1616,7 @@ ssize_t Novfs_f_read(struct file *file,
if ( file->f_dentry &&
(inode = file->f_dentry->d_inode) &&
- (id = (PINODE_DATA)inode->u.generic_ip))
+ (id = (PINODE_DATA)inode->i_private))
{
DbgPrint("Novfs_f_read(0x%x 0x%p %d %lld %.*s)\n",
@@ -1685,7 +1685,7 @@ ssize_t Novfs_f_write(struct file *file,
if ( file->f_dentry &&
(inode = file->f_dentry->d_inode) &&
- (id = file->f_dentry->d_inode->u.generic_ip) )
+ (id = file->f_dentry->d_inode->i_private) )
{
DbgPrint("Novfs_f_write(0x%x %d %lld %.*s)\n", (unsigned long)file->private_data, len, offset, file->f_dentry->d_name.len, file->f_dentry->d_name.name);
@@ -1844,9 +1844,9 @@ int Novfs_f_open(struct inode *inode, st
DbgPrint("Novfs_f_open: %.*s f_flags=0%o f_mode=0%o i_mode=0%o\n", file->f_dentry->d_name.len, file->f_dentry->d_name.name, file->f_flags, file->f_mode, inode->i_mode);
}
- if (inode && inode->u.generic_ip)
+ if (inode && inode->i_private)
{
- id = (PINODE_DATA)file->f_dentry->d_inode->u.generic_ip;
+ id = (PINODE_DATA)file->f_dentry->d_inode->i_private;
session = Scope_Get_SessionId(id->Scope);
if (0 == session)
{
@@ -1888,7 +1888,7 @@ int Novfs_f_open(struct inode *inode, st
ino = 0;
if (Novfs_get_entry(dir, &file->f_dentry->d_name, &ino, info))
{
- ((PINODE_DATA)inode->u.generic_ip)->Flags |= UPDATE_INODE;
+ ((PINODE_DATA)inode->i_private)->Flags |= UPDATE_INODE;
}
Novfs_unlock_inode_cache(dir);
@@ -1956,7 +1956,7 @@ int Novfs_f_release(struct inode *inode,
file->f_dentry->d_name.name,
(unsigned long)file->private_data);
- if ( file->f_dentry->d_inode && (id = file->f_dentry->d_inode->u.generic_ip))
+ if ( file->f_dentry->d_inode && (id = file->f_dentry->d_inode->i_private))
{
session = Scope_Get_SessionId(id->Scope);
if (0 == session)
@@ -2109,13 +2109,13 @@ int Novfs_a_writepage(struct page* page,
{
int retCode = -EFAULT;
struct inode *inode = page->mapping->host;
- PINODE_DATA id = inode->u.generic_ip;
+ PINODE_DATA id = inode->i_private;
loff_t pos = ((loff_t)page->index << PAGE_CACHE_SHIFT);
session_t session=0;
DATA_LIST dlst[2];
size_t len = PAGE_CACHE_SIZE;
- session = Scope_Get_SessionId(((PINODE_DATA)inode->u.generic_ip)->Scope);
+ session = Scope_Get_SessionId(((PINODE_DATA)inode->i_private)->Scope);
page_cache_get(page);
@@ -2185,10 +2185,10 @@ int Novfs_a_writepages(struct address_sp
{
DbgPrint(" Inode=0x%x Ino=%d\n", inode, inode->i_ino);
- if (inode->u.generic_ip)
+ if (inode->i_private)
{
- session = Scope_Get_SessionId(((PINODE_DATA)inode->u.generic_ip)->Scope);
- fh = ((PINODE_DATA)inode->u.generic_ip)->FileHandle;
+ session = Scope_Get_SessionId(((PINODE_DATA)inode->i_private)->Scope);
+ fh = ((PINODE_DATA)inode->i_private)->FileHandle;
}
}
@@ -2427,13 +2427,13 @@ int Novfs_a_readpage(struct file *file,
{
DbgPrint(" Inode=0x%x Ino=%d", inode, inode->i_ino);
- if (inode->u.generic_ip)
+ if (inode->i_private)
{
- session = Scope_Get_SessionId(((PINODE_DATA)inode->u.generic_ip)->Scope);
+ session = Scope_Get_SessionId(((PINODE_DATA)inode->i_private)->Scope);
if (0 == session)
{
- ((PINODE_DATA)inode->u.generic_ip)->Scope = Scope_Get_ScopefromPath( file->f_dentry );
- session = Scope_Get_SessionId(((PINODE_DATA)inode->u.generic_ip)->Scope);
+ ((PINODE_DATA)inode->i_private)->Scope = Scope_Get_ScopefromPath( file->f_dentry );
+ session = Scope_Get_SessionId(((PINODE_DATA)inode->i_private)->Scope);
}
}
}
@@ -2519,13 +2519,13 @@ int Novfs_a_readpages(struct file *file,
{
DbgPrint(" Inode=0x%x Ino=%d\n", inode, inode->i_ino);
- if (inode->u.generic_ip)
+ if (inode->i_private)
{
- session = Scope_Get_SessionId(((PINODE_DATA)inode->u.generic_ip)->Scope);
+ session = Scope_Get_SessionId(((PINODE_DATA)inode->i_private)->Scope);
if (0 == session)
{
- ((PINODE_DATA)inode->u.generic_ip)->Scope = Scope_Get_ScopefromPath( file->f_dentry );
- session = Scope_Get_SessionId(((PINODE_DATA)inode->u.generic_ip)->Scope);
+ ((PINODE_DATA)inode->i_private)->Scope = Scope_Get_ScopefromPath( file->f_dentry );
+ session = Scope_Get_SessionId(((PINODE_DATA)inode->i_private)->Scope);
}
}
}
@@ -2653,13 +2653,13 @@ int Novfs_a_prepare_write(struct file *f
*/
if (file->f_dentry && file->f_dentry->d_inode)
{
- if (file->f_dentry->d_inode->u.generic_ip)
+ if (file->f_dentry->d_inode->i_private)
{
- session = Scope_Get_SessionId(((PINODE_DATA)inode->u.generic_ip)->Scope);
+ session = Scope_Get_SessionId(((PINODE_DATA)inode->i_private)->Scope);
if (0 == session)
{
- ((PINODE_DATA)inode->u.generic_ip)->Scope = Scope_Get_ScopefromPath( file->f_dentry );
- session = Scope_Get_SessionId(((PINODE_DATA)inode->u.generic_ip)->Scope);
+ ((PINODE_DATA)inode->i_private)->Scope = Scope_Get_ScopefromPath( file->f_dentry );
+ session = Scope_Get_SessionId(((PINODE_DATA)inode->i_private)->Scope);
}
}
}
@@ -2741,7 +2741,7 @@ int Novfs_a_commit_write(struct file *fi
size_t len = to - offset;
DbgPrint("Novfs_a_commit_write: File=0x%p Page=0x%p offset=0x%x To=%u filesize=%lld\n", file, page, offset, to, i_size_read(file->f_dentry->d_inode));
- if (file->f_dentry->d_inode && (id = file->f_dentry->d_inode->u.generic_ip))
+ if (file->f_dentry->d_inode && (id = file->f_dentry->d_inode->i_private))
{
session = Scope_Get_SessionId(id->Scope);
if (0 == session)
@@ -2836,13 +2836,13 @@ int Novfs_i_create(struct inode *dir, st
if (mode | S_IFREG)
{
- if (dir->u.generic_ip)
+ if (dir->i_private)
{
- session = Scope_Get_SessionId( ((PINODE_DATA)dir->u.generic_ip)->Scope);
+ session = Scope_Get_SessionId( ((PINODE_DATA)dir->i_private)->Scope);
if (0 == session)
{
- ((PINODE_DATA)dir->u.generic_ip)->Scope = Scope_Get_ScopefromPath( dentry );
- session = Scope_Get_SessionId(((PINODE_DATA)dir->u.generic_ip)->Scope);
+ ((PINODE_DATA)dir->i_private)->Scope = Scope_Get_ScopefromPath( dentry );
+ session = Scope_Get_SessionId(((PINODE_DATA)dir->i_private)->Scope);
}
buf = (char *)Novfs_Malloc(PATH_LENGTH_BUFFER, GFP_KERNEL);
@@ -2859,7 +2859,7 @@ int Novfs_i_create(struct inode *dir, st
{
if (dentry->d_inode)
{
- ((PINODE_DATA)dentry->d_inode->u.generic_ip)->Flags |= UPDATE_INODE;
+ ((PINODE_DATA)dentry->d_inode->i_private)->Flags |= UPDATE_INODE;
}
}
}
@@ -2951,7 +2951,7 @@ struct dentry * Novfs_i_lookup(struct in
DbgPrint("Novfs_i_lookup: dir 0x%x %d name %.*s hash %d inode 0x%0p\n", dir, dir->i_ino, dentry->d_name.len, dentry->d_name.name, dentry->d_name.hash, dentry->d_inode);
- if (dir && (id = dir->u.generic_ip) )
+ if (dir && (id = dir->i_private) )
{
retVal = 0;
if ( IS_ROOT( dentry ))
@@ -3066,13 +3066,13 @@ int Novfs_i_unlink(struct inode *dir, st
if ( inode )
{
DbgPrint("Novfs_i_unlink: dir=0x%x dir->i_ino=%d inode=0x%x ino=%d\n", dir, dir->i_ino, inode, inode->i_ino);
- if (inode->u.generic_ip)
+ if (inode->i_private)
{
- session = Scope_Get_SessionId(((PINODE_DATA)inode->u.generic_ip)->Scope);
+ session = Scope_Get_SessionId(((PINODE_DATA)inode->i_private)->Scope);
if (0 == session)
{
- ((PINODE_DATA)inode->u.generic_ip)->Scope = Scope_Get_ScopefromPath( dentry );
- session = Scope_Get_SessionId(((PINODE_DATA)inode->u.generic_ip)->Scope);
+ ((PINODE_DATA)inode->i_private)->Scope = Scope_Get_ScopefromPath( dentry );
+ session = Scope_Get_SessionId(((PINODE_DATA)inode->i_private)->Scope);
}
buf = (char *)Novfs_Malloc(PATH_LENGTH_BUFFER, GFP_KERNEL);
@@ -3142,16 +3142,16 @@ int Novfs_i_mkdir(struct inode *dir, str
mode |= S_IFDIR;
mode &= (S_IFMT | S_IRWXU);
- if ( dir->u.generic_ip )
+ if ( dir->i_private )
{
- session = Scope_Get_SessionId( ((PINODE_DATA)dir->u.generic_ip)->Scope);
+ session = Scope_Get_SessionId( ((PINODE_DATA)dir->i_private)->Scope);
if (0 == session)
{
- ((PINODE_DATA)dir->u.generic_ip)->Scope = Scope_Get_ScopefromPath( dentry );
- session = Scope_Get_SessionId(((PINODE_DATA)dir->u.generic_ip)->Scope);
+ ((PINODE_DATA)dir->i_private)->Scope = Scope_Get_ScopefromPath( dentry );
+ session = Scope_Get_SessionId(((PINODE_DATA)dir->i_private)->Scope);
}
- uid = Scope_Get_Uid( ((PINODE_DATA)dir->u.generic_ip)->Scope);
+ uid = Scope_Get_Uid( ((PINODE_DATA)dir->i_private)->Scope);
buf = (char *)Novfs_Malloc(PATH_LENGTH_BUFFER, GFP_KERNEL);
if (buf)
{
@@ -3170,7 +3170,7 @@ int Novfs_i_mkdir(struct inode *dir, str
if (inode)
{
update_inode(inode, &info);
- ((PINODE_DATA)inode->u.generic_ip)->Flags &= ~UPDATE_INODE;
+ ((PINODE_DATA)inode->i_private)->Flags &= ~UPDATE_INODE;
dentry->d_time = jiffies+(File_update_timeout*HZ);
@@ -3238,9 +3238,9 @@ int Novfs_i_mknod(struct inode *dir, str
return(-EACCES);
}
- if ( ((PINODE_DATA)dir->u.generic_ip) )
+ if ( ((PINODE_DATA)dir->i_private) )
{
- uid = Scope_Get_Uid( ((PINODE_DATA)dir->u.generic_ip)->Scope);
+ uid = Scope_Get_Uid( ((PINODE_DATA)dir->i_private)->Scope);
if (mode & (S_IFREG | S_IFDIR))
{
inode = Novfs_get_inode(dir->i_sb, mode, dev, uid, 0, &dentry->d_name);
@@ -3344,27 +3344,27 @@ int Novfs_i_rename(struct inode *odir, s
if ( !Novfs_d_strcmp(&newname, &oldname))
{
- if ( od->d_inode && od->d_inode->u.generic_ip )
+ if ( od->d_inode && od->d_inode->i_private )
{
- if (nd->d_inode && nd->d_inode->u.generic_ip)
+ if (nd->d_inode && nd->d_inode->i_private)
{
- session = Scope_Get_SessionId(((PINODE_DATA)ndir->u.generic_ip)->Scope);
+ session = Scope_Get_SessionId(((PINODE_DATA)ndir->i_private)->Scope);
if (0 == session)
{
- ((PINODE_DATA)ndir->u.generic_ip)->Scope = Scope_Get_ScopefromPath( nd );
- session = Scope_Get_SessionId(((PINODE_DATA)ndir->u.generic_ip)->Scope);
+ ((PINODE_DATA)ndir->i_private)->Scope = Scope_Get_ScopefromPath( nd );
+ session = Scope_Get_SessionId(((PINODE_DATA)ndir->i_private)->Scope);
}
retCode = Novfs_Delete(newpath, S_ISDIR(nd->d_inode->i_mode), session);
}
- session = Scope_Get_SessionId(((PINODE_DATA)ndir->u.generic_ip)->Scope);
+ session = Scope_Get_SessionId(((PINODE_DATA)ndir->i_private)->Scope);
if (0 == session)
{
- ((PINODE_DATA)ndir->u.generic_ip)->Scope = Scope_Get_ScopefromPath( nd );
- session = Scope_Get_SessionId(((PINODE_DATA)ndir->u.generic_ip)->Scope);
+ ((PINODE_DATA)ndir->i_private)->Scope = Scope_Get_ScopefromPath( nd );
+ session = Scope_Get_SessionId(((PINODE_DATA)ndir->i_private)->Scope);
}
retCode = Novfs_Rename_File(
S_ISDIR(od->d_inode->i_mode),
@@ -3458,13 +3458,13 @@ int Novfs_i_setattr(struct dentry *dentr
return(-EACCES);
}
- if (inode && inode->u.generic_ip)
+ if (inode && inode->i_private)
{
- session = Scope_Get_SessionId( ((PINODE_DATA)inode->u.generic_ip)->Scope);
+ session = Scope_Get_SessionId( ((PINODE_DATA)inode->i_private)->Scope);
if (0 == session)
{
- ((PINODE_DATA)inode->u.generic_ip)->Scope = Scope_Get_ScopefromPath( dentry );
- session = Scope_Get_SessionId(((PINODE_DATA)inode->u.generic_ip)->Scope);
+ ((PINODE_DATA)inode->i_private)->Scope = Scope_Get_ScopefromPath( dentry );
+ session = Scope_Get_SessionId(((PINODE_DATA)inode->i_private)->Scope);
}
buf = (char *)Novfs_Malloc(PATH_LENGTH_BUFFER, GFP_KERNEL);
@@ -3513,7 +3513,7 @@ int Novfs_i_setattr(struct dentry *dentr
if ( !(retVal = Novfs_Set_Attr(path, attr, session) ) )
{
- ((PINODE_DATA)inode->u.generic_ip)->Flags |= UPDATE_INODE;
+ ((PINODE_DATA)inode->i_private)->Flags |= UPDATE_INODE;
if (ia_valid & ATTR_ATIME)
inode->i_atime = attr->ia_atime;
@@ -3563,7 +3563,7 @@ int Novfs_i_getattr(struct vfsmount *mnt
!IS_ROOT(dentry->d_parent) )
{
session = 0;
- id = dentry->d_inode->u.generic_ip;
+ id = dentry->d_inode->i_private;
if (id && (id->Flags & UPDATE_INODE) )
{
@@ -3744,9 +3744,9 @@ void Novfs_clear_inode(struct inode *ino
{
InodeCount--;
- if ( inode->u.generic_ip )
+ if ( inode->i_private )
{
- PINODE_DATA id=inode->u.generic_ip;
+ PINODE_DATA id=inode->i_private;
DbgPrint("Novfs_clear_inode: inode=0x%x ino=%d Scope=0x%p Name=%s\n", inode, inode->i_ino, id->Scope, id->Name);
@@ -3757,8 +3757,8 @@ void Novfs_clear_inode(struct inode *ino
up( &InodeList_lock );
- Novfs_Free(inode->u.generic_ip);
- inode->u.generic_ip = NULL;
+ Novfs_Free(inode->i_private);
+ inode->i_private = NULL;
remove_inode_hash( inode );
@@ -3921,12 +3921,12 @@ struct inode *Novfs_get_inode(struct sup
DbgPrint("Novfs_get_inode: Inode=0x%p I_ino=%d len=%d\n", inode, inode->i_ino, name->len);
- if (NULL != (inode->u.generic_ip = Novfs_Malloc(sizeof(INODE_DATA)+name->len, GFP_KERNEL)))
+ if (NULL != (inode->i_private = Novfs_Malloc(sizeof(INODE_DATA)+name->len, GFP_KERNEL)))
{
PINODE_DATA id;
- id = inode->u.generic_ip;
+ id = inode->i_private;
- DbgPrint("Novfs_get_inode: u.generic_ip 0x%p\n", id);
+ DbgPrint("Novfs_get_inode: i_private 0x%p\n", id);
id->Scope = NULL;
id->Flags = 0;
@@ -4343,7 +4343,7 @@ int Novfs_lock_inode_cache( struct inode
int retVal = 0;
DbgPrint("Novfs_lock_inode_cache: 0x%p\n", i);
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
down( &id->DirCacheLock );
retVal = 1;
@@ -4369,7 +4369,7 @@ void Novfs_unlock_inode_cache( struct in
{
PINODE_DATA id;
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
up( &id->DirCacheLock );
}
@@ -4397,7 +4397,7 @@ int Novfs_enumerate_inode_cache( struct
int retVal = -1;
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
if ( (NULL == iteration) || (NULL == *iteration) )
{
@@ -4456,7 +4456,7 @@ int Novfs_get_entry( struct inode *i, st
char *n="<NULL>";
int nl=6;
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
if (name && name->len)
{
@@ -4545,7 +4545,7 @@ int Novfs_get_entry_time( struct inode *
char *n="<NULL>";
int nl=6;
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
if (name && name->len)
{
@@ -4605,7 +4605,7 @@ int Novfs_get_remove_entry( struct inode
int retVal = -1;
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
l = id->DirCache.next;
@@ -4653,7 +4653,7 @@ void Novfs_invalidate_inode_cache( struc
PDIR_CACHE dc;
struct list_head *l;
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
list_for_each(l, &id->DirCache)
{
@@ -4690,7 +4690,7 @@ PDIR_CACHE Novfs_lookup_inode_cache( str
int nl=6;
int hash=0;
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
if (name && name->name)
{
@@ -4768,7 +4768,7 @@ int Novfs_lookup_validate( struct inode
char *n="<NULL>";
int nl=6;
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
if (name && name->len)
{
@@ -4815,7 +4815,7 @@ int Novfs_add_inode_entry(
PDIR_CACHE new;
int retVal = -ENOMEM;
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
new = Novfs_Malloc(sizeof(DIR_CACHE)+name->len, GFP_KERNEL);
if (new)
@@ -4888,7 +4888,7 @@ int Novfs_update_entry( struct inode *i,
char mtime_buf[32];
char ctime_buf[32];
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
if (name && name->len)
@@ -4966,7 +4966,7 @@ void Novfs_remove_inode_entry( struct in
char *n="<NULL>";
int nl=6;
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
dc = Novfs_lookup_inode_cache( i, name, ino );
if (dc)
@@ -5015,7 +5015,7 @@ void Novfs_free_invalid_entries( struct
PDIR_CACHE dc;
struct list_head *l;
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
list_for_each( l, &id->DirCache )
{
@@ -5057,7 +5057,7 @@ void Novfs_free_inode_cache( struct inod
PDIR_CACHE dc;
struct list_head *l;
- if ( i && (id = i->u.generic_ip) && id->DirCache.next )
+ if ( i && (id = i->i_private) && id->DirCache.next )
{
list_for_each( l, &id->DirCache )
{
@@ -5109,7 +5109,7 @@ Novfs_dump_inode_cache(int argc, const c
kdb_printf("Inode: 0x%p\n", inode);
if (inode)
{
- id = inode->u.generic_ip;
+ id = inode->i_private;
kdb_printf("INODE_DATA: 0x%p\n", id);
if ( id && id->DirCache.next )

View File

@ -0,0 +1,59 @@
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
inherit eutils rpm linux-mod
MY_PV="${PV/_p/-}"
DESCRIPTION="Novell Client for Linux Filesystem"
HOMEPAGE="http://www.novell.com"
SRC_URI="http://${NOVELL_ACCOUNT_USERNAME}:${NOVELL_ACCOUNT_PASSWORD}@cdn.novell.com/prot/2JyMn7sWP_Q~/novell-client-1.2-SLE10.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86 ~amd64"
IUSE=""
DEPEND=""
RDEPEND="virtual/linux-sources
!net-misc/novell-novfs"
RESTRICT="nomirror"
BUILD_PARAMS="-C $KERNEL_DIR SUBDIRS=${WORKDIR}/${PN}-${MY_PV}/opt/novell/ncl/src/src"
MODULE_NAMES="novfs(novfs:${WORKDIR}/${PN}-${MY_PV}/opt/novell/ncl/src/src:${WORKDIR}/${PN}-${MY_PV}/opt/novell/ncl/src/src"
BUILD_TARGETS="modules"
MODULESD_NOVFS_ENABLED=""
src_unpack() {
unpack ${A}
mkdir -p ${WORKDIR}/${PN}-${MY_PV}
cd ${PN}-${MY_PV}
rpm_unpack ${WORKDIR}/ncl_build_711/NCL_disk/novell/i586/${PN}-1.2.0-17.i586.rpm
cd ${WORKDIR}/${PN}-${MY_PV}/opt/novell/ncl/src
epatch ${FILESDIR}/novell-novfs-1.2.0_to_2.0.0.patch
epatch ${FILESDIR}/novell-novfs-2.0.0-config_h.patch
epatch ${FILESDIR}/novell-novfs-2.0.0-generic_file_read.patch
epatch ${FILESDIR}/novell-novfs-2.0.0-i_blksize.patch
epatch ${FILESDIR}/novell-novfs-2.0.0-u.generic_ip.patch
epatch ${FILESDIR}/novell-novfs-2.0.0-dont_use_tasklist_lock.patch
}
src_compile() {
linux-mod_src_compile
}
src_install() {
linux-mod_src_install
generate_modulesd
}
pkg_postinst() {
linux-mod_pkg_postinst
}
pkg_postrm() {
linux-mod_pkg_postrm
}