What's happening is that you're redirecting stderr to stdout's filehandle (perhaps /dev/stdout). Then you redirect stdout to /dev/null. However, stderr is still pointing to /dev/stdout.
To ignore all output, first redirect stdout, then redirect stderr to stdout
child >/dev/null 2>&1
Or, more simply since you're using bash specifically, redirect stdout and stderr together:
child &>/dev/null