Hi Michael, In general I agree we could make the code a little more safe by checking castings. But in many of the cases (not the ones with user input - strtoul/strtoull) it is not required as the values are limited by the IB arch.
Anyway, the patch I am sending is for WinIB migration. Just doing the explicit cast does not make things any worst. We could take the task of cleaning these integer casts (like I did in osm_pkey.c/h) but this is another patch. EZ Michael S. Tsirkin wrote: >Quoting r. Eitan Zahavi <[EMAIL PROTECTED]>: > > >>Subject: [PATCH 4/13] osm: port to WinIB stack : osmtest/osmtest.c >> >>Hi Hal >> >>Explicit cast required for the win compiler to handle this... >> >>Thanks >> >>Eitan >> >>Signed-off-by: Eitan Zahavi <[EMAIL PROTECTED]> >> >>Index: osmtest/osmtest.c >>=================================================================== >>--- osmtest/osmtest.c (revision 9502) >>+++ osmtest/osmtest.c (working copy) >>@@ -3281,7 +3281,7 @@ osmtest_validate_path_data( IN osmtest_t >> else >> { >> /* Also, this doesn't detect fewer than the correct number of paths >> being returned */ >>- if ( p_path->count >= ( 1 << lmc ) * ( 1 << lmc ) ) >>+ if ( p_path->count >= (uint32_t)( 1 << (2*lmc)) ) >> { >> osm_log( &p_osmt->log, OSM_LOG_ERROR, >> "osmtest_validate_path_data: ERR 0052: " >> >> >> > >Integer casts are ugly, and can mask real errors. >All you want is for the math result to be unsigned, so > 1u << (2*lmc) >would be cleaner with the same effect, I think. > > > _______________________________________________ openib-general mailing list openib-general@openib.org http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general