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-next>] [day] [month] [year] [list]
Message-ID: <6147caf0-b9a0-30ca-795e-a1aa502a5c51@huawei.com>
Date: Wed, 24 Jul 2024 09:42:09 +0800
From: Kunkun Jiang <jiangkunkun@...wei.com>
To: Lu Baolu <baolu.lu@...ux.intel.com>, Will Deacon <will@...nel.org>, Robin
 Murphy <robin.murphy@....com>, Joerg Roedel <joro@...tes.org>, Jason
 Gunthorpe <jgg@...pe.ca>, Nicolin Chen <nicolinc@...dia.com>, Michael Shavit
	<mshavit@...gle.com>, Mostafa Saleh <smostafa@...gle.com>
CC: "moderated list:ARM SMMU DRIVERS" <linux-arm-kernel@...ts.infradead.org>,
	<iommu@...ts.linux.dev>, <linux-kernel@...r.kernel.org>,
	<wanghaibin.wang@...wei.com>, <yuzenghui@...wei.com>,
	<tangnianyao@...wei.com>
Subject: [bug report] iommu/arm-smmu-v3: Event cannot be printed in some
 scenarios

Hi all,

drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c
1797                 while (!queue_remove_raw(q, evt)) {
1798                         u8 id = FIELD_GET(EVTQ_0_ID, evt[0]);
1799
1800                         ret = arm_smmu_handle_evt(smmu, evt);
1801                         if (!ret || !__ratelimit(&rs))
1802                                 continue;
1803
1804                         dev_info(smmu->dev, "event 0x%02x 
received:\n", id);
1805                         for (i = 0; i < ARRAY_SIZE(evt); ++i)
1806                                 dev_info(smmu->dev, "\t0x%016llx\n",
1807                                          (unsigned long long)evt[i]);
1808
1809                         cond_resched();
1810                 }

The smmu-v3 driver cannot print event information when "ret" is 0.
Unfortunately due to commit 3dfa64aecbaf
("iommu: Make iommu_report_device_fault() return void"), the default
return value in arm_smmu_handle_evt() is 0. Maybe a trace should
be added here?

Thanks,
Kunkun Jiang


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