From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f48.google.com (mail-pj1-f48.google.com [209.85.216.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D1FB73F823E for ; Tue, 14 Jul 2026 08:11:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.48 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784016698; cv=none; b=Nc0BiNhEieEiZGRn38n/z5MZwweVtcXyivumrWGtJaxxg3+383uUmV5YJ7iMYKSRvsP3L0FG87wi+OcDA/8HV1RQfaW50lFoL109yNecVGRfqPDUoF25nveRmLizC7IIMFWMRRMS+NRNezmW7dCbwkYQM1i5K2q6hurEPWaMVeg= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784016698; c=relaxed/simple; bh=ycCZlW5s2czC+w8cDs2mDX1LS/uO/v2d8xosk/RQMnM=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=gRfrl1n6XZiQ1q8sMTJKeKYvZ/J8q46AjPI0xCbq3qn7HbT45ryJnZppl8uTUjKPjw0LuLlP8ndZjTBDttnKwZ3A1Ezoj0IdusdvQExGASE9xFhTwEXzq6rpY0dyMMwPFD1hbK8d4IJzyojen+mLxgGDKps3PWHVq5oWiHEqOrk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=iv8uyQqL; arc=none smtp.client-ip=209.85.216.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="iv8uyQqL" Received: by mail-pj1-f48.google.com with SMTP id 98e67ed59e1d1-381891a9525so4389458a91.3 for ; Tue, 14 Jul 2026 01:11:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784016692; x=1784621492; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=s8Ipgx3lctn3cg5R9rlDTJWZ0blL0+fnY2U9hYcXA5k=; b=iv8uyQqLWczAbYP0C1DTVJc8kATZmt6HEn8I6bd7A1jR/dgLnx/4peMJoGYAkQUENM X6nA3EEdBaq0d3jLmsKhahtKKTD9sV2Ut3qyb+nJBX5YSLwe593YqJeNvEDxQN85/fRJ aNsaZhUrn9q/TJYVKQPgPQh2lpVKCCtAoiGpy0uA+pVUEa2x5A4FtdGqRY02Ne6tM+3t /s1Hm0jGTKVMd45dLHIZn2UQyY5+A81j5m0T22ga66FLtbzttnIqk9viPphxvRUQlyWZ Kry9nG3eFx6ceXK10r7gMczgVkcb1awZa/Sk7eB7nOegcrcs2+4NxoOABcsQL20T57HS 5ivw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784016692; x=1784621492; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=s8Ipgx3lctn3cg5R9rlDTJWZ0blL0+fnY2U9hYcXA5k=; b=kI1DVZw2FpJtpMU/ugeVnvOa01Jnb/U3QIenJ0vX/Q+0HKjpm+Nr6MXGzH1y/+rlQ7 LyYrKF2h9Cl6D4cbdsIIBKRkVPy3bJ37myhuAjmI+eY7UdbGsFk2YbUhBMGm6mGIOAee dn2m+kJPjKzmVwomoaSNQ5CLXg3wkz/GfpSi8HFMFpNNmAQG/gmucPRZoBqRn3QQ2T5D H2hJ+Rz68acZAyVrKLSrpvlIA/joSjQylB22ptYSubOVSYd77KHmgskP80p5S+H/UmSf bEmDANhj7L4uLzuwjDt+ieWEPiPWV/+TQFtV+mOdgrJWbWOfJIWz86f14u8VkwxcKT4c ri2g== X-Forwarded-Encrypted: i=1; AHgh+Rq+Un0xSfZzFWB+cNc/4n5n9Zn2RDmEtMR8jFI/ECK+UeswY/jxNP4q1GoTjes5fn0d7/wrjCxGAVAdQ+k=@vger.kernel.org X-Gm-Message-State: AOJu0YyA1xJnQWrToIGea+v9DtgZEouoUne5tIaY2Y8+TzFBthDqa2Ty 9M08B3fm3H1E/MdU3syGSAwy0b4ynYwHuys+FbsMziLDjDPcJ76dmfQ= X-Gm-Gg: AfdE7clm8r4LpBpIgu6Tuwi+Nzw8Ax5XaBB5sggr0E/IhBruRhHZhLWoQC0bvRUAz/F FQmIEWXWQKhDVMBG0Lu0rlzshDqb+gXf3ACxoirP6QN8CMCnzxcmBwu5RhISdTkaJU711ib3jDC BQirkgta7cuEH533ck3yP2ssRqaS8S6ki9B4VPsEhPDCniyCxbEOWfPw9gPPv38xksazX/bRt7Z uLXVjTn0S5XDbnKo6xQebc08H1ZxRKy0averq+3jw07PMPxjfXWcE4CwTXtZE44fvngMnUUllq8 HKClSSOd0zOgly4A0k2ohZ6DCapJSibk2UKQdbfKUrtvzXw90as9uedyV04XzHFJSjzZFQ0uEWg UgTsavFrfxM0ES7d63vPj4143wJ3tAxkRorAbcM2jysqeDZXIrKxKumuHXxcp7bpeLriFQwxWYA 9Izs0kCOVgV6LBEIwHfhl18tcJRD0FikyE8UW2il09gfrQG8OQzSMeFaihNQWi17t5rpZNRQek9 BWlWmD6srfWN6pgRg5DG6GNg1lyJdBoNCjQaHZPOsw+hnGukQ== X-Received: by 2002:a17:90b:1a89:b0:36d:9e0b:3801 with SMTP id 98e67ed59e1d1-38e1add8ec6mr1362188a91.8.1784016692263; Tue, 14 Jul 2026 01:11:32 -0700 (PDT) Received: from localhost.localdomain ([14.5.152.27]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-38deea72fc3sm1427267a91.2.2026.07.14.01.11.28 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 14 Jul 2026 01:11:31 -0700 (PDT) From: Myeonghun Pak To: Tony Nguyen , Przemek Kitszel , intel-wired-lan@lists.osuosl.org Cc: Milena Olech , Andrew Lunn , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Myeonghun Pak , Ijae Kim Subject: [PATCH] idpf: disable PCIe PTM on device removal Date: Tue, 14 Jul 2026 17:11:24 +0900 Message-Id: <20260714081124.90962-1-mhun512@gmail.com> X-Mailer: git-send-email 2.39.5 (Apple Git-154) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit idpf_probe() enables PCIe Precision Time Measurement with pci_enable_ptm(pdev, NULL), which programs the PTM control bits and sets pdev->ptm_enabled when the bus/controller supports it. The teardown path in idpf_remove() releases the workqueues, vports, mutexes and the adapter memory but never calls pci_disable_ptm(), so PTM is left enabled on the device after the driver detaches. This leaves the PCI core's software PTM state and the device's PTM control bits set with no bound driver. pcim_enable_device() only arranges for pci_disable_device() on teardown and does not undo the PTM enable, so it is not a substitute here. Pair the enable with pci_disable_ptm(pdev) in idpf_remove(), matching the igc and mlx5 drivers which already disable PTM on their remove paths. Fixes: 8d5e12c5921c ("idpf: add initial PTP support") Co-developed-by: Ijae Kim Signed-off-by: Ijae Kim Signed-off-by: Myeonghun Pak --- drivers/net/ethernet/intel/idpf/idpf_main.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/ethernet/intel/idpf/idpf_main.c b/drivers/net/ethernet/intel/idpf/idpf_main.c index 0dd741dcfc..3d3471d3f7 100644 --- a/drivers/net/ethernet/intel/idpf/idpf_main.c +++ b/drivers/net/ethernet/intel/idpf/idpf_main.c @@ -159,6 +159,7 @@ static void idpf_remove(struct pci_dev *pdev) mutex_destroy(&adapter->queue_lock); mutex_destroy(&adapter->vc_buf_lock); + pci_disable_ptm(pdev); pci_set_drvdata(pdev, NULL); kfree(adapter); } -- 2.47.1