From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755390AbdDAAxC (ORCPT ); Fri, 31 Mar 2017 20:53:02 -0400 Received: from mail-pg0-f46.google.com ([74.125.83.46]:33366 "EHLO mail-pg0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754916AbdDAAxA (ORCPT ); Fri, 31 Mar 2017 20:53:00 -0400 Date: Fri, 31 Mar 2017 17:52:58 -0700 From: Matthias Kaehlcke To: Takashi Iwai Cc: Jaroslav Kysela , Sven Hahne , Julia Lawall , alsa-devel@alsa-project.org, Grant Grundler , linux-kernel@vger.kernel.org, Greg Hackmann , Michael Davidson Subject: Re: [alsa-devel] [PATCH] ALSA: hda/ca0132: Limit values for chip addresses to 32-bit Message-ID: <20170401005258.GC2130@google.com> References: <20170316205223.16926-1-mka@chromium.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Sorry for the delayed reply, El Mon, Mar 20, 2017 at 10:33:43AM +0100 Takashi Iwai ha dit: > On Thu, 16 Mar 2017 21:52:23 +0100, > Matthias Kaehlcke wrote: > > > > With the previous unsigned long value clang generates warnings like > > this: > > > > sound/pci/hda/patch_ca0132.c:860:37: error: implicit conversion from > > 'unsigned long' to 'u32' (aka 'unsigned int') changes value from > > 18446744073709551615 to 4294967295 [-Werror,-Wconstant-conversion] > > spec->curr_chip_addx = (res < 0) ? ~0UL : chip_addx; > > ~ ^~~~ > > > > Signed-off-by: Matthias Kaehlcke > > Thanks for the patch. The changes look mostly OK, but... > > > --- > > sound/pci/hda/patch_ca0132.c | 6 +++--- > > 1 file changed, 3 insertions(+), 3 deletions(-) > > > > diff --git a/sound/pci/hda/patch_ca0132.c b/sound/pci/hda/patch_ca0132.c > > index 11b9b2f17a2e..7175e2b46fc4 100644 > > --- a/sound/pci/hda/patch_ca0132.c > > +++ b/sound/pci/hda/patch_ca0132.c > > @@ -857,7 +857,7 @@ static int chipio_write_address(struct hda_codec *codec, > > chip_addx >> 16); > > } > > > > - spec->curr_chip_addx = (res < 0) ? ~0UL : chip_addx; > > + spec->curr_chip_addx = (res < 0) ? (u32)~0U : chip_addx; > > ... I guess the cast to u32 is superfluous here? That is, just > replace UL to U should work, I suppose. (Ditto for all other places.) You are right, the cast is not needed. I'll send an updated version. Cheers Matthias