Test tst-poll.cc can not be runned twice

Test tst-poll throws an exception on second execution:
../tst-poll.cc(78): fatal error in "test_polling_on_one_socket":
critical check bind(s, (struct sockaddr *) &laddr, sizeof(laddr)) == 0
failed. Test test_polling_on_one_socket left the binded socket open -
cuasing the second execution to fail on bind with EADDRINUSE (98)
/* Address already in use */

Reviewed-by: Nadav Har'El <nyh@cloudius-systems.com>
Signed-off-by: Shlomi Livne <shlomi@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
xen blkfront: Don't for quiesce on absent flush

BSD seems to do that in an upper layer that we lack, and Linux also just reports
flush as not supported. Barriers are a different story, and will be handled in a
different patch.

Tested-by: Gleb Natapov <gleb@cloudius-systems.com>
Signed-off-by: Glauber Costa <glommer@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
xen blkfront: software barrier support

This code comes largely from BSD's review r252260, with modifications
from our infrastructure.

After this patch, filesystem requests that ask for serialization will
freeze the request queue until that command is processed, unless we have
Hypervisor support for serialization. That should be present in any
modern Xen hypervisor, but it is not present on EC2.

Tested-by: Gleb Natapov <gleb@cloudius-systems.com>
Signed-off-by: Glauber Costa <glommer@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>