Hello! > Any idea why it was necessary to break these things? No, I just used Google to find it.
> BTW: I always thought that Linux kernel policy is not to allow userspace > applications to break. Apparently this is no longer the case :-(. In general Kernel APIs do not change, but sometimes this happened in the past. In the particular case the ioctl implementation within the Kernel was completely removed long time ago thus they decided to remove the definition. This define was even not used in Kernel 2.6.19.7! So this symbol is 11 years depreciated/not existent already. When an API is depreciated for so long time, it was time enough for application developers to remove it. In fact it should have returned "ENOIOCTLCMD" since ages. Now with Kernel 4.19 it is gone, because they thought it was enough time for all applications to remove it, I guess. This is also an example, that User Space developers don't care about depreciated APIs. So removing an API after 11 years is a good method to force developers to do their homework, when they are not reading the documentation. At least this is my opinion on that. Best practice would be to print a warning in a logfile if an API returns, that it is no longer existing. With that it shows up early and the developer will be informed and can react. BR, Jasmin _______________________________________________ vdr mailing list vdr@linuxtv.org https://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr