• M
    [media] fix dvb_frontend_sleep_until() logic · a733a41a
    Mauro Carvalho Chehab 提交于
    As pointed by Laurent Navet:
    	"Calling ktime_add_us() seems useless as is only useful
    	 for it's return value which is ignored."
    
    That's reported by coverity CID 1309761.
    
    Laurent proposed to just remove ktime_add_us, but the fact is that
    the logic of this function is broken. Instead, we need to use the
    value of the timeout, and ensure that it will work on the loops
    to emulate the legacy DiSEqC ioctl (FE_DISHNETWORK_SEND_LEGACY_CMD).
    
    Please notice that the logic was also broken if, for any reason,
    msleep() would sleep a little less than what it was expected, as
    newdelta would be smaller than delta, and udelay() would not be called.
    
    It should also be noticed that nobody noticed that trouble before
    likely because the FE_DISHNETWORK_SEND_LEGACY_CMD is not used
    anymore by modern DVB applications.
    Reported-by: NLaurent Navet <laurent.navet@gmail.com>
    Signed-off-by: NMauro Carvalho Chehab <mchehab@osg.samsung.com>
    a733a41a
dvb_frontend.c 76.2 KB