[openib-general] Re: [PATCH] mthca - optimize sinai large message

Michael S. Tsirkin mst at mellanox.co.il
Wed Mar 1 17:28:09 PST 2006


Quoting r. Roland Dreier <rdreier at cisco.com>:
> Subject: Re: [PATCH] mthca - optimize sinai large message
> 
>  > +	/* for Sinai MPT table must be smaller the 2^24 for optimized oprtatipn */
>  > +	if ((dev->mthca_flags & MTHCA_FLAG_SINAI_OPT) && init_hca->log_mpt_sz > 23) {
>  > +		total_size = -ENOSYS;
>  > +		mthca_err(dev, "MPT table too large\n");
>  > +		goto exit;
>  > +	}
> 
> Do we really want to give up if someone wants to use a large MPT
> table?  It seems we should just disable the optimization in this case.

You decide. I know with SDP people are real unhappy when performance gets
downgraded silently, so I guessed the same applies here as well.
At least a warning would be needed. What do you think?

>  > +	[SINAI]        = { .latest_fw = MTHCA_FW_VER(1, 0, 1), .is_memfree = 1, .is_pcie = 1, .mkey_opt = 1 }
> 
> ...
> 
>  >  		mdev->mthca_flags |= MTHCA_FLAG_MEMFREE;
>  >  	if (mthca_hca_table[id->driver_data].is_pcie)
>  >  		mdev->mthca_flags |= MTHCA_FLAG_PCIE;
>  > +	if (mthca_hca_table[id->driver_data].mkey_opt)
>  > +		mdev->mthca_flags |= MTHCA_FLAG_SINAI_OPT;
> 
> This is starting to look kind of unwieldy.  Maybe it would be cleaner
> to switch over to having the initial flags in the table, rather than
> separate flag members?  (I know, I was the one that started down this
> road but now I don't think I like where it's leading us)
> 
>  - R.

Sounds good. So 2 fields: latest_fw and flags?
Care to code this up?

-- 
Michael S. Tsirkin
Staff Engineer, Mellanox Technologies



More information about the general mailing list