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: <202302241140.XzIRs2Td-lkp@intel.com>
Date:   Fri, 24 Feb 2023 11:16:19 +0800
From:   kernel test robot <lkp@...el.com>
To:     M Chetan Kumar <m.chetan.kumar@...ux.intel.com>
Cc:     llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev,
        linux-kernel@...r.kernel.org
Subject: drivers/net/wwan/iosm/iosm_ipc_mux.h:369:17: warning: field
 adb_finish_timer within 'struct iosm_mux' is less aligned than 'struct
 hrtimer' and is usually due to 'struct iosm_mux' being packed, which can
 lead to unaligned accesses

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   d2980d8d826554fa6981d621e569a453787472f8
commit: 035e3befc191347331dd2530c3686e05a8acfbb2 net: wwan: iosm: fix driver not working with INTEL_IOMMU disabled
date:   4 months ago
config: arm-randconfig-r004-20230224 (https://download.01.org/0day-ci/archive/20230224/202302241140.XzIRs2Td-lkp@intel.com/config)
compiler: clang version 17.0.0 (https://github.com/llvm/llvm-project db89896bbbd2251fff457699635acbbedeead27f)
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
        # install arm cross compiling tool for clang build
        # apt-get install binutils-arm-linux-gnueabi
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=035e3befc191347331dd2530c3686e05a8acfbb2
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout 035e3befc191347331dd2530c3686e05a8acfbb2
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash drivers/net/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@...el.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202302241140.XzIRs2Td-lkp@intel.com/

All warnings (new ones prefixed by >>):

   In file included from drivers/net/wwan/iosm/iosm_ipc_debugfs.c:10:
   In file included from drivers/net/wwan/iosm/iosm_ipc_trace.h:12:
   In file included from drivers/net/wwan/iosm/iosm_ipc_chnl_cfg.h:9:
>> drivers/net/wwan/iosm/iosm_ipc_mux.h:369:17: warning: field adb_finish_timer within 'struct iosm_mux' is less aligned than 'struct hrtimer' and is usually due to 'struct iosm_mux' being packed, which can lead to unaligned accesses [-Wunaligned-access]
           struct hrtimer adb_finish_timer;
                          ^
   1 warning generated.


vim +369 drivers/net/wwan/iosm/iosm_ipc_mux.h

51c45fa95435c5 M Chetan Kumar 2021-06-13  309  
51c45fa95435c5 M Chetan Kumar 2021-06-13  310  /**
51c45fa95435c5 M Chetan Kumar 2021-06-13  311   * struct iosm_mux - Structure of the data multiplexing over an IP channel.
51c45fa95435c5 M Chetan Kumar 2021-06-13  312   * @dev:		Pointer to device structure
51c45fa95435c5 M Chetan Kumar 2021-06-13  313   * @session:		Array of the MUX sessions.
51c45fa95435c5 M Chetan Kumar 2021-06-13  314   * @channel:		Reference to the IP MUX channel
51c45fa95435c5 M Chetan Kumar 2021-06-13  315   * @pcie:		Pointer to iosm_pcie struct
51c45fa95435c5 M Chetan Kumar 2021-06-13  316   * @imem:		Pointer to iosm_imem
51c45fa95435c5 M Chetan Kumar 2021-06-13  317   * @wwan:		Poinetr to iosm_wwan
51c45fa95435c5 M Chetan Kumar 2021-06-13  318   * @ipc_protocol:	Pointer to iosm_protocol
51c45fa95435c5 M Chetan Kumar 2021-06-13  319   * @channel_id:		Channel ID for MUX
51c45fa95435c5 M Chetan Kumar 2021-06-13  320   * @protocol:		Type of the MUX protocol
51c45fa95435c5 M Chetan Kumar 2021-06-13  321   * @ul_flow:		UL Flow type
51c45fa95435c5 M Chetan Kumar 2021-06-13  322   * @nr_sessions:	Number of sessions
51c45fa95435c5 M Chetan Kumar 2021-06-13  323   * @instance_id:	Instance ID
51c45fa95435c5 M Chetan Kumar 2021-06-13  324   * @state:		States of the MUX object
51c45fa95435c5 M Chetan Kumar 2021-06-13  325   * @event:		Initiated actions to change the state of the MUX object
51c45fa95435c5 M Chetan Kumar 2021-06-13  326   * @tx_transaction_id:	Transaction id for the ACB command.
51c45fa95435c5 M Chetan Kumar 2021-06-13  327   * @rr_next_session:	Next session number for round robin.
51c45fa95435c5 M Chetan Kumar 2021-06-13  328   * @ul_adb:		State of the UL ADB/ADGH.
51c45fa95435c5 M Chetan Kumar 2021-06-13  329   * @size_needed:	Variable to store the size needed during ADB preparation
51c45fa95435c5 M Chetan Kumar 2021-06-13  330   * @ul_data_pend_bytes:	Pending UL data to be processed in bytes
51c45fa95435c5 M Chetan Kumar 2021-06-13  331   * @acb:		Temporary ACB state
51c45fa95435c5 M Chetan Kumar 2021-06-13  332   * @wwan_q_offset:	This will hold the offset of the given instance
51c45fa95435c5 M Chetan Kumar 2021-06-13  333   *			Useful while passing or receiving packets from
51c45fa95435c5 M Chetan Kumar 2021-06-13  334   *			wwan/imem layer.
1f52d7b622854b M Chetan Kumar 2022-02-10  335   * @adb_finish_timer:	Timer for forcefully finishing the ADB
1f52d7b622854b M Chetan Kumar 2022-02-10  336   * @acb_tx_sequence_nr: Sequence number for the ACB header.
1f52d7b622854b M Chetan Kumar 2022-02-10  337   * @params:		user configurable parameters
1f52d7b622854b M Chetan Kumar 2022-02-10  338   * @adb_tx_sequence_nr: Sequence number for ADB header
1f52d7b622854b M Chetan Kumar 2022-02-10  339   * @acc_adb_size:       Statistic data for logging
1f52d7b622854b M Chetan Kumar 2022-02-10  340   * @acc_payload_size:   Statistic data for logging
51c45fa95435c5 M Chetan Kumar 2021-06-13  341   * @initialized:	MUX object is initialized
51c45fa95435c5 M Chetan Kumar 2021-06-13  342   * @ev_mux_net_transmit_pending:
51c45fa95435c5 M Chetan Kumar 2021-06-13  343   *			0 means inform the IPC tasklet to pass the
51c45fa95435c5 M Chetan Kumar 2021-06-13  344   *			accumulated uplink ADB to CP.
51c45fa95435c5 M Chetan Kumar 2021-06-13  345   * @adb_prep_ongoing:	Flag for ADB preparation status
51c45fa95435c5 M Chetan Kumar 2021-06-13  346   */
51c45fa95435c5 M Chetan Kumar 2021-06-13  347  struct iosm_mux {
51c45fa95435c5 M Chetan Kumar 2021-06-13  348  	struct device *dev;
51c45fa95435c5 M Chetan Kumar 2021-06-13  349  	struct mux_session session[IPC_MEM_MUX_IP_SESSION_ENTRIES];
51c45fa95435c5 M Chetan Kumar 2021-06-13  350  	struct ipc_mem_channel *channel;
51c45fa95435c5 M Chetan Kumar 2021-06-13  351  	struct iosm_pcie *pcie;
51c45fa95435c5 M Chetan Kumar 2021-06-13  352  	struct iosm_imem *imem;
51c45fa95435c5 M Chetan Kumar 2021-06-13  353  	struct iosm_wwan *wwan;
51c45fa95435c5 M Chetan Kumar 2021-06-13  354  	struct iosm_protocol *ipc_protocol;
51c45fa95435c5 M Chetan Kumar 2021-06-13  355  	int channel_id;
51c45fa95435c5 M Chetan Kumar 2021-06-13  356  	enum ipc_mux_protocol protocol;
51c45fa95435c5 M Chetan Kumar 2021-06-13  357  	enum ipc_mux_ul_flow ul_flow;
51c45fa95435c5 M Chetan Kumar 2021-06-13  358  	int nr_sessions;
51c45fa95435c5 M Chetan Kumar 2021-06-13  359  	int instance_id;
51c45fa95435c5 M Chetan Kumar 2021-06-13  360  	enum mux_state state;
51c45fa95435c5 M Chetan Kumar 2021-06-13  361  	enum mux_event event;
51c45fa95435c5 M Chetan Kumar 2021-06-13  362  	u32 tx_transaction_id;
51c45fa95435c5 M Chetan Kumar 2021-06-13  363  	int rr_next_session;
51c45fa95435c5 M Chetan Kumar 2021-06-13  364  	struct mux_adb ul_adb;
51c45fa95435c5 M Chetan Kumar 2021-06-13  365  	int size_needed;
51c45fa95435c5 M Chetan Kumar 2021-06-13  366  	long long ul_data_pend_bytes;
51c45fa95435c5 M Chetan Kumar 2021-06-13  367  	struct mux_acb acb;
51c45fa95435c5 M Chetan Kumar 2021-06-13  368  	int wwan_q_offset;
1f52d7b622854b M Chetan Kumar 2022-02-10 @369  	struct hrtimer adb_finish_timer;
1f52d7b622854b M Chetan Kumar 2022-02-10  370  	u16 acb_tx_sequence_nr;
1f52d7b622854b M Chetan Kumar 2022-02-10  371  	struct ipc_params *params;
1f52d7b622854b M Chetan Kumar 2022-02-10  372  	u16 adb_tx_sequence_nr;
1f52d7b622854b M Chetan Kumar 2022-02-10  373  	unsigned long long acc_adb_size;
1f52d7b622854b M Chetan Kumar 2022-02-10  374  	unsigned long long acc_payload_size;
51c45fa95435c5 M Chetan Kumar 2021-06-13  375  	u8 initialized:1,
51c45fa95435c5 M Chetan Kumar 2021-06-13  376  	   ev_mux_net_transmit_pending:1,
1f52d7b622854b M Chetan Kumar 2022-02-10  377  	   adb_prep_ongoing;
1f52d7b622854b M Chetan Kumar 2022-02-10  378  } __packed;
51c45fa95435c5 M Chetan Kumar 2021-06-13  379  

:::::: The code at line 369 was first introduced by commit
:::::: 1f52d7b622854b8bd7a1be3de095ca2e1f77098e net: wwan: iosm: Enable M.2 7360 WWAN card support

:::::: TO: M Chetan Kumar <m.chetan.kumar@...ux.intel.com>
:::::: CC: David S. Miller <davem@...emloft.net>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