net: ena: fix incorrect test of supported hash function
authorSameeh Jubran <sameehj@amazon.com>
Wed, 1 May 2019 13:47:06 +0000 (16:47 +0300)
committerDavid S. Miller <davem@davemloft.net>
Sat, 4 May 2019 04:14:46 +0000 (00:14 -0400)
ena_com_set_hash_function() tests if a hash function is supported
by the device before setting it.
The test returns the opposite result than needed.
Reverse the condition to return the correct value.
Also use the BIT macro instead of inline shift.

Fixes: 1738cd3ed342 ("net: ena: Add a driver for Amazon Elastic Network Adapters (ENA)")
Signed-off-by: Arthur Kiyanovski <akiyano@amazon.com>
Signed-off-by: Sameeh Jubran <sameehj@amazon.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/amazon/ena/ena_com.c

index b17d435de09fe2333efd94f34019c316e3f5b466..f9bc0b831a1a42efb50c0ded9e8d5d42e5cb16db 100644 (file)
@@ -2195,7 +2195,7 @@ int ena_com_set_hash_function(struct ena_com_dev *ena_dev)
        if (unlikely(ret))
                return ret;
 
-       if (get_resp.u.flow_hash_func.supported_func & (1 << rss->hash_func)) {
+       if (!(get_resp.u.flow_hash_func.supported_func & BIT(rss->hash_func))) {
                pr_err("Func hash %d isn't supported by device, abort\n",
                       rss->hash_func);
                return -EOPNOTSUPP;