Commit graph

790 commits

Author SHA1 Message Date
lintao
e34cedacb9 trace: mmc: add event class for cmd and resp 2014-08-25 10:48:17 +08:00
黄涛
fcef60e36f LSK v3.10 Android 14.07 release
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJT2ljqAAoJELSic+t+oim9DKAP+wYv7CYRRQzgQaqpTa2uBJi1
 xjEbS3qz/yWl+xw+Svd9JUGcm4SQg1rvYBd3uEHuqAxqrwaM5BbCHozCiM5ZWRJV
 Q0bR7Ha6RcVXAmNmrs2NaUC7zxIcS1LiBN9FxLPlsv44pxBxgIzQI4ZjN2SMEx5u
 COz3uW+xeVJHMRQ+BYwB/L+NNkgVZdFb71EUrxDiXJr1GWBuhOQ2aYGMRw55QXt5
 WoXUtAWGAQYWfUF6hBvpxEzB060ikOyBGxIdDQkeJdkNK3lD/Ql7M/FMii+H9njt
 FCGtIfV7j/aSzGDY2bW2yGart8N5AvP4T7rAU46+x2Cc9IwTigS8pYltdPv/YrF7
 VYEG4MR2JcYlXl1pCdRHikAOID2tCZS81mhdBFgvXCqSy4OanBOajmu8BGGORFD2
 RFUxALE0Cd+ZQ2JrGhLX+jvUC23FJNoHkcFGn0iE5nv5UJbC9XM7Do1XOe6EDb1r
 waOzjJD06OSAq8kDjExhjzDBhWuDWLdwo6/djsduo0FhI7XmmUs+ebeUne6OTuq5
 duUMXBt48Y4UMbI9v9aSRJVA4OBLfmIlu8ZU8N13BqoN3O4BcWkziUepngc0B+AI
 0ukzozgUjdmuvfmAKsA5OGwpJROtOx2NshsgSDVeFSaOWuqdM3dEE89paruT1qFX
 5NVLVS2Ptn1HuBwHDnW3
 =uFcV
 -----END PGP SIGNATURE-----

Merge tag 'lsk-v3.10-android-14.07' into develop-3.10

LSK v3.10 Android 14.07 release

Conflicts:
	drivers/clocksource/arm_arch_timer.c
	lib/Makefile
2014-08-06 15:34:14 +08:00
Alex Shi
c30d344580 Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2014-07-07 10:48:56 +08:00
Alex Shi
49bcf50125 Merge tag 'v3.10.47' into linux-linaro-lsk
This is the 3.10.47 stable release
2014-07-07 10:47:18 +08:00
Oleg Nesterov
e6bc60b8fb tracing: Fix syscall_*regfunc() vs copy_process() race
commit 4af4206be2 upstream.

syscall_regfunc() and syscall_unregfunc() should set/clear
TIF_SYSCALL_TRACEPOINT system-wide, but do_each_thread() can race
with copy_process() and miss the new child which was not added to
the process/thread lists yet.

Change copy_process() to update the child's TIF_SYSCALL_TRACEPOINT
under tasklist.

Link: http://lkml.kernel.org/p/20140413185854.GB20668@redhat.com

Fixes: a871bd33a6 "tracing: Add syscall tracepoints"
Acked-by: Frederic Weisbecker <fweisbec@gmail.com>
Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-07-06 18:54:16 -07:00
Alex Shi
69284a3b89 Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2014-06-09 12:57:26 +08:00
Alex Shi
3b8d7f4db3 Merge tag v3.10.42 into linux-linaro-lsk
This is the 3.10.42 stable release
2014-06-09 12:55:42 +08:00
Romain Izard
f6de6225ca trace: module: Maintain a valid user count
commit 098507ae3e upstream.

The replacement of the 'count' variable by two variables 'incs' and
'decs' to resolve some race conditions during module unloading was done
in parallel with some cleanup in the trace subsystem, and was integrated
as a merge.

Unfortunately, the formula for this replacement was wrong in the tracing
code, and the refcount in the traces was not usable as a result.

Use 'count = incs - decs' to compute the user count.

