Author: kibab
Date: Tue Jun 19 11:25:40 2018
New Revision: 335366
URL: https://svnweb.freebsd.org/changeset/base/335366

Log:
  Correctly define rawscr so initializing it doesn't result in overwriting 
memory.
  
  We need 8 bytes of storage for rawscr.
  
  Approved by:  imp (mentor)
  Differential Revision:        https://reviews.freebsd.org/D15889

Modified:
  head/sys/cam/mmc/mmc_da.c

Modified: head/sys/cam/mmc/mmc_da.c
==============================================================================
--- head/sys/cam/mmc/mmc_da.c   Tue Jun 19 11:23:48 2018        (r335365)
+++ head/sys/cam/mmc/mmc_da.c   Tue Jun 19 11:25:40 2018        (r335366)
@@ -818,6 +818,7 @@ mmc_app_get_scr(struct cam_periph *periph, union ccb *
        struct mmc_data d;
 
        memset(&cmd, 0, sizeof(cmd));
+       memset(&d, 0, sizeof(d));
 
        memset(rawscr, 0, 8);
        cmd.opcode = ACMD_SEND_SCR;
@@ -1296,13 +1297,13 @@ sdda_start_init(void *context, union ccb *start_ccb)
                /* Find out if the card supports High speed timing */
                if (mmcp->card_features & CARD_FEATURE_SD20) {
                        /* Get and decode SCR */
-                       uint32_t rawscr;
+                       uint32_t rawscr[2];
                        uint8_t res[64];
-                       if (mmc_app_get_scr(periph, start_ccb, &rawscr)) {
+                       if (mmc_app_get_scr(periph, start_ccb, rawscr)) {
                                CAM_DEBUG(periph->path, CAM_DEBUG_PERIPH, 
("Cannot get SCR\n"));
                                goto finish_hs_tests;
                        }
-                       mmc_app_decode_scr(&rawscr, &softc->scr);
+                       mmc_app_decode_scr(rawscr, &softc->scr);
 
                        if ((softc->scr.sda_vsn >= 1) && (softc->csd.ccc & 
(1<<10))) {
                                mmc_sd_switch(periph, start_ccb, 
SD_SWITCH_MODE_CHECK,
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to