On a general side, I think the current pid handling is not very smart:
1) we check 0x27 slots even if only two are occupied (easily fixable)
2) when we openwholebandwith we don't close it back; this consumes
CPU time and causes interrupts and DMA transfers
Other considerations: is there any specific reason
1) to have exactly 0x27 slots?
2) to advertize 32 pids max?
3) to have stream1/stream2/pcr/pmt/emm/ecm specific routines, given that
it looks like they have no particular specialization, they're just generic
filters?
4) to have different coding style than linux kernel? ("CheckPID" instead
of "check_pid")
Great that this got patched at last!