+#ifdef HAVE_IBV_MLX4_UAR_MMAP_OFFSET
+ ppriv = (struct mlx4_proc_priv *)dev->process_private;
+ if (ppriv->uar_table_sz != dev->data->nb_tx_queues) {
+ mlx4_tx_uar_uninit_secondary(dev);
+ mlx4_proc_priv_uninit(dev);
+ ret = mlx4_proc_priv_init(dev);
+ if (ret)
+ return -rte_errno;
+ ret = mlx4_tx_uar_init_secondary(dev, mp_msg->fds[0]);
+ if (ret) {
+ mlx4_proc_priv_uninit(dev);
+ return -rte_errno;
+ }
+ }
+#endif
+ rte_mb();