[dpdk-dev] [PATCH 1/2] net/ena: upgrade HAL for new HW features

Ferruh Yigit ferruh.yigit at intel.com
Thu Jan 9 15:30:03 CET 2020


On 12/13/2019 1:32 PM, Michal Krawczyk wrote:
> This version of the HAL allows to use the latest HW features, like
> rx offsets.
> 
> Driver was adjusted to the new version to fix the build.
> 
> Signed-off-by: Michal Krawczyk <mk at semihalf.com>
> Signed-off-by: Maciej Bielski <mba at semihalf.com>

<...>

> @@ -2080,7 +2103,7 @@ void ena_com_aenq_intr_handler(struct ena_com_dev *dev, void *data)
>  	struct ena_admin_aenq_entry *aenq_e;
>  	struct ena_admin_aenq_common_desc *aenq_common;
>  	struct ena_com_aenq *aenq  = &dev->aenq;
> -	unsigned long long timestamp;
> +	u64 timestamp;
>  	ena_aenq_handler handler_cb;
>  	u16 masked_head, processed = 0;
>  	u8 phase;
> @@ -2098,8 +2121,8 @@ void ena_com_aenq_intr_handler(struct ena_com_dev *dev, void *data)
>  		 */
>  		dma_rmb();
>  
> -		timestamp = (unsigned long long)aenq_common->timestamp_low |
> -			((unsigned long long)aenq_common->timestamp_high << 32);
> +		timestamp = (u64)aenq_common->timestamp_low |
> +			((u64)aenq_common->timestamp_high << 32);
>  		ENA_TOUCH(timestamp); /* In case debug is disabled */
>  		ena_trc_dbg("AENQ! Group[%x] Syndrom[%x] timestamp: [%llus]\n",
>  			    aenq_common->group,

'u64 timestamp' is causing the build error when debug is enabled [1], and
because of fixed sized storage type (u64) you need to use PRIx64 as format
identifier to make sure it is correct for both 32-bits and 64-bits.

[1]
.../drivers/net/ena/base/ena_com.c:2130:8: error: format specifies type
'unsigned long long' but the argument has type 'u64' (aka 'unsigned long')
[-Werror,-Wformat]
                            timestamp);
                            ^~~~~~~~~
.../drivers/net/ena/base/ena_plat_dpdk.h:108:66: note: expanded from macro
'ena_trc_dbg'
#define ena_trc_dbg(format, arg...)     ena_trc_log(DEBUG, format, ##arg)
                                                           ~~~~~~    ^~~
.../drivers/net/ena/base/ena_plat_dpdk.h:106:36: note: expanded from macro
'ena_trc_log'
                "[ENA_COM: %s]" fmt, __func__, ##arg)
                                ~~~              ^~~


More information about the dev mailing list