_lslocks_module()
{
	local cur prev OPTS
	COMPREPLY=()
	cur="${COMP_WORDS[COMP_CWORD]}"
	prev="${COMP_WORDS[COMP_CWORD-1]}"
	case $prev in
		'-p'|'--pid')
			local PIDS
			# /proc/locks can have 8 to 9 fields, see commit
			# 55c0d16bab8cc84b72bf11cb2fdd8aa6205ac608
			PIDS="$(awk '{print $(NF-3)}' /proc/locks)"
			COMPREPLY=( $(compgen -W "$PIDS" -- $cur) )
			return 0
			;;
		'-o'|'--output')
			# FIXME: how to append to a string with compgen?
			local OUTPUT
			OUTPUT="COMMAND PID TYPE SIZE MODE M START END PATH BLOCKER"
			compopt -o nospace
			COMPREPLY=( $(compgen -W "$OUTPUT" -S ',' -- $cur) )
			return 0
			;;
		'-h'|'--help'|'-V'|'--version')
			return 0
			;;
	esac
	case $cur in
		-*)
			OPTS="--pid
				--output
				--noheadings
				--raw
				--notruncate
				--help
				--version"
			COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
			return 0
			;;
	esac
	local IFS=$'\n'
	compopt -o filenames
	COMPREPLY=( $(compgen -f -- $cur) )
	return 0
}
complete -F _lslocks_module lslocks
