Re: [PATCH v3 0/7] get_abi.pl: Check for missing symbols at the ABI specs
From: Greg Kroah-Hartman
Date: Wed Sep 22 2021 - 04:43:51 EST
On Wed, Sep 22, 2021 at 10:11:02AM +0200, Greg Kroah-Hartman wrote:
> On Wed, Sep 22, 2021 at 09:36:09AM +0200, Mauro Carvalho Chehab wrote:
> > It sounds it took quite a while handling iommu cap, which sounds weird, as
> > it should be looking just 3 What expressions:
> >
> > [07:43:06] What: /sys/class/iommu/.*/amd\-iommu/cap
> > [07:43:06] What: /sys/class/iommu/.*/intel\-iommu/cap
> > [07:43:06] What: /sys/devices/pci.*.*.*.*\:.*.*/0000\:.*.*\:.*.*..*/dma/dma.*chan.*/quickdata/cap
> >
> > Maybe there was a memory starvation while running the script, causing
> > swaps. Still, it is weird that it would happen there, as the hashes
> > and arrays used at the script are all allocated before it starts the
> > search logic. Here, the allocation part takes ~2 seconds.
>
> No memory starvation here, this thing is a beast:
> $ free -h
> total used free shared buff/cache available
> Mem: 251Gi 36Gi 13Gi 402Mi 202Gi 212Gi
> Swap: 4.0Gi 182Mi 3.8Gi
>
> $ nproc
> 64
>
>
> > At least on my Dell Precision 5820 (12 cpu threads), the amount of memory it
> > uses is not huge:
> >
> > $ /usr/bin/time -v ./scripts/get_abi.pl undefined >/dev/null
> > Command being timed: "./scripts/get_abi.pl undefined"
> > User time (seconds): 12.68
> > System time (seconds): 1.29
> > Percent of CPU this job got: 99%
> > Elapsed (wall clock) time (h:mm:ss or m:ss): 0:13.98
> > Average shared text size (kbytes): 0
> > Average unshared data size (kbytes): 0
> > Average stack size (kbytes): 0
> > Average total size (kbytes): 0
> > Maximum resident set size (kbytes): 212608
> > Average resident set size (kbytes): 0
> > Major (requiring I/O) page faults: 0
> > Minor (reclaiming a frame) page faults: 52003
> > Voluntary context switches: 1
> > Involuntary context switches: 56
> > Swaps: 0
> > File system inputs: 0
> > File system outputs: 0
> > Socket messages sent: 0
> > Socket messages received: 0
> > Signals delivered: 0
> > Page size (bytes): 4096
> > Exit status: 0
> >
> > Unfortunately, I don't have any amd-based machine here, but I'll
> > try to run it later on a big arm server and see how it behaves.
>
> I'll run that and get back to you in 30 minutes :)
$ /usr/bin/time -v ./scripts/get_abi.pl undefined > /dev/null
Command being timed: "./scripts/get_abi.pl undefined"
User time (seconds): 1756.94
System time (seconds): 0.76
Percent of CPU this job got: 99%
Elapsed (wall clock) time (h:mm:ss or m:ss): 29:18.94
Average shared text size (kbytes): 0
Average unshared data size (kbytes): 0
Average stack size (kbytes): 0
Average total size (kbytes): 0
Maximum resident set size (kbytes): 228116
Average resident set size (kbytes): 0
Major (requiring I/O) page faults: 0
Minor (reclaiming a frame) page faults: 55862
Voluntary context switches: 1
Involuntary context switches: 17205
Swaps: 0
File system inputs: 0
File system outputs: 0
Socket messages sent: 0
Socket messages received: 0
Signals delivered: 0
Page size (bytes): 4096
Exit status: 0