On 07/19/2013 07:15 AM, Oleksandr Kravchenko wrote: > On Thu, Jul 18, 2013 at 7:24 PM, Lars-Peter Clausen <lars@xxxxxxxxxx> wrote: >> On 07/18/2013 05:47 PM, Oleksandr Kravchenko wrote: >>> From: Oleksandr Kravchenko <o.v.kravchenko@xxxxxxxxxxxxxxx> >>> >>> This patch fixes the issue with double minus in output when >>> reading channels from sysfs for IIO_VAL_INT_PLUS_MICRO and >>> IIO_VAL_INT_PLUS_NANO cases. Until this patch if val and val2 >>> both are negatives output string contains "--" before >>> digits. It is result of "-%d..." in sprintf() format. >>> >> >> Hm, this might be a bug in a driver that is triggering this. The idea is >> that val2 is only allowed to be negative if val is 0. >> >> - Lars >> > If I calculate val and val2 in next way: > *val = adc / 1000000; > *val2 = adc % 1000000; > both val and val2 could by negative. Do I have to check it in my driver? > I guess it is will happen occasionally. In the c89 standard, module for a negative is implementation specific. Anyone know if we can assume this will work in all cases within the kernel? -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html