[linux-dvb] [PATCH][RFC] dvb-s2 support added to frontend.h

Andreas Oberritter obi at linuxtv.org
Wed Mar 22 21:50:10 CET 2006


Hello Marcel,

On Wed, 2006-03-22 at 18:55 +0100, Marcel Siegert wrote:
> chose to have ioctls numbered NOT with the __FE_[GET|SET]_FRONTEND_OLD numbers,
> after discussion with andreas oberritter. (think this needs more investigation/discussion)

my last words during our conversation were that I agree with Felix that
this will break compatibility for old apps which were compiled with new
headers but are running on old kernels. So this is probably not an
option.

But I think you should write the word "HACK" next to it in large letters
with flashing lights, because this style of backwards compatibility must
not be copied blindly in the future. It only works in this case because
the old and new structs happen to have different sizes which makes the
ioctl macro create a different magic number. But the size of a structure
depends on the architecture (e.g. 32 vs. 64 bit longs) and maybe on
alignment restrictions. I guess there will be cases where such a change
will work on an 32 bit x86 system, but won't on some other arch, let's
say 64 bit alpha/sparc/ppc/mips.

Maybe this has already been discussed, but in case it didn't: Why don't
we leave the ioctl as it is now and introduce a new one additionally,
e.g. FE_SET_FRONTEND2, and mark the old one as deprecated?

Regards,
Andreas




More information about the linux-dvb mailing list