linux/Documentation/filesystems/pohmelfs/info.txt
<<
>>
Prefs
   1POHMELFS usage information.
   2
   3Mount options.
   4All but index, number of crypto threads and maximum IO size can changed via remount.
   5
   6idx=%u
   7 Each mountpoint is associated with a special index via this option.
   8 Administrator can add or remove servers from the given index, so all mounts,
   9 which were attached to it, are updated.
  10 Default it is 0.
  11
  12trans_scan_timeout=%u
  13 This timeout, expressed in milliseconds, specifies time to scan transaction
  14 trees looking for stale requests, which have to be resent, or if number of
  15 retries exceed specified limit, dropped with error.
  16 Default is 5 seconds.
  17
  18drop_scan_timeout=%u
  19 Internal timeout, expressed in milliseconds, which specifies how frequently
  20 inodes marked to be dropped are freed. It also specifies how frequently
  21 the system checks that servers have to be added or removed from current working set.
  22 Default is 1 second.
  23
  24wait_on_page_timeout=%u
  25 Number of milliseconds to wait for reply from remote server for data reading command.
  26 If this timeout is exceeded, reading returns an error.
  27 Default is 5 seconds.
  28
  29trans_retries=%u
  30 This is the number of times that a transaction will be resent to a server that did
  31 not answer for the last @trans_scan_timeout milliseconds.
  32 When the number of resends exceeds this limit, the transaction is completed with error.
  33 Default is 5 resends.
  34
  35crypto_thread_num=%u
  36 Number of crypto processing threads. Threads are used both for RX and TX traffic.
  37 Default is 2, or no threads if crypto operations are not supported.
  38
  39trans_max_pages=%u
  40 Maximum number of pages in a single transaction. This parameter also controls
  41 the number of pages,  allocated for crypto processing (each crypto thread has
  42 pool of pages, the number of which is equal to 'trans_max_pages'.
  43 Default is 100 pages.
  44
  45crypto_fail_unsupported
  46 If specified, mount will fail if the server does not support requested crypto operations.
  47 By default mount will disable non-matching crypto operations.
  48
  49mcache_timeout=%u
  50 Maximum number of milliseconds to wait for the mcache objects to be processed.
  51 Mcache includes locks (given lock should be granted by server), attributes (they should be
  52 fully received in the given timeframe).
  53 Default is 5 seconds.
  54
  55Usage examples.
  56
  57Add server server1.net:1025 into the working set with index $idx
  58with appropriate hash algorithm and key file and cipher algorithm, mode and key file:
  59$cfg A add -a server1.net -p 1025 -i $idx -K $hash_key -k $cipher_key
  60
  61Mount filesystem with given index $idx to /mnt mountpoint.
  62Client will connect to all servers specified in the working set via previous command:
  63mount -t pohmel -o idx=$idx q /mnt
  64
  65Change permissions to read-only (-I 1 option, '-I 2' - write-only, 3 - rw):
  66$cfg A modify -a server1.net -p 1025 -i $idx -I 1
  67
  68Change IO priority to 123 (node with the highest priority gets read requests).
  69$cfg A modify -a server1.net -p 1025 -i $idx -P 123
  70
  71One can check currect status of all connections in the mountstats file:
  72# cat /proc/$PID/mountstats
  73...
  74device none mounted on /mnt with fstype pohmel
  75idx addr(:port) socket_type protocol active priority permissions
  760 server1.net:1026 1 6 1 250 1
  770 server2.net:1025 1 6 1 123 3
  78
  79Server installation.
  80
  81Creating a server, which listens at port 1025 and 0.0.0.0 address.
  82Working root directory (note, that server chroots there, so you have to have appropriate permissions)
  83is set to /mnt, server will negotiate hash/cipher with client, in case client requested it, there
  84are appropriate key files.
  85Number of working threads is set to 10.
  86
  87# ./fserver -a 0.0.0.0 -p 1025 -r /mnt -w 10 -K hash_key -k cipher_key
  88
  89 -A 6                    - listen on ipv6 address. Default: Disabled.
  90 -r root                 - path to root directory. Default: /tmp.
  91 -a addr                 - listen address. Default: 0.0.0.0.
  92 -p port                 - listen port. Default: 1025.
  93 -w workers              - number of workers per connected client. Default: 1.
  94 -K file                 - hash key size. Default: none.
  95 -k file                 - cipher key size. Default: none.
  96 -h                      - this help.
  97
  98Number of worker threads specifies how many workers will be created for each client.
  99Bulk single-client transafers usually are better handled with smaller number (like 1-3).
 100