tools: flock: add NFSv4 compatibility
authorMathias Kresin <dev@kresin.me>
Tue, 9 Aug 2016 06:22:24 +0000 (08:22 +0200)
committerFelix Fietkau <nbd@nbd.name>
Thu, 11 Aug 2016 08:50:10 +0000 (10:50 +0200)
commit5d0b180f798ca53cc04be4cec82c7c56b6c25d97
treee76a103ee9230021ea1c2a7ab1d5c2ad5a89daed
parent360fd10ac9cb92425709c76ded0cd418662e121e
tools: flock: add NFSv4 compatibility

This patch fixes the LEDE build on mounted NFSv4 shares.

The lock file cannot be opened in read-write mode by default, because
then we cannot use flock(1) to lock executable files.

The read-write mode for lock files is necessary on NFSv4 where
flock(2) is emulated by by fcntl() -- this situation is possible to
detect by flock(2) EBADF error.

The patch consist of the following util-linux/flock commits

http://git.kernel.org/cgit/utils/util-linux/util-linux.git/commit/?id=eb742a1f66d5e3a7c5b43efce741c113f51bef3b

http://git.kernel.org/cgit/utils/util-linux/util-linux.git/commit/?id=caf1ba11a367ad702fb774653daf9ebdcca49d7b

without including the pre kernel 3.4 support.

Signed-off-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Felix Fietkau <nbd@nbd.name> [minor cleanup]
tools/flock/src/flock.c