All of lore.kernel.org
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: Dan Carpenter <dan.carpenter@oracle.com>
Cc: alsa-devel@alsa-project.org
Subject: Re: [bug report] ALSA: x86: Flatten two abstraction layers
Date: Tue, 07 Feb 2017 12:32:55 +0100	[thread overview]
Message-ID: <s5hr33ack2g.wl-tiwai@suse.de> (raw)
In-Reply-To: <s5h1svadz49.wl-tiwai@suse.de>

On Tue, 07 Feb 2017 12:22:30 +0100,
Takashi Iwai wrote:
> 
> On Tue, 07 Feb 2017 11:42:03 +0100,
> Dan Carpenter wrote:
> > 
> > Hello Takashi Iwai,
> > 
> > The patch da8648097497: "ALSA: x86: Flatten two abstraction layers"
> > from Jan 31, 2017, leads to the following static checker warning:
> > 
> > 	sound/x86/intel_hdmi_audio.c:1702 hdmi_lpe_audio_probe()
> > 	error: strcpy() '"IntelHdmiLpeAudio"' too large for 'card->driver' (18 vs 16)
> > 
> > sound/x86/intel_hdmi_audio.c
> >   1695          ctx = card->private_data;
> >   1696          spin_lock_init(&ctx->had_spinlock);
> >   1697          mutex_init(&ctx->mutex);
> >   1698          ctx->connected = false;
> >   1699          ctx->dev = &pdev->dev;
> >   1700          ctx->card = card;
> >   1701          ctx->aes_bits = SNDRV_PCM_DEFAULT_CON_SPDIF;
> >   1702          strcpy(card->driver, INTEL_HAD);
> >                                      ^^^^^^^^^
> > Too long.  We're corrupting memory.  The old code was equally bad, but
> > the renaming the function made it show up as a new warning...
> > 
> >   1703          strcpy(card->shortname, INTEL_HAD);
> >   1704  
> 
> Thanks, now fixed by the patch below.

Looking at the driver module name, it's better to fit the new name
with it.  Below is the respinned patch.


Takashi

-- 8< --
From: Takashi Iwai <tiwai@suse.de>
Subject: [PATCH v2] ALSA: x86: Fix driver name string overflow

The driver sets card->driver name string over its size (16 bytes).
Shorten the name string to fit with it.

Also, set more verbose string to card->shortname and ->longname.
This doesn't have to be identical with card->driver at all.

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
 sound/x86/intel_hdmi_audio.c     | 3 ++-
 sound/x86/intel_hdmi_lpe_audio.h | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/sound/x86/intel_hdmi_audio.c b/sound/x86/intel_hdmi_audio.c
index 8506a3dc0298..763597c33016 100644
--- a/sound/x86/intel_hdmi_audio.c
+++ b/sound/x86/intel_hdmi_audio.c
@@ -1694,7 +1694,8 @@ static int hdmi_lpe_audio_probe(struct platform_device *pdev)
 	ctx->card = card;
 	ctx->aes_bits = SNDRV_PCM_DEFAULT_CON_SPDIF;
 	strcpy(card->driver, INTEL_HAD);
-	strcpy(card->shortname, INTEL_HAD);
+	strcpy(card->shortname, "Intel HDMI/DP LPE Audio");
+	strcpy(card->longname, "Intel HDMI/DP LPE Audio");
 
 	ctx->irq = -1;
 	ctx->tmds_clock_speed = DIS_SAMPLE_RATE_148_5;
diff --git a/sound/x86/intel_hdmi_lpe_audio.h b/sound/x86/intel_hdmi_lpe_audio.h
index ca4212dca94e..48cab1b84c7b 100644
--- a/sound/x86/intel_hdmi_lpe_audio.h
+++ b/sound/x86/intel_hdmi_lpe_audio.h
@@ -57,7 +57,7 @@
 #define HAD_REG_WIDTH		0x08
 #define HAD_MAX_HW_BUFS		0x04
 #define HAD_MAX_DIP_WORDS		16
-#define INTEL_HAD		"IntelHdmiLpeAudio"
+#define INTEL_HAD		"HdmiLpeAudio"
 
 /* DP Link Rates */
 #define DP_2_7_GHZ			270000
-- 
2.11.0

      reply	other threads:[~2017-02-07 11:32 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-07 10:42 [bug report] ALSA: x86: Flatten two abstraction layers Dan Carpenter
2017-02-07 11:22 ` Takashi Iwai
2017-02-07 11:32   ` Takashi Iwai [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=s5hr33ack2g.wl-tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=alsa-devel@alsa-project.org \
    --cc=dan.carpenter@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.