Re: Kernel header inclusion practice
On Wed, Jul 05, 2017 at 02:50:59PM +0800, Shiyao MA wrote: > Hi, > > How do you include the kernel headers? > > For example, > Currently I have the headers: > #include > #include > #include > > And now I wanna use the `struct workqueue_struct'. It turns out I > don't have to include the "linux/workqueue.h". > > So it must have already been included by the three headers above. > > My question is: > > What's the practice of including headers? > Should I specifically include "linux/workqueue.h" ? To be safe, yes, please do, sometimes other arches will not pull in the .h files automatically that you expect them to. So be specific. > Another question is particular to the above three headers: does any of > them guarantee to include the "linux/queue.h"? Nope, if you need it, list it. > If there is any documentation about the API of the headers (e.g., what > they include), that will be great. What exactly do you mean by this? thanks, greg k-h ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Kernel header inclusion practice
Thanks! > On 5 Jul 2017, at 20:07, Greg KHwrote: > >> >> If there is any documentation about the API of the headers (e.g., what >> they include), that will be great. > > What exactly do you mean by this? I mean if any kernel documentation specifies what the headers provide, IOW, what they include, and what functions/variables they declare. So I guess probably not, the source code of kernel headers are their own documentation/specification. Best, ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Kernel header inclusion practice
Hi, How do you include the kernel headers? For example, Currently I have the headers: #include #include #include And now I wanna use the `struct workqueue_struct'. It turns out I don't have to include the "linux/workqueue.h". So it must have already been included by the three headers above. My question is: What's the practice of including headers? Should I specifically include "linux/workqueue.h" ? Another question is particular to the above three headers: does any of them guarantee to include the "linux/queue.h"? If there is any documentation about the API of the headers (e.g., what they include), that will be great. Best ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
How to alloc_pages from a given physical memory?
Here I want to allocate a block of shared memory from a given physical address, such as 0x9000, 6M. However, alloc_pages can't fit this point. I had reserved enugh pages via cmem, there also have enough continous pages for such allocation anywhere else. What should I do? ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Kernel header inclusion practice
On Wed, Jul 05, 2017 at 08:13:08PM +0800, Shiyao Ma wrote: > Thanks! > > > On 5 Jul 2017, at 20:07, Greg KHwrote: > > > >> > >> If there is any documentation about the API of the headers (e.g., what > >> they include), that will be great. > > > > What exactly do you mean by this? > > > I mean if any kernel documentation specifies what the headers provide, > IOW, what they include, and what functions/variables they declare. > > So I guess probably not, the source code of kernel headers are their > own documentation/specification. Yes, the source itself is always the best documentation, it's always kept up to date :) ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Can I use the same .config file to compile 32-bit and 64-bit kernel?
Hi, I'm currently configuring a custom kernel on Fedora x86_64. The first option on the configuration menu is "64-bit kernel" which I think is the only option controlling the architecture of kernel. Copying this .config file to a 32-bit system directly and turning off this option, can I compile a 32-bit kernel which doesn't have any hidden problems? If this way is feasible, I think the only difference between these two kernels is architecture. Regards, Hao Lee ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies