_fsck_module()
{
	local cur prev OPTS
	COMPREPLY=()
	cur="${COMP_WORDS[COMP_CWORD]}"
	prev="${COMP_WORDS[COMP_CWORD-1]}"
	case $prev in
		'-b')
			COMPREPLY=( $(compgen -W "superblock" -- $cur) )
			return 0
			;;
		'-B')
			COMPREPLY=( $(compgen -W "blocksize" -- $cur) )
			return 0
			;;
		'-j')
			COMPREPLY=( $(compgen -W "external_journal" -- $cur) )
			return 0
			;;
		'-l'|'-L')
			COMPREPLY=( $(compgen -W "bad_blocks_file" -- $cur) )
			return 0
			;;
		'-?')
			return 0
			;;
	esac
	case $cur in
		-*)
			OPTS="-p -n -y -c -f -v -b -B -j -l -L"
			COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
			return 0
			;;
	esac
	COMPREPLY=( $(compgen -W "$(find -L /dev/ -path /dev/fd -prune \
		-o -type b -print 2>/dev/null)" -- $cur) )
	return 0
}
complete -F _fsck_module fsck
