On Fri, 2014-01-17 at 13:12 +0900, Chanho Park wrote: > Our(RD-PQ) kernel is top of the v3.10 kernel. However, many features > are taken from the latest linus's tree if we need it. Sometimes, we > need changed ABI.
I do not know what are the new features you are talking about. But if you are back-porting a driver which has ioctl's which user-land uses, then yes, definitely you have to update kernel-headers. But if is a driver which is under a framework which has standard interface, you do not need to update kernel-headers. For example, if you back-port a networking driver, you usually do not need to change the 'kernel-headers' package. Then, "sometimes, we need changed ABI" sounds strange. We need to clarify the terminology. >From what I read from Jacek' previous e-mails, he called the internal kernel interfaces "kernel ABI". Well, for a kernel module you can consider this to be an ABI, but generally, when kernel folks talk about the Kernel ABI they mean a different thing. They mean the kernel<->userland ABI. This includes ioctls, sysfs files, netlink APIs, etc. This ABI is carved in stone. It is stable. What Jacek discussed earlier is a different thing. That is unstable and changes all the time. In the kernel community people do not call that "kernel ABI". I recommend to find a different term for that. E.g., "kernel module API/ABI" would be better. Anyway, this "ABI" is volatile. The other thing I would like to highlight, just to make sure we are on the same page, is kernel-headers vs kernel-devel. kernel-headers contains .h files for _userland_. These .h files are produced by the 'make headers_install' command, and they are stripped. E.g., all the sections withing '#ifdef __KERNEL__' are removed. These headers _cant_ be used for building external modules. kernel-devel is a package which provides header files to be used for building external modules. These are rarely needed, only people who compile kernel modules need them, and there are usually not many of those people. The header must not be included from user-land apps. So, kernel-headers is something which does not need to be changed often. Kernel-devel should usually be updated every time the kernel changes. With the above in mind, can you please clarify the meaning of "sometimes, we need changed ABI" - is this about the kernel ABI or about the "module ABI" ? -- Best Regards, Artem Bityutskiy _______________________________________________ Dev mailing list [email protected] https://lists.tizen.org/listinfo/dev
