On Mon, Jul 6, 2015 at 9:40 PM, wrote:
> From: Byungchul Park
>
> __sched_period() returns a period which a rq can have. the period has to be
> stretched by the number of task *the rq has*, when nr_running > nr_latency.
> otherwise, task slice can be very smaller than
> > diff --git a/arch/x86/xen/xen-head.S b/arch/x86/xen/xen-head.S
> > index 8afdfcc..b1508a8 100644
> > --- a/arch/x86/xen/xen-head.S
> > +++ b/arch/x86/xen/xen-head.S
> > @@ -56,28 +56,28 @@ ENTRY(startup_xen)
> > * @entry: true if this is a secondary vcpu coming up on this entry
> > *
Now new output buffer is always after current one.
With correct tracking in mem_avoid, we can buffer below that.
That would make sure when bootloader like patched grub2 or kexec
have put output rather near the end of ram, we still can get
random base below output.
Now just pick 512M as
From: Baoquan He
Kernel is expected to be randomly reloaded anywhere in the whole
physical memory area, it could be near 64T at most. In this case
there could be about 4*1024*1024 randomization slots. Hence the
old slot array will cost too much memory and also not efficient
to store the slot
Reuse printf.c in x86 setup code.
And print out decompress_kernel input and output info.
Later decompresser code could print out more info for debug info.
Signed-off-by: Yinghai Lu
---
arch/x86/boot/compressed/Makefile | 2 +-
arch/x86/boot/compressed/misc.c | 38
Let it reserve setup_data, and keep it's own list.
Also clear the hdr.setup_data, as all handler now handle or
reserve setup_data locally already.
Cc: Bjorn Helgaas
Cc: Matt Fleming
Cc: linux-...@vger.kernel.org
Signed-off-by: Yinghai Lu
---
arch/x86/include/asm/pci.h | 2 ++
The copy will be in __initdata, and it is small.
We can use pointer to access the setup_data instead of using early_memmap
everywhere.
Cc: Matt Fleming
Cc: linux-...@vger.kernel.org
Signed-off-by: Yinghai Lu
---
arch/x86/include/asm/efi.h | 2 +-
arch/x86/platform/efi/efi.c| 13
add cleanup_highmap_late to remove highmap for initmem, around rodata, and
[_brk_end, all_end).
Kernel Layout:
[0.00] .text: [0x0100-0x0200df88]
[0.00] .rodata: [0x0220-0x02a1dfff]
[0.00] .data: [0x02c0-0x02e510ff]
[0.00] .init:
When using kexec with 64bit kernel, bzImage and ramdisk could be
loaded above 4G. We need this to get correct ramdisk adress.
Make get_ramdisk_image() global and use it for early microcode updating.
-v2: update changelog.
Signed-off-by: Yinghai Lu
---
arch/x86/include/asm/setup.h
While looking at the boot code to add mem mapping for kasl
with 64bit above 4G support, I found that e6023367d779 ("x86, kaslr: Prevent
.bss from overlaping initrd") and later introduced way to get kernel run_size
and pass it around. At first run_size calculation is via perl and then
changed to
with support that use printf.c in x86 setup code.
print out more info for debug info.
Signed-off-by: Yinghai Lu
---
arch/x86/boot/compressed/misc.c | 12 +++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/arch/x86/boot/compressed/misc.c b/arch/x86/boot/compressed/misc.c
We will not reserve setup_data in generic code. Every handler need to
reserve and copy setup_data locally.
Current dtd handling already have code for copying, just add reserve code.
Also simplify code a bit by storing real dtb size.
Cc: Rob Herring
Cc: David Vrabel
Signed-off-by: Yinghai Lu
Current aslr only support random in near range, and new range still use
old mapping. Also it does not support new range above 4G.
We need to have ident mapping for the new range before we can do
decompress to the new output, and later run them.
In this patch, we add ident mapping for all needed
don't need to use printf there.
Signed-off-by: Yinghai Lu
---
arch/x86/boot/edd.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/x86/boot/edd.c b/arch/x86/boot/edd.c
index 223e425..88d7c7f 100644
--- a/arch/x86/boot/edd.c
+++ b/arch/x86/boot/edd.c
@@ -157,7 +157,7
Now could use kexec to place kernel/boot_params/cmd_line/initrd
above 4G, but that is with legacy interface with startup_64 directly.
This patch will allow 64bit EFI kernel to be loaded above 4G
and use EFI HANDOVER PROTOCOL to start the kernel.
Current 32bit code32_start is used for passing
From: Baoquan He
In kaslr implementation mechanism, mainly process_e820_entry and
slots_fetch_random do the job. process_e820_entry is responsible
for storing the slot information. slots_fetch_random takes care
of fetching slot information. In this patch, for adding support
of kernel physical
As EFI stub code could put them high when on 32bit or with exactmap=
on 64bit conf.
Check if the range is mapped, otherwise allocate new one and have
the rom data copied. So we could access them directly.
Signed-off-by: Yinghai Lu
---
arch/x86/pci/common.c | 47
Cc: Matt Fleming
Signed-off-by: Yinghai Lu
---
arch/x86/kernel/kdebugfs.c | 142 -
arch/x86/kernel/setup.c| 17 --
2 files changed, 159 deletions(-)
diff --git a/arch/x86/kernel/kdebugfs.c b/arch/x86/kernel/kdebugfs.c
index dc1404b..c8ca86c
In the comment, should use cleanup_highmap().
and also remove not needed cast for _brk_end, as it is
unsigned long.
Signed-off-by: Yinghai Lu
---
arch/x86/mm/init_64.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c
index
Now we are using memblock to do early resource reserver/allocation
instead of using e820 map directly, and setup_data is reserved in
memblock early already.
Also kexec generate setup_data and pass pointer to second kernel,
so second kernel reserve setup_data by their own.
(Now kexec-tools create
and use it to make the early page table setup code more readable,
as we are using kernel high mapping address.
Signed-off-by: Yinghai Lu
---
arch/x86/kernel/head64.c | 15 +--
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/arch/x86/kernel/head64.c
Analyze "console=uart8250,io,0x3f8,115200n8" in
i386_start_kernel/x86_64_start_kernel,
and call setup_early_serial8250_console() to init early serial console.
Only can handle io port kind of 8250, because mmio need ioremap.
Use boot_params.hdr.version instead of adding another variable,
From: Baoquan He
On x86_64, in old kaslr implementaion only physical address of kernel
loading is randomized. Then calculate the delta of physical address
where vmlinux was linked to load and where it is finally loaded. If
delta is not equal to 0, namely there's a new physical address where
Old extract_offset calculation is done without knowledge of decompressor size.
so it guess one big size.
We can move it to header.S, where we have exact decompressor size.
We save 8 pages for init_size with this patch.
before patch:
kernel: [13e00,13fa1dfff]
input:
We use simple and correct version to get run_size now, remove code for
wrong run_size calculation.
Fixes: e6023367d779 ("x86, kaslr: Prevent .bss from overlaping initrd")
Cc: "H. Peter Anvin"
Cc: Josh Triplett
Cc: Matt Fleming
Cc: Kees Cook
Cc: Andrew Morton
Cc: Ard Biesheuvel
Cc: Junjie
We are going to support kaslr with 64bit above 4G, and new random output
buffer could be anywhere.
mem_avoid array is used for kaslr to search new output buffer.
Current code only track range that is after output+output_run_size.
We need to track all range instead of just after
We need to include that in boot::decompress_kernel stage to set new
ident mapping.
Also add checking for __pa/__va macro definition, as we need to override them
in boot::decompress_kernel stage.
Reviewed-by: Kees Cook
Signed-off-by: Yinghai Lu
---
arch/x86/include/asm/page.h | 5 +++
msr early print out get broken again, fix it.
Signed-off-by: Yinghai Lu
---
arch/x86/include/asm/processor.h | 1 -
arch/x86/kernel/cpu/common.c | 61 +---
2 files changed, 32 insertions(+), 30 deletions(-)
diff --git a/arch/x86/include/asm/processor.h
So we could avoid ioremap every time later.
Cc: Bjorn Helgaas
Cc: linux-...@vger.kernel.org
Signed-off-by: Yinghai Lu
---
arch/x86/include/asm/pci.h | 2 ++
arch/x86/kernel/setup.c| 1 +
arch/x86/pci/common.c | 77 +-
3 files changed, 65
Signed-off-by: Yinghai Lu
---
arch/x86/boot/compressed/misc.c | 8
1 file changed, 8 insertions(+)
diff --git a/arch/x86/boot/compressed/misc.c b/arch/x86/boot/compressed/misc.c
index a428c03..9266f78 100644
--- a/arch/x86/boot/compressed/misc.c
+++ b/arch/x86/boot/compressed/misc.c
@@
Need to use it to support holes in highmap when remove not
used range in highmap.
Signed-off-by: Yinghai Lu
---
arch/x86/include/asm/pgtable_64.h | 2 ++
arch/x86/mm/init_64.c | 22 ++
arch/x86/mm/pageattr.c| 16 +---
3 files changed, 25
So we could let kexec-tools to rebuild SETUP_PCI and pass it to
second kernel if needed.
Now kexec-tools already build SETUP_EFI and SETUP_E820EXT.
Cc: Bjorn Helgaas
Cc: linux-...@vger.kernel.org
Signed-off-by: Yinghai Lu
---
arch/x86/pci/common.c | 175
remove not needed clear_page for init_level4_page in x86_64_start_kernel(),
as it is with fill 512,8,0 already in head_64.S
Signed-off-by: Yinghai Lu
---
arch/x86/kernel/head64.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/arch/x86/kernel/head64.c b/arch/x86/kernel/head64.c
index
Move out serial_putchar() calling out of putchar
Let puts() to call serial_putchar() directly.
So only need to check early_serial_base per string.
Signed-off-by: Yinghai Lu
---
arch/x86/boot/tty.c | 14 ++
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git
We don't need to create mapping for E820_PRAM.
Signed-off-by: Yinghai Lu
---
arch/x86/kernel/e820.c | 12
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c
index a102564..46ec08d 100644
--- a/arch/x86/kernel/e820.c
+++
Those patches are rebased on v4.2-rc1 that I sent before but were rejected
by Ingo on changelog.
Kees Cook said that he would like to give a try to make improvement on changelog
to get things moving.
First part are kaslr related:
1. First put compressed kernel ZO near end of the buffer before
So we can find out ZO position easily during run-time for kasl buffer
searching.
Current code is using extract_offset to control copied kernel position, it
will put the copied kernel in the middle of buffer when kernel run size is
bigger than decompressed needed buffer size.
Current layout:
when
Now we are using output_size as parameter, actually we are passing
max(output_len, run_size).
Change it to output_run_size to make it less confusing.
Cc: Kees Cook
Signed-off-by: Yinghai Lu
---
arch/x86/boot/compressed/aslr.c | 10 +-
arch/x86/boot/compressed/misc.c | 6 --
real_mode is global variable, so we do not need to pass it around.
Signed-off-by: Yinghai Lu
---
arch/x86/boot/compressed/aslr.c | 5 ++---
arch/x86/boot/compressed/misc.c | 2 +-
arch/x86/boot/compressed/misc.h | 6 ++
3 files changed, 5 insertions(+), 8 deletions(-)
diff --git
Em Tue, Jul 07, 2015 at 04:54:52PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Wed, Jul 01, 2015 at 02:14:11AM +, Wang Nan escreveu:
> > By adding libbpf into perf's Makefile, this patch enables perf to
> > build libbpf during building if libelf is found and neither NO_LIBELF
> > nor
On Mon, Jul 06, 2015 at 11:34:20PM -0400, Boris Ostrovsky wrote:
> x86-64 ABI requires that functions preserve %rbx. When
> xen_pvh_early_cpu_init() is executed on boot cpu it is invoked as a
> function and 'cpuid' instruction will clobber %rbx. (This is not a
> concern on secondary processors
On Jul 07 2015 or thereabouts, Jean Delvare wrote:
> Hi Benjamin,
>
> On Tue, 23 Jun 2015 14:58:19 -0400, Benjamin Tissoires wrote:
> > The i801 chip can handle the Host Notify feature since ICH 3 as mentioned
> > in
> >
Mathieu Desnoyers wrote on 08/07/15 02:03:
- On Jul 7, 2015, at 3:29 AM, Peter Zijlstra pet...@infradead.org wrote:
On Tue, Jul 07, 2015 at 02:59:06PM +0930, Arthur Marsh wrote:
I had a single, non-reproducible case of the same lock-up happening on my
other machine running the Linus git
ret is assigned value from of_property_read_string_index but is
overwritten before being used so remove it.
Also fix coverity CID 1309759
Signed-off-by: Laurent Navet
---
drivers/gpio/gpiolib-of.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpio/gpiolib-of.c
Lee Jones writes:
> If I were the Clock Maintainer, I would have probably missed this
> patch. You _must_ intimate which subsystem you are submitting to.
>
>> The hardware clocks are not controllable by the ARM, so we have to
>> make requests to the firmware to do so from the VPU side. This
Commit-ID: bdcbafe3402cb337752c4c8bce3445ee4c5559a5
Gitweb: http://git.kernel.org/tip/bdcbafe3402cb337752c4c8bce3445ee4c5559a5
Author: Thomas Gleixner
AuthorDate: Sun, 5 Jul 2015 17:12:30 +
Committer: Thomas Gleixner
CommitDate: Tue, 7 Jul 2015 22:03:22 +0200
hotplug: Prevent
On Tue, Jul 07, 2015 at 11:51:26AM -0400, Tejun Heo wrote:
> This is v2 of blkcg_policy methods cleanup patchset. Changes from the
> last take [L] are
>
> * Rebased on top of v4.2-rc1 and other pending patches. v4.2-rc1
> added a patch to add per-blkcg policy data which is allocated by
>
--
Dear Friend,
I'm happy to inform you about the success in getting those funds
transferred under the cooperation of a new partner. Contact western
union manager there in Burkina-Faso to send you the total sum of
$500.000.00 USA Dollars which i kept as cheque for your compensation
for all the
On 07/06/2015 02:46 PM, Ingo Molnar wrote:
>
> * Ingo Molnar wrote:
>
>>> tools/testing/selftests/x86/test_syscall_vdso.c | 401
>>>
>>> tools/testing/selftests/x86/thunks_32.S | 55
>>> 2 files changed, 456 insertions(+)
>>> create mode 100644
This new test checks that all x86 registers are preserved across
32-bit syscalls. It tests syscalls through VDSO (if available)
and through INT 0x80, normally and under ptrace.
If kernel is a 64-bit one, high registers (r8..r15) are poisoned
before the syscall is called and are checked
Introduced REG_SMARTFAN_EN_BASE, pwmX_enable,
show_pwm_enable, store_pwm_enable.
Signed-off-by: Constantine Shulyupin
---
drivers/hwmon/nct7802.c | 46 ++
1 file changed, 46 insertions(+)
diff --git a/drivers/hwmon/nct7802.c b/drivers/hwmon/nct7802.c
On Tue, Jul 7, 2015 at 9:17 AM, Vivien Didelot
wrote:
> Hi Andrew, Scott,
> Does this fixup http://ix.io/jxq look good to you?
Yes.
--
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 Mon, Jul 06, 2015 at 11:34:25PM -0400, Boris Ostrovsky wrote:
> Signed-off-by: Boris Ostrovsky
Reviewed-by: Konrad Rzeszutek Wilk
> ---
> arch/x86/xen/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/x86/xen/Kconfig b/arch/x86/xen/Kconfig
> index
On Mon, Jul 06, 2015 at 11:34:24PM -0400, Boris Ostrovsky wrote:
> Signed-off-by: Boris Ostrovsky
A little bit more here I think - as in that the parameter
passing is not an Xen specific thing but something this
code cooked up?
> ---
> arch/x86/xen/enlighten.c | 4
> arch/x86/xen/smp.c
On Jul 07 2015 or thereabouts, Jean Delvare wrote:
> On Tue, 7 Jul 2015 10:23:33 -0400, Benjamin Tissoires wrote:
> > Hi Jean,
> >
> > On Jun 29 2015 or thereabouts, Jean Delvare wrote:
> > > Hi Benjamin,
> > >
> > > On Tue, 23 Jun 2015 14:58:18 -0400, Benjamin Tissoires wrote:
> > > > SMBus
The irq is most likely required by the suspend callback, so disable it
only after the callback had been executed.
Signed-off-by: Gabriele Mazzotta
---
drivers/hid/i2c-hid/i2c-hid.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/hid/i2c-hid/i2c-hid.c
Em Wed, Jul 01, 2015 at 02:14:11AM +, Wang Nan escreveu:
> By adding libbpf into perf's Makefile, this patch enables perf to
> build libbpf during building if libelf is found and neither NO_LIBELF
> nor NO_LIBBPF is set. The newly introduced code is similar to libapi
> and libtraceevent
From: Markus Elfring
Date: Tue, 7 Jul 2015 21:48:23 +0200
The sym_calc_value() function tests whether its argument is NULL and then
returns immediately. Thus the test around the call is not needed.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring
---
On Mon, Jul 06, 2015 at 11:34:23PM -0400, Boris Ostrovsky wrote:
> Signed-off-by: Boris Ostrovsky
> ---
> arch/x86/xen/enlighten.c | 16
> 1 file changed, 12 insertions(+), 4 deletions(-)
>
> diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
> index
Commit 63753fac67e1 ("x86: Store a per-cpu shadow copy of CR4") in
3.18.y branch introduced a regression on PVH Xen guests.
Please apply 5054daa285be ("x86/xen: Initialize cr4 shadow for 64-bit
PV(H) guests") from mainline to fix this. 3.18.y appears to be the only
affected branch.
Thanks.
Audigy has "Analog Capture Boost" mixer control,
however now this only controls mic level, not
other analog sources.
It applies also both to playback and capture,
so rename it to something more descriptive.
Signed-off-by: Maciej Szmigiero
---
sound/pci/emu10k1/emumixer.c |2 +-
1 files
On Tue, Jul 07, 2015 at 03:49:33PM -0400, Nicholas Krause wrote:
> This makes the function gfar_configure_coalescing_all static
> and removes its function prototype from the header file, gianfar.h
really? Looking at the diffstat I dare to disagree.
> due to this function only ever being called in
Enable TAD output on Audigy naming it "Phone Output",
to be consistent with TAD input which is called "Phone".
According to Creative doc
( http://support.creative.com/kb/ShowArticle.aspx?sid=3026 )
this should output just mic signal.
Signed-off-by: Maciej Szmigiero
---
AC'97 Headphone output and EAPD control aren't used
on Audigy so remove them from mixer.
Also remove AC'97 3D control as the driver is
already doing for Audigys with 1361T ADC.
Signed-off-by: Maciej Szmigiero
---
sound/pci/emu10k1/emumixer.c | 11 ++-
1 files changed, 6
This patch adds support for the NXP PCAL9555A GPIO expander's extra
features, called Agile I/O:
Input latching, interrupt masks and open-drain output stages can be
configured via 3 optional device tree properties.
Cc: Linus Walleij
Cc: Alexandre Courbot
Signed-off-by: Clemens Gruber
---
Em Wed, Jul 01, 2015 at 02:14:10AM +, Wang Nan escreveu:
> To prevent caller from creating additional structures to hold
> pointers of 'struct bpf_object', this patch link all such
Can you rephrase the above sentence? You mean "to allow enumeration of
all bpf_objects, keep them in a list".
>
On Tue, 2015-07-07 at 16:05 +0800, wenwei tao wrote:
> Hi Scott
>
> I understand what you said.
>
> I will use the function 'is_vm_hugetlb_page()' to hide the bit
> combinations according to your comments in the next version of patch
> set.
>
> But for the situation like below, there isn't an
On Tue, Jul 7, 2015 at 10:46 PM, Max Filippov wrote:
>> Branch:
>> - is there any logical change in the code or are these only to avoid using
>> a0?
>
> Yes.
Meant the latter.
--
Thanks.
-- Max
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message
Hi Chris,
On Tue, Jul 7, 2015 at 9:47 PM, Chris Zankel wrote:
> Not such a big fan about these changes as they introduce additional
> load and stores and a branch.
>
> Copy spill area:
> - is this only for debugging? Could the debugger identify the 'kernel
> exception' frame and handle it
Em Wed, Jul 01, 2015 at 02:14:09AM +, Wang Nan escreveu:
> This patch add an accessor which allows caller to get count of programs
> in an object file.
>
> Signed-off-by: Wang Nan
> Acked-by: Alexei Starovoitov
> ---
> tools/lib/bpf/libbpf.c | 9 +
> tools/lib/bpf/libbpf.h | 3 +++
>From 370152d9427e57cd9632b00189f71099f8e85544 Mon Sep 17 00:00:00 2001
From: Sukadev Bhattiprolu
Date: Tue, 7 Jul 2015 12:21:10 -0400
Subject: [PATCH 1/1] powerpc/perf/24x7: Fix lockdep warning
The sysfs attributes for the 24x7 counters are dynamically allocated.
Initialize the attributes using
Em Wed, Jul 01, 2015 at 02:14:08AM +, Wang Nan escreveu:
> This patch introduces accessors for user of libbpf to retrieve section
> name and fd of a opened/loaded eBPF program. 'struct bpf_prog_handler'
> is used for that purpose. Accessors of programs section name and file
> descriptor are
On 07/07/2015 01:22 AM, Peter Hung wrote:
The first patch will add Fintek F81866/F71868 SuperIO
with H/W monitor function to f71882fg.c.
But some F81866 functional address is differ from F71882fg.
The following 2 patches will fix this problem.
The test report is upload to following link. If I
On Mon, 06 Jul 2015 21:53:26 -0400, Sreenath Madasu said:
> When the checkpatch.pl script was run, it showed lines with length
> more than 80 characters in rtw_ap.c file. Fixed line number 382 by
> breaking it up into two lines within 80 characters.
> - stainfo_offset
On Mon, Jul 06, 2015 at 11:34:22PM -0400, Boris Ostrovsky wrote:
> 32-bit PVH guests don't want to write-protect/pin page tables.
>
> Signed-off-by: Boris Ostrovsky
Reviewed-by: Konrad Rzeszutek Wilk
> ---
> arch/x86/xen/mmu.c | 22 +-
> 1 file changed, 13 insertions(+), 9
On Mon, Jul 06, 2015 at 11:34:21PM -0400, Boris Ostrovsky wrote:
> Since ctxt is kzalloc'd there is no need to call a memset for
> ctxt->fpu_ctxt.
>
> Signed-off-by: Boris Ostrovsky
Reviewed-by: Konrad Rzeszutek Wilk
> ---
> arch/x86/xen/smp.c | 1 -
> 1 file changed, 1 deletion(-)
>
> diff
I have just created since-4.1 branch in mm git tree
(http://git.kernel.org/?p=linux/kernel/git/mhocko/mm.git;a=summary). It
is based on v4.1 tag in Linus tree and mmotm-2015-07-06-16-25.
I have pulled block/core changes as a pre-requisite for Tejun's cgroup
writeback series which is applied on
Hi,
I am running into failures when run filebench on ramdisk(/dev/ram0)
with Ext4-DAX.
The kernel version is 4.0, and I also verified it occurs on 4.2-rc1.
The issue reproduction steps:
// Set ramdisk size to 2GB
# mkfs.ext4 /dev/ram0
# mount -o dax /dev/ram0 /mnt/ramdisk
# filebench
filebench>
On Tue, Jul 07, 2015 at 12:00:12AM -0400, Vince Weaver wrote:
>
> Well the BPF hack is in the fuzzer, not the kernel. And it's not really a
> hack, it just turned out to be a huge pain to figure out how to
> manually create a valid BPF program in conjunction with a valid kprobe
> event.
You
On Tue, Jul 07, 2015 at 02:58:19PM +0100, Mark Brown wrote:
> The patch
>
>regmap: Use different lockdep class for each regmap init call
>
> has been applied to the regmap tree at
>
>git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap.git
...and reverted because it breaks the
From: Dietmar Eggemann
Reuses the existing infrastructure for cpu_scale to provide the scheduler
with a cpu scaling correction factor for more accurate load-tracking.
This factor comprises a micro-architectural part, which is based on the
cpu efficiency value of a cpu as well as a platform-wide
On Tue, 7 Jul 2015 11:06:27 -0400
Steven Rostedt wrote:
> On Tue, 30 Jun 2015 22:18:03 +0800
> Fengguang Wu wrote:
>
> > Hi Rostedt,
> >
> > FYI, this merge changes kernel crash to some more obvious kernel BUG
> > message. If it's still not helpful, I can try bisect the old crash
> > or split
Introduces the blocked utilization, the utilization counter-part to
cfs_rq->blocked_load_avg. It is the sum of sched_entity utilization
contributions of entities that were recently on the cfs_rq and are
currently blocked. Combined with the sum of utilization of entities
currently on the cfs_rq or
capacity_orig_of() returns the max available compute capacity of a cpu.
For scale-invariant utilization tracking and energy-aware scheduling
decisions it is useful to know the compute capacity available at the
current OPP of a cpu.
cc: Ingo Molnar
cc: Peter Zijlstra
Signed-off-by: Morten
Extended sched_group_energy() to support energy prediction with usage
(tasks) added/removed from a specific cpu or migrated between a pair of
cpus. Useful for load-balancing decision making.
cc: Ingo Molnar
cc: Peter Zijlstra
Signed-off-by: Morten Rasmussen
---
kernel/sched/fair.c | 86
This patch introduces the ENERGY_AWARE sched feature, which is
implemented using jump labels when SCHED_DEBUG is defined. It is
statically set false when SCHED_DEBUG is not defined. Hence this doesn't
allow energy awareness to be enabled without SCHED_DEBUG. This
sched_feature knob will be
cpufreq is currently keeping it a secret which cpus are sharing
clock source. The scheduler needs to know about clock domains as well
to become more energy aware. The SD_SHARE_CAP_STATES domain flag
indicates whether cpus belonging to the sched_domain share capacity
states (P-states).
There is no
For energy-aware load-balancing decisions it is necessary to know the
energy consumption estimates of groups of cpus. This patch introduces a
basic function, sched_group_energy(), which estimates the energy
consumption of the cpus in the group and any resources shared by the
members of the group.
arch_scale_cpu_capacity() is no longer a weak function but a #define
instead. Include the #define in topology.h.
cc: Russell King
Signed-off-by: Morten Rasmussen
---
arch/arm/include/asm/topology.h | 4
arch/arm/kernel/topology.c | 2 +-
2 files changed, 5 insertions(+), 1
This documentation patch provides an overview of the experimental
scheduler energy costing model, associated data structures, and a
reference recipe on how platforms can be characterized to derive energy
models.
Signed-off-by: Morten Rasmussen
---
Documentation/scheduler/sched-energy.txt | 363
Adds a generic energy-aware helper function, energy_diff(), that
calculates energy impact of adding, removing, and migrating utilization
in the system.
cc: Ingo Molnar
cc: Peter Zijlstra
Signed-off-by: Morten Rasmussen
---
kernel/sched/fair.c | 51
Scenarios with the busiest group having just one task and the local
being idle on topologies with sched groups with different numbers of
cpus manage to dodge all load-balance bailout conditions resulting the
nr_balance_failed counter to be incremented. This eventually causes an
pointless active
From: Michael Turquette
Scheduler-driven cpu frequency selection is desirable as part of the
on-going effort to make the scheduler better aware of energy
consumption. No piece of the Linux kernel has a better view of the
factors that affect a cpu frequency selection policy than the
cpuidle associates all idle-states with each cpu while the energy model
associates them with the sched_group covering the cpus coordinating
entry to the idle-state. To look up the idle-state power consumption in
the energy model it is therefore necessary to translate from cpuidle
idle-state index
From: Dietmar Eggemann
Since now we have besides frequency invariant also cpu (uarch plus max
system frequency) invariant cfs_rq::utilization_load_avg both, frequency
and cpu scaling happens as part of the load tracking.
So cfs_rq::utilization_load_avg does not have to be scaled by the original
From: Michael Turquette
Some architectures and platforms perform CPU frequency transitions
through a non-blocking method, while some might block or sleep. This
distinction is important when trying to change frequency from interrupt
context or in any other non-interruptable context, such as from
In mainline find_idlest_group() selects the wake-up target group purely
based on group load which leads to suboptimal choices in low load
scenarios. An idle group with reduced capacity (due to RT tasks or
different cpu type) isn't necessarily a better target than a lightly
loaded group with higher
Bring arch_scale_cpu_capacity() in line with the recent change of its
arch_scale_freq_capacity() sibling in commit dfbca41f3479 ("sched:
Optimize freq invariant accounting") from weak function to #define to
allow inlining of the function.
While at it, remove the ARCH_CAPACITY sched_feature as
Wakeup balancing is completely unaware of cpu capacity, cpu usage and
task utilization. The task is preferably placed on a cpu which is idle
in the instant the wakeup happens. New tasks (SD_BALANCE_{FORK,EXEC} are
placed on an idle cpu in the idlest group if such can be found, otherwise
it goes on
From: Dietmar Eggemann
To estimate the energy consumption of a sched_group in
sched_group_energy() it is necessary to know which idle-state the group
is in when it is idle. For now, it is assumed that this is the current
idle-state (though it might be wrong). Based on the individual cpu
201 - 300 of 2298 matches
Mail list logo