Open SerCeMan opened 8 years ago
This is on a Raspberry Pi 3, running Arch Linux ARM (armv7). Transcript:
java -cp ./build/libs/jnr-fuse-0.5.2-SNAPSHOT-all.jar ru.serce.jnrfuse.examples.HelloFuse
FUSE library version: 2.9.7
nullpath_ok: 0
nopath: 0
utime_omit_ok: 0
unique: 1, opcode: INIT (26), nodeid: 0, insize: 56, pid: 0
INIT: 7.26
flags=0x001ffffb
max_readahead=0x00020000
INIT: 7.19
flags=0x00000011
max_readahead=0x00020000
max_write=0x00020000
max_background=0
congestion_threshold=0
unique: 1, success, outsize: 40
unique: 2, opcode: LOOKUP (1), nodeid: 1, insize: 46, pid: 13184
LOOKUP /hello
getattr /hello
NODEID: 2
unique: 2, success, outsize: 144
unique: 3, opcode: OPEN (14), nodeid: 2, insize: 48, pid: 13184
open flags: 0x20000 /hello
open[0] flags: 0x20000 /hello
unique: 3, success, outsize: 32
unique: 4, opcode: READ (15), nodeid: 2, insize: 80, pid: 13184
read[0] 4096 bytes from 0 flags: 0x20000
read[0] 12 bytes from 0
unique: 4, success, outsize: 28
unique: 5, opcode: FLUSH (25), nodeid: 2, insize: 64, pid: 13184
unique: 5, error: -38 (Function not implemented), outsize: 16
unique: 6, opcode: RELEASE (18), nodeid: 2, insize: 64, pid: 0
unique: 6, success, outsize: 16
after having invoked cat /tmp/mnth/hello
, which produces no content.
The same setup on the PC, also Arch (but x86_64) produces the "Hello World!", and the transcript is:
FUSE library version: 2.9.7
nullpath_ok: 0
nopath: 0
utime_omit_ok: 0
unique: 1, opcode: INIT (26), nodeid: 0, insize: 56, pid: 0
INIT: 7.26
flags=0x001ffffb
max_readahead=0x00020000
INIT: 7.19
flags=0x00000011
max_readahead=0x00020000
max_write=0x00020000
max_background=0
congestion_threshold=0
unique: 1, success, outsize: 40
unique: 2, opcode: LOOKUP (1), nodeid: 1, insize: 46, pid: 16323
LOOKUP /hello
getattr /hello
NODEID: 2
unique: 2, success, outsize: 144
unique: 3, opcode: OPEN (14), nodeid: 2, insize: 48, pid: 16323
open flags: 0x8000 /hello
open[0] flags: 0x8000 /hello
unique: 3, success, outsize: 32
unique: 4, opcode: READ (15), nodeid: 2, insize: 80, pid: 16323
read[0] 4096 bytes from 0 flags: 0x8000
read[0] 12 bytes from 0
unique: 4, success, outsize: 28
unique: 5, opcode: GETATTR (3), nodeid: 2, insize: 56, pid: 16323
getattr /hello
unique: 5, success, outsize: 120
unique: 6, opcode: FLUSH (25), nodeid: 2, insize: 64, pid: 16323
unique: 6, error: -38 (Function not implemented), outsize: 16
unique: 7, opcode: RELEASE (18), nodeid: 2, insize: 64, pid: 0
unique: 7, success, outsize: 16
Java versions are almost the same: 1.8.0_162 (PC) vs 1.8.0_144-b01 (ARM).
Listing the directory produces the same transcript, as far as I see, but different results:
ARM:
$ ls -al /tmp/mnth
total 0
drwxr-xr-x 2 root root 0 Jan 1 1970 .
drwxrwxrwt 7 root root 200 Apr 6 21:42 ..
-r--r--r-- 1 root root 0 Jan 1 1970 hello
PC:
$ ls -al /tmp/mnth
total 0
drwxr-xr-x 2 root root 0 Jan 1 1970 .
drwxrwxrwt 21 root root 540 Apr 6 21:42 ..
-r--r--r-- 1 root root 12 Jan 1 1970 hello
Implement support for ARM architecture.
https://github.com/SerCeMan/jnr-fuse/issues/13