Link: http://lkml.kernel.org/p/1393924179-9147-1-git-send-email-romain.izard.pro@gmail.com

Acked-by: Ingo Molnar <mingo@kernel.org>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Fixes: c1ab9cab75 "merge conflict resolution"
Signed-off-by: Romain Izard <romain.izard.pro@gmail.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-06-07 13:25:35 -07:00
Mark Brown
7ce4ecc86d Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2014-06-01 17:31:46 +01:00
Mark Brown
8a98322c1c This is the 3.10.41 stable release
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJTijBdAAoJEDjbvchgkmk+rT0QAJ+x9EhsW2aVOTdQNxqtFjFn
 X8deKCT6iG8e576abl3ZcEgXW9EgQCf0GZl8tDDItzgjwPSaHYHdQz7xbfuIV2Gs
 54s0sZBN8w8z56BQfOeXhr4YWRackvHvG7tj0LSgwn/A6KreUcCtieeatE6qi7Cj
 U36yY5bKWScmrCTbzxa7KWYGypXuhHHUy9L/kWAkWsdXAUt1gJOf31a2gv6el99Q
 KihEbN9JIGxmoxeXjvexlxdM+VWkv6qsORsgQMJT+924vW7Vf6vxh88oDTLdGcRm
 f+tiCZ3IZH9C1vUsGFfVg/K+3lf5gqBOn6YLhALny/XmxSwdhLeA7e2KGFpVqtiM
 h/k7ShRVDIcfQ0RoEnhcR/wePiHReFuftJJCaWn/JPsJ4cSLSxhnCE4bVZgYBSMp
 536+Cm1wUFMCYyqBj5DQRkvbxFslFuzZ2PlId6f6GdjcvsClgoKex9W8cli5kCaO
 +bEoMHh9/2WLl7LU5U7b1sv+GMnRmgnYCf/wLqXRjHHY9biuNT0zORk+le81dv77
 /VkFGHPb/6p9WvM8DYRrRARjt1u3thAY6h+dud8t0v45FRUfQlG9WKPZXpQLWrv6
 Y3BrH5eircxQS7wTsgIlZL0+J+0LPxFT2CmuG77V2j+dEzrXcF3ozVY63diJUKaT
 +Z6DL8QCCACho54Sqbg+
 =zEjO
 -----END PGP SIGNATURE-----

Merge tag 'v3.10.41' into linux-linaro-lsk

This is the 3.10.41 stable release
2014-06-01 17:31:39 +01:00
Roman Pen
e9d9339415 blktrace: fix accounting of partially completed requests
commit af5040da01 upstream.

trace_block_rq_complete does not take into account that request can
be partially completed, so we can get the following incorrect output
of blkparser:

  C   R 232 + 240 [0]
  C   R 240 + 232 [0]
  C   R 248 + 224 [0]
  C   R 256 + 216 [0]

but should be:

  C   R 232 + 8 [0]
  C   R 240 + 8 [0]
  C   R 248 + 8 [0]
  C   R 256 + 8 [0]

Also, the whole output summary statistics of completed requests and
final throughput will be incorrect.

This patch takes into account real completion size of the request and
fixes wrong completion accounting.

