On Wed, 2009-11-25 at 11:04 +0100, Pierre Riteau wrote:
> This avoids the "TUNSETOFFLOAD ioctl() failed: Invalid argument" message
> on kernels without TUNSETOFFLOAD support.
> 
> Signed-off-by: Pierre Riteau <pierre.rit...@irisa.fr>

Acked-by: Mark McLoughlin <mar...@redhat.com>

Thanks,
Mark.

> ---
>  net/tap-linux.c |    5 +++++
>  1 files changed, 5 insertions(+), 0 deletions(-)
> 
> diff --git a/net/tap-linux.c b/net/tap-linux.c
> index 0f621a2..e038e1a 100644
> --- a/net/tap-linux.c
> +++ b/net/tap-linux.c
> @@ -129,6 +129,11 @@ void tap_fd_set_offload(int fd, int csum, int tso4,
>  {
>      unsigned int offload = 0;
>  
> +    /* Check if our kernel supports TUNSETOFFLOAD */
> +    if (ioctl(fd, TUNSETOFFLOAD, 0) != 0 && errno == EINVAL) {
> +        return;
> +    }
> +
>      if (csum) {
>          offload |= TUN_F_CSUM;
>          if (tso4)




Reply via email to