Discussion:
[OpenAFS] Problem starting dafileserver on 1.8.2
Neil Brown
2018-10-25 11:36:49 UTC
Permalink
Hi,

We are currently running 1.6.23 file servers. We want to upgrade to 1.8.2,
but if I just bash on and replace the software, our dafsservers will no
longer start, giving errors like:

/usr/afs/bin/dafileserver: Too many values after switch -vattachpar

We do pass quite a few arguments to dafs. What we are currently using
with 1.6.23 is:

/usr/afs/bin/dafileserver -L -p 128 -rxpck 400 -busyat 600 -s 1200 -l 1200 -cb 500000 -b 240 -vc 1200 -allow-dotted-principals -vattachpar 128 -vlruthresh 240

But as I say, the same with 1.8.2 gives the above error. If I keep the
same arguments, but in a different order, I get a different error:

bash# /usr/afs/bin/dafileserver -vlruthresh 240 -L -p 128 -rxpck 400 -busyat 600 -s 1200 -l 1200 -cb 500000 -b 240 -vc 1200 -allow-dotted-principals -vattachpar 128
Illegal -implicit rights character '2'.

If I reduce the number of arguments dafileserver will start, so on one
of our experimental servers this does work:

/usr/afs/bin/dafileserver -L -busyat 600 -s 1200 -l 1200 -b 240 -vc 1200 -allow-dotted-principals

I'm guessing it is maybe some buffer overflow in the argument
processing. I'm about to have a look at the source code, but I'll be a
bit out of my comfort zone.

Is anyone else running dafs on 1.8.2, what sort of arguments are you
using?

Some extra info. Yes we are using "bos create" to generate a suitable
BosConfig file, we are not starting dafileserver straight from the
command line.

All those extra arguments have grown over time as we try to improve
the performance of our fileservers. For example a typical file server
hardware consists of a Dell Poweredge R730xd with 64GB memory, 12x4TB
disks RAID10'd together. Giving us 10x2TB vicep partitions with an
average of 130 user home volumes on each partition.

This is running on Scientific Linux 7.5.

Thanks,

Neil
--
Neil Brown - Computing Officer - Appleton Tower 7.12a | Neil.Brown @ ed. ac.uk
School of Informatics, University of Edinburgh | Tel: +44 131 6504422

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.
Rich Sudlow
2018-10-25 13:01:44 UTC
Permalink
Hi,
We are currently running 1.6.23 file servers. We want to upgrade to 1.8.2, but
if I just bash on and replace the software, our dafsservers will no longer
/usr/afs/bin/dafileserver: Too many values after switch -vattachpar
We do pass quite a few arguments to dafs. What we are currently using
/usr/afs/bin/dafileserver -L -p 128 -rxpck 400 -busyat 600 -s 1200 -l 1200 -cb
500000 -b 240 -vc 1200 -allow-dotted-principals -vattachpar 128 -vlruthresh 240
But as I say, the same with 1.8.2 gives the above error. If I keep the
bash# /usr/afs/bin/dafileserverĀ  -vlruthresh 240 -L -p 128 -rxpck 400 -busyat
600 -s 1200 -l 1200 -cb 500000 -b 240 -vc 1200 -allow-dotted-principals
-vattachpar 128
Illegal -implicit rights character '2'.
If I reduce the number of arguments dafileserver will start, so on one
/usr/afs/bin/dafileserver -LĀ  -busyat 600 -s 1200 -l 1200 -b 240 -vc 1200
-allow-dotted-principals
I'm guessing it is maybe some buffer overflow in the argument
processing. I'm about to have a look at the source code, but I'll be a
bit out of my comfort zone.
Is anyone else running dafs on 1.8.2, what sort of arguments are you
using?
/usr/afs/bin/dafileserver -L -p 256 -b 512 -l 163840 -s 524288 -vc 1024 -cb
2621440 -rxpck 800 -udpsize 16777216 -sendsize 2097152 -vattachpar 128 -sync
onclose -implicit all
Some extra info. Yes we are using "bos create" to generate a suitable
BosConfig file, we are not starting dafileserver straight from the
command line.
All those extra arguments have grown over time as we try to improve
the performance of our fileservers. For example a typical file server
hardware consists of a Dell Poweredge R730xd with 64GB memory, 12x4TB
disks RAID10'd together. Giving us 10x2TB vicep partitions with an
average of 130 user home volumes on each partition.
This is running on Scientific Linux 7.5.
Thanks,
Neil
--
Rich Sudlow
University of Notre Dame
Center for Research Computing - Union Station
506 W. South St
South Bend, In 46601

