Correct TarSum benchmarks: 9kTar and 9kTarGzip

These two cases did not actually read the same content with each iteration
of the benchmark. After the first read, the buffer was consumed. This patch
corrects this by using a bytes.Reader and seeking to the beginning of the
buffer at the beginning of each iteration.

Unfortunately, this benchmark was not actually as fast as we believed. But
the new results do bring its results closer to those of the other benchmarks.

Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
Correctly close generated benchmark archives

Another update to TarSum tests, this patch fixes an issue where
the benchmarks were generating archives incorrectly by not closing
the tarWriter.

Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
Fix interactive exec over TLS

The code no longer assumes a net.TCPConn underlying the HTTP connection
in order to close attached streams.

Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
Return docker's root dir in docker -D info

This adds the docker daemon's root directory to docker info when running
in debug mode.  This allows the user to view the root directory where
docker is writing and storing state.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
Merge pull request #9479 from jlhawn/tarsum_test_fix

Correct TarSum benchmarks: 9kTar and 9kTarGzip
Removed race condition
If two interrupts were fired really quickly interruptCount could have been incremented twice before the LoadUint32 making cleanup not being called at all.

Signed-off-by: Erik Dubbelboer <erik@dubbelboer.com>
Merge pull request #9543 from ErikDubbelboer/racefix

Removed race condition
Merge pull request #9497 from icecrime/86580-tls_interactive_exec

Fix interactive exec over TLS
Merge pull request #9489 from crosbymichael/info-root

Return docker's root dir in docker -D info