Messages in this thread | | | From | Arnd Bergmann <> | Date | Wed, 1 Feb 2017 17:38:16 +0100 | Subject | Re: [PATCH] [RFC] sched: make DECLARE_COMPLETION_ONSTACK() work with clang |
| |
On Wed, Feb 1, 2017 at 5:34 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> diff --git a/include/linux/completion.h b/include/linux/completion.h > index fa5d3efaba56..5d5aaae3af43 100644 > --- a/include/linux/completion.h > +++ b/include/linux/completion.h > @@ -31,7 +31,7 @@ struct completion { > { 0, __WAIT_QUEUE_HEAD_INITIALIZER((work).wait) } > > #define COMPLETION_INITIALIZER_ONSTACK(work) \ > - (*init_completion(&work)) > + ({ init_completion(&work); work; }) > > /** > * DECLARE_COMPLETION - declare and initialize a completion structure > @@ -70,11 +70,10 @@ struct completion { > * This inline function will initialize a dynamically created completion > * structure. > */ > -static inline struct completion *init_completion(struct completion *x) > +static inline void init_completion(struct completion *x) > { > x->done = 0; > init_waitqueue_head(&x->wait); > - return x; > } >
I accidentally submitted the wrong patch, this is the revert of the actual change.
Arnd
| |