Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1221852 > unrolled thread
| Started by | Namhyung Kim <namhyung@kernel.org> |
|---|---|
| First post | 2015-09-10 04:30 +0200 |
| Last post | 2015-09-11 18:40 +0200 |
| Articles | 5 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [PATCH v2 1/5] perf probe: Split add_perf_probe_events() Namhyung Kim <namhyung@kernel.org> - 2015-09-10 04:30 +0200
RE: Re: [PATCH v2 1/5] perf probe: Split add_perf_probe_events() 平松雅巳 / HIRAMATU,MASAMI <masami.hiramatsu.pt@hitachi.com> - 2015-09-10 07:10 +0200
Re: Re: [PATCH v2 1/5] perf probe: Split add_perf_probe_events() Namhyung Kim <namhyung@kernel.org> - 2015-09-10 08:50 +0200
RE: Re: [PATCH v2 1/5] perf probe: Split add_perf_probe_events() 平松雅巳 / HIRAMATU,MASAMI <masami.hiramatsu.pt@hitachi.com> - 2015-09-10 10:20 +0200
Re: Re: [PATCH v2 1/5] perf probe: Split add_perf_probe_events() Namhyung Kim <namhyung@kernel.org> - 2015-09-11 18:40 +0200
| From | Namhyung Kim <namhyung@kernel.org> |
|---|---|
| Date | 2015-09-10 04:30 +0200 |
| Subject | Re: [PATCH v2 1/5] perf probe: Split add_perf_probe_events() |
| Message-ID | <q6ZMC-4XO-9@gated-at.bofh.it> |
On Sun, Sep 06, 2015 at 03:47:37PM +0800, Wangnan (F) wrote: > Hi Namhyung, Hi, > > Thanks for this patchset. > > Could you plase have a look at patch 5/27 and 6/27 in my newest pull > request? > These 2 patches utilize new probing API to create probe point and collect > probe_trace_events. I'm not very sure I fully understand your design > principle, > especially the cleanup part, because I can see different functions dealing > with > cleanup: > > cleanup_perf_probe_events > del_perf_probe_events > clear_perf_probe_event > clear_probe_trace_event > > But non of them works perfectly for me. The cleanup_perf_probe_events() is just to keep the existing logic as long as possible. But I think it needs to call clear_perf_probe_event(). The del_perf_probe_events() uses strfilter, but I think it can be problematic if other instances or users are using similar events at the same time. So for your case, IMHO it'd better keeping the perf/trace events after probing and reusing the events for unprobing. I'll take a look at it. > > In bpf_prog_priv__clear() function of 6/27, I copied some code from > cleanup_perf_probe_events(), because I think when destroying bpf programs, > the probe_trace_events should also be cleanuped, but we don't need call > exit_symbol_maps() many times, because we are in 'perf record', and not > sure whether other parts of perf need symbol maps. Otherwise I think > directly > calling cleanup_perf_probe_events() sould be better. Yeah, I also think exit_symbol_maps() should not be a part of the cleanup. I'll send a patch soon. > > You can find patch from: > > http://lkml.kernel.org/n/1441523623-152703-6-git-send-email-wangnan0@huawei.com > > http://lkml.kernel.org/n/1441523623-152703-7-git-send-email-wangnan0@huawei.com Thanks for your work! Namhyung -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | 平松雅巳 / HIRAMATU,MASAMI <masami.hiramatsu.pt@hitachi.com> |
|---|---|
| Date | 2015-09-10 07:10 +0200 |
| Message-ID | <q72hr-bR-1@gated-at.bofh.it> |
| In reply to | #1221852 |
PkZyb206IE5hbWh5dW5nIEtpbSBbbWFpbHRvOm5hbWh5dW5nQGdtYWlsLmNvbV0gT24gQmVoYWxm IE9mIE5hbWh5dW5nIEtpbQ0KPg0KPk9uIFN1biwgU2VwIDA2LCAyMDE1IGF0IDAzOjQ3OjM3UE0g KzA4MDAsIFdhbmduYW4gKEYpIHdyb3RlOg0KPj4gSGkgTmFtaHl1bmcsDQo+DQo+SGksDQo+DQo+ Pg0KPj4gVGhhbmtzIGZvciB0aGlzIHBhdGNoc2V0Lg0KPj4NCj4+IENvdWxkIHlvdSBwbGFzZSBo YXZlIGEgbG9vayBhdCBwYXRjaCA1LzI3IGFuZCA2LzI3IGluIG15IG5ld2VzdCBwdWxsDQo+PiBy ZXF1ZXN0Pw0KPj4gVGhlc2UgMiBwYXRjaGVzIHV0aWxpemUgbmV3IHByb2JpbmcgQVBJIHRvIGNy ZWF0ZSBwcm9iZSBwb2ludCBhbmQgY29sbGVjdA0KPj4gcHJvYmVfdHJhY2VfZXZlbnRzLiBJJ20g bm90IHZlcnkgc3VyZSBJIGZ1bGx5IHVuZGVyc3RhbmQgeW91ciBkZXNpZ24NCj4+IHByaW5jaXBs ZSwNCj4+IGVzcGVjaWFsbHkgdGhlIGNsZWFudXAgcGFydCwgYmVjYXVzZSBJIGNhbiBzZWUgZGlm ZmVyZW50IGZ1bmN0aW9ucyBkZWFsaW5nDQo+PiB3aXRoDQo+PiBjbGVhbnVwOg0KPj4NCj4+IGNs ZWFudXBfcGVyZl9wcm9iZV9ldmVudHMNCg0KVGhpcyBpcyBmb3IgY2xlYXJpbmcgYW4gYXJyYXkg b2YgcHJvYmUgZXZlbnRzLg0KDQo+PiBkZWxfcGVyZl9wcm9iZV9ldmVudHMNCg0KVGhpcyBpcyBu b3QgZm9yIGNsZWFudXAsIGJ1dCBmb3IgcmVtb3ZpbmcgcHJvYmVzIGluIHRoZSBrZXJuZWwuDQoN Cj4+IGNsZWFyX3BlcmZfcHJvYmVfZXZlbnQNCj4+IGNsZWFyX3Byb2JlX3RyYWNlX2V2ZW50DQoN ClRoZXNlIGFyZSB0aGUgY2xlYW51cCBlYWNoIGV2ZW50LiBBaCwgcmlnaHQsIHNpbmNlIG5vdyBw ZXJmX3Byb2JlX2V2ZW50IGhhcyBwcm9iZV90cmFjZV9ldmVudHMsDQpjbGVhcl9wZXJmX3Byb2Jl X2V2ZW50IGhhcyB0byBjYWxsIGNsZWFyX3Byb2JlX3RyYWNlX2V2ZW50Lg0KDQo+Pg0KPj4gQnV0 IG5vbiBvZiB0aGVtIHdvcmtzIHBlcmZlY3RseSBmb3IgbWUuDQo+DQo+VGhlIGNsZWFudXBfcGVy Zl9wcm9iZV9ldmVudHMoKSBpcyBqdXN0IHRvIGtlZXAgdGhlIGV4aXN0aW5nIGxvZ2ljIGFzDQo+ bG9uZyBhcyBwb3NzaWJsZS4gIEJ1dCBJIHRoaW5rIGl0IG5lZWRzIHRvIGNhbGwNCj5jbGVhcl9w ZXJmX3Byb2JlX2V2ZW50KCkuDQo+DQo+VGhlIGRlbF9wZXJmX3Byb2JlX2V2ZW50cygpIHVzZXMg c3RyZmlsdGVyLCBidXQgSSB0aGluayBpdCBjYW4gYmUNCj5wcm9ibGVtYXRpYyBpZiBvdGhlciBp bnN0YW5jZXMgb3IgdXNlcnMgYXJlIHVzaW5nIHNpbWlsYXIgZXZlbnRzIGF0DQo+dGhlIHNhbWUg dGltZS4NCg0KWWVhaCwgc2luY2UgcGVyZiBwcm9iZSBkb2Vzbid0IGxvY2sgdGhlIGZ0cmFjZSwg dGhlcmUgc2hvdWxkIGJlIGENCnRpbWluZyBidWcsIGJ1dCBpdCBjYW4gYmUgZml4ZWQgZWFzaWx5 IGJ5IGlnbm9yaW5nIC1FTk9FTlQuIDopIA0KDQo+U28gZm9yIHlvdXIgY2FzZSwgSU1ITyBpdCdk IGJldHRlciBrZWVwaW5nIHRoZSBwZXJmL3RyYWNlIGV2ZW50cyBhZnRlcg0KPnByb2JpbmcgYW5k IHJldXNpbmcgdGhlIGV2ZW50cyBmb3IgdW5wcm9iaW5nLiAgSSdsbCB0YWtlIGEgbG9vayBhdCBp dC4NCj4NCj4NCj4+DQo+PiBJbiBicGZfcHJvZ19wcml2X19jbGVhcigpIGZ1bmN0aW9uIG9mIDYv MjcsIEkgY29waWVkIHNvbWUgY29kZSBmcm9tDQo+PiBjbGVhbnVwX3BlcmZfcHJvYmVfZXZlbnRz KCksIGJlY2F1c2UgSSB0aGluayB3aGVuIGRlc3Ryb3lpbmcgYnBmIHByb2dyYW1zLA0KPj4gdGhl IHByb2JlX3RyYWNlX2V2ZW50cyBzaG91bGQgYWxzbyBiZSBjbGVhbnVwZWQsIGJ1dCB3ZSBkb24n dCBuZWVkIGNhbGwNCj4+IGV4aXRfc3ltYm9sX21hcHMoKSBtYW55IHRpbWVzLCBiZWNhdXNlIHdl IGFyZSBpbiAncGVyZiByZWNvcmQnLCBhbmQgbm90DQo+PiBzdXJlIHdoZXRoZXIgb3RoZXIgcGFy dHMgb2YgcGVyZiBuZWVkIHN5bWJvbCBtYXBzLiBPdGhlcndpc2UgSSB0aGluaw0KPj4gZGlyZWN0 bHkNCj4+IGNhbGxpbmcgY2xlYW51cF9wZXJmX3Byb2JlX2V2ZW50cygpIHNvdWxkIGJlIGJldHRl ci4NCj4NCj5ZZWFoLCBJIGFsc28gdGhpbmsgZXhpdF9zeW1ib2xfbWFwcygpIHNob3VsZCBub3Qg YmUgYSBwYXJ0IG9mIHRoZQ0KPmNsZWFudXAuICBJJ2xsIHNlbmQgYSBwYXRjaCBzb29uLg0KDQpP Sy4NCg0KDQpUaGFua3MhDQo= -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Namhyung Kim <namhyung@kernel.org> |
|---|---|
| Date | 2015-09-10 08:50 +0200 |
| Message-ID | <q73Qe-2gG-7@gated-at.bofh.it> |
| In reply to | #1221918 |
Hi Masami,
On Thu, Sep 10, 2015 at 05:00:07AM +0000, 平松雅巳 / HIRAMATU,MASAMI wrote:
> >From: Namhyung Kim [mailto:namhyung@gmail.com] On Behalf Of Namhyung Kim
> >The del_perf_probe_events() uses strfilter, but I think it can be
> >problematic if other instances or users are using similar events at
> >the same time.
>
> Yeah, since perf probe doesn't lock the ftrace, there should be a
> timing bug, but it can be fixed easily by ignoring -ENOENT. :)
By ignoring -ENOENT? Are you saying that there's a race between two
deleters? Yes, of course, but I think that the bug will hit an adder
and a deleter especially if automatic probing is used (by eBPF and/or
SDT recording).
What about this?
From 45dba35cb0f5fa1b2e78fec8c05faf5e9a1b200e Mon Sep 17 00:00:00 2001
From: Namhyung Kim <namhyung@kernel.org>
Date: Thu, 10 Sep 2015 15:25:28 +0900
Subject: [PATCH] perf probe: Support deleting trace events directly
Currently del_perf_probe_events() deletes events which match to a given
filter. But it might have a timing bug when other users also set probes
with similar names. So it'd be better deleting our events directly
rather than pattern matching.
Since the del_perf_probe_events() has no user at this time, change it to
receive perf_probe_event's. It is more consistent to other APIs as well.
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Wang Nan <wangnan0@huawei.com>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
---
tools/perf/util/probe-event.c | 30 +++++++++++-------------------
tools/perf/util/probe-event.h | 2 +-
tools/perf/util/probe-file.c | 24 ++++++++++++++++++++++++
tools/perf/util/probe-file.h | 1 +
4 files changed, 37 insertions(+), 20 deletions(-)
diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
index 2b78e8f19b45..88d7ef87ab99 100644
--- a/tools/perf/util/probe-event.c
+++ b/tools/perf/util/probe-event.c
@@ -2810,37 +2810,29 @@ int add_perf_probe_events(struct perf_probe_event *pevs, int npevs)
return ret;
}
-int del_perf_probe_events(struct strfilter *filter)
+int del_perf_probe_events(struct perf_probe_event *pevs, int npevs)
{
- int ret, ret2, ufd = -1, kfd = -1;
- char *str = strfilter__string(filter);
+ int i, j, ret, ret2;
+ int ufd = -1, kfd = -1;
- if (!str)
- return -EINVAL;
-
- /* Get current event names */
ret = probe_file__open_both(&kfd, &ufd, PF_FL_RW);
if (ret < 0)
- goto out;
+ return ret;
- ret = probe_file__del_events(kfd, filter);
- if (ret < 0 && ret != -ENOENT)
- goto error;
+ for (i = 0; i < npevs; i++) {
+ int fd = pevs[i].uprobes ? ufd : kfd;
- ret2 = probe_file__del_events(ufd, filter);
- if (ret2 < 0 && ret2 != -ENOENT) {
- ret = ret2;
- goto error;
+ for (j = 0; j < pevs[i].ntevs; j++) {
+ ret2 = probe_file__del_trace_event(fd, &pevs[i].tevs[j]);
+ if (ret == 0)
+ ret = ret2;
+ }
}
- ret = 0;
-error:
if (kfd >= 0)
close(kfd);
if (ufd >= 0)
close(ufd);
-out:
- free(str);
return ret;
}
diff --git a/tools/perf/util/probe-event.h b/tools/perf/util/probe-event.h
index ba926c30f8cd..cb58b981cc92 100644
--- a/tools/perf/util/probe-event.h
+++ b/tools/perf/util/probe-event.h
@@ -145,7 +145,7 @@ extern int add_perf_probe_events(struct perf_probe_event *pevs, int npevs);
extern int convert_perf_probe_events(struct perf_probe_event *pevs, int npevs);
extern int apply_perf_probe_events(struct perf_probe_event *pevs, int npevs);
extern void cleanup_perf_probe_events(struct perf_probe_event *pevs, int npevs);
-extern int del_perf_probe_events(struct strfilter *filter);
+extern int del_perf_probe_events(struct perf_probe_event *pevs, int npevs);
extern int show_perf_probe_event(const char *group, const char *event,
struct perf_probe_event *pev,
diff --git a/tools/perf/util/probe-file.c b/tools/perf/util/probe-file.c
index 89dbeb92c68e..334b7b75b55b 100644
--- a/tools/perf/util/probe-file.c
+++ b/tools/perf/util/probe-file.c
@@ -319,3 +319,27 @@ int probe_file__del_events(int fd, struct strfilter *filter)
return ret;
}
+
+int probe_file__del_trace_event(int fd, struct probe_trace_event *tev)
+{
+ char buf[128];
+ int ret;
+
+ /* Convert from perf-probe event to trace-probe event */
+ ret = e_snprintf(buf, 128, "-:%s/%s", tev->group, tev->event);
+ if (ret < 0)
+ goto error;
+
+ pr_debug("Writing event: %s\n", buf);
+ ret = write(fd, buf, strlen(buf));
+ if (ret < 0) {
+ ret = -errno;
+ goto error;
+ }
+
+ return 0;
+error:
+ pr_warning("Failed to delete event: %s\n",
+ strerror_r(-ret, buf, sizeof(buf)));
+ return ret;
+}
diff --git a/tools/perf/util/probe-file.h b/tools/perf/util/probe-file.h
index 18ac9cf51c34..02515ea12f1e 100644
--- a/tools/perf/util/probe-file.h
+++ b/tools/perf/util/probe-file.h
@@ -17,6 +17,7 @@ int probe_file__del_events(int fd, struct strfilter *filter);
int probe_file__get_events(int fd, struct strfilter *filter,
struct strlist *plist);
int probe_file__del_strlist(int fd, struct strlist *namelist);
+int probe_file__del_trace_event(int fd, struct probe_trace_event *tev);
#endif
--
2.5.0
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | 平松雅巳 / HIRAMATU,MASAMI <masami.hiramatsu.pt@hitachi.com> |
|---|---|
| Date | 2015-09-10 10:20 +0200 |
| Message-ID | <q75fk-4cM-7@gated-at.bofh.it> |
| In reply to | #1221956 |
SGkgTmFtaHl1bmcsDQoNCkZyb206IE5hbWh5dW5nIEtpbSBbbWFpbHRvOm5hbWh5dW5nQGdtYWls LmNvbV0gT24gQmVoYWxmIE9mIE5hbWh5dW5nIEtpbQ0KPg0KPkhpIE1hc2FtaSwNCj4NCj5PbiBU aHUsIFNlcCAxMCwgMjAxNSBhdCAwNTowMDowN0FNICswMDAwLCDlubPmnb7pm4Xlt7MgLyBISVJB TUFUVe+8jE1BU0FNSSB3cm90ZToNCj4+ID5Gcm9tOiBOYW1oeXVuZyBLaW0gW21haWx0bzpuYW1o eXVuZ0BnbWFpbC5jb21dIE9uIEJlaGFsZiBPZiBOYW1oeXVuZyBLaW0NCj4+ID5UaGUgZGVsX3Bl cmZfcHJvYmVfZXZlbnRzKCkgdXNlcyBzdHJmaWx0ZXIsIGJ1dCBJIHRoaW5rIGl0IGNhbiBiZQ0K Pj4gPnByb2JsZW1hdGljIGlmIG90aGVyIGluc3RhbmNlcyBvciB1c2VycyBhcmUgdXNpbmcgc2lt aWxhciBldmVudHMgYXQNCj4+ID50aGUgc2FtZSB0aW1lLg0KPj4NCj4+IFllYWgsIHNpbmNlIHBl cmYgcHJvYmUgZG9lc24ndCBsb2NrIHRoZSBmdHJhY2UsIHRoZXJlIHNob3VsZCBiZSBhDQo+PiB0 aW1pbmcgYnVnLCBidXQgaXQgY2FuIGJlIGZpeGVkIGVhc2lseSBieSBpZ25vcmluZyAtRU5PRU5U LiA6KQ0KPg0KPkJ5IGlnbm9yaW5nIC1FTk9FTlQ/ICBBcmUgeW91IHNheWluZyB0aGF0IHRoZXJl J3MgYSByYWNlIGJldHdlZW4gdHdvDQo+ZGVsZXRlcnM/ICBZZXMsIG9mIGNvdXJzZSwgYnV0IEkg dGhpbmsgdGhhdCB0aGUgYnVnIHdpbGwgaGl0IGFuIGFkZGVyDQo+YW5kIGEgZGVsZXRlciBlc3Bl Y2lhbGx5IGlmIGF1dG9tYXRpYyBwcm9iaW5nIGlzIHVzZWQgKGJ5IGVCUEYgYW5kL29yDQo+U0RU IHJlY29yZGluZykuDQoNClNvLCBJIGRvbid0IHRoaW5rIHdlIG5lZWQgdGhlIGF1dG9tYXRpYyBl dmVudCByZW1vdmluZy4gSW5zdGVhZCwgSSdkIGxpa2UgdG8NCnN1Z2dlc3QgdG8ga2VlcCBpdCBv biB0aGUgbGlzdC4NCg0KPldoYXQgYWJvdXQgdGhpcz8NCg0KU2luY2UgcHJvYmUgZXZlbnRzIGFy ZSBpZGVudGlmaWVkIG9ubHkgYnkgaXRzIG5hbWUsIHN0cmZpbHRlciBzdGlsbCB3b3Jrcy4NCllv dSBjYW4gcmVtb3ZlIHNwZWNpZmljIGV2ZW50IHdpdGhvdXQgYW55IHdpbGRjYXJkLg0KDQpUaGFu a3MsDQoNCg0KPkZyb20gNDVkYmEzNWNiMGY1ZmExYjJlNzhmZWM4YzA1ZmFmNWU5YTFiMjAwZSBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDENCj5Gcm9tOiBOYW1oeXVuZyBLaW0gPG5hbWh5dW5nQGtl cm5lbC5vcmc+DQo+RGF0ZTogVGh1LCAxMCBTZXAgMjAxNSAxNToyNToyOCArMDkwMA0KPlN1Ympl Y3Q6IFtQQVRDSF0gcGVyZiBwcm9iZTogU3VwcG9ydCBkZWxldGluZyB0cmFjZSBldmVudHMgZGly ZWN0bHkNCj4NCj5DdXJyZW50bHkgZGVsX3BlcmZfcHJvYmVfZXZlbnRzKCkgZGVsZXRlcyBldmVu dHMgd2hpY2ggbWF0Y2ggdG8gYSBnaXZlbg0KPmZpbHRlci4gIEJ1dCBpdCBtaWdodCBoYXZlIGEg dGltaW5nIGJ1ZyB3aGVuIG90aGVyIHVzZXJzIGFsc28gc2V0IHByb2Jlcw0KPndpdGggc2ltaWxh ciBuYW1lcy4gIFNvIGl0J2QgYmUgYmV0dGVyIGRlbGV0aW5nIG91ciBldmVudHMgZGlyZWN0bHkN Cj5yYXRoZXIgdGhhbiBwYXR0ZXJuIG1hdGNoaW5nLg0KPg0KPlNpbmNlIHRoZSBkZWxfcGVyZl9w cm9iZV9ldmVudHMoKSBoYXMgbm8gdXNlciBhdCB0aGlzIHRpbWUsIGNoYW5nZSBpdCB0bw0KPnJl Y2VpdmUgcGVyZl9wcm9iZV9ldmVudCdzLiAgSXQgaXMgbW9yZSBjb25zaXN0ZW50IHRvIG90aGVy IEFQSXMgYXMgd2VsbC4NCj4NCj5DYzogTWFzYW1pIEhpcmFtYXRzdSA8bWFzYW1pLmhpcmFtYXRz dS5wdEBoaXRhY2hpLmNvbT4NCj5DYzogV2FuZyBOYW4gPHdhbmduYW4wQGh1YXdlaS5jb20+DQo+ U2lnbmVkLW9mZi1ieTogTmFtaHl1bmcgS2ltIDxuYW1oeXVuZ0BrZXJuZWwub3JnPg0KPi0tLQ0K PiB0b29scy9wZXJmL3V0aWwvcHJvYmUtZXZlbnQuYyB8IDMwICsrKysrKysrKysrLS0tLS0tLS0t LS0tLS0tLS0tLQ0KPiB0b29scy9wZXJmL3V0aWwvcHJvYmUtZXZlbnQuaCB8ICAyICstDQo+IHRv b2xzL3BlcmYvdXRpbC9wcm9iZS1maWxlLmMgIHwgMjQgKysrKysrKysrKysrKysrKysrKysrKysr DQo+IHRvb2xzL3BlcmYvdXRpbC9wcm9iZS1maWxlLmggIHwgIDEgKw0KPiA0IGZpbGVzIGNoYW5n ZWQsIDM3IGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQ0KPg0KPmRpZmYgLS1naXQgYS90 b29scy9wZXJmL3V0aWwvcHJvYmUtZXZlbnQuYyBiL3Rvb2xzL3BlcmYvdXRpbC9wcm9iZS1ldmVu dC5jDQo+aW5kZXggMmI3OGU4ZjE5YjQ1Li44OGQ3ZWY4N2FiOTkgMTAwNjQ0DQo+LS0tIGEvdG9v bHMvcGVyZi91dGlsL3Byb2JlLWV2ZW50LmMNCj4rKysgYi90b29scy9wZXJmL3V0aWwvcHJvYmUt ZXZlbnQuYw0KPkBAIC0yODEwLDM3ICsyODEwLDI5IEBAIGludCBhZGRfcGVyZl9wcm9iZV9ldmVu dHMoc3RydWN0IHBlcmZfcHJvYmVfZXZlbnQgKnBldnMsIGludCBucGV2cykNCj4gCXJldHVybiBy ZXQ7DQo+IH0NCj4NCj4taW50IGRlbF9wZXJmX3Byb2JlX2V2ZW50cyhzdHJ1Y3Qgc3RyZmlsdGVy ICpmaWx0ZXIpDQo+K2ludCBkZWxfcGVyZl9wcm9iZV9ldmVudHMoc3RydWN0IHBlcmZfcHJvYmVf ZXZlbnQgKnBldnMsIGludCBucGV2cykNCj4gew0KPi0JaW50IHJldCwgcmV0MiwgdWZkID0gLTEs IGtmZCA9IC0xOw0KPi0JY2hhciAqc3RyID0gc3RyZmlsdGVyX19zdHJpbmcoZmlsdGVyKTsNCj4r CWludCBpLCBqLCByZXQsIHJldDI7DQo+KwlpbnQgdWZkID0gLTEsIGtmZCA9IC0xOw0KPg0KPi0J aWYgKCFzdHIpDQo+LQkJcmV0dXJuIC1FSU5WQUw7DQo+LQ0KPi0JLyogR2V0IGN1cnJlbnQgZXZl bnQgbmFtZXMgKi8NCj4gCXJldCA9IHByb2JlX2ZpbGVfX29wZW5fYm90aCgma2ZkLCAmdWZkLCBQ Rl9GTF9SVyk7DQo+IAlpZiAocmV0IDwgMCkNCj4tCQlnb3RvIG91dDsNCj4rCQlyZXR1cm4gcmV0 Ow0KPg0KPi0JcmV0ID0gcHJvYmVfZmlsZV9fZGVsX2V2ZW50cyhrZmQsIGZpbHRlcik7DQo+LQlp ZiAocmV0IDwgMCAmJiByZXQgIT0gLUVOT0VOVCkNCj4tCQlnb3RvIGVycm9yOw0KPisJZm9yIChp ID0gMDsgaSA8IG5wZXZzOyBpKyspIHsNCj4rCQlpbnQgZmQgPSBwZXZzW2ldLnVwcm9iZXMgPyB1 ZmQgOiBrZmQ7DQo+DQo+LQlyZXQyID0gcHJvYmVfZmlsZV9fZGVsX2V2ZW50cyh1ZmQsIGZpbHRl cik7DQo+LQlpZiAocmV0MiA8IDAgJiYgcmV0MiAhPSAtRU5PRU5UKSB7DQo+LQkJcmV0ID0gcmV0 MjsNCj4tCQlnb3RvIGVycm9yOw0KPisJCWZvciAoaiA9IDA7IGogPCBwZXZzW2ldLm50ZXZzOyBq KyspIHsNCj4rCQkJcmV0MiA9IHByb2JlX2ZpbGVfX2RlbF90cmFjZV9ldmVudChmZCwgJnBldnNb aV0udGV2c1tqXSk7DQo+KwkJCWlmIChyZXQgPT0gMCkNCj4rCQkJCXJldCA9IHJldDI7DQo+KwkJ fQ0KPiAJfQ0KPi0JcmV0ID0gMDsNCj4NCj4tZXJyb3I6DQo+IAlpZiAoa2ZkID49IDApDQo+IAkJ Y2xvc2Uoa2ZkKTsNCj4gCWlmICh1ZmQgPj0gMCkNCj4gCQljbG9zZSh1ZmQpOw0KPi1vdXQ6DQo+ LQlmcmVlKHN0cik7DQo+DQo+IAlyZXR1cm4gcmV0Ow0KPiB9DQo+ZGlmZiAtLWdpdCBhL3Rvb2xz L3BlcmYvdXRpbC9wcm9iZS1ldmVudC5oIGIvdG9vbHMvcGVyZi91dGlsL3Byb2JlLWV2ZW50LmgN Cj5pbmRleCBiYTkyNmMzMGY4Y2QuLmNiNThiOTgxY2M5MiAxMDA2NDQNCj4tLS0gYS90b29scy9w ZXJmL3V0aWwvcHJvYmUtZXZlbnQuaA0KPisrKyBiL3Rvb2xzL3BlcmYvdXRpbC9wcm9iZS1ldmVu dC5oDQo+QEAgLTE0NSw3ICsxNDUsNyBAQCBleHRlcm4gaW50IGFkZF9wZXJmX3Byb2JlX2V2ZW50 cyhzdHJ1Y3QgcGVyZl9wcm9iZV9ldmVudCAqcGV2cywgaW50IG5wZXZzKTsNCj4gZXh0ZXJuIGlu dCBjb252ZXJ0X3BlcmZfcHJvYmVfZXZlbnRzKHN0cnVjdCBwZXJmX3Byb2JlX2V2ZW50ICpwZXZz LCBpbnQgbnBldnMpOw0KPiBleHRlcm4gaW50IGFwcGx5X3BlcmZfcHJvYmVfZXZlbnRzKHN0cnVj dCBwZXJmX3Byb2JlX2V2ZW50ICpwZXZzLCBpbnQgbnBldnMpOw0KPiBleHRlcm4gdm9pZCBjbGVh bnVwX3BlcmZfcHJvYmVfZXZlbnRzKHN0cnVjdCBwZXJmX3Byb2JlX2V2ZW50ICpwZXZzLCBpbnQg bnBldnMpOw0KPi1leHRlcm4gaW50IGRlbF9wZXJmX3Byb2JlX2V2ZW50cyhzdHJ1Y3Qgc3RyZmls dGVyICpmaWx0ZXIpOw0KPitleHRlcm4gaW50IGRlbF9wZXJmX3Byb2JlX2V2ZW50cyhzdHJ1Y3Qg cGVyZl9wcm9iZV9ldmVudCAqcGV2cywgaW50IG5wZXZzKTsNCj4NCj4gZXh0ZXJuIGludCBzaG93 X3BlcmZfcHJvYmVfZXZlbnQoY29uc3QgY2hhciAqZ3JvdXAsIGNvbnN0IGNoYXIgKmV2ZW50LA0K PiAJCQkJIHN0cnVjdCBwZXJmX3Byb2JlX2V2ZW50ICpwZXYsDQo+ZGlmZiAtLWdpdCBhL3Rvb2xz L3BlcmYvdXRpbC9wcm9iZS1maWxlLmMgYi90b29scy9wZXJmL3V0aWwvcHJvYmUtZmlsZS5jDQo+ aW5kZXggODlkYmViOTJjNjhlLi4zMzRiN2I3NWI1NWIgMTAwNjQ0DQo+LS0tIGEvdG9vbHMvcGVy Zi91dGlsL3Byb2JlLWZpbGUuYw0KPisrKyBiL3Rvb2xzL3BlcmYvdXRpbC9wcm9iZS1maWxlLmMN Cj5AQCAtMzE5LDMgKzMxOSwyNyBAQCBpbnQgcHJvYmVfZmlsZV9fZGVsX2V2ZW50cyhpbnQgZmQs IHN0cnVjdCBzdHJmaWx0ZXIgKmZpbHRlcikNCj4NCj4gCXJldHVybiByZXQ7DQo+IH0NCj4rDQo+ K2ludCBwcm9iZV9maWxlX19kZWxfdHJhY2VfZXZlbnQoaW50IGZkLCBzdHJ1Y3QgcHJvYmVfdHJh Y2VfZXZlbnQgKnRldikNCj4rew0KPisJY2hhciBidWZbMTI4XTsNCj4rCWludCByZXQ7DQo+Kw0K PisJLyogQ29udmVydCBmcm9tIHBlcmYtcHJvYmUgZXZlbnQgdG8gdHJhY2UtcHJvYmUgZXZlbnQg Ki8NCj4rCXJldCA9IGVfc25wcmludGYoYnVmLCAxMjgsICItOiVzLyVzIiwgdGV2LT5ncm91cCwg dGV2LT5ldmVudCk7DQo+KwlpZiAocmV0IDwgMCkNCj4rCQlnb3RvIGVycm9yOw0KPisNCj4rCXBy X2RlYnVnKCJXcml0aW5nIGV2ZW50OiAlc1xuIiwgYnVmKTsNCj4rCXJldCA9IHdyaXRlKGZkLCBi dWYsIHN0cmxlbihidWYpKTsNCj4rCWlmIChyZXQgPCAwKSB7DQo+KwkJcmV0ID0gLWVycm5vOw0K PisJCWdvdG8gZXJyb3I7DQo+Kwl9DQo+Kw0KPisJcmV0dXJuIDA7DQo+K2Vycm9yOg0KPisJcHJf d2FybmluZygiRmFpbGVkIHRvIGRlbGV0ZSBldmVudDogJXNcbiIsDQo+KwkJICAgc3RyZXJyb3Jf cigtcmV0LCBidWYsIHNpemVvZihidWYpKSk7DQo+KwlyZXR1cm4gcmV0Ow0KPit9DQo+ZGlmZiAt LWdpdCBhL3Rvb2xzL3BlcmYvdXRpbC9wcm9iZS1maWxlLmggYi90b29scy9wZXJmL3V0aWwvcHJv YmUtZmlsZS5oDQo+aW5kZXggMThhYzljZjUxYzM0Li4wMjUxNWVhMTJmMWUgMTAwNjQ0DQo+LS0t IGEvdG9vbHMvcGVyZi91dGlsL3Byb2JlLWZpbGUuaA0KPisrKyBiL3Rvb2xzL3BlcmYvdXRpbC9w cm9iZS1maWxlLmgNCj5AQCAtMTcsNiArMTcsNyBAQCBpbnQgcHJvYmVfZmlsZV9fZGVsX2V2ZW50 cyhpbnQgZmQsIHN0cnVjdCBzdHJmaWx0ZXIgKmZpbHRlcik7DQo+IGludCBwcm9iZV9maWxlX19n ZXRfZXZlbnRzKGludCBmZCwgc3RydWN0IHN0cmZpbHRlciAqZmlsdGVyLA0KPiAJCQkJICBzdHJ1 Y3Qgc3RybGlzdCAqcGxpc3QpOw0KPiBpbnQgcHJvYmVfZmlsZV9fZGVsX3N0cmxpc3QoaW50IGZk LCBzdHJ1Y3Qgc3RybGlzdCAqbmFtZWxpc3QpOw0KPitpbnQgcHJvYmVfZmlsZV9fZGVsX3RyYWNl X2V2ZW50KGludCBmZCwgc3RydWN0IHByb2JlX3RyYWNlX2V2ZW50ICp0ZXYpOw0KPg0KPg0KPiAj ZW5kaWYNCj4tLQ0KPjIuNS4wDQoNCg== -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Namhyung Kim <namhyung@kernel.org> |
|---|---|
| Date | 2015-09-11 18:40 +0200 |
| Message-ID | <q7zwJ-78E-5@gated-at.bofh.it> |
| In reply to | #1221996 |
On Thu, Sep 10, 2015 at 08:10:16AM +0000, 平松雅巳 / HIRAMATU,MASAMI wrote: > Hi Namhyung, > > From: Namhyung Kim [mailto:namhyung@gmail.com] On Behalf Of Namhyung Kim > > > >Hi Masami, > > > >On Thu, Sep 10, 2015 at 05:00:07AM +0000, 平松雅巳 / HIRAMATU,MASAMI wrote: > >> >From: Namhyung Kim [mailto:namhyung@gmail.com] On Behalf Of Namhyung Kim > >> >The del_perf_probe_events() uses strfilter, but I think it can be > >> >problematic if other instances or users are using similar events at > >> >the same time. > >> > >> Yeah, since perf probe doesn't lock the ftrace, there should be a > >> timing bug, but it can be fixed easily by ignoring -ENOENT. :) > > > >By ignoring -ENOENT? Are you saying that there's a race between two > >deleters? Yes, of course, but I think that the bug will hit an adder > >and a deleter especially if automatic probing is used (by eBPF and/or > >SDT recording). > > So, I don't think we need the automatic event removing. Instead, I'd like to > suggest to keep it on the list. But why? Do you want reuse the probes for next record session? I think if something is generated automatically, it should be removed automatically.. Thanks, Namhyung -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web