From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 75186C4167B for ; Fri, 1 Dec 2023 08:55:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1377937AbjLAIzH (ORCPT ); Fri, 1 Dec 2023 03:55:07 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50148 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232538AbjLAIzE (ORCPT ); Fri, 1 Dec 2023 03:55:04 -0500 Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id ECFFD90 for ; Fri, 1 Dec 2023 00:55:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1701420910; x=1732956910; h=date:from:to:cc:subject:message-id:mime-version: content-transfer-encoding; bh=Zq2JyovdTPVP8+E6/fyP4PAwwIEJgpwn3QAAzGl7DJ8=; b=MtpEaZ/5MxhdVinCkSXe1ULjN601TsC0l/H5Ez0ZsztuTml8lyPJk8Gi VKl/678tVj5Ecq9XduP3J7Zww+Wf2Dl/Kha0znkVADEEaDuzriBGu5Ait bwns3xfdPb2xi6c+KHUnE+oWO8XbLZEnmoOn8MDMp0K+hyz5VamL1tBGT dXaVBq/qoExs4QtNGqRrI89MBZXH9ic71pCenzSevKTgPJPMDHkrPHWQO A8zOB6/PQ6khXSs9Uc0tfsvlI6ofKxTx8VOfej0PCaBitdwEMK3eNQQts pF4/r6illKO5j3JC8bA93qDeDkGUZnxMET2o5y9jJq9WLJihxzuh9nUxY g==; X-IronPort-AV: E=McAfee;i="6600,9927,10910"; a="378494965" X-IronPort-AV: E=Sophos;i="6.04,241,1695711600"; d="scan'208";a="378494965" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Dec 2023 00:55:10 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10910"; a="913516123" X-IronPort-AV: E=Sophos;i="6.04,241,1695711600"; d="scan'208";a="913516123" Received: from lkp-server02.sh.intel.com (HELO b07ab15da5fe) ([10.239.97.151]) by fmsmga001.fm.intel.com with ESMTP; 01 Dec 2023 00:55:08 -0800 Received: from kbuild by b07ab15da5fe with local (Exim 4.96) (envelope-from ) id 1r8zIg-0003M5-1G; Fri, 01 Dec 2023 08:55:06 +0000 Date: Fri, 1 Dec 2023 16:52:59 +0800 From: kernel test robot To: Mika Westerberg Cc: oe-kbuild-all@lists.linux.dev, linux-kernel@vger.kernel.org, Bjorn Helgaas , Lukas Wunner Subject: drivers/pci/pci.h:343:17: sparse: sparse: cast from restricted pci_channel_state_t Message-ID: <202312011656.e05BXvlx-lkp@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 994d5c58e50e91bb02c7be4a91d5186292a895c8 commit: c82458101d5490230d735caecce14c9c27b1010c PCI/PM: Mark devices disconnected if upstream PCIe link is down on resume date: 9 weeks ago config: loongarch-randconfig-r025-20230627 (https://download.01.org/0day-ci/archive/20231201/202312011656.e05BXvlx-lkp@intel.com/config) compiler: loongarch64-linux-gcc (GCC) 12.3.0 reproduce: (https://download.01.org/0day-ci/archive/20231201/202312011656.e05BXvlx-lkp@intel.com/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202312011656.e05BXvlx-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) drivers/pci/pci-driver.c:522:42: sparse: sparse: restricted pci_power_t degrades to integer drivers/pci/pci-driver.c:522:61: sparse: sparse: restricted pci_power_t degrades to integer drivers/pci/pci-driver.c:757:28: sparse: sparse: restricted pci_power_t degrades to integer drivers/pci/pci-driver.c:757:46: sparse: sparse: restricted pci_power_t degrades to integer drivers/pci/pci-driver.c: note: in included file (through include/linux/mmzone.h, include/linux/gfp.h, include/linux/xarray.h, ...): include/linux/page-flags.h:242:46: sparse: sparse: self-comparison always evaluates to false drivers/pci/pci-driver.c:389:19: sparse: sparse: self-comparison always evaluates to false drivers/pci/pci-driver.c: note: in included file: >> drivers/pci/pci.h:343:17: sparse: sparse: cast from restricted pci_channel_state_t >> drivers/pci/pci.h:343:17: sparse: sparse: cast to restricted pci_channel_state_t drivers/pci/pci.h:346:23: sparse: sparse: cast from restricted pci_channel_state_t drivers/pci/pci.h:346:23: sparse: sparse: cast from restricted pci_channel_state_t drivers/pci/pci.h:346:23: sparse: sparse: cast to restricted pci_channel_state_t drivers/pci/pci.h:350:23: sparse: sparse: cast from restricted pci_channel_state_t drivers/pci/pci.h:350:23: sparse: sparse: cast from restricted pci_channel_state_t drivers/pci/pci.h:350:23: sparse: sparse: cast to restricted pci_channel_state_t vim +343 drivers/pci/pci.h ac04840350e2c2 Lukas Wunner 2023-03-11 324 a6bd101b8f84f9 Keith Busch 2018-09-20 325 /** a6bd101b8f84f9 Keith Busch 2018-09-20 326 * pci_dev_set_io_state - Set the new error state if possible. a6bd101b8f84f9 Keith Busch 2018-09-20 327 * 347269c113f10f Krzysztof Wilczyński 2021-07-03 328 * @dev: PCI device to set new error_state 347269c113f10f Krzysztof Wilczyński 2021-07-03 329 * @new: the state we want dev to be in a6bd101b8f84f9 Keith Busch 2018-09-20 330 * 74ff8864cc842b Lukas Wunner 2023-01-20 331 * If the device is experiencing perm_failure, it has to remain in that state. 74ff8864cc842b Lukas Wunner 2023-01-20 332 * Any other transition is allowed. a6bd101b8f84f9 Keith Busch 2018-09-20 333 * a6bd101b8f84f9 Keith Busch 2018-09-20 334 * Returns true if state has been changed to the requested state. a6bd101b8f84f9 Keith Busch 2018-09-20 335 */ a6bd101b8f84f9 Keith Busch 2018-09-20 336 static inline bool pci_dev_set_io_state(struct pci_dev *dev, a6bd101b8f84f9 Keith Busch 2018-09-20 337 pci_channel_state_t new) a6bd101b8f84f9 Keith Busch 2018-09-20 338 { 74ff8864cc842b Lukas Wunner 2023-01-20 339 pci_channel_state_t old; a6bd101b8f84f9 Keith Busch 2018-09-20 340 a6bd101b8f84f9 Keith Busch 2018-09-20 341 switch (new) { a6bd101b8f84f9 Keith Busch 2018-09-20 342 case pci_channel_io_perm_failure: 74ff8864cc842b Lukas Wunner 2023-01-20 @343 xchg(&dev->error_state, pci_channel_io_perm_failure); 74ff8864cc842b Lukas Wunner 2023-01-20 344 return true; a6bd101b8f84f9 Keith Busch 2018-09-20 345 case pci_channel_io_frozen: 74ff8864cc842b Lukas Wunner 2023-01-20 346 old = cmpxchg(&dev->error_state, pci_channel_io_normal, 74ff8864cc842b Lukas Wunner 2023-01-20 347 pci_channel_io_frozen); 74ff8864cc842b Lukas Wunner 2023-01-20 348 return old != pci_channel_io_perm_failure; a6bd101b8f84f9 Keith Busch 2018-09-20 349 case pci_channel_io_normal: 74ff8864cc842b Lukas Wunner 2023-01-20 350 old = cmpxchg(&dev->error_state, pci_channel_io_frozen, 74ff8864cc842b Lukas Wunner 2023-01-20 351 pci_channel_io_normal); 74ff8864cc842b Lukas Wunner 2023-01-20 352 return old != pci_channel_io_perm_failure; 74ff8864cc842b Lukas Wunner 2023-01-20 353 default: 74ff8864cc842b Lukas Wunner 2023-01-20 354 return false; a6bd101b8f84f9 Keith Busch 2018-09-20 355 } a6bd101b8f84f9 Keith Busch 2018-09-20 356 } 89ee9f7680031d Keith Busch 2017-03-29 357 :::::: The code at line 343 was first introduced by commit :::::: 74ff8864cc842be994853095dba6db48e716400a PCI: hotplug: Allow marking devices as disconnected during bind/unbind :::::: TO: Lukas Wunner :::::: CC: Bjorn Helgaas -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki