On Tue, Sep 20, 2022 at 2:01 PM Huang, Kai <kai.huang@xxxxxxxxx> wrote: > > On Tue, 2022-09-20 at 09:57 -0700, David Matlack wrote: > > On Thu, Sep 1, 2022 at 9:47 AM David Matlack <dmatlack@xxxxxxxxxx> wrote: > > > On Tue, Aug 30, 2022 at 3:12 AM Huang, Kai <kai.huang@xxxxxxxxx> wrote: > > > > On Fri, 2022-08-26 at 16:12 -0700, David Matlack wrote: > > [...] > > > > > +#else > > > > > +/* TDP MMU is not supported on 32-bit KVM. */ > > > > > +const bool tdp_mmu_enabled; > > > > > +#endif > > > > > + > > > > > > > > I am not sure by using 'const bool' the compile will always omit the function > > > > call? I did some experiment on my 64-bit system and it seems if we don't use > > > > any -O option then the generated code still does function call. > > > > > > > > How about just (if it works): > > > > > > > > #define tdp_mmu_enabled false > > > > > > I can give it a try. By the way, I wonder if the existing code > > > compiles without -O. The existing code relies on a static inline > > > function returning false on 32-bit KVM, which doesn't seem like it > > > would be any easier for the compiler to optimize out than a const > > > bool. But who knows. > > > > Actually, how did you compile without -O and is that a supported use-case? > > I just wrote a very simple userspace application and built it w/o using the -O > (mostly out of curiosity) . > > Sorry I didn't check whether currently KVM uses -O to build or not. > > If needed, I can try to test in real KVM build and report back, but I need to do > that later :) Gotcha. No need to test further, but thanks for offering. I am going to use `#define tdp_mmu_enabled false` in v3 regardless, to be consistent with enable_sgx (see Sean's reply). > > > > > I tried both CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE (-O2) and > > CONFIG_CC_OPTIMIZE_FOR_SIZE (-Os) and did not encounter any issues > > building 32-bit KVM with this series. > > Yes both -O2 and -Os will optimize the 'const bool' out to omit the function > call, if I recall correctly. In fact in my experience -O1 can also omit the > function call, if I recall correctly. > > -- > Thanks, > -Kai > >