Signed-off-by: Roman Pen <r.peniaev@gmail.com>
CC: Steven Rostedt <rostedt@goodmis.org>
CC: Frederic Weisbecker <fweisbec@gmail.com>
CC: Ingo Molnar <mingo@redhat.com>
CC: linux-kernel@vger.kernel.org
Signed-off-by: Jens Axboe <axboe@fb.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-05-30 21:52:11 -07:00
黄涛
7fe47454f2 lsk-android 14.04
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJTWERtAAoJELSic+t+oim9JWYP/0QCExvsT5PIzWueVqblD8Kz
 QlJ/fnFd5xHlVUtF7EJJHlJP6psANlF3ol7UJSofS+V7DFKKU460c5qEqC6XpuXD
 9JdAByrHBfxhOolg0BCSTqSEM7KoZE6LDuEN+ZcDvR5mplHOfTPdtQIjNt2ZQ1A4
 IToz1gAc8yZLzsBSBY7lijLZ3cZAXG3EFwi6imHgdBn2YfK2W/A4qjVTOSdV/ntq
 ISSHDN30EI0dcJJP74pzP5c7S5M9liMDVaEwvzs9+8jYO7TkMqsUz37d2d1u91av
 HyXKMjp07dO4Ym0/iaONv44c3tmVfHrnJDTLZHU2V142KPgpmoplbvouqb9i6DmM
 Euv20a5f8IridDPsIYk1nfmMOP42DVeND2YGgdUFOvSMThE2S5dfhOSgxHeHqXms
 LKXC9ocYYugzDi8rwSCr85K/3rTueR9GUL5730W5ObEq/A8MladQSxtqybroE3uP
 VctJOlrLU2mxfzYU99pybU9CmUz5aZRQP0IUVUgRwK+NxpLhYevhbc22oOR8F/Fu
 qJ9sqNDohHWKH8MCN1NVfsad1CmefQbl5STffQuu1GpRx7elV+/Ri39P6J/0m1UI
 rNbTpGxhHD+0nEMCuxqMS/sknV/vIz4ht9WCAUTcLyUIaFiuihzWnaVo2n3//nDp
 hwg7gOS0O3m0VWxhSh9U
 =+kRa
 -----END PGP SIGNATURE-----

Merge tag 'lsk-android-14.04' into develop-3.10

lsk-android 14.04

Conflicts:
	Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
	drivers/pinctrl/pinconf-generic.c
	include/linux/pinctrl/consumer.h
	include/linux/pinctrl/pinconf-generic.h
2014-04-24 19:04:10 +08:00
Mark Brown
0f15ea2dcd Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2014-03-31 23:51:39 +01:00
Mark Brown
f3124ba519 This is the 3.10.35 stable release
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJTOZ7GAAoJEDjbvchgkmk+T/cP/1UIGibHKG2ckegPwKyUAnas
 XTmsI7MV7qOmhu75OBJmqtU/0ezjyyZQJsabC2Ss+rqL4tz6NmJYe8U1DGNMBxuS
 t7BPQhipVdUgUpp30gH/iZgIJeVZJaLmkCqupInWow3Z370n8OK+ym8qvyMoYdzr
 cH+1X8XfrYvQGN/z5juxY69a/0ZAdqSUZnJtmM+55YfjoJLSkXCCsAgZAMv02P0F
 gDIX0c68X2ILm05KWeBfnFk1czILzeYu2miy713zTpTYc4qIUHxiRg+Bmhfzp8MA
 jboxxrkPGZRe0mWKeLkiRJGb2ewmt7UO3TQLyCN+ivCLOgrfL/C/OTC+59zw8/Kw
 bcqUiiXgYD1jJhcdVZwJU2YoH9DGFP4UtOmTHAvn4/fOsZA9UdiwHqqPkRyScRs6
 mFaMyyX9ittBygE7aEudpcba53KVwrAKNU0Bn+HVj/CgPdyqOF8t/7diBr5y783E
 DyAiJGQR0cfA8jCpCejUNsL1xFRQ5XAnF/Ohh7x1KEX2ruPi+jQC0JnujuMsKBeQ
 B/xYUdUQLHxwQBmGWvj8jni++s+jNIzR2s20C+MezTxE0w6tfG1Wi17bOkWDhp3u
 UAfMpK2si24oZQOekF8DuRbote3vaK1DE8vFAm0l63LFX5N2O3czRq7qlzjU1eml
 QQUK+SEnQCNPoYFB2aha
 =9/Hm
 -----END PGP SIGNATURE-----

Merge tag 'v3.10.35' into linux-linaro-lsk

This is the 3.10.35 stable release
2014-03-31 23:51:22 +01:00
Vaibhav Nagarnaik
a1c10a94ff tracing: Fix array size mismatch in format string
commit 87291347c4 upstream.

In event format strings, the array size is reported in two locations.
One in array subscript and then via the "size:" attribute. The values
reported there have a mismatch.

For e.g., in sched:sched_switch the prev_comm and next_comm character
arrays have subscript values as [32] where as the actual field size is
16.

