n.fastabend@gmail.com" , "kpsingh@kernel.org" , "sdf@fomichev.me" , "haoluo@google.com" , "jolsa@kernel.org" , "jgg@ziepe.ca" , "jhubbard@nvidia.com" , "peterx@redhat.com" , "jannh@google.com" , "pfalcato@suse.de" , "shuah@kernel.org" , "riel@surriel.com" , "ryan.roberts@arm.com" , "jgross@suse.com" , "yu-cheng.yu@intel.com" , "kas@kernel.org" , "coxu@redhat.com" , "kevin.brodsky@arm.com" , "ackerleytng@google.com" , "maobibo@loongson.cn" , "prsampat@amd.com" , "mlevitsk@redhat.com" , "jmattson@google.com" , "jthoughton@google.com" , "agordeev@linux.ibm.com" , "alex@ghiti.fr" , "aou@eecs.berkeley.edu" , "borntraeger@linux.ibm.com" , "chenhuacai@kernel.org" , "dev.jain@arm.com" , "gor@linux.ibm.com" , "hca@linux.ibm.com" , "palmer@dabbelt.com" , "pjw@kernel.org" , "shijie@os.amperecomputing.com" , "svens@linux.ibm.com" , "thuth@redhat.com" , "wyihan@google.com" , "yang@os.amperecomputing.com" , "Jonathan.Cameron@huawei.com" , "Liam.Howlett@oracle.com" , "urezki@gmail.com" , "zhengqi.arch@bytedance.com" , "gerald.schaefer@linux.ibm.com" , "jiayuan.chen@shopee.com" , "lenb@kernel.org" , "osalvador@suse.de" , "pavel@kernel.org" , "rafael@kernel.org" , "vannapurve@google.com" , "jackmanb@google.com" , "aneesh.kumar@kernel.org" , "patrick.roy@linux.dev" , "Thomson, Jack" , "Itazuri, Takahiro" , "Manwaring, Derek" , "Cali, Marco" , "Kalyazin, Nikita" Subject: [PATCH v10 00/15] Direct Map Removal Support for guest_memfd Thread-Topic: [PATCH v10 00/15] Direct Map Removal Support for guest_memfd Thread-Index: AQHcjuMVKu9EzWzx90GD17TC625r+Q== Date: Mon, 26 Jan 2026 16:46:47 +0000 Message-ID: <20260126164445.11867-1-kalyazin@amazon.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Precedence: bulk X-Mailing-List: linux-s390@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-DKIM: signer='amazon.co.uk' status='pass' reason='' DKIMCheck: Server passes DKIM test, 0 Spam score X-DKIM: signer='@amazon.co.uk' status='pass' reason='' X-Spam-Score: 0.4 (/) X-Spam-Report: Spam detection software, running on the system "witcher.mxrouting.net", has performed the tests listed below against this email. Information: https://mxroutedocs.com/directadmin/spamfilters/ --- Content analysis details: (0.4 points) --- pts rule name description ---- ---------------------- ----------------------------------------- 1.5 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level mail domains are different 0.0 URIBL_BLOCKED ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [URIs: vusec.net] -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager -0.0 DKIMWL_WL_HIGH DKIMwl.org - High trust sender SpamTally: Final spam score: 4 [ based on kvm/next ]=0A= =0A= Unmapping virtual machine guest memory from the host kernel's direct map=0A= is a successful mitigation against Spectre-style transient execution=0A= issues: if the kernel page tables do not contain entries pointing to=0A= guest memory, then any attempted speculative read through the direct map=0A= will necessarily be blocked by the MMU before any observable=0A= microarchitectural side-effects happen. This means that Spectre-gadgets=0A= and similar cannot be used to target virtual machine memory. Roughly=0A= 60% of speculative execution issues fall into this category [1, Table=0A= 1].=0A= =0A= This patch series extends guest_memfd with the ability to remove its=0A= memory from the host kernel's direct map, to be able to attain the above=0A= protection for KVM guests running inside guest_memfd.=0A= =0A= Additionally, a Firecracker branch with support for these VMs can be=0A= found on GitHub [2].=0A= =0A= For more details, please refer to the v5 cover letter. No substantial=0A= changes in design have taken place since.=0A= =0A= See also related write() syscall support in guest_memfd [3] where=0A= the interoperation between the two features is described.=0A= =0A= Changes since v9:=0A= - Huacai/Ackerley: formatting and error handling fixes=0A= - Heiko: remove TLB flushing from folio_zap_direct_map() on s390=0A= - Willy: set_direct_map_valid_noflush() to take const void * instead of=0A= struct page *page=0A= - Ackerley: remove reject_file_backed variable in=0A= gup_fast_folio_allowed()=0A= - Ackerley: avoid referencing memfd_secret in doc=0A= - Ackerley: make calls to kvm_gmem_folio_zap_direct_map() conditional=0A= to GUEST_MEMFD_FLAG_NO_DIRECT_MAP=0A= - Rick: Exclude TDX from direct map removal=0A= - Rick: Add a comment about current impossibility of zapping at=0A= non-base page granularity.=0A= =0A= v9: https://lore.kernel.org/kvm/20260114134510.1835-1-kalyazin@amazon.com= =0A= v8: https://lore.kernel.org/kvm/20251205165743.9341-1-kalyazin@amazon.com= =0A= v7: https://lore.kernel.org/kvm/20250924151101.2225820-1-patrick.roy@campus= .lmu.de=0A= v6: https://lore.kernel.org/kvm/20250912091708.17502-1-roypat@amazon.co.uk= =0A= v5: https://lore.kernel.org/kvm/20250828093902.2719-1-roypat@amazon.co.uk= =0A= v4: https://lore.kernel.org/kvm/20250221160728.1584559-1-roypat@amazon.co.u= k=0A= RFCv3: https://lore.kernel.org/kvm/20241030134912.515725-1-roypat@amazon.co= .uk=0A= RFCv2: https://lore.kernel.org/kvm/20240910163038.1298452-1-roypat@amazon.c= o.uk=0A= RFCv1: https://lore.kernel.org/kvm/20240709132041.3625501-1-roypat@amazon.c= o.uk=0A= =0A= [1] https://download.vusec.net/papers/quarantine_raid23.pdf=0A= [2] https://github.com/firecracker-microvm/firecracker/tree/feature/secret-= hiding=0A= [3] https://lore.kernel.org/kvm/20251114151828.98165-1-kalyazin@amazon.com= =0A= =0A= Nikita Kalyazin (3):=0A= set_memory: set_direct_map_* to take address=0A= set_memory: add folio_{zap,restore}_direct_map helpers=0A= mm/gup: drop local variable in gup_fast_folio_allowed=0A= =0A= Patrick Roy (12):=0A= mm/gup: drop secretmem optimization from gup_fast_folio_allowed=0A= mm: introduce AS_NO_DIRECT_MAP=0A= KVM: guest_memfd: Add stub for kvm_arch_gmem_invalidate=0A= KVM: x86: define kvm_arch_gmem_supports_no_direct_map()=0A= KVM: arm64: define kvm_arch_gmem_supports_no_direct_map()=0A= KVM: guest_memfd: Add flag to remove from direct map=0A= KVM: selftests: load elf via bounce buffer=0A= KVM: selftests: set KVM_MEM_GUEST_MEMFD in vm_mem_add() if guest_memfd=0A= !=3D -1=0A= KVM: selftests: Add guest_memfd based vm_mem_backing_src_types=0A= KVM: selftests: cover GUEST_MEMFD_FLAG_NO_DIRECT_MAP in existing=0A= selftests=0A= KVM: selftests: stuff vm_mem_backing_src_type into vm_shape=0A= KVM: selftests: Test guest execution from direct map removed gmem=0A= =0A= Documentation/virt/kvm/api.rst | 21 +++--=0A= arch/arm64/include/asm/kvm_host.h | 13 +++=0A= arch/arm64/include/asm/set_memory.h | 9 +-=0A= arch/arm64/mm/pageattr.c | 31 ++++---=0A= arch/loongarch/include/asm/set_memory.h | 9 +-=0A= arch/loongarch/mm/pageattr.c | 37 +++++---=0A= arch/riscv/include/asm/set_memory.h | 9 +-=0A= arch/riscv/mm/pageattr.c | 29 +++++--=0A= arch/s390/include/asm/set_memory.h | 9 +-=0A= arch/s390/mm/pageattr.c | 25 ++++--=0A= arch/x86/include/asm/kvm_host.h | 6 ++=0A= arch/x86/include/asm/set_memory.h | 9 +-=0A= arch/x86/kvm/x86.c | 5 ++=0A= arch/x86/mm/pat/set_memory.c | 43 +++++++---=0A= include/linux/kvm_host.h | 14 ++++=0A= include/linux/pagemap.h | 16 ++++=0A= include/linux/secretmem.h | 18 ----=0A= include/linux/set_memory.h | 19 ++++-=0A= include/uapi/linux/kvm.h | 1 +=0A= kernel/power/snapshot.c | 4 +-=0A= lib/buildid.c | 4 +-=0A= mm/execmem.c | 6 +-=0A= mm/gup.c | 37 +++-----=0A= mm/mlock.c | 2 +-=0A= mm/secretmem.c | 14 ++--=0A= mm/vmalloc.c | 11 ++-=0A= .../testing/selftests/kvm/guest_memfd_test.c | 17 +++-=0A= .../testing/selftests/kvm/include/kvm_util.h | 37 ++++++--=0A= .../testing/selftests/kvm/include/test_util.h | 8 ++=0A= tools/testing/selftests/kvm/lib/elf.c | 8 +-=0A= tools/testing/selftests/kvm/lib/io.c | 23 +++++=0A= tools/testing/selftests/kvm/lib/kvm_util.c | 59 +++++++------=0A= tools/testing/selftests/kvm/lib/test_util.c | 8 ++=0A= tools/testing/selftests/kvm/lib/x86/sev.c | 1 +=0A= .../selftests/kvm/pre_fault_memory_test.c | 1 +=0A= .../selftests/kvm/set_memory_region_test.c | 52 +++++++++++-=0A= .../kvm/x86/private_mem_conversions_test.c | 7 +-=0A= virt/kvm/guest_memfd.c | 84 +++++++++++++++++--=0A= 38 files changed, 511 insertions(+), 195 deletions(-)=0A= =0A= =0A= base-commit: 0499add8efd72456514c6218c062911ccc922a99=0A= -- =0A= 2.50.1=0A= =0A= From - Mon Jan 26 16:53:15 2026 X-Mozilla-Status: 0001 X-Mozilla-Status2: 00000000 Return-Path: Delivered-To: hi@josie.lol Received: from witcher.mxrouting.net by witcher.mxrouting.net with LMTP id 0MsJAPebd2mcqQwAYBR5ng (envelope-from ) for ; Mon, 26 Jan 2026 16:53:11 +0000 Return-path: Envelope-to: hi@josie.lol Delivery-date: Mon, 26 Jan 2026 16:53:11 +0000 Received: from tor.lore.kernel.org ([172.105.105.114]) by witcher.mxrouting.net with esmtps (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.98) (envelope-from ) id 1vkPpu-00000003uNK-31vN for hi@josie.lol; Mon, 26 Jan 2026 16:53:10 +0000 Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by tor.lore.kernel.org (Postfix) with ESMTP id 8275730120C9 for ; Mon, 26 Jan 2026 16:53:09 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id C1B51344DAF; Mon, 26 Jan 2026 16:53:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ay4r3VqQ" X-Original-To: stable@vger.kernel.org Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9FC8A3375DD for ; Mon, 26 Jan 2026 16:53:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769446386; cv=none; b=Hpk/+QEHF9Me5zmzPeDb966aSlHPaWQdBYsQY6PY/uc5gOoVeZBHu0cMay7LxPy6pOSJFWuB5/7yncROQellYifmyoWselYulTPJBdxLaOJ5EhinpXhsDPJom2L67ixmBKPwWAt0vhLO9S/ZGQ305lZUngBGBMFFqp0ZPruR40g= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769446386; c=relaxed/simple; bh=lytw1C9L2scVcTC6h8ixCo4+Rf/PYZPg7Nk4de1rM9Q=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=sONqEZOL4J9R9xMkCrj6JKZmv+VLKCP0xKuuwWNJb0Y+2herGZmb5DRF/1zmmEieu/EU/ApdkeMA+KmyRHrdzeCCes7/y1BYXGh44mcsOK8QEaNjJknZ4j0fElYIcZvMEZuX+whuGZXr6H76HWyp71hGda7bn0HUdhmbTGmUpn0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ay4r3VqQ; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id CBFDDC16AAE; Mon, 26 Jan 2026 16:53:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1769446386; bh=lytw1C9L2scVcTC6h8ixCo4+Rf/PYZPg7Nk4de1rM9Q=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ay4r3VqQScZoud6RNJ8XDmeOxFvUn/ghoEu6ux1caKr2LRF/CWsOEcybsnVLw0c5e wtcSASGCybHTLF8lzn12+iALl3A7RRMfEJL1cvnGaVNCbSd8k4OG6FDWoBwZenAek0 jskrmIA4MCX8BFub7whqjiorbVcZ0R6YohviS2LTQs4dmKjEJoxwuWJtRYEcjKyo6J qujFG3jx/cM/aFX45HJBf/xLeYshfnr57iyhIXIDNkrXmp9G4vPxEQiZcSZuISr87h 56nUV9cCASBG7gkHxzs4+14kYwEZzTyPhuXurA8OBvmxKilhJQuYauKN2jaHNNKJjx 5HYcJO0OnZLPQ== From: Sasha Levin To: stable@vger.kernel.org Cc: Rasmus Villemoes , Peter Rosin , Jonathan Cameron , Sasha Levin Subject: [PATCH 6.18.y 2/2] iio: core: add separate lockdep class for info_exist_lock Date: Mon, 26 Jan 2026 11:53:03 -0500 Message-ID: <20260126165303.3408060-2-sashal@kernel.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260126165303.3408060-1-sashal@kernel.org> References: <2026012654-trend-outback-5af6@gregkh> <20260126165303.3408060-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-DKIM: signer='kernel.org' status='pass' reason='' DKIMCheck: Server passes DKIM test, 0 Spam score X-Spam-Score: -1.2 (-) X-Spam-Report: Spam detection software, running on the system "witcher.mxrouting.net", has performed the tests listed below against this email. Information: https://mxroutedocs.com/directadmin/spamfilters/ --- Content analysis details: (-1.2 points) --- pts rule name description ---- ---------------------- ----------------------------------------- -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager -0.0 DKIMWL_WL_HIGH DKIMwl.org - High trust sender SpamTally: Final spam score: -11 From: Rasmus Villemoes [ Upstream commit 9910159f06590c17df4fbddedaabb4c0201cc4cb ] When one iio device is a consumer of another, it is possible that the ->info_exist_lock of both ends up being taken when reading the value of the consumer device. Since they currently belong to the same lockdep class (being initialized in a single location with mutex_init()), that results in a lockdep warning CPU0 ---- lock(&iio_dev_opaque->info_exist_lock); lock(&iio_dev_opaque->info_exist_lock); *** DEADLOCK *** May be due to missing lock nesting notation 4 locks held by sensors/414: #0: c31fd6dc (&p->lock){+.+.}-{3:3}, at: seq_read_iter+0x44/0x4e4 #1: c4f5a1c4 (&of->mutex){+.+.}-{3:3}, at: kernfs_seq_start+0x1c/0xac #2: c2827548 (kn->active#34){.+.+}-{0:0}, at: kernfs_seq_start+0x30/0xac #3: c1dd2b68 (&iio_dev_opaque->info_exist_lock){+.+.}-{3:3}, at: iio_read_channel_processed_scale+0x24/0xd8 stack backtrace: CPU: 0 UID: 0 PID: 414 Comm: sensors Not tainted 6.17.11 #5 NONE Hardware name: Generic AM33XX (Flattened Device Tree) Call trace: unwind_backtrace from show_stack+0x10/0x14 show_stack from dump_stack_lvl+0x44/0x60 dump_stack_lvl from print_deadlock_bug+0x2b8/0x334 print_deadlock_bug from __lock_acquire+0x13a4/0x2ab0 __lock_acquire from lock_acquire+0xd0/0x2c0 lock_acquire from __mutex_lock+0xa0/0xe8c __mutex_lock from mutex_lock_nested+0x1c/0x24 mutex_lock_nested from iio_read_channel_raw+0x20/0x6c iio_read_channel_raw from rescale_read_raw+0x128/0x1c4 rescale_read_raw from iio_channel_read+0xe4/0xf4 iio_channel_read from iio_read_channel_processed_scale+0x6c/0xd8 iio_read_channel_processed_scale from iio_hwmon_read_val+0x68/0xbc iio_hwmon_read_val from dev_attr_show+0x18/0x48 dev_attr_show from sysfs_kf_seq_show+0x80/0x110 sysfs_kf_seq_show from seq_read_iter+0xdc/0x4e4 seq_read_iter from vfs_read+0x238/0x2e4 vfs_read from ksys_read+0x6c/0xec ksys_read from ret_fast_syscall+0x0/0x1c Just as the mlock_key already has its own lockdep class, add a lock_class_key for the info_exist mutex. Note that this has in theory been a problem since before IIO first left staging, but it only occurs when a chain of consumers is in use and that is not often done. Fixes: ac917a81117c ("staging:iio:core set the iio_dev.info pointer to null on unregister under lock.") Signed-off-by: Rasmus Villemoes Reviewed-by: Peter Rosin Cc: Signed-off-by: Jonathan Cameron Signed-off-by: Sasha Levin --- drivers/iio/industrialio-core.c | 4 +++- include/linux/iio/iio-opaque.h | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c index f69deefcfb6fd..117ffad4f3769 100644 --- a/drivers/iio/industrialio-core.c +++ b/drivers/iio/industrialio-core.c @@ -1657,6 +1657,7 @@ static void iio_dev_release(struct device *device) mutex_destroy(&iio_dev_opaque->info_exist_lock); mutex_destroy(&iio_dev_opaque->mlock); + lockdep_unregister_key(&iio_dev_opaque->info_exist_key); lockdep_unregister_key(&iio_dev_opaque->mlock_key); ida_free(&iio_ida, iio_dev_opaque->id); @@ -1717,9 +1718,10 @@ struct iio_dev *iio_device_alloc(struct device *parent, int sizeof_priv) INIT_LIST_HEAD(&iio_dev_opaque->ioctl_handlers); lockdep_register_key(&iio_dev_opaque->mlock_key); + lockdep_register_key(&iio_dev_opaque->info_exist_key); mutex_init_with_key(&iio_dev_opaque->mlock, &iio_dev_opaque->mlock_key); - mutex_init(&iio_dev_opaque->info_exist_lock); + mutex_init_with_key(&iio_dev_opaque->info_exist_lock, &iio_dev_opaque->info_exist_key); indio_dev->dev.parent = parent; indio_dev->dev.type = &iio_device_type; diff --git a/include/linux/iio/iio-opaque.h b/include/linux/iio/iio-opaque.h index 4247497f3f8bd..b87841a355f80 100644 --- a/include/linux/iio/iio-opaque.h +++ b/include/linux/iio/iio-opaque.h @@ -14,6 +14,7 @@ * @mlock: lock used to prevent simultaneous device state changes * @mlock_key: lockdep class for iio_dev lock * @info_exist_lock: lock to prevent use during removal + * @info_exist_key: lockdep class for info_exist lock * @trig_readonly: mark the current trigger immutable * @event_interface: event chrdevs associated with interrupt lines * @attached_buffers: array of buffers statically attached by the driver @@ -47,6 +48,7 @@ struct iio_dev_opaque { struct mutex mlock; struct lock_class_key mlock_key; struct mutex info_exist_lock; + struct lock_class_key info_exist_key; bool trig_readonly; struct iio_event_interface *event_interface; struct iio_buffer **attached_buffers; -- 2.51.0 From - Mon Jan 26 16:53:18 2026 X-Mozilla-Status: 0001 X-Mozilla-Status2: 00000000 Return-Path: Delivered-To: hi@josie.lol Received: from witcher.mxrouting.net by witcher.mxrouting.net with LMTP id yB7TDvmbd2n07AoAYBR5ng (envelope-from ) for ; Mon, 26 Jan 2026 16:53:13 +0000 Return-path: Envelope-to: hi@josie.lol Delivery-date: Mon, 26 Jan 2026 16:53:13 +0000 Received: from sin.lore.kernel.org ([104.64.211.4]) by witcher.mxrouting.net with esmtps (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.98) (envelope-from ) id 1vkPpw-00000003uOU-2T9n for hi@josie.lol; Mon, 26 Jan 2026 16:53:13 +0000 Received: from smtp.subspace.kernel.org (conduit.subspace.kernel.org [100.90.174.1]) by sin.lore.kernel.org (Postfix) with ESMTP id E08A13003BF2 for ; Mon, 26 Jan 2026 16:53:08 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 2CB0C340298; Mon, 26 Jan 2026 16:53:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="cv6BW3mh" X-Original-To: stable@vger.kernel.org Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 01E033375DD for ; Mon, 26 Jan 2026 16:53:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769446386; cv=none; b=WxfPe7laQDHq9I/vLZ2SiPCXnbPSqW3YLIsaV26Dbcjfqrj6AEJlsGRMQ0YmF6NmhVYiWir4XhcwaMnXDxsBfo6bW1e1EJ96zzIREijOrIsb1Jw4oUdatkk5y0mewrSJJ0OOh7Pp0g5GpD+jk044JYl/rrQ0RWMh38jcqjFBc6U= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769446386; c=relaxed/simple; bh=XY4oa1x0ETKvJaZFjXrc6mFzPl7V7og1Ff8A7ViwCQo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=tmKsDW2B4DpMEeQdJOc0HG5TnJsd+rNYNDSmO0R6FQciZZh3QEybAC1ozHKP7mjhVRj+aLnx1OhnDggHlKagjqZnf1bV5jgdgkTKfS/t8dZIO9tmF1B5PN0kgA0Wscq49eLR/TrQyEFyi0TBkPtrDhLnECeCH5y3mzVdsf4mok8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=cv6BW3mh; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id E7CB7C116C6; Mon, 26 Jan 2026 16:53:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1769446385; bh=XY4oa1x0ETKvJaZFjXrc6mFzPl7V7og1Ff8A7ViwCQo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=cv6BW3mhZrTyzertFdj/aYNAyfE8DSL6U4/L5uYMH+w7q/0I434l8bxQoErqX2INK VmDPeyjYV6WsVUDmT6jSlYkNtyayQpv2j/8NEgquM12MDMqQ7HW4sAOLrFd43lZQS1 NnKs8L690En3J1ylpjoEWaCDjGPY+UVqUQbJXsB0eVFyY9T7+wb9Jkals90FM22MIu pTh2CzXZtlbPKTTTehMAsWXcbN/oEFqSKsIowt+4RcgktECbV+P1p8ZqGP/sjvkc6m nE5zpNVzssggTI4bOS/xJpmYQ7Tz2PPF3GOzVIIZfySbtQfEjVJ9OYOM3d/LJDAUOJ 4nbZbgsEr+qwQ== From: Sasha Levin To: stable@vger.kernel.org Cc: Andy Shevchenko , =?UTF-8?q?Nuno=20S=C3=A1?= , Jonathan Cameron , Sasha Levin Subject: [PATCH 6.18.y 1/2] iio: core: Replace lockdep_set_class() + mutex_init() by combined call Date: Mon, 26 Jan 2026 11:53:02 -0500 Message-ID: <20260126165303.3408060-1-sashal@kernel.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <2026012654-trend-outback-5af6@gregkh> References: <2026012654-trend-outback-5af6@gregkh> Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-DKIM: signer='kernel.org' status='pass' reason='' DKIMCheck: Server passes DKIM test, 0 Spam score X-Spam-Score: -1.2 (-) X-Spam-Report: Spam detection software, running on the system "witcher.mxrouting.net", has performed the tests listed below against this email. Information: https://mxroutedocs.com/directadmin/spamfilters/ --- Content analysis details: (-1.2 points) --- pts rule name description ---- ---------------------- ----------------------------------------- -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager -0.0 DKIMWL_WL_HIGH DKIMwl.org - High trust sender SpamTally: Final spam score: -11 From: Andy Shevchenko [ Upstream commit c76ba4b2644424b8dbacee80bb40991eac29d39e ] Replace lockdep_set_class() + mutex_init() by combined call mutex_init_with_key(). Signed-off-by: Andy Shevchenko Reviewed-by: Nuno Sá Signed-off-by: Jonathan Cameron Stable-dep-of: 9910159f0659 ("iio: core: add separate lockdep class for info_exist_lock") Signed-off-by: Sasha Levin --- drivers/iio/industrialio-core.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c index 5d2f35cf18bc3..f69deefcfb6fd 100644 --- a/drivers/iio/industrialio-core.c +++ b/drivers/iio/industrialio-core.c @@ -1717,9 +1717,8 @@ struct iio_dev *iio_device_alloc(struct device *parent, int sizeof_priv) INIT_LIST_HEAD(&iio_dev_opaque->ioctl_handlers); lockdep_register_key(&iio_dev_opaque->mlock_key); - lockdep_set_class(&iio_dev_opaque->mlock, &iio_dev_opaque->mlock_key); - mutex_init(&iio_dev_opaque->mlock); + mutex_init_with_key(&iio_dev_opaque->mlock, &iio_dev_opaque->mlock_key); mutex_init(&iio_dev_opaque->info_exist_lock); indio_dev->dev.parent = parent; -- 2.51.0 From - Mon Jan 26 16:54:52 2026 X-Mozilla-Status: 0001 X-Monel.org (Postfix) with ESMTPS id A7952186A; Sun, 30 Nov 2025 13:57:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764511049; cv=none; b=QCmKSO+aJ0ggxAGCQteHjP0oHp+cOj3zg49OuPN7NIoK8uGQhajHck2BjApD1anyT/0rW9WbtPU/e5iqdUdPAIP5VmwZVsN4DIjoYQNBiaG99p6KNn3gDc0yMKgI3sQ4dOYp6flAfVND7/4JuzW5PAeIaGTEla5UaKkoM9Eb+ik= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764511049; c=relaxed/simple; bh=ZB0aNDoJbR7KCgkbpMsgbU9QCSi+qeVI22J87/0V+f8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=aOHFLCvIzVUMZpUa//0oSdertBa8ZMC6qIJdlaR5gWFfkWZxFI7JgH6UxSlZs20h9kPwcyNKB7P3gHfYc4Wf2s4VYdC+79LYzOIIUQ97xVuz4SYo6jUCFRdLwr0lar2/SE8q/aYzGsV3LXENzzWcAAHV8/xodT57XmvW041Z8P8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=vA4CIQsX; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4CCECC4CEF8; Sun, 30 Nov 2025 13:57:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1764511049; bh=ZB0aNDoJbR7KCgkbpMsgbU9QCSi+qeVI22J87/0V+f8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=vA4CIQsXW1L4TO5BVfBXEVECIfMvTvMFKYI34kOyc3emtoWAm3b4Nw3DjkNLvg7wU hRh97yqTAgV39W29gpbrKLJJQnrzMHa4lCgaulS1VQ6PLRzexV1ft7Fp5Zt4XJ2sT3 jpSMidlm6qn7jYdM46Zfrv1KVJEtX8cumCQb5EMPrsx6HXX2NwQQrFn+sTWm8nS7jl YWLXgvrZUNknYQl3lX0ofcdFAdcKHBS7Ydx/AMRHmc87OlcV5Uc4Zw7pB/XeDq8iY8 DKfxleei0pZeyMGlu/aUA/KPQRJY73EGgjo5qY0aRr2KwdOtZpi5pqxo3BDIau5wkU kDgIqprbhR62A== From: William Breathitt Gray To: Oleksij Rempel , Pengutronix Kernel Team , linux-iio@vger.kernel.org, Alexander Sverdlin Cc: William Breathitt Gray , Jonathan Cameron , Ahmad Fatoum , linux-kernel@vger.kernel.org, "Paul E . McKenney" , Sebastian Andrzej Siewior , stable@vger.kernel.org Subject: Re: [PATCH] counter: interrupt-cnt: Drop IRQF_NO_THREAD flag Date: Sun, 30 Nov 2025 22:57:15 +0900 Message-ID: <176451098931.9836.4127167335264943589.b4-ty@kernel.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20251118083603.778626-1-alexander.sverdlin@siemens.com> References: <20251118083603.778626-1-alexander.sverdlin@siemens.com> Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1397; i=wbg@kernel.org; h=from:subject:message-id; bh=Ivzz5NMzZaBZSReLzEG+Clk4t6mpdj6JIAG6CCrrIDc=; b=owGbwMvMwCW21SPs1D4hZW3G02pJDJk6viZaHmnftkhuu2LJZsYUsNpEWYSjyy9h+vszi0+KK OeV/1/XUcrCIMbFICumyNJrfvbug0uqGj9ezN8GM4eVCWQIAxenAExk8gKGfwr3T3BfcFz72F9q flPkq/ua8+XmOX7eoL07k0FCbfnHj5WMDGf8VJ6p5Z9dpCnGXXTbNd/jwYm9z7YwBCyyTJCekMF XxAwA X-Developer-Key: i=wbg@kernel.org; a=openpgp; fpr=8D37CDDDE0D22528F8E89FB6B54856CABE12232B Content-Transfer-Encoding: 8bit X-DKIM: signer='kernel.org' status='pass' reason='' DKIMCheck: Server passes DKIM test, 0 Spam score X-Spam-Score: -1.2 (-) X-Spam-Report: Spam detection software, running on the system "witcher.mxrouting.net", has performed the tests listed below against this email. Information: https://mxroutedocs.com/directadmin/spamfilters/ --- Content analysis details: (-1.2 points) --- pts rule name description ---- ---------------------- ----------------------------------------- 0.0 RCVD_IN_DNSWL_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to DNSWL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#DnsBlocklists-dnsbl-block for more information. [213.196.21.55 listed in list.dnswl.org] -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager -0.0 DKIMWL_WL_HIGH DKIMwl.org - High trust sender SpamTally: Final spam score: -11 On Tue, 18 Nov 2025 09:35:48 +0100, A. Sverdlin wrote: > An IRQ handler can either be IRQF_NO_THREAD or acquire spinlock_t, as > CONFIG_PROVE_RAW_LOCK_NESTING warns: > ============================= > [ BUG: Invalid wait context ] > 6.18.0-rc1+git... #1 > ----------------------------- > some-user-space-process/1251 is trying to lock: > (&counter->events_list_lock){....}-{3:3}, at: counter_push_event [counter] > other info that might help us debug this: > context-{2:2} > no locks held by some-user-space-process/.... > stack backtrace: > CPU: 0 UID: 0 PID: 1251 Comm: some-user-space-process 6.18.0-rc1+git... #1 PREEMPT > Call trace: > show_stack (C) > dump_stack_lvl > dump_stack > __lock_acquire > lock_acquire > _raw_spin_lock_irqsave > counter_push_event [counter] > interrupt_cnt_isr [interrupt_cnt] > __handle_irq_event_percpu > handle_irq_event > handle_simple_irq > handle_irq_desc > generic_handle_domain_irq > gpio_irq_handler > handle_irq_desc > generic_handle_domain_irq > gic_handle_irq > call_on_irq_stack > do_interrupt_handler > el0_interrupt > __el0_irq_handler_common > el0t_64_irq_handler > el0t_64_irq > > [...] Applied, thanks! [1/1] counter: interrupt-cnt: Drop IRQF_NO_THREAD flag commit: 1ea0a54c0a1fac796b133253804e392cb44068c8 Best regards, -- William Breathitt Gray From - Sun Nov 30 15:09:11 2025 X-Mozilla-Status: 0001 X-Mozilla-Status2: 00000000 Return-Path: Delivered-To: hi@josie.lol Received: from witcher.mxrouting.net by witcher.mxrouting.net with LMTP id wGVXFBNeLGlUrDIAYBR5ng (envelope-from ) for ; Sun, 30 Nov 2025 15:09:07 +0000 Return-path: Envelope-to: hi@josie.lol Delivery-date: Sun, 30 Nov 2025 15:09:07 +0000 Received: from sv.mirrors.kernel.org ([139.178.88.99]) by witcher.mxrouting.net with esmtps (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.98) (envelope-from ) id 1vPj2w-0000000EASA-3c7t for hi@josie.lol; Sun, 30 Nov 2025 15:09:07 +0000 Received: from smtp.subspace.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id AF73A3A2D64 for ; Sun, 30 Nov 2025 15:09:05 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id EB7A6265632; Sun, 30 Nov 2025 15:09:02 +0000 (UTC) X-Original-To: stable@vger.kernel.org Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CA64A36D4EB; Sun, 30 Nov 2025 15:09:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764515342; cv=nonloseAllDiffTabs","timestamp":"2025-12-22T21:45:26.680Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'closeAllDiffTabs' completed successfully in 5ms","timestamp":"2025-12-22T21:45:26.685Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: openDiff","timestamp":"2025-12-22T21:47:41.037Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'openDiff' still running (30s elapsed)","timestamp":"2025-12-22T21:48:11.040Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: close_tab","timestamp":"2025-12-22T21:48:34.253Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: openDiff","timestamp":"2025-12-22T21:48:34.266Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:48:34.267Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 2ms","timestamp":"2025-12-22T21:48:34.269Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'close_tab' completed successfully in 47ms","timestamp":"2025-12-22T21:48:34.300Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'openDiff' completed successfully in 53s","timestamp":"2025-12-22T21:48:34.346Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: close_tab","timestamp":"2025-12-22T21:48:34.346Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'close_tab' completed successfully in 7ms","timestamp":"2025-12-22T21:48:34.353Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: close_tab","timestamp":"2025-12-22T21:48:36.807Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: openDiff","timestamp":"2025-12-22T21:48:36.817Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:48:36.818Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 1ms","timestamp":"2025-12-22T21:48:36.819Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'close_tab' completed successfully in 43ms","timestamp":"2025-12-22T21:48:36.850Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'openDiff' completed successfully in 2s","timestamp":"2025-12-22T21:48:36.900Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: close_tab","timestamp":"2025-12-22T21:48:36.900Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'close_tab' completed successfully in 12ms","timestamp":"2025-12-22T21:48:36.912Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: close_tab","timestamp":"2025-12-22T21:48:41.373Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:48:41.384Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 12ms","timestamp":"2025-12-22T21:48:41.396Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'close_tab' completed successfully in 40ms","timestamp":"2025-12-22T21:48:41.413Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'openDiff' completed successfully in 4s","timestamp":"2025-12-22T21:48:41.458Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: close_tab","timestamp":"2025-12-22T21:48:41.458Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'close_tab' completed successfully in 16ms","timestamp":"2025-12-22T21:48:41.474Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:49:32.446Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 4ms","timestamp":"2025-12-22T21:49:32.450Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:59:13.030Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 7ms","timestamp":"2025-12-22T21:59:13.037Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: closeAllDiffTabs","timestamp":"2025-12-22T21:59:13.062Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'closeAllDiffTabs' completed successfully in 8ms","timestamp":"2025-12-22T21:59:13.070Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:59:20.680Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 3ms","timestamp":"2025-12-22T21:59:20.683Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:59:37.918Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 3ms","timestamp":"2025-12-22T21:59:37.921Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T22:00:44.473Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 5ms","timestamp":"2025-12-22T22:00:44.478Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: openDiff","timestamp":"2025-12-22T22:01:07.301Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'openDiff' still running (30s elapsed)","timestamp":"2025-12-22T22:01:37.303Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'openDiff' still running (60s elapsed)","timestamp":"2025-12-22T22:02:07.303Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'openDiff' still running (90s elapsed)","timestamp":"2025-12-22T22:02:37.304Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'openDiff' still runnievelopment/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:25:32.738Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 11ms","timestamp":"2025-12-22T21:25:32.750Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: closeAllDiffTabs","timestamp":"2025-12-22T21:25:32.791Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'closeAllDiffTabs' completed successfully in 9ms","timestamp":"2025-12-22T21:25:32.800Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:25:42.103Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 1ms","timestamp":"2025-12-22T21:25:42.104Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:25:48.606Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 3ms","timestamp":"2025-12-22T21:25:48.609Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:25:56.704Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 4ms","timestamp":"2025-12-22T21:25:56.708Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:26:15.877Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 3ms","timestamp":"2025-12-22T21:26:15.880Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:26:32.948Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 4ms","timestamp":"2025-12-22T21:26:32.952Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:26:33.029Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 3ms","timestamp":"2025-12-22T21:26:33.032Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:26:38.536Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 3ms","timestamp":"2025-12-22T21:26:38.539Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:26:53.970Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostics' completed successfully in 1ms","timestamp":"2025-12-22T21:26:53.971Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Calling MCP tool: getDiagnostics","timestamp":"2025-12-22T21:26:54.044Z","sessionId":"faa0c55e-a59b-41fd-82ad-e9be489dbb09","cwd":"/home/josie/development/josiedot/health"} {"debug":"Tool 'getDiagnostic--- 0.1.3 |checksum:a8f4d91d8aa7de64b35c87713b5133b54192f46eba54e1b5b373eecf89082b44,ruby:>= 1.9.2,rubygems:>= 1.3.6