yield() in i2c non-happy paths hits BUG under -rt patch

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Jean, Ben, -i2c and -rt devs,


during testing the Linux PREEMP_RT work (step-by-step being merged
with mainline) together with I2C functionality I hit the fact that the
I2C
subsystem uses yield() in some of the non-happy code paths (mostly
during chip / address probing etc).

My (embedded) system was running a low-priority real-time work on the
generic workqueue which tried to blink a LED using an I2C I/O
multiplexer
when I hit the BUG where this real-time task ran into the yield() of
try_address().

Grepping through the I2C subsystem code there where more yield()
sprinkled in, without it being clear to me why they are there.


Can those yield()s please be removed, and if they are needed for some
reason (??) be replaced with something equivalent?


I am no longer with this particular project, I do not have the
defconfig and kernel logs at my disposal.

Regards,
-- 
Leon
--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux