Re: [PATCH v4 1/3] ipmi: ssif_bmc: Add SSIF BMC driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Quan,

I love your patch! Yet something to improve:

[auto build test ERROR on char-misc/char-misc-testing]
[also build test ERROR on wsa/i2c/for-next ipmi/for-next v5.14-rc1 next-20210713]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Quan-Nguyen/Add-SSIF-BMC-driver/20210713-135600
base:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git 77d34a4683b053108ecd466cc7c4193b45805528
config: arc-allyesconfig (attached as .config)
compiler: arceb-elf-gcc (GCC) 9.3.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/0day-ci/linux/commit/cf593040967f887f9c4957726fcdccc8fbaa6f9e
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Quan-Nguyen/Add-SSIF-BMC-driver/20210713-135600
        git checkout cf593040967f887f9c4957726fcdccc8fbaa6f9e
        # save the attached .config to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross O=build_dir ARCH=arc SHELL=/bin/bash

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

Note: the linux-review/Quan-Nguyen/Add-SSIF-BMC-driver/20210713-135600 HEAD 92b8df8e5b040f3d832db695bc204463986f7fcd builds fine.
      It only hurts bisectibility.

All errors (new ones prefixed by >>):

   drivers/char/ipmi/ssif_bmc.c: In function 'ssif_bmc_write':
>> drivers/char/ipmi/ssif_bmc.c:111:37: error: 'const struct i2c_algorithm' has no member named 'slave_enable'
     111 |  if (ssif_bmc->client->adapter->algo->slave_enable)
         |                                     ^~
   drivers/char/ipmi/ssif_bmc.c:112:40: error: 'const struct i2c_algorithm' has no member named 'slave_enable'
     112 |   ret = ssif_bmc->client->adapter->algo->slave_enable(ssif_bmc->client, true);
         |                                        ^~
   drivers/char/ipmi/ssif_bmc.c: In function 'handle_request':
   drivers/char/ipmi/ssif_bmc.c:188:37: error: 'const struct i2c_algorithm' has no member named 'slave_enable'
     188 |  if (ssif_bmc->client->adapter->algo->slave_enable)
         |                                     ^~
   drivers/char/ipmi/ssif_bmc.c:189:34: error: 'const struct i2c_algorithm' has no member named 'slave_enable'
     189 |   ssif_bmc->client->adapter->algo->slave_enable(ssif_bmc->client, false);
         |                                  ^~


vim +111 drivers/char/ipmi/ssif_bmc.c

    75	
    76	/* Handle SSIF message that is written by user */
    77	static ssize_t ssif_bmc_write(struct file *file, const char __user *buf, size_t count,
    78				      loff_t *ppos)
    79	{
    80		struct ssif_bmc_ctx *ssif_bmc = to_ssif_bmc(file);
    81		struct ssif_msg msg;
    82		unsigned long flags;
    83		ssize_t ret;
    84	
    85		if (count > sizeof(struct ssif_msg))
    86			return -EINVAL;
    87	
    88		ret = copy_from_user(&msg, buf, count);
    89		if (ret)
    90			return ret;
    91	
    92		if (!msg.len || count < ssif_msg_len(&msg))
    93			return -EINVAL;
    94	
    95		spin_lock_irqsave(&ssif_bmc->lock, flags);
    96		while (ssif_bmc->response_in_progress) {
    97			spin_unlock_irqrestore(&ssif_bmc->lock, flags);
    98			if (file->f_flags & O_NONBLOCK)
    99				return -EAGAIN;
   100			ret = wait_event_interruptible(ssif_bmc->wait_queue,
   101						       !ssif_bmc->response_in_progress);
   102			if (ret)
   103				return ret;
   104			spin_lock_irqsave(&ssif_bmc->lock, flags);
   105		}
   106	
   107		memcpy(&ssif_bmc->response, &msg, count);
   108		ssif_bmc->is_singlepart_read = (ssif_msg_len(&msg) <= MAX_PAYLOAD_PER_TRANSACTION + 1);
   109		ssif_bmc->response_in_progress = true;
   110	
 > 111		if (ssif_bmc->client->adapter->algo->slave_enable)
   112			ret = ssif_bmc->client->adapter->algo->slave_enable(ssif_bmc->client, true);
   113	
   114		spin_unlock_irqrestore(&ssif_bmc->lock, flags);
   115	
   116		return (ret < 0) ? ret : count;
   117	}
   118	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux