[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Is NFS 64-bit on alpha ?



Hi folks,

I have stumbled upon a troubling fact...

I have this large file, sitting on a Sun server:
$ ls -l /db/embl/htg-re.seq 
-rw-r--r--   1 chris    isrec    2419902330 Mar 24 18:06 /db/embl/htg-re.seq

I have this /db/embl NFS mounted on my alpha box:
$ uname -a
Linux ludwig-alpha 2.2.13ac1 #4 Tue Nov 2 15:10:02 CET 1999 alpha unknown

Seems I can't do anything with the file from the alpha (nor from any Linux 
machine, for that matter):
$ ls -l /db/embl/htg-re.seq 
ls: /db/embl/htg-re.seq: File too large

I tried compiling the following code on the alpha:
$ cat toto.c
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
int
main()
{
  int fd = open("/db/embl/htg-re.seq", O_RDONLY);
  if (fd < 0) {
    perror("Failed");
    return 1;
  }
  close(fd);
  return 0;
}

$ cc -O2 -mcpu=ev56 -D_FILE_OFFSET_BITS=64 -o to toto.c
$ ./to
Failed: File too large
$ cc -S -O2 -mcpu=ev56 -D_FILE_OFFSET_BITS=64 toto.c
alpha_chris$ cat toto.s
 .file 1 "toto.c"
 .set noat
 .set noreorder
 .arch ev56
.section .rodata
$LC0:
 .ascii "/db/embl/htg-re.seq\0"
$LC1:
 .ascii "Failed\0"
.text
 .align 5
 .globl main
 .ent main
main:
 .frame $30,16,$26,0
 .mask 0x4000000,-16
 ldgp $29,0($27)
$main..ng:
 lda $30,-16($30)
 lda $16,$LC0
 mov $31,$17
 stq $26,0($30)
 .prologue 1
 jsr $26,open64
 ldgp $29,0($26)
 blt $0,$L22
 mov $0,$16
 jsr $26,close
 ldgp $29,0($26)
 mov $31,$0
 br $31,$L23
 .align 4
$L22:
 lda $16,$LC1
 jsr $26,perror
 ldgp $29,0($26)
 lda $0,1
$L23:
 ldq $26,0($30)
 lda $30,16($30)
 ret $31,($26),1
 .end main
 .ident "GCC: (GNU) 2.95.1 19990816 (release)"

So it seems it calls the proper open64 thing...

Any words of advive ?

TIA,
					Christian




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index] []