unsigned int idx;
        int err;
 
-       strcpy(card->mixername, (acard->type == CMI8329) ? "CMI8329" : "CMI8330/C3D");
+       strscpy(card->mixername, (acard->type == CMI8329) ? "CMI8329" : "CMI8330/C3D");
 
        for (idx = 0; idx < ARRAY_SIZE(snd_cmi8330_controls); idx++) {
                err = snd_ctl_add(card,
        err = snd_pcm_new(card, (chip->type == CMI8329) ? "CMI8329" : "CMI8330", 0, 1, 1, &pcm);
        if (err < 0)
                return err;
-       strcpy(pcm->name, (chip->type == CMI8329) ? "CMI8329" : "CMI8330");
+       strscpy(pcm->name, (chip->type == CMI8329) ? "CMI8329" : "CMI8330");
        pcm->private_data = chip;
        
        /* SB16 */
                                mpuport[dev]);
        }
 
-       strcpy(card->driver, (acard->type == CMI8329) ? "CMI8329" : "CMI8330/C3D");
-       strcpy(card->shortname, (acard->type == CMI8329) ? "C-Media CMI8329" : "C-Media CMI8330/C3D");
+       strscpy(card->driver, (acard->type == CMI8329) ? "CMI8329" : "CMI8330/C3D");
+       strscpy(card->shortname, (acard->type == CMI8329) ? "C-Media CMI8329" : "C-Media CMI8330/C3D");
        sprintf(card->longname, "%s at 0x%lx, irq %d, dma %d",
                card->shortname,
                acard->wss->port,