Re: Where to put new header file
Ben Huntsman <[email protected]>
| Newsgroups | gmane.comp.file-systems.openafs.devel |
|---|---|
| Message-ID | <MWHPR0701MB367472A6669B411D21F88225A7D09@MWHPR0701MB3674.namprd07.prod.outlook.com> |
Hi Jeffrey- I looked at the _AIX_FULLOSF macro as well. The problem is none of the kern/* headers are shipped either. I agree that a bug should be filed with IBM for the include of sys/libsysp.h, but I wouldn't expect them to do anything about it in a timely fashion. If that is the solution we need to adopt, we will need to note that AIX 7300-00-00 through whatever TL/ML they fix it in are not supported. I think based on this conversation though, I might look to see if we can not need to include net/netisr.h on AIX 7.3. After a quick look I'm not sure we use very much from it anyway. Thanks much! -Ben ________________________________ From: Jeffrey E Altman Sent: Tuesday, January 31, 2023 8:23 AM To: Ben Huntsman; [email protected] Subject: Re: [OpenAFS-devel] Where to put new header file On 1/30/2023 6:33 PM, Ben Huntsman ([email protected]<mailto:[email protected]>) wrote: src/rx/AIX/rx_knet.c includes <net/netisr.h>. However, on AIX 7.3 IBM added an include to <sys/libsysp.h> which they don't ship (it's not listed in bos.content_list). Here's the relevant section: ... #ifdef _KERNEL #ifdef _AIX_FULLOSF #include "kern/queue.h" #include "kern/thread.h" #include "kern/sched_prim.h" #else #define EVENT_NETISR 0x0726 #include <sys/libsysp.h> /* remque/insque */ #endif ... The only difference from earlier versions of AIX is the #include <sys/libsysp.h>. As you can see, there's no real way to use macros to escape from it. However, we don't really need anything in it for OpenAFS, so my proposal would be to just create an empty sys/libsysp.h file within the OpenAFS source tree. It would only be picked up by AIX 7.3 builds. I tested this and it allows the compile to continue. The question though is, where in the tree should such file live? I would also welcome alternative suggestions. Ben, If IBM fails to ship a header that would appear to be a bug that should be reported to them. However, I wonder if their expectation is that _AIX_FULLOSF is supposed to be defined. Under what conditions is _AIX_FULLOSF defined? Jeffrey Altman