(574) 631-7258 (office)
(574) 807-1046 (cell)
Neil Brown
2018-10-25 13:24:10 UTC
Permalink
Post by Rich Sudlow
Post by Neil Brown
/usr/afs/bin/dafileserver -L -p 128 -rxpck 400 -busyat 600 -s 1200 -l 1200
-cb 500000 -b 240 -vc 1200 -allow-dotted-principals -vattachpar 128
-vlruthresh 240
But as I say, the same with 1.8.2 gives the above error.
Is anyone else running dafs on 1.8.2, what sort of arguments are you
using?
/usr/afs/bin/dafileserver -L -p 256 -b 512 -l 163840 -s 524288 -vc 1024 -cb
2621440 -rxpck 800 -udpsize 16777216 -sendsize 2097152 -vattachpar 128 -sync
onclose -implicit all
That's interesting, with those arguments dafileserver starts fine, and
that's 16 chars longer than our arguments, so it isn't as simple as length
of the argument string.

Perhaps I should just find something that works (like the above) and move
on.

Thanks,

Neil
--
Neil Brown - Computing Officer - Appleton Tower 7.12a | Neil.Brown @ ed. ac.uk
School of Informatics, University of Edinburgh | Tel: +44 131 6504422

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.
Mark Vitale
2018-10-25 13:57:31 UTC
Permalink
Post by Neil Brown
Hi,
/usr/afs/bin/dafileserver: Too many values after switch -vattachpar
We do pass quite a few arguments to dafs. What we are currently using
/usr/afs/bin/dafileserver -L -p 128 -rxpck 400 -busyat 600 -s 1200 -l 1200 -cb 500000 -b 240 -vc 1200 -allow-dotted-principals -vattachpar 128 -vlruthresh 240
But as I say, the same with 1.8.2 gives the above error. If I keep the
bash# /usr/afs/bin/dafileserver -vlruthresh 240 -L -p 128 -rxpck 400 -busyat 600 -s 1200 -l 1200 -cb 500000 -b 240 -vc 1200 -allow-dotted-principals -vattachpar 128
Illegal -implicit rights character '2'.
I was able to duplicate your problem and determine that it is a bug in the parser definition for -vlruthresh. If you remove that option (and the '240', of course), you should be able to start the fileserver.
I will submit a patch for this bug later today.

Regards,
--
Mark Vitale
***@sinenomine.net
Neil Brown
2018-10-26 16:11:55 UTC
Permalink
Post by Mark Vitale
Post by Neil Brown
bash# /usr/afs/bin/dafileserver -vlruthresh 240 -L -p 128 -rxpck 400 -busyat 600 -s 1200 -l 1200 -cb 500000 -b 240 -vc 1200 -allow-dotted-principals -vattachpar 128
Illegal -implicit rights character '2'.
I was able to duplicate your problem and determine that it is a bug in the parser definition for -vlruthresh. If you remove that option (and the '240', of course), you should be able to start the fileserver.
I will submit a patch for this bug later today.
Ah, excellent. Not just me then.

Thanks,

Neil
--
Neil Brown - Computing Officer - Appleton Tower 7.12a | Neil.Brown @ ed. ac.uk
School of Informatics, University of Edinburgh | Tel: +44 131 6504422

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.
Loading...