name: sched_switch
ID: 301
format:
        field:unsigned short common_type;       offset:0;       size:2; signed:0;
        field:unsigned char common_flags;       offset:2;       size:1; signed:0;
        field:unsigned char common_preempt_count;       offset:3;       size:1;signed:0;
        field:int common_pid;   offset:4;       size:4; signed:1;

        field:char prev_comm[32];       offset:8;       size:16;        signed:1;
        field:pid_t prev_pid;   offset:24;      size:4; signed:1;
        field:int prev_prio;    offset:28;      size:4; signed:1;
        field:long prev_state;  offset:32;      size:8; signed:1;
        field:char next_comm[32];       offset:40;      size:16;        signed:1;
        field:pid_t next_pid;   offset:56;      size:4; signed:1;
        field:int next_prio;    offset:60;      size:4; signed:1;

After bisection, the following commit was blamed:
92edca0 tracing: Use direct field, type and system names

This commit removes the duplication of strings for field->name and
field->type assuming that all the strings passed in
__trace_define_field() are immutable. This is not true for arrays, where
the type string is created in event_storage variable and field->type for
all array fields points to event_storage.

Use __stringify() to create a string constant for the type string.

Also, get rid of event_storage and event_storage_mutex that are not
needed anymore.

also, an added benefit is that this reduces the overhead of events a bit more:

   text    data     bss     dec     hex filename
8424787 2036472 1302528 11763787         b3804b vmlinux
8420814 2036408 1302528 11759750         b37086 vmlinux.patched

Link: http://lkml.kernel.org/r/1392349908-29685-1-git-send-email-vnagarnaik@google.com

Cc: Laurent Chavey <chavey@google.com>
Signed-off-by: Vaibhav Nagarnaik <vnagarnaik@google.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-03-31 09:58:12 -07:00
黄涛
aea1f7c03c This is the 3.10.23 stable release
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJSpJuZAAoJEDjbvchgkmk+KiwP+wZnIj008NyuvxqjZqq5AYud
 xbWQDG8DGO8Kjm8uYu0n5D5u/xywHpT2Dz9qtQ3TjNtr9Qur8yWiWtwph/IruL0M
 mVv3c/Zm1RV84PnEY5mZdELlA7PayGnlsmyfKxvOLpfCTlTFar1tw6zOeAyA+J6M
 7z479WHu06jHyxqjGAhV3e2UcLM9AGjTkUDvtS8U0FFVWMystdMBNajjBDjGvNok
 nmu86O5p+3fcQTr1XlAJSB+xt0Dv8k8nwi8T+HDDPlmIdHpBQ9jvOWO+DTUgekIE
 YgaI6pdLkINkwMv1ZK2pQspkGBfIp+A+dWhjPFVbJWw3Ah7P/M5byxL3Yo0rOFfS
 ZcyFvC0umEgnlShY2vPLQNjoG/xTYjO/eMq9l3OKJPxwdC7H7Qz30ic62EEKXeeP
 cPXU0O6+xfC2UbbDmNNpoc/NED1ysIC4xgG4VRxS/jj5DgRx7s/y6Ar+l7ccLWzR
 Uze+Zwj520Yeatq/+Oc/qNq9ZL1pk5PE39desotQouCcXgj/FwuWhTkhAoOjLI85
 +eHKfp3TZ32izc30UqTqkHKIaNtVBR2fi2UPVD35036j0X8/nEWR70sZdnijVX38
 1D+Ewu7LnhujUzB6V2SyprMIcgCdTOWiigI9Z5SBLdbuyLYEUs/1g41h7si5WT3o
 YdFZqLjdrG4qEEFgsxr1
 =aJHz
 -----END PGP SIGNATURE-----

Merge tag 'v3.10.23' into develop-3.10

This is the 3.10.23 stable release

Conflicts:
	drivers/input/evdev.c
2013-12-10 12:23:21 +08:00
黄涛
7362dbfb8c Merge remote-tracking branch 'origin/upstream/linux-linaro-lsk-v3.10-android+android-common-3.10' into develop-3.10 2013-12-10 12:14:30 +08:00
Mark Brown
a8eb5f1e4b Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android
Conflicts (add/add):
	drivers/input/evdev.c
