poll(): fix bug in no_poll

Issue 514 discovered a recent regression when we run OpenSSL random
number generation. This can be traced back to poll() on /dev/random
returning POLLNVAL.

The problem is that the recent commit 1545b50 had poll() calls the
file's fp->poll() with all bits ~POLL_REQUESTABLE turned on. But
our poll_no_poll() - the silly (and incorrect...) poll() implementation
for all VFS files - returns POLLNVAL if it gets bits outside POLLSTANDARD.

So we need to use POLLSTANDARD & ~POLL_REQUESTABLE instead of just
~POLL_REQUESTABLE.

Fixes #514.

A bigger question is why we even use poll_no_poll() for /dev/random.
I'll open a separate new issue on that. But at least this patch makes
OpenSSL random, which previously worked, work again.

Signed-off-by: Nadav Har'El <nyh@cloudius-systems.com>
Signed-off-by: Avi Kivity <avi@cloudius-systems.com>