Messages in this thread | | | From | Dan Williams <> | Date | Thu, 24 Aug 2017 17:36:22 -0700 | Subject | Re: [PATCH v2 1/2] nfit: Fix the abuse of COMPLETION_INITIALIZER_ONSTACK() |
| |
On Thu, Aug 24, 2017 at 7:22 AM, Boqun Feng <boqun.feng@gmail.com> wrote: > COMPLETION_INITIALIZER_ONSTACK() is supposed to used as an initializer, > in other words, it should only be used in assignment expressions or > compound literals. So the usage in drivers/acpi/nfit/core.c: > > COMPLETION_INITIALIZER_ONSTACK(flush.cmp); > > , is inappropriate. > > Besides, this usage could also break compilations for another fix to > reduce stack sizes caused by COMPLETION_INITIALIZER_ONSTACK(), because > that fix changes COMPLETION_INITIALIZER_ONSTACK() from rvalue to lvalue, > and usage as above will report error: > > drivers/acpi/nfit/core.c: In function 'acpi_nfit_flush_probe': > include/linux/completion.h:77:3: error: value computed is not used [-Werror=unused-value] > (*({ init_completion(&work); &work; })) > > This patch fixes this by replacing COMPLETION_INITIALIZER_ONSTACK() with > init_completion() in acpi_nfit_flush_probe(), which does the same > initialization without any other problem. > > Signed-off-by: Boqun Feng <boqun.feng@gmail.com>
Acked-by: Dan Williams <dan.j.williams@intel.com>
| |