Hi Marc,
Right, but if the driver is removed then the interrupts should be
deallocated, right?
When removing the driver we just call free_irq(), which removes the
handler and disables the interrupt.
But about the irq_desc, this is created when the mapping is created in
irq_create_fwspec_mapp
Hi Marc,
So is there a reason for which irq dispose mapping is not a
requirement for drivers when finished with the irq? because of shared
interrupts?
For a bunch of reasons: IRQ number used to be created 1:1 with their
physical counterpart, so there wasn't a need to "get rid" of the
associate
From: Xiang Chen
Fix some rollbacks in function hisi_sas_v3_probe() and
interrupt_init_v3_hw().
Fixes: 8d98416a55eb ("scsi: hisi_sas: Switch v3 hw to MQ")
Signed-off-by: Xiang Chen
Signed-off-by: John Garry
---
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c | 26 +++-
This series contains a small bunch of patches for the driver, including:
- Fix-up on error paths for v3 hw driver
- Relocate as much debugfs code as possible to v3 hw driver since
no other hw drivers support it
- A small tidy-up patch
John Garry (1):
scsi: hisi_sas: Reduce some indirection in
From: Luo Jiaxing
Relocate all the debugfs code for DFX to v3 hw as there are only longer
plans to support earlier HW versions.
Signed-off-by: Luo Jiaxing
Signed-off-by: John Garry
---
drivers/scsi/hisi_sas/hisi_sas.h | 28 -
drivers/scsi/hisi_sas/hisi_sas_main.c | 1346
Sometimes local functions are called indirectly from the hw driver, which
only makes the code harder to follow. Remove these.
Method .hw_init is only called from platform driver probe, which is not
relevant, so don't set this either.
Signed-off-by: John Garry
---
drivers/scsi/his
Sometimes local functions are called indirectly from the hw driver, which
only makes the code harder to follow. Remove these.
Method .hw_init is only called from platform driver probe, which is not
relevant, so don't set this either.
Signed-off-by: John Garry
---
drivers/scsi/his
From: Xiang Chen
Fix some rollbacks in function hisi_sas_v3_probe() and
interrupt_init_v3_hw().
Fixes: 8d98416a55eb ("scsi: hisi_sas: Switch v3 hw to MQ")
Signed-off-by: Xiang Chen
Signed-off-by: John Garry
---
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c | 26 +++-
This series contains a small bunch of patches for the driver, including:
- Fix-up on error paths for v3 hw driver
- Relocate as much debugfs code as possible to v3 hw driver since
no other hw drivers support it
- A small tidy-up patch
Difference to v1:
- make debugfs_init_v3_hw() static
John
From: Luo Jiaxing
Relocate all the debugfs code for DFX to v3 hw as there are only longer
plans to support earlier HW versions.
Signed-off-by: Luo Jiaxing
Signed-off-by: John Garry
---
drivers/scsi/hisi_sas/hisi_sas.h | 28 -
drivers/scsi/hisi_sas/hisi_sas_main.c | 1346
s code generation of
sbitmap_find_bit_in_index().
Signed-off-by: Pavel Begunkov
Looks ok, even though a bit odd not be passing a struct sbitmap * now
Reviewed-by: John Garry
On 22/11/2020 15:35, Pavel Begunkov wrote:
map->swap_lock protects map->cleared from concurrent modification,
however sbitmap_deferred_clear() is already atomically drains it, so
it's guaranteed to not loose bits on concurrent
sbitmap_deferred_clear().
A one threaded tag heavy test on top of nul
Add a function to read the PMU id sysfs entry. This is only done for uncore
PMUs where this would possibly be relevant.
Signed-off-by: John Garry
Acked-by: Kajol Jain
---
tools/perf/util/pmu.c | 18 ++
tools/perf/util/pmu.h | 1 +
2 files changed, 19 insertions(+)
diff --git
Currently only upto a level 2 directory is supported, in form
vendor/platform.
Add support for a further level, to support vendor/platform
sub-directories in future, which will be vendor/platform/cpu
and vendor/platform/sys.
Signed-off-by: John Garry
Acked-by: Kajol Jain
---
tools/perf/pmu
pt
- Rebase to acme perf/core from 30 Oct
- Fix up imx8 event names according to request from Joakim
Joakim Zhang (1):
perf vendor events: Add JSON metrics for imx8mm DDR Perf
John Garry (9):
perf jevents: Add support for an extra directory level
perf jevents: Add support for system events t
xcore
4,254,148 unc_cbo_xsnp_response.miss_eviction
213,352 unc_cbo_xsnp_response.miss_xcore
1.000938151 seconds time elapsed
Signed-off-by: John Garry
Acked-by: Kajol Jain
---
tools/perf/util/metricgroup.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(
atch, same as uncore event aliases matched by
CPUID
Signed-off-by: John Garry
Acked-by: Kajol Jain
---
tools/perf/util/pmu.c | 78 +++
tools/perf/util/pmu.h | 2 ++
2 files changed, 80 insertions(+)
diff --git a/tools/perf/util/pmu.c b/tools/p
To aid supporting system event metric groups, break up the function
metricgroup__print() into a part which iterates metrics and a part which
actually "prints" the metric.
No functional change intended.
Signed-off-by: John Garry
Acked-by: Kajol Jain
---
tools/perf/util/metricgro
sses. Unit: hisi_sccl,l3c ",
.topic = "uncore l3c",
.long_desc = "Total read accesses",
.pmu = "hisi_sccl,l3c",
},
{
.name = "uncore_hisi_l3c.wr_cpipe",
.event = "event=0x1",
.desc = "Total wri
From: Joakim Zhang
Add JSON metrics for imx8mm DDR Perf.
Signed-off-by: Joakim Zhang
Signed-off-by: John Garry
Acked-by: Kajol Jain
---
.../arch/arm64/freescale/imx8mm/sys/ddrc.json | 39 +++
.../arm64/freescale/imx8mm/sys/metrics.json | 18 +
tools/perf/pmu-events
Currently printing metricgroups for core- or uncore-based events matched
by CPUID is supported.
Extend this for system events.
Signed-off-by: John Garry
Acked-by: Kajol Jain
---
tools/perf/util/metricgroup.c | 64 ---
1 file changed, 60 insertions(+), 4
Currently adding metrics for core- or uncore-based events matched by CPUID
is supported.
Extend this for system events.
Signed-off-by: John Garry
Acked-by: Kajol Jain
---
tools/perf/util/metricgroup.c | 66 +++
1 file changed, 60 insertions(+), 6 deletions
Function find_evsel_group() expects events to be ordered such that they
are grouped after their leader.
Modify perf_evlist__splice_list_tail() to guarantee this (ordering).
[Should prob also change the function name]
Signed-off-by: John Garry
Acked-by: Kajol Jain
---
tools/perf/util/evlist.c
: John Garry
I still think that vendors (like us) need to fix/improve their firmware
tables so that we don't get silly big numbers for socket/package IDs,
like S5418-D0, below:
$./perf stat -a --per-die
Performance counter stats for 'system wide':
S36-D0 48 72,216.31
Hi Marc,
So initially in the msi_prepare method we setup the its dev - this is
from the mbigen probe. Then when all the irqs are unmapped later for
end device driver removal, we release this its device in
its_irq_domain_free(). But I don't see anything to set it up again. Is
it improper to have
On 25/11/2020 15:44, Will Deacon wrote:
Applied the hisi and smmu parts to will (for-next/perf), thanks!
[1/4] drivers/perf: hisi: Add identifier sysfs file
https://git.kernel.org/will/c/ac4511c9364c
[...]
[4/4] perf/smmuv3: Support sysfs identifier file
https://git.kernel.org/will
because the
only current in-tree user will also use devm method for requesting the
interrupts; as such, the function is made as devm as it can ensure ordering
of freeing the irq and disposing of the mapping.
Signed-off-by: John Garry
---
drivers/base/platform.c | 114
ge of this.
Flag Scsi_host.host_tagset is also set to ensure that the HBA is not sent
more commands than it can handle. However the driver still does not use
request tag for IPTT as there are many HW bugs means that special rules
apply for IPTT allocation.
Signed-off-by: John Garry
---
drivers/scs
e API to accept min and max vectors
John Garry (5):
genirq/affinity: Add irq_update_affinity_desc()
ACPI: Make acpi_dev_irqresource_disabled() public
driver core: platform: Add platform_put_irq()
Driver core: platform: Add devm_platform_get_irqs_affinity()
scsi: hisi_sas: Expose HW queues f
Add a function to allow the affinity of an interrupt be switched to
managed, such that interrupts allocated for platform devices may be
managed.
Suggested-by: Thomas Gleixner
Signed-off-by: John Garry
---
include/linux/interrupt.h | 8 +
kernel/irq/manage.c | 63
To allow the platform device to "put" an irq, make the function to reset
an ACPI companion device irq resource public.
Signed-off-by: John Garry
---
drivers/acpi/resource.c | 2 +-
include/linux/acpi.h| 5 +
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/dr
-by: John Garry
---
drivers/base/platform.c | 14 ++
1 file changed, 14 insertions(+)
diff --git a/drivers/base/platform.c b/drivers/base/platform.c
index 88aef93eb4dd..3eeda3746701 100644
--- a/drivers/base/platform.c
+++ b/drivers/base/platform.c
@@ -289,6 +289,20 @@
On 25/11/2020 17:43, Rafael J. Wysocki wrote:
On Wed, Nov 25, 2020 at 6:25 PM John Garry wrote:
To allow the platform device to "put" an irq, make the function to reset
an ACPI companion device irq resource public.
Signed-off-by: John Garry
I'd rather move it to kernel/reso
Hi Daniel,
On Thu, Nov 26, 2020 at 01:20:37AM +0800, John Garry wrote:
+ activated = irqd_is_activated(&desc->irq_data);
+ if (activated)
+ irq_domain_deactivate_irq(&desc->irq_data);
+
+ if (affinity->is_managed) {
+ irqd_se
Hi Marc,
Right, I did consider this.
FWIW, I've pushed my hack branch[1]
Did you miss that reference?
out with a couple of patches
for you to try (the top 3 patches). They allow platform-MSI domains
created by devices (mbigen, ICU) to be advertised as shared between
devices, so that the lo
On 26/11/2020 09:28, Marc Zyngier wrote:
On 2020-11-25 17:20, John Garry wrote:
Add a function to tear down the work which was done in platform_get_irq()
for when the device driver is done with the irq.
For ACPI companion devices the irq resource is set as disabled, as this
resource is
Hi Marc,
I did:
https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git/log/?h=irq/hacks
ok, I'll have a look
You still should be able to enable my favorite
CONFIG_DEBUG_TEST_DRIVER_REMOVE=y, while the distro still boot. But
I'll just test if you want.
Ah! Let me try that
On 26/11/2020 01:35, Joakim Zhang wrote:
@Joakim, can you resend 3/4? And I think that we should keep the explicit
support for "fsl,imx8m-ddr-pmu" as a good practice in imx_ddr_pmu_dt_ids[],
while also adding the soc-specific sub compat string support
Yes, thanks John. I will follow up.
OK, a
: John Garry
---
block/blk-mq-sched.c | 2 +-
block/blk-mq-tag.c | 2 +-
block/blk-mq.c | 20 ++--
block/blk-mq.h | 2 ++
4 files changed, 22 insertions(+), 4 deletions(-)
diff --git a/block/blk-mq-sched.c b/block/blk-mq-sched.c
index deff4e826e23..fa1035e1ac6e
://lore.kernel.org/linux-block/04e2f9e8-79fa-f1cb-ab23-4a15bf3f6...@kernel.dk/
Details are in the commit messages. Most important detail is that
fastpath is untouched.
The issue addressed in patch 1/2 is pretty easy to reproduce, 2/2 not so
much.
Differences to v1:
- add 2nd patch
John Garry (2):
blk-mq
return iter_data->fn(hctx, rq, iter_data->data,
reserved);
+ }
return true;
}
This delay increases the window for the iter in between getting the
request reference and actually dereferencing it.
To solve this problem, lockout the per-hw queue tagset iterator
On 08/12/2020 22:37, Tyrel Datwyler wrote:
On 12/7/20 3:56 AM, Hannes Reinecke wrote:
On 12/4/20 3:26 PM, Brian King wrote:
On 12/2/20 11:27 AM, Tyrel Datwyler wrote:
On 12/2/20 7:14 AM, Brian King wrote:
On 12/1/20 6:53 PM, Tyrel Datwyler wrote:
Introduce several new vhost fields for managi
On 18/12/2020 01:55, Bart Van Assche wrote:
On 12/17/20 3:07 AM, John Garry wrote:
diff --git a/block/blk-mq-tag.c b/block/blk-mq-tag.c
index a6df2d5df88a..853ed5b889aa 100644
--- a/block/blk-mq-tag.c
+++ b/block/blk-mq-tag.c
@@ -358,10 +358,19 @@ void blk_mq_tagset_busy_iter(struct
On 18/12/2020 03:31, Ming Lei wrote:
3 files changed, 23 insertions(+), 2 deletions(-)
diff --git a/block/blk-mq-tag.c b/block/blk-mq-tag.c
index a6df2d5df88a..853ed5b889aa 100644
--- a/block/blk-mq-tag.c
+++ b/block/blk-mq-tag.c
@@ -358,10 +358,19 @@ void blk_mq_tagset_busy_iter(struct blk_mq
On 18/12/2020 06:23, Jiahui Cen wrote:
Since the [start, end) is a half-open interval, a range with the end equal
to the start of another range should not be considered as overlapped.
Signed-off-by: Jiahui Cen
---
lib/logic_pio.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --
those requests in the driver
tagset when freeing. This is done with a cmpxchg to make safe any race
with setting the driver tagset request from another queue.
Signed-off-by: John Garry
--
Set as RFC as I need to test more. And not sure on solution method, as
Bart had another idea.
diff --git a/block
Hi Thomas,
I'll go with something extra like:
Add a function to allow the affinity of an interrupt be switched to
managed, such that interrupts allocated for platform devices may be
managed.
Could you please add a paragraph which explains the limitations of that
interface?
This new interf
On 17/11/2020 10:25, John Garry wrote:
Hi Will,
Is there any chance that we can get these picked up for 5.11? We've seen
this issue solved here for a long time.
Or, @Robin, let me know if not happy with this since v1.
BTW, patch #4 has been on the go for ~1 year now, and is a nice
removal
- Change API to accept min and max vectors
John Garry (5):
genirq/affinity: Add irq_update_affinity_desc()
resource: Add irqresource_disabled()
ACPI: Drop acpi_dev_irqresource_disabled()
Driver core: platform: Add devm_platform_get_irqs_affinity()
scsi: hisi_sas: Expose HW
means double init
Suggested-by: Thomas Gleixner
Signed-off-by: John Garry
---
include/linux/interrupt.h | 8 +
kernel/irq/manage.c | 70 +++
2 files changed, 78 insertions(+)
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
index
Add a common function to set the fields for a irq resource to disabled,
which mimics what is done in acpi_dev_irqresource_disabled(), with a view
to replace that function.
Signed-off-by: John Garry
Reviewed-by: Rafael J. Wysocki
---
include/linux/ioport.h | 7 +++
1 file changed, 7
ge of this.
Flag Scsi_host.host_tagset is also set to ensure that the HBA is not sent
more commands than it can handle. However the driver still does not use
request tag for IPTT as there are many HW bugs means that special rules
apply for IPTT allocation.
Signed-off-by: John Garry
---
drivers/scs
The functionality of acpi_dev_irqresource_disabled() is same as in common
irqresource_disabled(), so drop acpi_dev_irqresource_disabled() in favour
of that function.
Signed-off-by: John Garry
Acked-by: Rafael J. Wysocki
---
drivers/acpi/resource.c | 17 +
1 file changed, 5
will also use
devm method for requesting the interrupts; as such, the function is made
as devm as it can ensure ordering of freeing the irq and disposing of the
mapping.
Signed-off-by: John Garry
---
drivers/base/platform.c | 121
include/linux
On 02/12/2020 03:31, Ming Lei wrote:
On Tue, Dec 01, 2020 at 09:02:18PM +0800, John Garry wrote:
It has been reported many times that a use-after-free can be intermittently
found when iterating busy requests:
-
https://lore.kernel.org/linux-block/8376443a-ec1b-0cef-8244-ed584b96f
On 01/12/2020 21:02, Will Deacon wrote:
cc'ing some more people who have touched iova code recently
On Tue, Dec 01, 2020 at 03:35:02PM +0000, John Garry wrote:
On 17/11/2020 10:25, John Garry wrote:
Is there any chance that we can get these picked up for 5.11? We've seen
this is
On 03/12/2020 00:55, Ming Lei wrote:
Hi Ming,
Yeah, so I said that was another problem which you mentioned there, which
I'm not addressing, but I don't think that I'm making thing worse here.
The thing is that this patch does not fix the issue completely.
So AFAICS, the blk-mq/sched code doe
On 03/12/2020 06:04, Dmitry Safonov wrote:
On Tue, 1 Dec 2020 at 21:50, Will Deacon wrote:
On Tue, 17 Nov 2020 18:25:30 +0800, John Garry wrote:
This series contains a patch to solve the longterm IOVA issue which
leizhen originally tried to address at [0].
A sieved kernel log is at the
It is not used outside iova.c
Signed-off-by: John Garry
---
drivers/iommu/iova.c | 3 +--
include/linux/iova.h | 6 --
2 files changed, 1 insertion(+), 8 deletions(-)
diff --git a/drivers/iommu/iova.c b/drivers/iommu/iova.c
index 4803bd83447d..9fed0b040747 100644
--- a/drivers/iommu/iova.c
Function split_and_remove_iova() has not been referenced since commit
e70b081c6f37 ("iommu/vt-d: Remove IOVA handling code from the non-dma_ops
path"), so delete it.
Signed-off-by: John Garry
---
drivers/iommu/iova.c | 41 -
include/linux/i
This series contains some minor tidy-ups by deleting an unreferenced
function and unexporting some functions, highlighted by:
https://lore.kernel.org/linux-iommu/6e09d847-fb7f-1ec1-02bf-f0c8b3158...@huawei.com/T/#med5a019f9d3835c162c16a48f34d05cc0111b0ca
John Garry (3):
iommu: Delete
It has no user outside iova.c
Signed-off-by: John Garry
---
drivers/iommu/iova.c | 3 +--
include/linux/iova.h | 5 -
2 files changed, 1 insertion(+), 7 deletions(-)
diff --git a/drivers/iommu/iova.c b/drivers/iommu/iova.c
index 9fed0b040747..f68fe4c0df28 100644
--- a/drivers/iommu/iova.c
The Intel IOMMU driver supports flushing the per-CPU rcaches when a CPU is
offlined.
Let's move it to core code, so everyone can take advantage.
Also correct a code comment.
Based on v5.12-rc1. Tested on arm64 only.
John Garry (3):
iova: Add CPU hotplug handler to flush rcaches
iommu
Now that the core code handles flushing per-IOVA domain CPU rcaches,
remove the handling here.
Signed-off-by: John Garry
---
drivers/iommu/intel/iommu.c | 31 ---
include/linux/cpuhotplug.h | 1 -
2 files changed, 32 deletions(-)
diff --git a/drivers/iommu/intel
Function free_cpu_cached_iovas() is not only called when a CPU is
hotplugged, so remove that part of the code comment.
Signed-off-by: John Garry
---
drivers/iommu/iova.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/iommu/iova.c b/drivers/iommu/iova.c
index
Like the intel IOMMU driver already does, flush the per-IOVA domain
CPU rcache when a CPU goes offline - there's no point in keeping it.
Signed-off-by: John Garry
---
drivers/iommu/iova.c | 30 +-
include/linux/cpuhotplug.h | 1 +
include/linux/i
On 01/03/2021 13:20, Robin Murphy wrote:
FWIW, I'm 99% sure that what you really want is [1], but then you get
to battle against an unknown quantity of dodgy firmware instead.
Something which has not been said before is that this only happens for
strict mode.
I think that makes sense - once yo
On 12/03/2021 10:52, Arnd Bergmann wrote:
On Fri, Mar 12, 2021 at 11:38 AM Dmitry Vyukov wrote:
On Fri, Mar 12, 2021 at 11:11 AM Arnd Bergmann wrote:
It does not happen too often on syzbot so far, so let's try to do the
right thing first.
I've filed: https://bugs.launchpad.net/qemu/+bug/19189
On 15/03/2021 10:01, Dmitry Vyukov wrote:
On Mon, Mar 15, 2021 at 10:45 AM John Garry wrote:
It does not happen too often on syzbot so far, so let's try to do the
right thing first.
I've filed:https://bugs.launchpad.net/qemu/+bug/1918917
with a link to this thread. To be fair, I d
John,
On 2021/1/15 18:10, John Garry wrote:
On 21/12/2020 13:04, Jiahui Cen wrote:
On 21/12/2020 03:24, Jiahui Cen wrote:
Hi John,
On 2020/12/18 18:40, John Garry wrote:
On 18/12/2020 06:23, Jiahui Cen wrote:
Since the [start, end) is a half-open interval, a range with the end equal
to the start
On 20/01/2021 05:15, Joakim Zhang wrote:
-Original Message-
From: John Garry
Sent: 2021年1月20日 1:33
To: Joakim Zhang ; pet...@infradead.org;
mi...@redhat.com; a...@kernel.org; mark.rutl...@arm.com;
alexander.shish...@linux.intel.com; jo...@redhat.com;
namhy...@kernel.org; irog
On 20/01/2021 12:56, Jiri Olsa wrote:
that's fixing the issue for me, this was crashing:
# perf stat -a -I 1000 -M L1D_Cache_Fill_BW,L2_Cache_Fill_BW
could you please send it formaly, so it can be merged?
I will do it today. But I want to make sure that the logic is correct,
so checking i
t;perf metricgroup: Fix metrics using aliases covering
multiple PMUs")
Reported-by: Joakim Zhang
Signed-off-by: John Garry
diff --git a/tools/perf/util/metricgroup.c b/tools/perf/util/metricgroup.c
index 2e60ee170abc..e6d3452031e5 100644
--- a/tools/perf/util/metricgroup.c
+++ b/tools/perf/
On 20/01/2021 16:40, Ian Rogers wrote:
On Wed, Jan 20, 2021 at 8:23 AM John Garry <mailto:john.ga...@huawei.com>> wrote:
Metrics containing duration_time cause a segfault:
$./perf stat -v -M L1D_Cache_Fill_BW sleep 1
Using CPUID GenuineIntel-6-3D-4
metri
On 10/03/2021 16:00, Bart Van Assche wrote:
So I can incorporate any changes and suggestions so far and send a
non-RFC version - that may get more attention if none extra comes.
As mentioned on the cover letter, if patch 2+3/3 are accepted, then
patch 1/3 could be simplified. But I plan to lea
On 08/03/2021 16:22, John Garry wrote:
While max32_alloc_size indirectly tracks the largest*contiguous*
available space, one of the ideas from which it grew was to simply keep
count of the total number of free PFNs. If you're really spending
significant time determining that the tr
On 11/03/2021 00:58, Ming Lei wrote:
Indeed, blk_mq_queue_tag_busy_iter() already does take a reference to its
queue usage counter when called, and the queue cannot be frozen to switch
IO scheduler until all refs are dropped. This ensures no stale references
to IO scheduler requests will be seen
On 06/03/2021 19:34, Jiri Olsa wrote:
On Fri, Mar 05, 2021 at 11:06:58AM +, John Garry wrote:
Hi Jirka,
- struct pmu_events_map *map = perf_pmu__find_map(NULL);
+ struct pmu_events_map *map = find_cpumap();
so this is just for arm at the moment right?
Yes - but to be more
u driver to the iommu ops")
Signed-off-by: Robin Murphy
If it's worth anything:
Reviewed-by: John Garry
---
Documentation/admin-guide/kernel-parameters.txt | 15 ---
drivers/iommu/dma-iommu.c | 13 -
drivers/iommu/intel/iommu.c
On 01/03/2021 15:48, John Garry wrote:
While max32_alloc_size indirectly tracks the largest*contiguous*
available space, one of the ideas from which it grew was to simply keep
count of the total number of free PFNs. If you're really spending
significant time determining that the tree is
On 06/03/2021 18:13, Bart Van Assche wrote:
On 3/5/21 7:14 AM, John Garry wrote:
@@ -2296,10 +2296,14 @@ void blk_mq_free_rqs(struct blk_mq_tag_set *set, struct
blk_mq_tags *tags,
for (i = 0; i < tags->nr_tags; i++) {
struct request *rq = tags->sta
On 06/03/2021 04:32, Bart Van Assche wrote:
On 3/5/21 7:14 AM, John Garry wrote:
diff --git a/block/blk.h b/block/blk.h
index 3b53e44b967e..1a948bfd91e4 100644
--- a/block/blk.h
+++ b/block/blk.h
@@ -201,10 +201,29 @@ void elv_unregister_queue(struct request_queue *q);
static inline void
On 06/03/2021 04:43, Bart Van Assche wrote:
On 3/5/21 7:14 AM, John Garry wrote:
diff --git a/block/blk-mq-tag.c b/block/blk-mq-tag.c
index 7ff1b20d58e7..5950fee490e8 100644
--- a/block/blk-mq-tag.c
+++ b/block/blk-mq-tag.c
@@ -358,11 +358,16 @@ void blk_mq_tagset_busy_iter(struct
On 06/03/2021 02:52, Khazhy Kumykov wrote:
On Fri, Mar 5, 2021 at 7:20 AM John Garry wrote:
It has been reported many times that a use-after-free can be intermittently
found when iterating busy requests:
-
https://lore.kernel.org/linux-block/8376443a-ec1b-0cef-8244-ed584b96f...@huawei.com
On 08/03/2021 13:08, Robin Murphy wrote:
On 2021-03-05 17:41, John Garry wrote:
On 05/03/2021 16:32, Robin Murphy wrote:
In converting intel-iommu over to the common IOMMU DMA ops, it quietly
lost the functionality of its "forcedac" option. Since this is a handy
thing both for testi
On 08/03/2021 15:15, Robin Murphy wrote:
I figure that you're talking about 4e89dce72521 now. I would have
liked to know which real-life problem it solved in practice.
From what I remember, the problem reported was basically the one
illustrated in that commit and the one I alluded to above -
On 06/03/2021 19:34, Jiri Olsa wrote:
On Fri, Mar 05, 2021 at 11:06:58AM +, John Garry wrote:
Hi Jirka,
- struct pmu_events_map *map = perf_pmu__find_map(NULL);
+ struct pmu_events_map *map = find_cpumap();
so this is just for arm at the moment right?
Yes - but to be more
>
>
> Thanks for this, it should be fairly easy to add a test. Could we
do this?
I don't mind following up with that.
How about this:
>8
From 38e9d5aa07588d552378d97760b6b79f19d59bbd Mon Sep 17 00:00:00 2001
From: John Garry
Date: Thu,
On 21/01/2021 10:54, Shunsuke Nakamura wrote:
+ {
+"PublicDescription": "This event counts each correction to the predicted
program flow that occurs because of a misprediction from, or no prediction from, the branch
prediction resources and that relates to instructions that the branch pred
On 21/01/2021 11:39, Shaokun Zhang wrote:
Hi,
在 2021/1/21 18:54, Shunsuke Nakamura 写道:
Adds L1 data cache refill prefetch, L2 data cache refill prefetch,
and DCZVA instruction events.
A silly question, Does Arm define these events? I checked Arm ARM
document(DDI0487Fc) that these event number
On 21/01/2021 20:31, Arnaldo Carvalho de Melo wrote:
They are not normally broken like that. Normally we test beforehand, but
these cases were missed here by me. However if you were testing them
previously, then it would be expected that you had tested them again for the
final patchset which was
On 08/03/2021 17:56, Melanie Plageman wrote:
On Mon, Mar 08, 2021 at 02:37:40PM +, Michael Kelley wrote:
From: Melanie Plageman (Microsoft) Sent: Friday,
March 5, 2021 3:22 PM
The scsi_device->queue_depth is set to Scsi_Host->cmd_per_lun during
allocation.
Cap cmd_per_lun at can_queue t
On 05/03/2021 16:35, Robin Murphy wrote:
Hi Robin,
When restarting after searching below the cached node fails, resetting
the start point to the anchor node is often overly pessimistic. If
allocations are made with mixed limits - particularly in the case of the
opportunistic 32-bit allocation f
On 09/03/2021 15:57, Michael Kelley wrote:
From: John Garry Sent: Tuesday, March 9, 2021 2:10 AM
On 08/03/2021 17:56, Melanie Plageman wrote:
On Mon, Mar 08, 2021 at 02:37:40PM +, Michael Kelley wrote:
From: Melanie Plageman (Microsoft) Sent: Friday,
March 5, 2021 3:22 PM
The
On 08/03/2021 19:59, Bart Van Assche wrote:
This changes the behavior of blk_mq_tagset_busy_iter(). What will e.g.
happen if the mtip driver calls blk_mq_tagset_busy_iter(&dd->tags,
mtip_abort_cmd, dd) concurrently with another blk_mq_tagset_busy_iter()
call and if that causes all mtip_abort_cmd(
On 09/03/2021 19:21, Bart Van Assche wrote:
On 3/9/21 9:47 AM, John Garry wrote:
This does fall over if some tags are allocated without associated
request queue, which I do not know exists.
Hi Bart,
The only tag allocation mechanism I know of is blk_mq_get_tag(). The
only blk_mq_get_tag
:00 2001
From: John Garry
Date: Fri, 5 Feb 2021 09:50:54 +
Subject: [PATCH] perf test: Add parse-metric list test scenario
diff --git a/tools/perf/tests/parse-metric.c
b/tools/perf/tests/parse-metric.c
index ce7be37f0d88..0626e389354c 100644
--- a/tools/perf/tests/parse-metric.c
+++ b/tools/pe
On 08/02/2021 01:53, nakamur'd a.s...@fujitsu.com wrote:
Hi, John
Apart from that, I think that we're a bit uncertain about patch 3/4
What are your concerns?
I think it's okay for perf to read a new event code with a number at the
beginning.
The impact of this fix is on {name} and later rule
On 08/02/2021 10:58, Luo Jiaxing wrote:
When the number of online CPUs is less than 16, we found that it will fail
to allocate 32 MSI interrupts (including 16 affinity interrupts) after the
hisi_sas module is unloaded and then reloaded.
After analysis, it is found that a bug exists when the ITS
fferent to
standard are changed (to standard) for consistency.
Signed-off-by: John Garry
---
.../arch/arm64/arm/cortex-a76-n1/branch.json | 12 +-
.../arch/arm64/arm/cortex-a76-n1/bus.json | 19 ++-
.../arch/arm64/arm/cortex-a76-n1/cache.json | 118 ++
.../arm64/arm/cor
601 - 700 of 2105 matches
Mail list logo