[OpenAFS] Re: openafs and linux 2.6.19-rc1 [patch]

2006-10-06 Thread Alex Romosan
chas williams - CONTRACTOR [EMAIL PROTECTED] writes:

  
 @@ -550,6 +558,10 @@
.read =generic_read_dir,
  #endif
.readdir = afs_linux_readdir,
 +#ifdef GENERIC_FILE_AIO_READ
 +  .aio_read =generic_file_aio_read,
 +  .aio_write =   generic_file_aio_write,
 +#endif
  #ifdef HAVE_UNLOCKED_IOCTL
.unlocked_ioctl = afs_unlocked_xioctl,
  #else

i think this chunk (in src/afs/LINUX/osi_vnodeops.c) ended in the
wrong place. the .aio_read/write were added to afs_dir_fops but they
should have been added to afs_file_fops instead (the next structure
below). at least that's what i had in my working version.

--alex--

-- 
| I believe the moment is at hand when, by a paranoiac and active |
|  advance of the mind, it will be possible (simultaneously with  |
|  automatism and other passive states) to systematize confusion  |
|  and thus to help to discredit completely the world of reality. |
___
OpenAFS-info mailing list
OpenAFS-info@openafs.org
https://lists.openafs.org/mailman/listinfo/openafs-info


[OpenAFS] openafs and linux 2.6.19-rc1 [patch]

2006-10-05 Thread Alex Romosan
the new linux kernel has lost a couple more functions which affect
openafs (generic_file_read/write). the attached patch lets me use
openafs with the above-mentioned kernel. it is generated against the
debian package (which finally works on amd64, yeay) but it applies
against cvs head with a bit of fuzz.

diff -ru openafs/src/afs/LINUX/osi_vfsops.c openafs-new/src/afs/LINUX/osi_vfsops.c
--- openafs/src/afs/LINUX/osi_vfsops.c	2006-08-19 22:34:18.0 -0700
+++ openafs-new/src/afs/LINUX/osi_vfsops.c	2006-10-05 16:45:36.0 -0700
@@ -312,8 +312,9 @@
 void
 afs_destroy_inodecache(void)
 {
-if (kmem_cache_destroy(afs_inode_cachep))
-	printk(KERN_INFO afs_inode_cache: not all structures were freed\n);
+/*if (kmem_cache_destroy(afs_inode_cachep))
+	printk(KERN_INFO afs_inode_cache: not all structures were freed\n);*/
+kmem_cache_destroy(afs_inode_cachep);
 }
 #else
 int
diff -ru openafs/src/afs/LINUX/osi_vnodeops.c openafs-new/src/afs/LINUX/osi_vnodeops.c
--- openafs/src/afs/LINUX/osi_vnodeops.c	2006-08-13 09:50:43.0 -0700
+++ openafs-new/src/afs/LINUX/osi_vnodeops.c	2006-10-05 19:04:33.0 -0700
@@ -75,7 +75,7 @@
 else {
 	osi_FlushPages(vcp, credp);	/* ensure stale pages are gone */
 	AFS_GUNLOCK();
-	code = generic_file_read(fp, buf, count, offp);
+	code = do_sync_read(fp, buf, count, offp);
 	AFS_GLOCK();
 }
 
@@ -121,7 +121,7 @@
 	code = -code;
 else {
 	AFS_GUNLOCK();
-	code = generic_file_write(fp, buf, count, offp);
+	code = do_sync_write(fp, buf, count, offp);
 	AFS_GLOCK();
 }
 
