Hi Wolfram,
Narrow down CC-list.
Please see my reply below.
On Tue, 2015-05-12 at 14:58 +0200, w...@the-dreams.de wrote:
> > +#include
> > +#include
> > +#include
> > +#include
> > +#include
> > +#include
> > +#include
> > +#include
> > +#include
> > +#include
> > +#include
> >
Add missed f2fs_balance_fs to reserve space for ->tmpfile.
Signed-off-by: Chao Yu
---
fs/f2fs/namei.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/fs/f2fs/namei.c b/fs/f2fs/namei.c
index bed0cb0..38a783e 100644
--- a/fs/f2fs/namei.c
+++ b/fs/f2fs/namei.c
@@ -517,6 +517,9 @@ static int
As the description of rename in manual, RENAME_WHITEOUT is a special operation
that only makes sense for overlay/union type filesystem.
When performing rename with RENAME_WHITEOUT, dst will be replace with src, and
meanwhile, a 'whiteout' will be create with name of src.
A "whiteout" is designed
Hi Ricky,
On Mon, May 18, 2015 at 11:41:49AM +0800, Ricky Liang wrote:
> The variable init (struct clk_init_data) is allocated on the stack.
> We weren't initializing the .flags field, so it contains random junk,
> which can cause all kinds of interesting issues when the flags are
> parsed by
> On May 16, 2015, at 02:35, Pekka Enberg wrote:
>
> Use kvfree instead of open-coding it.
>
> Cc: "Yan, Zheng"
> Cc: Sage Weil
> Signed-off-by: Pekka Enberg
> ---
> net/ceph/pagevec.c | 5 +
> 1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/net/ceph/pagevec.c
Always use $(obj) when referring to generated files and use $(src) when
referring to files located in the src tree.
Signed-off-by: He Kuang
---
samples/bpf/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/samples/bpf/Makefile b/samples/bpf/Makefile
index
Am Freitag, 15. Mai 2015, 14:46:26 schrieb Herbert Xu:
Hi Herbert,
> On Wed, May 13, 2015 at 09:54:41PM +0200, Stephan Mueller wrote:
> > /*
> >
> > + * Equivalent function to get_random_bytes with the difference that this
> > + * function blocks the request until the nonblocking_pool is
Sample code for testing bpf fetch args.
Works as following steps:
$ perf bpf record --object sample_bpf_fetch_args.o -- dd if=/dev/zero
of=/mnt/data/test bs=4k count=3
show result in ringbuffer:
$ perf script
dd 1088 [000] 5740.260451: perf_bpf_probe:generic_perform_write:
This helper function uses kernel structure trace_probe and related fetch
functions for fetching variables described in 'SEC' to bpf stack.
Signed-off-by: He Kuang
---
include/uapi/linux/bpf.h | 1 +
kernel/trace/bpf_trace.c | 38 ++
Add new structure bpf_pt_regs, which contains both original
'ctx'(pt_regs) and trabe_probe pointer, and pass this new pointer to bpf
prog for variable fetching.
Signed-off-by: He Kuang
---
kernel/trace/trace_kprobe.c | 11 +--
kernel/trace/trace_probe.h | 5 +
2 files changed, 14
Add -k option to perf bpf command.
Signed-off-by: He Kuang
---
tools/perf/builtin-bpf.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/tools/perf/builtin-bpf.c b/tools/perf/builtin-bpf.c
index 4ef294a..9ea34b3 100644
--- a/tools/perf/builtin-bpf.c
+++ b/tools/perf/builtin-bpf.c
@@ -11,6
This patch is based on https://lkml.org/lkml/2015/5/17/84 (perf tools:
introduce 'perf bpf' command to load eBPF programs).
Previous discusions on perf bpf: Probing with local variable:
https://lkml.org/lkml/2015/5/5/260. In that patch, we tried to
generate a bpf bytecode prologue in perf, this
On Sun, 17 May 2015, Maxime Ripard wrote:
> Hi Ian,
>
> On Sat, May 16, 2015 at 11:08:46AM +0100, Ian Campbell wrote:
> > On Thu, 2015-05-14 at 14:10 +0800, Chen-Yu Tsai wrote:
> > > This is my attempt to support SMP and CPU hot plugging on the Allwinner
> > > A80 SoC. The A80 is a big.Little
On Sun, May 17, 2015 at 08:50:41PM +0200, Michal Hocko wrote:
> Hi,
> s2ram broke after 4.1-rc1 for me. The second s2ram simply doesn't wake
> up (fans turn on but the screen is off). I have even noticed fans
> starting also while suspended in some instances (which was especially
> annoying when
On 2015/5/16 4:44, Thomas Gleixner wrote:
> On Mon, 4 May 2015, Jiang Liu wrote:
>
>> NUMA is enabled by CONFIG_NUMA instead of CONFIG_SMP, so use CONFIG_NUMA
>> to guard irq_common_data.node.
>
> Please move this change to the front and do it on irq_data. That would
> have avoided confusing
EP-79F327334E67427298A99177E8F035A1
Add support for setting smack mount labels(using smackfsdef, smackfsroot,
smackfshat, smackfsfloor, smackfstransmute) for filesystems with binary
mount data like NFS.
To achieve this, implement sb_parse_opts_str and sb_set_mnt_opts security
operations in smack
Hi Anshuman,
Thanks for getting these testcases into the kernel.
> This patch adds a test to verify that the changed DSCR value inside
> any process would be inherited to it's child process across the fork
> system call.
One issue I do notice (a bug in my original test cases too), is that we
At startup, reading a directory (for example to do an ls), requires finding
information on every file. To support JFFS2 recovery from partially written
blocks, the JFFS2 driver must scan all data blocks to verify the checksums
are correct just to be able to correctly report the length of a file.
I have posted this before, but have extended the patch into a few more
functions. The intent of the code is as before -- to improve JFFS2 lookups
by not locking i_mutex for long periods when files are not in cache. For
our embedded environment, we see a *five second* improvement in boot time.
On Tue, May 12, 2015 at 4:28 PM, Jonathan Richardson
wrote:
> The polarity procedure no longer applies the settings to change the
> output signal because it can't be called when the pwm is enabled anyway.
> The polarity is only updated in the control register. The correct
> polarity will be
EP-2DAD0AFA905A4ACB804C4F82A001242F
On Wed, May 13, 2015 at 06:24:06AM +0100, Maninder Singh wrote:
>> EP-2DAD0AFA905A4ACB804C4F82A001242F
>>
>> Subject: [PATCH 1/1] hw_breakpoint.c :cpu hotplug handling
>>
>> This patch adds support for CPU hotplug, It re-installl all installed
>> watchpoints
On 05/13/2015 08:55 AM, Chen Gang wrote:
> On 05/12/2015 10:29 PM, Dave Jones wrote:
>> likewise sys_bpf judging by the absence of bpf_int_jit_compile and friends
>> in arch/alpha
>> The weak symbols mean it probably compiles/links, but it doesn't actually do
>> anything, and now instead of
Hi Arnaldo and Andi,
On Thu, May 14, 2015 at 10:11:29AM -0300, Arnaldo Carvalho de Melo wrote:
> Em Thu, May 14, 2015 at 02:25:17PM +0200, Andi Kleen escreveu:
> > Hi,
> >
> > Since there are more and more consumers I started a description of the
> > on-disk perf.data format. This does not
The related warning:
CC init/do_mounts.o
arch/alpha/kernel/osf_sys.c: In function ‘SyS_osf_settimeofday’:
arch/alpha/kernel/osf_sys.c:1028:14: warning: ‘kts.tv_nsec’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
kts.tv_nsec *= 1000;
^
On Sun, May 17, 2015 at 04:47:23PM +0200, Amaury Denoyelle wrote:
> This patch fixes coding style errors reported by checkpatch.pl for
> cb_pcidas64.c, about too long source code lines.
>
> Signed-off-by: Amaury Denoyelle
> ---
> }
>
> -/* adjusts the size of hardware fifo (which determines
And still left the missing unimplemented syscalls as warnings. The
related warnings for missing implemented syscalls:
CALLscripts/checksyscalls.sh
:1241:2: warning: #warning syscall getrandom not implemented [-Wcpp]
:1244:2: warning: #warning syscall memfd_create not implemented
On Sun, May 17, 2015 at 11:50 AM, Michal Hocko wrote:
>
> The merge commit is empty and both 80dcc31fbe55 and e4b0db72be24 work
> properly but the merge is bad. So it seems like some of the commits in
> either branch has a side effect which needs other branch in order to
> reproduce.
>
> So've
On Fri, May 15, 2015 at 11:19:33AM +0200, Pali Rohár wrote:
> On Saturday 28 February 2015 17:25:02 Pavel Machek wrote:
> > On Thu 2015-02-26 14:49:53, Pali Rohár wrote:
> > > omap3 support is same as omap2, just with different IO address (specified
> > > in DT)
> > >
> > > Signed-off-by: Pali
On Sun, May 17, 2015 at 12:54:12PM +0200, LABBE Corentin wrote:
> This patch simply adds the MD5 IV in the md5 header.
>
> Signed-off-by: LABBE Corentin
All applied. Thanks!
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key:
On Sun, May 17, 2015 at 8:42 PM, Al Viro wrote:
>
> "Rest of the path" makes no sense, obviously. "More of the path" (and _not_
> as a string, TYVM - we have those components in ->d_name.name of dentries we
> want revalidated [..])
For revalidate, yes we kind of have them as dentries. I say
On 2015/5/14 21:55, Steven Rostedt wrote:
> On Thu, 14 May 2015 11:34:47 +
> Wang Long wrote:
>
>> The patch 1-13 backport the "seq_buf" infrastructures. in detail, patch 1, 2
>> and 6 only backport "seq_buf" related code.
>>
>
> Ah, so basically you just backported the seq_buf.c code
Add the driver for on-chip UART used on UniPhier SoCs.
This hardware is similar to 8250 with a slightly different register
mapping, so it should go into drivers/tty/serial/8250 directory.
Signed-off-by: Masahiro Yamada
---
Changes in v2:
- Drop unnecessary #include
- Sort includes in
The variable init (struct clk_init_data) is allocated on the stack.
We weren't initializing the .flags field, so it contains random junk,
which can cause all kinds of interesting issues when the flags are
parsed by clk_register.
Signed-off-by: Ricky Liang
---
drivers/clk/mediatek/clk-pll.c | 2
On Sun, May 17, 2015 at 07:56:26PM -0700, Linus Torvalds wrote:
> > So for Al's example of revalidating multiple components at once, once the
> > VFS
> > gets to a point in the path where d_revalidate says "I need more time",
> > the VFS just passes the rest of the path to the filesystem.
>
>
On Mon, May 11, 2015 at 5:26 PM, YH Huang wrote:
> Add display PWM driver support to modify backlight for MT8173/MT6595.
>
> Signed-off-by: YH Huang
> ---
> drivers/pwm/Kconfig | 9 ++
> drivers/pwm/Makefile| 1 +
> drivers/pwm/pwm-disp-mediatek.c | 225
>
Hi all,
Today's linux-next merge of the net-next tree got a conflict in
net/switchdev/switchdev.c between commit eea39946a1f3 ("rename
RTNH_F_EXTERNAL to RTNH_F_OFFLOAD") from the net tree and various
commits from the net-next tree.
I fixed it up (see below) and can carry the fix as necessary
From: Simon Xiao
Date: Fri, 15 May 2015 02:33:03 -0700
> Currently the struct netvsc_stats has a member s_sync
> of type u64_stats_sync.
> This definition will break kernel build as the macro
> netdev_alloc_pcpu_stats requires this member name to be syncp.
> (see netdev_alloc_pcpu_stats
On Sun, 2015-05-17 at 22:17 -0400, Rik van Riel wrote:
> On 05/17/2015 01:30 AM, Mike Galbraith wrote:
>
> > Given that kernel initiated association to isolcpus, a user turning
> > NO_HZ_FULL_ALL on had better not have much generic load to manage. If
> > he/she does not have CPUSETS enabled, or
Hi Matthias,
2015-05-16 18:17 GMT+09:00 Matthias Brugger :
>> +/*
>> + * The register map is slightly different from that of 8250.
>> + * IO callbacks must be overridden for correct access to FCR, LCR, and MCR.
>> + */
>> +static unsigned int uniphier_serial_in(struct uart_port *p, int offset)
Hi Joachim,
2015-05-16 7:28 GMT+09:00 Joachim Eastwood :
>> +
>> +#include
>> +#include
>> +#include
>> +#include
>> +#include
>> +#include
>> +#include
>> +#include
>> +#include
>
> Please put the includes in alphabetic order.
OK.
> Do you really need init.h?
Not really. Will
On 2015/5/8 10:23, Yun Wu (Abel) wrote:
> On 2015/5/4 11:15, Jiang Liu wrote:
>
> [...]
>> diff --git a/include/linux/irqdesc.h b/include/linux/irqdesc.h
>> index dd1109fb241e..3010e99abf3e 100644
>> --- a/include/linux/irqdesc.h
>> +++ b/include/linux/irqdesc.h
>> @@ -47,6 +47,7 @@ struct
On Sun, May 17, 2015 at 4:16 PM, NeilBrown wrote:
>
> Just to be crystal clear about what I want:
> I want the filesystem to be in control
Yeah, no. Not going to happen.
You seem to think that the dcache is "just" a cache. It's not. It's a
cache, but that is absolutely not all that it is.
this patch fix the function in kernel_thread(),
when kernel is build as THUMB2 or BE8 endian, we should
also set the correct bit in CPSR, so that kernel can return to
the correct state to execute.
---
arch/arm/kernel/process.c | 6 ++
1 file changed, 6 insertions(+)
diff --git
> -Original Message-
> From: Thomas Gleixner [mailto:t...@linutronix.de]
> Sent: Friday, May 15, 2015 9:27 PM
> To: Wu, Feng
> Cc: mi...@redhat.com; h...@zytor.com; linux-kernel@vger.kernel.org;
> jiang@linux.intel.com
> Subject: Re: [v4 3/3] x86, irq: Define a global vector for VT-d
Thanks for the review!
> -Original Message-
> From: Thomas Gleixner [mailto:t...@linutronix.de]
> Sent: Friday, May 15, 2015 9:18 PM
> To: Wu, Feng
> Cc: mi...@redhat.com; h...@zytor.com; linux-kernel@vger.kernel.org;
> jiang@linux.intel.com
> Subject: Re: [v4 1/3] genirq: Introduce
On 05/17/2015 09:26 AM, Boaz Harrosh wrote:
> On 05/14/2015 03:59 PM, Rik van Riel wrote:
>> On 05/14/2015 04:26 AM, Daniel Phillips wrote:
>>> Hi Rik,
> <>
>>
>> The issue is that things like ptrace, AIO, infiniband
>> RDMA, and other direct memory access subsystems can take
>> a reference to
On 05/17/2015 01:30 AM, Mike Galbraith wrote:
> Given that kernel initiated association to isolcpus, a user turning
> NO_HZ_FULL_ALL on had better not have much generic load to manage. If
> he/she does not have CPUSETS enabled, or should Rik's patch rendering
> isolcpus immutable be merged,
My
On Sat, 16 May 2015 19:42:54 +0200 Patrick Marlier
wrote:
>
>
> On 05/13/2015 04:58 AM, NeilBrown wrote:
> > On Tue, 12 May 2015 22:38:53 -0400 Steven Rostedt
> > wrote:
> >
> >> On Tue, 12 May 2015 15:46:26 -0700
> >> "Paul E. McKenney" wrote:
> >>
> >>> From: Patrick Marlier
> >>>
> >>>
On 05/18/2015 09:26 AM, Tejun Heo wrote:
> On Mon, May 18, 2015 at 08:39:21AM +0800, Lai Jiangshan wrote:
>> ping
>
> Does this reflect the comments from the previous review cycle?
>
This is the V2 version of the V1 pathset. But it is just the updated
version of the patch1&2 of the V1
On Fri, 15 May 2015 11:35:57 +0100 One Thousand Gnomes
wrote:
> > > Data loss may be caused for hotplug storage(like USB), or all storage
> > > when power is exhausted during suspend.
> >
> > Which also may very well happen at run time, right?
>
> Intuitively users treat "suspended" as a bit
Hi Tarek,
On Sun, May 17, 2015 at 3:42 PM, Tarek Dakhran wrote:
> Cortex-A7 has EXYNOS5_PA_UART base address for UART.
> If system boots from Cortex-A7 CPU addruart loads wrong
> address. This patch fixex this.
>
> Signed-off-by: Tarek Dakhran
> ---
> arch/arm/include/debug/exynos.S | 1 +
> 1
On (05/17/15 20:50), Michal Hocko wrote:
> Hi,
> s2ram broke after 4.1-rc1 for me. The second s2ram simply doesn't wake
> up (fans turn on but the screen is off). I have even noticed fans
> starting also while suspended in some instances (which was especially
> annoying when it happened on the way
Hi Jiri,
CC-ing Frederic as he wrote the comm change.
On Fri, May 15, 2015 at 05:54:28PM +0200, Jiri Olsa wrote:
> Currently the se_cmp and se_collapse use pointer comparison,
> which is ok for for testing equality of strings. It's not ok
> as comparing function for rbtree insertion, because it
From: Krzysztof Kozlowski
Enable the USB OHCI driver for Exynos SoCs: S5PV210, Exynos4 family,
Exynos5250, Exynos5440 and Exynos542x/5800 family.
Signed-off-by: Krzysztof Kozlowski
---
arch/arm/configs/multi_v7_defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git
Current Exynos CPU idle driver supports entering AFTR (Arm Off, Top
Running) mode on Exynos3250, Exynos4210 (coupled), Exynos4x12 and
Exynos5250. Enable it in default configuration to reduce energy
consumption.
Signed-off-by: Krzysztof Kozlowski
---
arch/arm/configs/multi_v7_defconfig | 1 +
1
Enable drivers for PMICs and MUICs present on Exynos-based devices:
- max14577: charger, fuel gauge (max17040), regulator,
used on: Gear 1, Gear 2,
- max77693: charger, fuel gauge (max17042),
used on: Trats2,
- s5m/s2mps: RTC, clock,
used on: Arndale, Arndale Octa, Gear 1, Gear 2
This
From: Krzysztof Kozlowski
Enable support for Thermal Monitoring Unit present on Exynos SoCs. This
allows detection of overheat and handling this gracefully.
Signed-off-by: Krzysztof Kozlowski
---
arch/arm/configs/multi_v7_defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git
Dear Kukjin,
Changes since v1:
=
1. Select drivers as modules, whenever possible. Suggested by Javier.
2. Patch 2: The I2C_GPIO is already enabled as module.
Description
===
The patchset enables various config options on multi_v7 config
for Exynos boards.
Arnd
On Fri, 2015-05-15 at 09:49 +0200, Ingo Molnar wrote:
> * Michael Ellerman wrote:
>
> > On Thu, 2015-05-14 at 12:38 -0700, Andrew Morton wrote:
> > > > Add arch support matrices for more than 40 generic kernel features
> > > > that need per architecture support.
> > > >
> > > > Each feature has
Hi Santosh,
Thanks for your report!
On Sun, May 17, 2015 at 4:13 AM, santosh shilimkar
wrote:
> Hi Ming Lei, Jens,
>
> While doing few tests with recent kernels with Xen Server,
> we saw guests(DOMU) disk image getting corrupted while booting it.
> Strangely the issue is seen so far only with
On Mon, May 18, 2015 at 08:39:21AM +0800, Lai Jiangshan wrote:
> ping
Does this reflect the comments from the previous review cycle?
--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at
On Sat, May 16, 2015 at 01:59:09PM +1000, Aleksa Sarai wrote:
> One question RE: defaults for .config. What is the kernel policy for
> deciding if a particular subsystem should be made enabled-by-default?
Just default to N.
Thanks.
--
tejun
--
To unsubscribe from this list: send the line
Em Mon, May 18, 2015 at 09:30:55AM +0900, Namhyung Kim escreveu:
> This makes thread mg sharing test failed due to not decrement
> thread->refcnt on thread__put().
I fixed this one already:
Em Sat, May 16, 2015 at 08:21:49AM +0200, Jiri Olsa escreveu:
> On Fri, May 15, 2015 at 04:59:31PM -0300, Arnaldo Carvalho de Melo wrote:
> > Em Fri, May 15, 2015 at 06:23:11PM +0200, Jiri Olsa escreveu:
> > > Replacing %lu format strings for Dwarf_Addr type with PRIu64 as it
> > > fits for
On Fri, 2015-05-15 at 11:15 -0400, Chris Metcalf wrote:
> On 05/14/2015 07:10 PM, Michael Ellerman wrote:
> > On Thu, 2015-04-30 at 12:01 -0400, Chris Metcalf wrote:
> >>
> >> I tested the implementation with a simple user-space harness, so I
> >> believe it is correct for the corner cases I could
When indexed data file support is enabled, a dummy tracking event will
be used to track metadata (like task, comm and mmap events) for a
session and actual samples will be recorded in separate (intermediate)
files and then merged (with index table).
Provide separate mmap to the dummy tracking
The perf_evlist__mmap_track function creates data mmaps and optionally
tracking mmaps for events. It'll be used for perf record to save events
in a separate files and build an index table. Checking dummy tracking
event in perf_evlist__mmap() alone is not enough as users can specify a
dummy event
When data file indexing is enabled, it processes all task, comm and mmap
events first and then goes to the sample events. So all it sees is the
last comm of a thread although it has information at the time of sample.
Sort thread's comm by time so that it can find appropriate comm at the
sample
The dummy tracking event is only for tracking task/comom/mmap events
and has no sample data for itself. So no need to report, just skip it.
Signed-off-by: Namhyung Kim
---
tools/perf/builtin-report.c| 3 +++
tools/perf/ui/browsers/hists.c | 30 --
Currently perf maintains dead threads in a linked list but this can be
a problem if someone needs to search from it especially in a large
session which might have many dead threads. Convert it to a rbtree
like normal threads and it'll be used later with multi-file changes.
The list node is now
With data file indexing is enabled, it needs to search thread based on
sample time since sample processing is done after other (task, comm and
mmap) events are processed. This can be a problem if a session is very
long and pid is recycled - in that case it'll only see the last one.
So keep
The evsel and sample arguments are to set iter for later use. As it
also receives an iter as another argument, just set them before
calling the function.
Signed-off-by: Namhyung Kim
---
tools/perf/builtin-report.c | 9 +
tools/perf/builtin-top.c | 7 ---
To support multi-threaded perf report, we need to maintain time-sorted
map groups. Add ->mg_list member to struct thread and sort the list
by time. Now leader threads have one more refcnt for map groups in
the list so also update the thread-mg-share test case.
Currently only add a new map
A test case for verifying thread->mg and ->mg_list handling during
time change and new thread__find_addr_map_by_time() and friends.
Cc: Frederic Weisbecker
Signed-off-by: Namhyung Kim
---
tools/perf/tests/Build| 1 +
tools/perf/tests/builtin-test.c | 4 ++
Find correct thread/map/symbol using proper functions.
Cc: Frederic Weisbecker
Signed-off-by: Namhyung Kim
---
tools/perf/util/machine.c | 25
.../util/scripting-engines/trace-event-python.c| 4 ++--
tools/perf/util/session.h
On Sun, May 17, 2015 at 12:48:11PM +0200, Boris Brezillon wrote:
>
> Yep, but then they shouldn't be declared with CRYPTO_ALG_ASYNC and as an
> ablkcipher algorithm (*Asynchronous* Block Cipher), right ?
Right. They can still use ablkcipher but should clear the ASYNC
bit.
Cheers,
--
Email:
The new test case checks various thread comm handling like overridding
and time sorting.
Cc: Frederic Weisbecker
Signed-off-by: Namhyung Kim
---
tools/perf/tests/Build | 1 +
tools/perf/tests/builtin-test.c | 4
tools/perf/tests/perf-targz-src-pkg | 21 -
It'll be used to support multiple maps on a same address like dlopen()
and/or JIT compile cases.
Cc: Stephane Eranian
Signed-off-by: Namhyung Kim
---
tools/perf/util/dso.c | 2 +-
tools/perf/util/machine.c | 28
tools/perf/util/machine.h | 2 +-
Using dso__data_fd() in multi-thread environment is not safe since
returned fd can be closed and/or reused anytime. So convert it to the
dso__data_get/put_fd() pair to protect the access with lock.
The original dso__data_fd() is deprecated and kept only for testing.
Signed-off-by: Namhyung Kim
When dso cache is accessed in multi-thread environment, it's possible
to close other dso->data.fd during operation due to open file limit.
Protect the file descriptors using a separate mutex.
Signed-off-by: Namhyung Kim
---
tools/perf/util/dso.c | 98
Currently the address_space was kept in thread struct but it's more
appropriate to keep it in map_groups as it's maintained with time.
Also we don't need to flush after exec since it still can be accessed
when used with an indexed data file.
Signed-off-by: Namhyung Kim
---
Now thread->comm can be handled with time properly, use it to find
correct comm when adding hist entries.
Cc: Frederic Weisbecker
Signed-off-by: Namhyung Kim
---
tools/perf/builtin-annotate.c | 5 +++--
tools/perf/builtin-diff.c | 8
tools/perf/tests/hists_link.c | 4 ++--
When perf creates a new child to profile, the events are enabled on
exec(). And in this case, it doesn't synthesize any event for the
child since they'll be generated during exec(). But there's an window
between the enabling and the event generation.
It used to be overcome since samples are
Pass stats structure so that it can point separate object when used in
multi-thread environment.
Signed-off-by: Namhyung Kim
---
tools/perf/util/session.c | 71 ++-
1 file changed, 45 insertions(+), 26 deletions(-)
diff --git
Introduce perf_session__process_events_mt() to enable multi-thread
sample processing. It allocates a struct perf_tool_mt and fills
needed info in it.
The session and hists event stats are counted for each thread and
summed after finishing the processing. Similarly hist entries are
added to
The index command first splits a given data file into intermediate
data files and merges them into a final data file with an index table
so that it can processed using multi threads. The HEADER_DATA_INDEX
feature bit is added to distinguish data file that has an index table.
Signed-off-by:
The util/event.h includes util/build-id.h only for BUILD_ID_SIZE.
This is a problem when I include util/event.h from util/tool.h which
is also included by util/build-id.h since it now makes a circular
dependency resulting in incomplete type error.
Signed-off-by: Namhyung Kim
---
Split ui_progress struct into global and local one. Each thread
updates local struct without lock and only updates global one if
meaningful progress is done (with lock).
To do that, pass struct ui_progress to __perf_session__process_event()
and set it for the total size of multi-file storage.
This makes thread mg sharing test failed due to not decrement
thread->refcnt on thread__put().
Not-signed-off-by: Namhyung Kim
---
tools/perf/util/thread.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/perf/util/thread.c b/tools/perf/util/thread.c
index
The current code assumes that the number of index item and cpu are
matched so it creates that number of threads. But it's not the case
of non-system-wide session or data came from different machine.
Just creates threads at most number of online cpus and process data.
Signed-off-by: Namhyung Kim
The --multi-thread option is to enable parallel processing so user can
force serial processing even for indexed data file. It default to false
for now but users also can changes this by setting "report.multi_thread"
config option in ~/.perfconfig file.
Signed-off-by: Namhyung Kim
---
With multi-thread report, separate sessions can be passed to each
thread, in this case we should keep a single machine state for all
struct sessions. Separate machines and have a pointer in sessions.
Signed-off-by: Namhyung Kim
---
tools/perf/builtin-annotate.c | 2 +-
This is a preparation for perf report multi-thread support. When
multi-thread is enable, each thread will have its own hists during the
sample processing.
Signed-off-by: Namhyung Kim
---
tools/perf/builtin-report.c | 1 +
tools/perf/builtin-top.c | 1 +
When multi-thread support for perf report is enabled, it's possible to
access a dso concurrently. Add a new pthread_mutex to protect it from
concurrent dso__load().
Signed-off-by: Namhyung Kim
---
tools/perf/util/dso.c| 2 ++
tools/perf/util/dso.h| 1 +
tools/perf/util/symbol.c | 34
Use timestamp to find a corresponding map so that it can find a match
symbol eventually.
Cc: Stephane Eranian
Signed-off-by: Namhyung Kim
---
tools/perf/util/event.c | 81 ++--
tools/perf/util/thread.c | 8 +++--
2 files changed, 77 insertions(+),
The new --index option will create indexed data file which can be
processed by multiple threads parallelly. It saves meta event and
sample data in separate files and merges them with an index table.
If there's an index table in the data file, the HEADER_DATA_INDEX
feature bit is set and
This tests new map_groups__{insert,find}_by_time() API working
correctly by using 3 * 100 maps.
Cc: Stephane Eranian
Signed-off-by: Namhyung Kim
---
tools/perf/tests/Build | 1 +
tools/perf/tests/builtin-test.c| 4 ++
tools/perf/tests/tests.h | 1 +
It'll manage maps using timestamp so that it can find correct
map/symbol for sample at a certain time. With this API, it can
maintain overlapping maps in a map_groups.
Cc: Stephane Eranian
Signed-off-by: Namhyung Kim
---
tools/perf/util/map.c | 52
A test case for verifying live and dead thread tree management during
time change and new machine__find{,new}_thread_time().
Cc: Frederic Weisbecker
Signed-off-by: Namhyung Kim
---
tools/perf/tests/Build| 1 +
tools/perf/tests/builtin-test.c | 4 +
The dso cache is accessed during dwarf callchain unwind and it might
be processed concurrently when multi-thread report is enabled.
Protect it under dso->lock.
Note that it doesn't protect dso_cache__find(). I think it's safe to
access to the cache tree without the lock since we don't delete
1 - 100 of 604 matches
Mail list logo