From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755087AbeAMSvM (ORCPT + 1 other); Sat, 13 Jan 2018 13:51:12 -0500 Received: from mail-wm0-f43.google.com ([74.125.82.43]:44437 "EHLO mail-wm0-f43.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754978AbeAMSvK (ORCPT ); Sat, 13 Jan 2018 13:51:10 -0500 X-Google-Smtp-Source: ACJfBotItBsq4+1zR61O8l2NZC2vWNfnn5HanNIz5xc2x/HUE8KAh8p47IlriXZz7Yvbx6DS56QaXg== Subject: Re: stable/linux-3.16.y build: 178 builds: 1 failed, 177 passed, 2 errors, 57 warnings (v3.16.52) To: Arnd Bergmann , "kernelci.org bot" Cc: Kernel Build Reports Mailman List , "3.16.x" , Ben Hutchings , Linux Kernel Mailing List References: <5a4b7192.08f4500a.dd9fa.064c@mx.google.com> From: Manfred Spraul Message-ID: <0ecf39a8-dfc1-e895-ad6b-e2cf21a30e01@colorfullife.com> Date: Sat, 13 Jan 2018 19:51:06 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: Hi Arnd, On 01/03/2018 12:15 AM, Arnd Bergmann wrote: > >> 2 ipc/sem.c:377:6: warning: '___p1' may be used uninitialized in this function [-Wmaybe-uninitialized] > This code was last touched in 3.16 by the backport of commit > 5864a2fd3088 ("ipc/sem.c: fix complex_count vs. simple op race") > > The warning is in "smp_load_acquire(&sma->complex_mode))", and I suspect > that commit 27d7be1801a4 ("ipc/sem.c: avoid using spin_unlock_wait()") > avoided the warning upstream by removing the smp_mb() before it. The smp_mb() pairs with spin_unlock_wait() in complexmode_enter() It is removed by commit 27d7be1801a4 ("ipc/sem.c: avoid using spin_unlock_wait()"). From what I see, it doesn't exist in any of the stable kernels (intentionally, the above commit is a rewrite for better performance). ___p1 is from smp_load_acquire() >        typeof(*p) ___p1 = READ_ONCE(*p);                               \ I don't see how ___p1 could be used uninitialized. Perhaps a compiler issue? --     Manfred