2013-12-05 10:16:50 +00:00
Mark Brown
dffe2a3eed This is the 3.10.22 stable release
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.22 (GNU/Linux)
 
 iQIcBAABAgAGBQJSn3yKAAoJEDjbvchgkmk+6+4QAJCzOlF08RObk8BVowyl2wIO
 tq40xxwdaoXbZVfrViGWuIRdsuCFbFvr/h6A7e8bkFn7QXBnliRZ/U0YUj4DnN64
 NWSRglL7SYpPqXOrNof4RkoDvvhBHMgqwAc70Xl+tfQjnJFPmoA21pILDGJLsQVU
 yjos/Z6cyTWC4i2ESL6+OIHfbKJI8VYx5zMEx86FerCb6GD48qRLalQbVxRQtGdJ
 BVW4/x7wW4dD+GzuqP6vu/Y//lkOgZfOLWgd/D5TEgODuZQjbderWvCOamz3eufr
 I9uvX1DLqOagkeVpxoXJAT29b0M3Y/xUuE2SejkxPyXKTQmaujmJL50hnK8JG94F
 TTQ8IHzDCrietbxVDMA41dcCsc4DnO4bkUiFkOcBBXLKPrQ9+1gx8IFvOFsUodwK
 mMuDEcjm2VqxR6ndoCLknGDzun2dQfUoW0DndPDtRq7WTWZHAgL9Y2bq5JtxKuwO
 4CkLJo45uXKmaR8WosNs/Ribtp9cYRsUSgLu0b7e92Ja7rHq3Q30CnwWkm2hVn9t
 AMSa2AlL0PBok07tHrUeVF5BG+3n1DNAvcxZCy27MvuiIv4oERMBK5w+ESTgi8Sq
 Je9fjhB42UZVRl9HPnQB+JKUsj8IAKP0JBPhRcrm4NMZY1+vAb5mThBxn132gS8a
 ib3xDiX/iQOy1ueE0gip
 =ulxm
 -----END PGP SIGNATURE-----

Merge tag 'v3.10.22' into linux-linaro-lsk

This is the 3.10.22 stable release
2013-12-05 10:15:16 +00:00
Steven Rostedt (Red Hat)
1bfdf02fc0 tracing: Allow events to have NULL strings
commit 4e58e54754 upstream.

If an TRACE_EVENT() uses __assign_str() or __get_str on a NULL pointer
then the following oops will happen:

