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>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Fri, 1 May 2020 16:20:57 +0800
From:   kbuild test robot <lkp@...el.com>
To:     William Breathitt Gray <vilhelm.gray@...il.com>, jic23@...nel.org
Cc:     kbuild-all@...ts.01.org, kamel.bouhara@...tlin.com,
        gwendal@...omium.org, alexandre.belloni@...tlin.com,
        david@...hnology.com, felipe.balbi@...ux.intel.com,
        fabien.lahoudere@...labora.com, linux-iio@...r.kernel.org,
        linux-kernel@...r.kernel.org,
        linux-stm32@...md-mailman.stormreply.com
Subject: Re: [PATCH 1/4] counter: Internalize sysfs interface code

Hi William,

I love your patch! Perhaps something to improve:

[auto build test WARNING on stm32/stm32-next]
[cannot apply to linus/master linux/master v5.7-rc3 next-20200430]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:    https://github.com/0day-ci/linux/commits/William-Breathitt-Gray/Introduce-the-Counter-character-device-interface/20200430-051734
base:   https://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32.git stm32-next
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.1-191-gc51a0382-dirty
        make ARCH=x86_64 allmodconfig
        make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'

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


sparse warnings: (new ones prefixed by >>)

>> drivers/counter/104-quad-8.c:700:56: sparse: sparse: mixing different enum types:
>> drivers/counter/104-quad-8.c:700:56: sparse:    unsigned int enum counter_count_function
>> drivers/counter/104-quad-8.c:700:56: sparse:    unsigned int enum quad8_count_function
--
>> drivers/counter/stm32-lptimer-cnt.c:573:24: sparse: sparse: mixing different enum types:
>> drivers/counter/stm32-lptimer-cnt.c:573:24: sparse:    unsigned int enum counter_count_function
>> drivers/counter/stm32-lptimer-cnt.c:573:24: sparse:    unsigned int enum stm32_lptim_cnt_function

vim +700 drivers/counter/104-quad-8.c

   693	
   694	static int quad8_function_write(struct counter_device *counter,
   695					struct counter_count *count,
   696					enum counter_count_function function)
   697	{
   698		struct quad8_iio *const priv = counter->priv;
   699		const int id = count->id;
 > 700		const enum quad8_count_function cnt_function = function;
   701		unsigned int *const quadrature_mode = priv->quadrature_mode + id;
   702		unsigned int *const scale = priv->quadrature_scale + id;
   703		unsigned int mode_cfg = priv->count_mode[id] << 1;
   704		unsigned int *const synchronous_mode = priv->synchronous_mode + id;
   705		const unsigned int idr_cfg = priv->index_polarity[id] << 1;
   706		const int base_offset = priv->base + 2 * id + 1;
   707	
   708		if (cnt_function == QUAD8_COUNT_FUNCTION_PULSE_DIRECTION) {
   709			*quadrature_mode = 0;
   710	
   711			/* Quadrature scaling only available in quadrature mode */
   712			*scale = 0;
   713	
   714			/* Synchronous function not supported in non-quadrature mode */
   715			if (*synchronous_mode) {
   716				*synchronous_mode = 0;
   717				/* Disable synchronous function mode */
   718				outb(QUAD8_CTR_IDR | idr_cfg, base_offset);
   719			}
   720		} else {
   721			*quadrature_mode = 1;
   722	
   723			switch (cnt_function) {
   724			case QUAD8_COUNT_FUNCTION_QUADRATURE_X1:
   725				*scale = 0;
   726				mode_cfg |= QUAD8_CMR_QUADRATURE_X1;
   727				break;
   728			case QUAD8_COUNT_FUNCTION_QUADRATURE_X2:
   729				*scale = 1;
   730				mode_cfg |= QUAD8_CMR_QUADRATURE_X2;
   731				break;
   732			case QUAD8_COUNT_FUNCTION_QUADRATURE_X4:
   733				*scale = 2;
   734				mode_cfg |= QUAD8_CMR_QUADRATURE_X4;
   735				break;
   736			default: return -EINVAL;
   737			}
   738		}
   739	
   740		/* Load mode configuration to Counter Mode Register */
   741		outb(QUAD8_CTR_CMR | mode_cfg, base_offset);
   742	
   743		return 0;
   744	}
   745	

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