@@ -565,6 +565,7 @@
 struct file_operations afs_file_fops = {
   .read =	afs_linux_read,
   .write =	afs_linux_write,
+  .aio_read = generic_file_aio_read,
 #ifdef HAVE_UNLOCKED_IOCTL
   .unlocked_ioctl = afs_unlocked_xioctl,
 #else

--alex--

-- 
| I believe the moment is at hand when, by a paranoiac and active |
|  advance of the mind, it will be possible (simultaneously with  |
|  automatism and other passive states) to systematize confusion  |
|  and thus to help to discredit completely the world of reality. |


[OpenAFS] Re: openafs and linux 2.6.19-rc1 [patch]

2006-10-05 Thread Alex Romosan
Alex Romosan [EMAIL PROTECTED] writes:

 the new linux kernel has lost a couple more functions which affect
 openafs (generic_file_read/write). the attached patch lets me use
 openafs with the above-mentioned kernel. it is generated against the
 debian package (which finally works on amd64, yeay) but it applies
 against cvs head with a bit of fuzz.

 diff -ru openafs/src/afs/LINUX/osi_vfsops.c 
 openafs-new/src/afs/LINUX/osi_vfsops.c
 --- openafs/src/afs/LINUX/osi_vfsops.c2006-08-19 22:34:18.0 
 -0700
 +++ openafs-new/src/afs/LINUX/osi_vfsops.c2006-10-05 16:45:36.0 
 -0700
 @@ -312,8 +312,9 @@
  void
  afs_destroy_inodecache(void)
  {
 -if (kmem_cache_destroy(afs_inode_cachep))
 - printk(KERN_INFO afs_inode_cache: not all structures were freed\n);
 +/*if (kmem_cache_destroy(afs_inode_cachep))
 + printk(KERN_INFO afs_inode_cache: not all structures were freed\n);*/
 +kmem_cache_destroy(afs_inode_cachep);
  }
  #else
  int
 diff -ru openafs/src/afs/LINUX/osi_vnodeops.c 
 openafs-new/src/afs/LINUX/osi_vnodeops.c
 --- openafs/src/afs/LINUX/osi_vnodeops.c  2006-08-13 09:50:43.0 
 -0700
 +++ openafs-new/src/afs/LINUX/osi_vnodeops.c  2006-10-05 19:04:33.0 
 -0700
 @@ -75,7 +75,7 @@
  else {
   osi_FlushPages(vcp, credp); /* ensure stale pages are gone */
   AFS_GUNLOCK();
 - code = generic_file_read(fp, buf, count, offp);
 + code = do_sync_read(fp, buf, count, offp);
   AFS_GLOCK();
  }
  
 @@ -121,7 +121,7 @@
   code = -code;
  else {
   AFS_GUNLOCK();
 - code = generic_file_write(fp, buf, count, offp);
 + code = do_sync_write(fp, buf, count, offp);
   AFS_GLOCK();
  }
  
 @@ -565,6 +565,7 @@
  struct file_operations afs_file_fops = {
.read =afs_linux_read,
.write =   afs_linux_write,
 +  .aio_read = generic_file_aio_read,
  #ifdef HAVE_UNLOCKED_IOCTL
.unlocked_ioctl = afs_unlocked_xioctl,
  #else

sorry to follow up on my own post, but the above patch works only for
reads. for writes one also needs to add

  .aio_write = generic_file_aio_write,

below .aio_read above.

--alex--

-- 
| I believe the moment is at hand when, by a paranoiac and active |
|  advance of the mind, it will be possible (simultaneously with  |
|  automatism and other passive states) to systematize confusion  |
|  and thus to help to discredit completely the world of reality. |
___
OpenAFS-info mailing list
OpenAFS-info@openafs.org
https://lists.openafs.org/mailman/listinfo/openafs-info


[OpenAFS] Re: OpenAFS 1.4.2fc2 and Vanilla Linux kernel 2.6.18

2006-10-04 Thread Alex Romosan
Derrick J Brashear [EMAIL PROTECTED] writes:

 You kids and your wacky reply to all reply list pruned.

 Found system call table at 0x803e2d20 (pattern scan)
 Found 32-bit system call table at 0x803e3bb0 (pattern scan)
 Starting AFS cache scan...1Unable to handle kernel NULL pointer 
 dereference at
 0c7f RIP:
 [882a8ff2] :libafs:afs_cellname_init+0xc2/0x290

 Without working particularly hard I'll guess a misparsed cellname was
 passed in, and it's the fix in src/auth/cellconfig.c since fc4.

i also get an oops on debian on an amd64 (kernel 2.6.18, latest debian
package which is based on fc4):

kernel: Unable to handle kernel paging request at fffd RIP: 
kernel:  [887662b6] :openafs:check_table+0x26/0x50
kernel: PGD 203027 PUD 2c09067 PMD 0 
kernel: Oops:  [1] PREEMPT 
kernel: CPU 0 
kernel: Modules linked in: openafs lp ipt_REJECT xt_tcpudp iptable_filter 
ip_tables x_tables parport_pc parport snd_cmipci gameport 
nd_mpu401_uart snd_rawmidi snd_seq_device snd_bt87x snd_pcm_oss snd_mixer_oss 
snd_pcm snd_timer snd soundcore snd_page_alloc tuner t
o_buf firmware_class ir_common btcx_risc tveeprom ehci_hcd ohci_hcd ohci1394 
ext3 jbd dm_snapshot dm_mirror dm_mod sr_mod sbp2 ieee1

kernel: Pid: 3778, comm: modprobe Tainted: P  2.6.18 #36
kernel: RIP: 0010:[887662b6]  [887662b6] 
:openafs:check_table+0x26/0x50
kernel: RSP: 0018:81007a28bec0  EFLAGS: 00010286
kernel: RAX: 8020 RBX: fffd RCX: 
kernel: RDX:  RSI: fffd RDI: 
kernel: RBP:  R08:  R09: 887942a0
kernel: R10:  R11: 0001 R12: fffd
kernel: R13: 887931c8 R14: 88792fa0 R15: 6000
kernel: FS:  2b7b9ffce6d0() GS:8061() 
knlGS:
kernel: CS:  0010 DS:  ES:  CR0: 8005003b
kernel: CR2: fffd CR3: 7a223000 CR4: 06e0
kernel: Process modprobe (pid: 3778, threadinfo 81007a28a000, task 
81007e1397c0)
kernel: Stack:  8876636b 8027639e 80264643 

kernel:  88792fa0  000f091b 2b7b9fc93000
kernel:  00529668 2b7b9fc93000 887665aa 2b7b9fc93000
kernel: Call Trace:
kernel:  [8876636b] :openafs:scan_for_syscall_table+0x8b/0x240
kernel:  [8027639e] sys_ioctl+0x0/0x5e
kernel:  [80264643] sys_close+0x0/0xdd
kernel:  [887665aa] :openafs:osi_find_syscall_table+0x8a/0x1f0
kernel:  [88766e4b] :openafs:osi_syscall_init+0xb/0xe0
kernel:  [887a9017] :openafs:init_module+0x17/0xa4
kernel:  [8024159b] sys_init_module+0xa5/0x202
kernel:  [802097ce] system_call+0x7e/0x83
kernel: 
kernel: 
kernel: Code: 48 39 06 76 20 ff c1 81 f9 de 00 00 00 75 0b b9 ff ff ff ff 
kernel: RIP  [887662b6] :openafs:check_table+0x26/0x50
kernel:  RSP 81007a28bec0
kernel: CR2: fffd

--alex--

-- 
| I believe the moment is at hand when, by a paranoiac and active |
|  advance of the mind, it will be possible (simultaneously with  |
|  automatism and other passive states) to systematize confusion  |
|  and thus to help to discredit completely the world of reality. |
___
OpenAFS-info mailing list
OpenAFS-info@openafs.org
https://lists.openafs.org/mailman/listinfo/openafs-info