BUG: unable to handle kernel NULL pointer dereference at   (null)
IP: [<c127a17b>] strlen+0x10/0x1a
*pde = 00000000 ^M
Oops: 0000 [#1] PREEMPT SMP
Modules linked in:
CPU: 1 PID: 0 Comm: swapper/1 Not tainted 3.13.0-rc1-test+ #2
Hardware name:                  /DG965MQ, BIOS MQ96510J.86A.0372.2006.0605.1717 06/05/2006^M
task: f5cde9f0 ti: f5e5e000 task.ti: f5e5e000
EIP: 0060:[<c127a17b>] EFLAGS: 00210046 CPU: 1
EIP is at strlen+0x10/0x1a
EAX: 00000000 EBX: c2472da8 ECX: ffffffff EDX: c2472da8
ESI: c1c5e5fc EDI: 00000000 EBP: f5e5fe84 ESP: f5e5fe80
 DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
CR0: 8005003b CR2: 00000000 CR3: 01f32000 CR4: 000007d0
Stack:
 f5f18b90 f5e5feb8 c10687a8 0759004f 00000005 00000005 00000005 00200046
 00000002 00000000 c1082a93 f56c7e28 c2472da8 c1082a93 f5e5fee4 c106bc61^M
 00000000 c1082a93 00000000 00000000 00000001 00200046 00200082 00000000
Call Trace:
 [<c10687a8>] ftrace_raw_event_lock+0x39/0xc0
 [<c1082a93>] ? ktime_get+0x29/0x69
 [<c1082a93>] ? ktime_get+0x29/0x69
 [<c106bc61>] lock_release+0x57/0x1a5
 [<c1082a93>] ? ktime_get+0x29/0x69
 [<c10824dd>] read_seqcount_begin.constprop.7+0x4d/0x75
 [<c1082a93>] ? ktime_get+0x29/0x69^M
 [<c1082a93>] ktime_get+0x29/0x69
 [<c108a46a>] __tick_nohz_idle_enter+0x1e/0x426
 [<c10690e8>] ? lock_release_holdtime.part.19+0x48/0x4d
 [<c10bc184>] ? time_hardirqs_off+0xe/0x28
 [<c1068c82>] ? trace_hardirqs_off_caller+0x3f/0xaf
 [<c108a8cb>] tick_nohz_idle_enter+0x59/0x62
 [<c1079242>] cpu_startup_entry+0x64/0x192
 [<c102299c>] start_secondary+0x277/0x27c
Code: 90 89 c6 89 d0 88 c4 ac 38 e0 74 09 84 c0 75 f7 be 01 00 00 00 89 f0 48 5e 5d c3 55 89 e5 57 66 66 66 66 90 83 c9 ff 89 c7 31 c0 <f2> ae f7 d1 8d 41 ff 5f 5d c3 55 89 e5 57 66 66 66 66 90 31 ff
EIP: [<c127a17b>] strlen+0x10/0x1a SS:ESP 0068:f5e5fe80
CR2: 0000000000000000
---[ end trace 01bc47bf519ec1b2 ]---

New tracepoints have been added that have allowed for NULL pointers
being assigned to strings. To fix this, change the TRACE_EVENT() code
to check for NULL and if it is, it will assign "(null)" to it instead
(similar to what glibc printf does).

Reported-by: Shuah Khan <shuah.kh@samsung.com>
Reported-by: Jovi Zhangwei <jovi.zhangwei@gmail.com>
Link: http://lkml.kernel.org/r/CAGdX0WFeEuy+DtpsJzyzn0343qEEjLX97+o1VREFkUEhndC+5Q@mail.gmail.com
Link: http://lkml.kernel.org/r/528D6972.9010702@samsung.com
Fixes: 9cbf117662 ("tracing/events: provide string with undefined size support")
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-12-04 10:57:17 -08:00
Mark Brown
6144a4a2cb Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2013-11-21 11:59:17 +00:00
Mark Brown
bcd63b1df3 Merge remote-tracking branch 'lsk/v3.10/topic/big.LITTLE' into linux-linaro-lsk 2013-11-21 11:59:02 +00:00
Mathieu Poirier
2a68d1e912 HMP: Avoid using the cpu stopper to stop runnable tasks
When migrating a runnable task, we use the CPU stopper on
the source CPU to ensure that the task to be moved is not
currently running. Before this patch, all forced migrations
(up, offload, idle pull) use the stopper for every migration.

Using the CPU stopper is mandatory only when a task is currently
running on a CPU.  Otherwise tasks can be moved by locking the
source and destination run queues.

This patch checks to see if the task to be moved are currently
running.  If not the task is moved directly without using the
stopper thread.

Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Jon Medhurst <tixy@linaro.org>
2013-11-21 11:26:08 +00:00
黄涛
107d3e5358 Merge remote-tracking branch 'origin/upstream/linux-linaro-lsk-v3.10-android+android-common-3.10' into develop-3.10 2013-11-11 14:38:40 +08:00
黄涛
ef88c53f60 rk: revert 20f3d0b+v3.0.66 to v3.0 2013-11-08 21:34:05 +08:00
Mark Brown
b9e7900a8a smp: Don't use typedef to work around compiler issue with tracepoints
Having the typedef in place for the tracepoints causes compiler crashes
in some situations.  Just using void * directly avoids triggering the
issue and should have no effect on the trace.

Signed-off-by: Mark Brown <broonie@linaro.org>
Acked-by: Liviu Dudau <Liviu.Dudau@arm.com>
2013-10-30 09:56:11 -07:00
Mark Brown
31d264741e Merge remote-tracking branch 'lsk/v3.10/topic/big.LITTLE' into linux-linaro-lsk 2013-10-14 17:13:46 +01:00
Mark Brown
17452691b9 Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2013-10-14 14:12:31 +01:00
Mark Brown
6adb80d9ec smp: Don't use typedef to work around compiler issue with tracepoints
Having the typedef in place for the tracepoints causes compiler crashes
in some situations.  Just using void * directly avoids triggering the
issue and should have no effect on the trace.

Signed-off-by: Mark Brown <broonie@linaro.org>
Acked-by: Liviu Dudau <Liviu.Dudau@arm.com>
2013-10-14 14:04:39 +01:00
Mark Brown
87043a1a4f smp: Don't use typedef to work around compiler issue with tracepoints
Having the typedef in place for the tracepoints causes compiler crashes
in some situations.  Just using void * directly avoids triggering the
issue and should have no effect on the trace.

Signed-off-by: Mark Brown <broonie@linaro.org>
2013-10-14 12:38:19 +01:00
Mark Brown
6ea1971e5c Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2013-10-11 19:26:58 +01:00
Mark Brown
fa4b900fca Merge remote-tracking branch 'lsk/v3.10/topic/big.LITTLE' into linux-linaro-lsk 2013-10-11 19:26:24 +01:00
Chris Redpath
5ecaba3d9f smp: smp_cross_call function pointer tracing
generic tracing for smp_cross_call function calls

Signed-off-by: Chris Redpath <chris.redpath@arm.com>
Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com>
Signed-off-by: Jon Medhurst <tixy@linaro.org>
2013-10-11 15:07:18 +01:00
Chris Redpath
2353c1f800 arm: ipi raise/start/end tracing
Add tracepoints for IPI raise events, and start and end of the
ipi handler.

Used to inspect the source of CPU wake-ups which are not already
traced - all other reasons for a CPU to wake-up are already
covered.

Signed-off-by: Chris Redpath <chris.redpath@arm.com>
Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com>
Signed-off-by: Jon Medhurst <tixy@linaro.org>
2013-10-11 15:07:18 +01:00
Chris Redpath
7b8e0b3f2a sched: HMP: Additional trace points for debugging HMP behaviour
1. Replace magic numbers in code for migration trace.
   Trace points still emit a number as force=<n> field:
     force=0 : wakeup migration
     force=1 : forced migration
     force=2 : offload migration
     force=3 : idle pull migration

2. Add trace to expose offload decision-making.
   Also adds tracing rq->nr_running so that you can
   look back to see what state the RQ was in at the time.

Signed-off-by: Chris Redpath <chris.redpath@arm.com>
Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com>
Signed-off-by: Jon Medhurst <tixy@linaro.org>
2013-10-11 15:07:17 +01:00
Mark Brown
0b37fbf750 Merge branch 'experimental/android-3.10' of https://android.googlesource.com/kernel/common into linux-linaro-lsk-android
Conflicts:
	arch/arm/include/asm/smp.h
	arch/arm/kernel/smp.c
	kernel/futex.c
2013-07-19 10:42:11 +01:00
Mark Brown
38b5268356 Merge remote-tracking branch 'lsk/v3.10/topic/big.LITTLE' into linux-linaro-lsk 2013-07-18 16:42:46 +01:00
Morten Rasmussen
0d811e649a sched: Add HMP task migration ftrace event
Adds ftrace event for tracing task migrations using HMP
optimized scheduling.

Signed-off-by: Morten Rasmussen <Morten.Rasmussen@arm.com>
2013-07-17 11:12:25 +01:00
Morten Rasmussen
b9d3d56128 sched: Add ftrace events for entity load-tracking
Adds ftrace events for key variables related to the entity
load-tracking to help debugging scheduler behaviour. Allows tracing
of load contribution and runqueue residency ratio for both entities
and runqueues as well as entity CPU usage ratio.

Signed-off-by: Morten Rasmussen <Morten.Rasmussen@arm.com>
2013-07-17 11:12:25 +01:00
Ken Sumrall
22dc2e1ba2 mmc: Add tracepoints of mmc block operations
Add tracepoints to record the start and end of each mmc block
operation.  This includes read, write, erase, secure erase,
trim, secure trim1 and secure trim 2, discard and
sanitize commands.

Change-Id: Ic5d1cbdb9adb940d8b1a2a13c73970023575df50
Signed-off-by: Ken Sumrall <ksumrall@android.com>
2013-07-01 14:16:26 -07:00
Jamie Gennis
8202b6b71b trace/events: fix gpu event timestamp formatting
This change fixes the how the gpu_sched_switch timestamp field is formatted.

Signed-off-by: Jamie Gennis <jgennis@google.com>
Change-Id: I273234935254ed15772c9e561c9af20e480004ae
2013-07-01 14:16:24 -07:00
Jamie Gennis
0085255053 trace/events: add gpu trace events
Change-Id: I0607b9c776acf61cb796b8572cf8cfb8b2dc1377
Signed-off-by: Jamie Gennis <jgennis@google.com>
2013-07-01 14:16:21 -07:00
Todd Poynor
1d1b87282b cpufreq: interactive: trace actual speed in target speed decisions
Tracing adds actual speed since this is expected to be key to the
choice of target speed.

Change-Id: Iec936102d0010c4e9dfa143c38a9fd0d551189c3
Signed-off-by: Todd Poynor <toddpoynor@google.com>
2013-07-01 14:16:14 -07:00
Todd Poynor
76297aac95 cpufreq: interactive: handle speed up and down in the realtime task
Not useful to have a separate, non-realtime workqueue for speed down
events, avoid priority inversion for speed up events.

Change-Id: Iddcd05545245c847aa1bbe0b8790092914c813d2
Signed-off-by: Todd Poynor <toddpoynor@google.com>
2013-07-01 13:40:52 -07:00
Todd Poynor
8385ba129a cpufreq: interactive: fixup trace of string params
Change-Id: Iac47f62437e61b13724afbbf9df1a0729f58f236
Signed-off-by: Todd Poynor <toddpoynor@google.com>
2013-07-01 13:40:48 -07:00
Colin Cross
1bbda60cc1 trace: power: add trace_clock_set_parent
Adds a new trace event to be called from clk_set_parent.  Some
cpufreq drivers, including Tegra, reparent the cpu clock to a
slower clock while the main pll is relocking, tracing
clk_set_parent allows traces to show how for long the cpu is
running slower.

Uses a separate TRACE_EVENT instead of the clock event class to
allow the event to contain string names for the child and the
parent.

Signed-off-by: Colin Cross <ccross@android.com>
2013-07-01 13:40:45 -07:00
Todd Poynor
fe51873dff cpufreq: interactive: add boost pulse interface
Change-Id: Icf1e86d2065cc8f0816ba9c6b065eb056d4e8249
Signed-off-by: Todd Poynor <toddpoynor@google.com>
2013-07-01 13:40:44 -07:00
Todd Poynor
77417b69a8 cpufreq: interactive: Add sysfs boost interface for hints from userspace
The explicit hint on/off version.

Change-Id: Ibf62b6d45bf6fb8c9c055b9bdaf074ce9374c04f
Signed-off-by: Todd Poynor <toddpoynor@google.com>
2013-07-01 13:40:44 -07:00
Todd Poynor
de9a6d3615 cpufreq: interactive: Boost frequency on touchscreen input
Based on previous patches by Tero Kristo <tero.kristo@nokia.com>,
Brian Steuer <bsteuer@codeaurora.org>,
David Ng <dave@codeaurora.org>,
Antti P Miettinen <amiettinen@nvidia.com>, and
Thomas Renninger <trenn@suse.de>

Change-Id: Ic55fedcf6f9310f43a7022fb88e23b0392122769
Signed-off-by: Todd Poynor <toddpoynor@google.com>
2013-07-01 13:40:43 -07:00
Todd Poynor
ea2bc4da31 cpufreq interactive governor: event tracing
Change-Id: Ic13614a3da2faa2d4bd215ca3eb7191614f0cf66
Signed-off-by: Todd Poynor <toddpoynor@google.com>
2013-07-01 13:40:42 -07:00