+2
−6
Loading
gcc-12 is really tricky. It detected that in ftl_nv_cache_load_state() that when we do an FTL_NOTICELOG, the dev and nv_cache values are associated with each other by the SPDK_CONTAINEROF() operation. So then in FTL_LOG_COMMON, it checks if dev is NULL. If it is, it doesn't print the dev->conf.name, but still prints the varargs which include nv_cache members. But if dev is NULL then these nv_cache members wouldn't be valid either, and that's what gcc-12 is complaining about, in a very unclear way. So now we just have FTL_LOG_COMMON contain a single line, with a tertiary operator to print either dev->conf.name or "N/A" depending on whether dev is NULL or not. I suspect this fixes it because we've replaced the if statement with a tertiary operator that is independent from the VA_ARGS. Fixes issue #2829 (partially). Signed-off-by:Jim Harris <james.r.harris@intel.com> Change-Id: Ia56e2c7fb7966e7a5ceff35b36b0346b556ce7e7 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/16342 Reviewed-by:
<sebastian.brzezinka@intel.com> Reviewed-by:
Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by:
Tomasz Zawadzki <tomasz.zawadzki@intel.com> Tested-by:
SPDK CI Jenkins <sys_sgci@intel.com>