lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202204090513.DJZRq10M-lkp@intel.com>
Date:   Sat, 9 Apr 2022 05:11:27 +0800
From:   kernel test robot <lkp@...el.com>
To:     gellert <gellert@...pberrypi.org>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org,
        Dom Cobley <popcornmix@...il.com>,
        Noralf Trønnes <noralf@...nnes.org>,
        Phil Elwell <phil@...pberrypi.org>,
        Lukas Wunner <lukas@...ner.de>,
        Yaroslav Rosomakho <yaroslavros@...il.com>,
        Maxime Ripard <maxime@...no.tech>,
        Juerg Haefliger <juergh@...onical.com>
Subject: [l1k:smsc95xx_5.17 62/888] drivers/mmc/host/bcm2835-mmc.c:655:6:
 warning: no previous prototype for 'bcm2835_mmc_send_command'

tree:   https://github.com/l1k/linux smsc95xx_5.17
head:   240f56c27361c195cd502d95aba51c6b8e5b808c
commit: 07021b7ee2fdb60a60c3289c983cc1c1d1494c71 [62/888] MMC: added alternative MMC driver
config: arm-allyesconfig (https://download.01.org/0day-ci/archive/20220409/202204090513.DJZRq10M-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/l1k/linux/commit/07021b7ee2fdb60a60c3289c983cc1c1d1494c71
        git remote add l1k https://github.com/l1k/linux
        git fetch --no-tags l1k smsc95xx_5.17
        git checkout 07021b7ee2fdb60a60c3289c983cc1c1d1494c71
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arm SHELL=/bin/bash arch/arm/lib/ drivers/char/ drivers/gpio/ drivers/mmc/host/ drivers/perf/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>

All warnings (new ones prefixed by >>):

>> drivers/mmc/host/bcm2835-mmc.c:655:6: warning: no previous prototype for 'bcm2835_mmc_send_command' [-Wmissing-prototypes]
     655 | void bcm2835_mmc_send_command(struct bcm2835_host *host, struct mmc_command *cmd)
         |      ^~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/mmc/host/bcm2835-mmc.c:1063:6: warning: no previous prototype for 'bcm2835_mmc_set_clock' [-Wmissing-prototypes]
    1063 | void bcm2835_mmc_set_clock(struct bcm2835_host *host, unsigned int clock)
         |      ^~~~~~~~~~~~~~~~~~~~~


vim +/bcm2835_mmc_send_command +655 drivers/mmc/host/bcm2835-mmc.c

   654	
 > 655	void bcm2835_mmc_send_command(struct bcm2835_host *host, struct mmc_command *cmd)
   656	{
   657		int flags;
   658		u32 mask;
   659		unsigned long timeout;
   660	
   661		WARN_ON(host->cmd);
   662	
   663		/* Wait max 10 ms */
   664		timeout = 1000;
   665	
   666		mask = SDHCI_CMD_INHIBIT;
   667		if ((cmd->data != NULL) || (cmd->flags & MMC_RSP_BUSY))
   668			mask |= SDHCI_DATA_INHIBIT;
   669	
   670		/* We shouldn't wait for data inihibit for stop commands, even
   671		   though they might use busy signaling */
   672		if (host->mrq->data && (cmd == host->mrq->data->stop))
   673			mask &= ~SDHCI_DATA_INHIBIT;
   674	
   675		while (bcm2835_mmc_readl(host, SDHCI_PRESENT_STATE) & mask) {
   676			if (timeout == 0) {
   677				pr_err("%s: Controller never released inhibit bit(s).\n",
   678					mmc_hostname(host->mmc));
   679				bcm2835_mmc_dumpregs(host);
   680				cmd->error = -EIO;
   681				tasklet_schedule(&host->finish_tasklet);
   682				return;
   683			}
   684			timeout--;
   685			udelay(10);
   686		}
   687	
   688		if ((1000-timeout)/100 > 1 && (1000-timeout)/100 > host->max_delay) {
   689			host->max_delay = (1000-timeout)/100;
   690			pr_warn("Warning: MMC controller hung for %d ms\n", host->max_delay);
   691		}
   692	
   693		timeout = jiffies;
   694		if (!cmd->data && cmd->busy_timeout > 9000)
   695			timeout += DIV_ROUND_UP(cmd->busy_timeout, 1000) * HZ + HZ;
   696		else
   697			timeout += 10 * HZ;
   698		mod_timer(&host->timer, timeout);
   699	
   700		host->cmd = cmd;
   701		host->use_dma = false;
   702	
   703		bcm2835_mmc_prepare_data(host, cmd);
   704	
   705		bcm2835_mmc_writel(host, cmd->arg, SDHCI_ARGUMENT, 6);
   706	
   707		bcm2835_mmc_set_transfer_mode(host, cmd);
   708	
   709		if ((cmd->flags & MMC_RSP_136) && (cmd->flags & MMC_RSP_BUSY)) {
   710			pr_err("%s: Unsupported response type!\n",
   711				mmc_hostname(host->mmc));
   712			cmd->error = -EINVAL;
   713			tasklet_schedule(&host->finish_tasklet);
   714			return;
   715		}
   716	
   717		if (!(cmd->flags & MMC_RSP_PRESENT))
   718			flags = SDHCI_CMD_RESP_NONE;
   719		else if (cmd->flags & MMC_RSP_136)
   720			flags = SDHCI_CMD_RESP_LONG;
   721		else if (cmd->flags & MMC_RSP_BUSY)
   722			flags = SDHCI_CMD_RESP_SHORT_BUSY;
   723		else
   724			flags = SDHCI_CMD_RESP_SHORT;
   725	
   726		if (cmd->flags & MMC_RSP_CRC)
   727			flags |= SDHCI_CMD_CRC;
   728		if (cmd->flags & MMC_RSP_OPCODE)
   729			flags |= SDHCI_CMD_INDEX;
   730	
   731		if (cmd->data)
   732			flags |= SDHCI_CMD_DATA;
   733	
   734		bcm2835_mmc_writew(host, SDHCI_MAKE_CMD(cmd->opcode, flags), SDHCI_COMMAND);
   735	}
   736	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