On Tue, Mar 08, 2016 at 06:49:11PM +0100, Christoph Hellwig wrote:
> On Tue, Mar 08, 2016 at 11:43:46AM -0600, Bjorn Helgaas wrote:
> > I applied the patch below to pci/misc for v4.6.
>
> Btw, where do you keep your tree?
>
> https://git.kernel.org/cgit/linux/kernel/git/helgaas/pci.git/log/?h=pci
On Tue, Mar 08, 2016 at 06:48:56PM +0100, Ingo Molnar wrote:
> weird ... Has any of you seen such behavior?
No systemd on any of my machines ;-)
On Tue, Mar 8, 2016 at 6:48 PM, Ingo Molnar wrote:
>
> * Dmitry Vyukov wrote:
>
>> On Tue, Mar 8, 2016 at 6:37 PM, Ingo Molnar wrote:
>> >
>> > * Dmitry Vyukov wrote:
>> >
>> >> > fomalhaut:~/go/src/github.com/google/syzkaller> ps aux | grep -i syz
>> >> > mingo 1374 0.0 0.0 118476 2376
On Tue, Mar 08, 2016 at 06:37:09PM +0100, Ingo Molnar wrote:
> Peter, do you experience with running syz-kaller on larger CPU count Intel
> systems?
I run it on a 20 core (40 cpu) system mostly, as that tends to not take
ages to come back up again once I wrecked it.
* Ingo Molnar wrote:
> Things got a lot more lively after that!
>
> But most of the overhead seems to come from systemd trying to dump core or
> something like that:
>
> 85872 mingo 20 0 34712 3016 2656 S 4.6 0.0 0:00.14
> systemd-coredum
On Tue, Mar 8, 2016 at 12:27 PM, Peter Zijlstra wrote:
> On Mon, Mar 07, 2016 at 03:41:15AM +0100, Rafael J. Wysocki wrote:
>
>> If my understanding of the requency invariant utilization idea is correct,
>> it is about re-scaling utilization so it is always relative to the capacity
>> at the max f
* Ingo Molnar wrote:
>
> * Ingo Molnar wrote:
>
> > Things got a lot more lively after that!
> >
> > But most of the overhead seems to come from systemd trying to dump core or
> > something like that:
> >
> > 85872 mingo 20 0 34712 3016 2656 S 4.6 0.0 0:00.14
> > systemd
Stephen Warren writes:
> On 03/04/2016 01:32 PM, Eric Anholt wrote:
>> VC4 is the GPU (display and 3D) present on the 283x.
>
>> diff --git a/arch/arm/boot/dts/bcm2835-rpi-a-plus.dts
>> b/arch/arm/boot/dts/bcm2835-rpi-a-plus.dts
>
>> +&hdmi {
>> +hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
>> +}
> I applied the first two patches, with Andi's Tested-by, to
> pci/resource for v4.6.
>
> Per Jayachandran, the Broadcom patch turned out not to be necessary,
> so I dropped that one.
Thanks. Can the patches please also be marked Cc: stable
for earlier kernels.
-Andi
On Fri, Mar 04, 2016 at 03:59:19PM +0530, Kishon Vijay Abraham I wrote:
> From: Sekhar Nori
>
> This reverts commit <5c3b99d057525fe2befe6a7db9b1309035d93eee>
> ("PCI: dra7xx: Mark driver as broken").
>
> With support to de-assert PCIe reset present in kernel,
> DRA7x PCIe is not broken anymore.
On Mon, Mar 7, 2016 at 8:57 PM, Baoquan He wrote:
> On 03/07/16 at 03:10pm, Kees Cook wrote:
>> On Fri, Mar 4, 2016 at 8:25 AM, Baoquan He wrote:
>> > From: Yinghai Lu
>> >
>> > Firstly, current run_size is calculated via shell script
>> > arch/x86/tools/calc_run_size.sh. It gets file offset and
On 03/08/2016 06:52 PM, Sebastian Andrzej Siewior wrote:
> However I don't think if your DEFER flag solution is all that bad. I
> have also the block-mq in -RT using swait and they perform wakes with
> irqs-off. Not in -RT but mainline. So me might need something to make it
> work properly. But if
"Maciej S. Szmigiero" writes:
> FAT has long supported its own default file name encoding
> config setting, separate from CONFIG_NLS_DEFAULT.
>
> However, if UTF-8 encoded file names are desired FAT
> character set should not be set to utf8 since this would
> make file names case sensitive even i
On Sun, Mar 06, 2016 at 10:02:30PM +, Robin H. Johnson wrote:
> Introduce PCI_VENDOR/PCI_SUBVENDOR/PCI_SUBDEVICE defines to replace the
> constants scattered in the kernel already used to detect QEMU.
>
> They are defined in the QEMU codebase per docs/specs/pci-ids.txt.
>
> Signed-off-by: Rob
Hi Sameer,
[auto build test WARNING on v4.5-rc7]
[also build test WARNING on next-20160308]
[if your patch is applied to the wrong git tree, please drop us a note to help
improving the system]
url:
https://github.com/0day-ci/linux/commits/Tomeu-Vizoso/mfd-cros_ec-Add-MKBP-event-support
On 03/08/2016 11:04 AM, Eric Anholt wrote:
Stephen Warren writes:
On 03/04/2016 01:32 PM, Eric Anholt wrote:
VC4 is the GPU (display and 3D) present on the 283x.
diff --git a/arch/arm/boot/dts/bcm2835-rpi-a-plus.dts
b/arch/arm/boot/dts/bcm2835-rpi-a-plus.dts
+&hdmi {
+ hpd-gpios
Greetings Dear.,
I have a transaction which i will need your assistance because i have
know where else to turn to now. It involves the transfer of (USD150M)
with (350kg of gold) into your account from a bank here. The source of
the fund and gold is from my late client who was a companion to former
On Mon, Mar 7, 2016 at 9:13 PM, Baoquan He wrote:
> On 03/07/16 at 03:16pm, Kees Cook wrote:
>> On Fri, Mar 4, 2016 at 8:25 AM, Baoquan He wrote:
>> > From: Yinghai Lu
>> >
>> > There is boundary checking for pointer in kaslr relocation handling.
>> >
>> > Current code is using output_len, and t
On Tue, Mar 08, 2016 at 10:05:20AM -0800, Andi Kleen wrote:
> > I applied the first two patches, with Andi's Tested-by, to
> > pci/resource for v4.6.
> >
> > Per Jayachandran, the Broadcom patch turned out not to be necessary,
> > so I dropped that one.
>
> Thanks. Can the patches please also be
On Mon, Mar 7, 2016 at 9:21 PM, Baoquan He wrote:
> On 03/07/16 at 03:28pm, Kees Cook wrote:
>> On Fri, Mar 4, 2016 at 8:25 AM, Baoquan He wrote:
>> > From: Yinghai Lu
>> >
>> > We are going to support kaslr with 64bit above 4G, and new random output
>> > could be anywhere. Array mem_avoid is us
On Tue, Mar 08, 2016 at 07:21:09AM -0800, Paul E. McKenney wrote:
> On Tue, Mar 08, 2016 at 09:53:42AM +0100, Ingo Molnar wrote:
> > * Paul E. McKenney wrote:
[ . . . ]
> > Pulled, thanks a lot Paul!
> >
> > So I've done the conflict resolutions with tmp:smp/hotplug and
> > tip:sched/core
> >
On Tue, Mar 8, 2016 at 1:16 AM, Alexander Larsson wrote:
> On mån, 2016-03-07 at 20:59 -0800, Andy Lutomirski wrote:
>> On Thu, May 28, 2015 at 12:42 PM, Eric W. Biederman
>> wrote:
>> > Andy Lutomirski writes:
>> >
>> Apparently alexl is encountering some annoyances related to the
>> current wo
Hi,
This is a (painfully late) followup to proposal sometime ago to add
spin on owner to rtmutexes. My first attempt was rather liberal in that
I tried avoiding the pi-dance and let the lock be stolen. However, due to
-rt constraints this series only deals with top-waiter, based on what we
do in t
From: Davidlohr Bueso
By applying well known spin-on-lock-owner techniques, we can avoid the
blocking overhead during the process of when the task is trying to take
the rtmutex. The idea is that as long as the owner is running, there is a
fair chance it'll release the lock soon, and thus a task t
From: Davidlohr Bueso
... encapsulates debug and regular waiter initialization. In the
case of rtmutexes, we now also set the waiter to nil until later
explicitly set to whatever task. This is safe as the waiter is on
the stack and we are doing very basic initialization anyway.
Signed-off-by: Da
From: Davidlohr Bueso
This field (debug) is unused. Furthermore it looks like a result
of rtmutex from -rt into upstream, where it serves to determine
if the wakeup is for a task blocked on a "sleeping spinlock",
iow if this is a regular rt_mutex_lock() or rt_spin_lock().
Of course, upstream we
* Ingo Molnar wrote:
> With nproc set to 120 it seems to be chugging along at about 25% system
> utilization:
>
> Tasks: 1271 total, 1 running, 1270 sleeping, 0 stopped, 0 zombie
> %Cpu(s): 4.5 us, 35.3 sy, 0.0 ni, 55.2 id, 0.5 wa, 4.5 hi, 0.0 si, 0.0
> st
> KiB Mem : 26401230+tot
On Mon, Mar 7, 2016 at 9:34 PM, Baoquan He wrote:
> On 03/07/16 at 03:51pm, Kees Cook wrote:
>> On Fri, Mar 4, 2016 at 8:25 AM, Baoquan He wrote:
>> > On x86_64, in old kaslr implementaion only physical address of kernel
>> > loading is randomized. Then calculate the delta of physical address
>>
On Tue, Mar 8, 2016 at 5:44 AM, Michal Kubecek wrote:
> Global variable gc_args is only used in fib6_run_gc() and functions
> called from it. As fib6_run_gc() makes sure there is at most one
> instance of fib6_clean_all() running at any moment, we can replace
> gc_args with a local variable which
Hi Wei-Ning,
> In some case, the btmrvl_sdio firmware would fail to active within the
> polling time. Increase the polling interval to 100 msec to fix the
> issue.
>
> Signed-off-by: Wei-Ning Huang
> Signed-off-by: Wei-Ning Huang
> ---
> drivers/bluetooth/btmrvl_sdio.c | 2 +-
> 1 file changed,
On Mar 8, 2016 2:27 AM, "Ingo Molnar" wrote:
>
>
> * Andy Lutomirski wrote:
>
> > > > ENTRY(entry_INT80_32)
> > >
> > > entry_INT80_32() is only used on pure 32-bit kernels, 64-bit kernels use
> > > entry_INT80_compat(). So the above text should not talk about 64-bit
> > > programs, as
> > > th
Allowing for the future possibility of implementing AML-based
(i.e., firmware-triggered) access to the QEMU fw_cfg device,
acquire the global ACPI lock when accessing the device on behalf
of the guest-side sysfs driver, to prevent any potential race
conditions.
Suggested-by: Michael S. Tsirkin
Si
On Mar 7, 2016 10:06 PM, "Serge E. Hallyn" wrote:
>
> On Mon, Mar 07, 2016 at 09:15:25PM -0800, Andy Lutomirski wrote:
> > - Ubuntu requires CAP_SYS_ADMIN
>
> No, it does not. It has temporarily re-added a sysctl which can enable
> that behavior, but it's not set by default. The reason for prov
Hi Dmitry,
> I've got the following use-after-free reports while running syzkaller
> fuzzer. Unfortunately no reproducer. But this happened when system was
> busy reacting on sysrq t, so probably some unexpected delay happended.
>
> On commit 92e963f50fc74041b5e9e744c330dca48e
* Ingo Molnar wrote:
> so it's eating about 10% of system overhead despite doing nothing (!).
>
> The workaround for that systemd bug is a brutal:
>
> [root@fomalhaut ~]# mv /usr/lib/systemd/systemd-journald
> /usr/lib/systemd/systemd-journald.dontuse
> [root@fomalhaut ~]#
Except that if
On Tue, Mar 08, 2016 at 06:52:06PM +0100, Sebastian Andrzej Siewior wrote:
> * Daniel Wagner | 2016-03-08 16:59:13 [+0100]:
>
> >Hi,
> Hi,
>
> >As Peter correctly pointed out in [1] a simple conversion from
> >wait to swait in completion.c wont work. I played a bit around and
> >came up with this
A couple of the EDAC drivers have a nice memdev_dmi_entry structure for
decoding DMI memory device entries. Move the structure definition to
dmi.h so that it can be shared between those drivers and also other
parts of the kernel; the i915 graphics driver is going to need to use
this structure soon
Just to avoid sparse warnings.
Signed-off-by: Jaegeuk Kim
---
fs/f2fs/node.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
index 7b805f7..771166d 100644
--- a/fs/f2fs/node.c
+++ b/fs/f2fs/node.c
@@ -1101,7 +1101,7 @@ void ra_node_page(str
On Tue, Mar 8, 2016 at 5:44 AM, Michal Kubecek wrote:
> The IPv6 FIB data structures are separated per network namespace but
> there is still only one global walkers list and one global walker list
> lock. This means changes in one namespace unnecessarily interfere with
> walkers in other namespac
On Tue, Mar 8, 2016 at 5:44 AM, Michal Kubecek wrote:
> One of our customers observed issues with FIB6 garbage collectors
> running in different network namespaces blocking each other, resulting
> in soft lockups (fib6_run_gc() initiated from timer runs always in
> forced mode).
>
> Now that FIB6
On 03/02/16 03:30, Paul Burton wrote:
> Introduce support for struct hw_pci & the associated pci_common_init_dev
> function as used by the PCI drivers written for ARM platforms under
> drivers/pci. This is in preparation for reusing the xilinx-pcie driver
> on the MIPS Boston board.
>
> Platforms
Hi,
On 08/03/2016 at 12:06:39 +0100, Sebastian Andrzej Siewior wrote :
> I sucked this in. It seems to work. What remains that free_irq() thingy:
> |WARNING: CPU: 0 PID: 0 at kernel/irq/manage.c:1541 __free_irq+0xb4/0x2e0()
> |Trying to free already-free IRQ 16
> |CPU: 0 PID: 0 Comm: swapper Not t
Hi,
On Tue, Mar 08, 2016 at 05:39:32PM +0100, Sebastian Reichel wrote:
> This series adds support for the Nokia N950 display.
> Since the panel is using DSI command mode, it involves
> adding support for manually updated displays to
> omapdrm.
Works OK, but the picture seems to be upside down? Al
Hi Boris,
On Tue, Mar 8, 2016 at 8:08 PM, Boris Brezillon
wrote:
> Hi Punnaiah,
>
> Sorry for the late review.
>
> On Sat, 21 Nov 2015 20:09:48 +0530
> Punnaiah Choudary Kalluri wrote:
>
>> Added the basic driver for Arasan Nand Flash Controller used in
>> Zynq UltraScale+ MPSoC. It supports onl
On 03/08/16 02:30, Ingo Molnar wrote:
+ *
+ * This is considered a slow path. It is not used by modern libc
+ * implementations on modern hardware except during process startup.
+ *
>>
>> Sadly I believe Android still uses int $0x80 in the upstream version.
>
> I don't see how
On Tue, Mar 08, 2016 at 02:23:40PM +0100, Ingo Molnar wrote:
>
> * tip-bot for Jiri Olsa wrote:
>
> > @@ -135,6 +146,8 @@ static int perf_pmu__parse_scale(struct perf_pmu_alias
> > *alias, char *dir, char *
> > /* restore locale */
> > setlocale(LC_NUMERIC, lc);
> >
> > + free((char
On Tue, Mar 8, 2016 at 10:40 AM, H. Peter Anvin wrote:
> On 03/08/16 02:30, Ingo Molnar wrote:
> + *
> + * This is considered a slow path. It is not used by modern libc
> + * implementations on modern hardware except during process startup.
> + *
>>>
>>> Sadly I believe Android st
On 03/08/16 10:45, Andy Lutomirski wrote:
>
> s/modern/most, perhaps?
>
> I'm hoping that some day Bionic goes away and gets replaced by musl.
>
> Of course, musl doesn't always use fast syscalls because it needs a
> vdso facility that doesn't currently exist. I'll deal with that
> eventually.
On Tue, Mar 08, 2016 at 09:48:04AM -0800, Stefan Agner wrote:
> Hi Dimitry,
>
> Any chance this patchset makes it into 4.6?
>
Applied all 3, thank you.
> Best regards,
> Stefan
>
> On 2016-02-02 15:20, Stefan Agner wrote:
> > The header file is used by the SPI and I2C variant of the driver.
>
On Tue, Feb 02, 2016 at 03:20:18PM -0800, Stefan Agner wrote:
> Add device tree support for the I2C and SPI variant of AD7879(-1).
> This allows to specify the touchscreen controller as a I2C client
> node or SPI slave device. Most of the options available in platform
> data are also available as d
On Tue, Mar 8, 2016 at 10:47 AM, H. Peter Anvin wrote:
> On 03/08/16 10:45, Andy Lutomirski wrote:
>>
>> s/modern/most, perhaps?
>>
>> I'm hoping that some day Bionic goes away and gets replaced by musl.
>>
>> Of course, musl doesn't always use fast syscalls because it needs a
>> vdso facility tha
On 03/08/16 10:50, Andy Lutomirski wrote:
> On Tue, Mar 8, 2016 at 10:47 AM, H. Peter Anvin wrote:
>> On 03/08/16 10:45, Andy Lutomirski wrote:
>>>
>>> s/modern/most, perhaps?
>>>
>>> I'm hoping that some day Bionic goes away and gets replaced by musl.
>>>
>>> Of course, musl doesn't always use fa
From: David Daney
This reverts commit dfd55ad85e4a7fbaa82df12467515ac3c81e8a3e.
Commit dfd55ad85e4a ("arm64: vmemmap: use virtual projection of linear
region") causes this failure on Cavium Thunder systems:
EFI stub: Booting Linux Kernel...
EFI stub: Using DTB from configuration table
EFI stub:
I think there are two issues here that should be teased apart a bit
more:
1) Trigger settings: If the IRQ is configured as anything other than
level-triggered, active-low, we can't use it at all for a PCI
interrupt, and we should return an "infinite" penalty. W
On Tue, Mar 8, 2016 at 10:59 AM, H. Peter Anvin wrote:
> On 03/08/16 10:50, Andy Lutomirski wrote:
>> On Tue, Mar 8, 2016 at 10:47 AM, H. Peter Anvin wrote:
>>> On 03/08/16 10:45, Andy Lutomirski wrote:
s/modern/most, perhaps?
I'm hoping that some day Bionic goes away and gets
This is a driver for ACPI-based keyboard backlight LEDs found on
Chromebooks. The driver locates \\_SB.KBLT ACPI device and exports
backlight as "chromeos::kbd_backlight" LED class device in sysfs.
Signed-off-by: Simon Que
Signed-off-by: Duncan Laurie
Tested-by: Evan McClain
Signed-off-by: Dmit
On Mon, 29 Feb 2016, Michal Hocko wrote:
From: Michal Hocko
shmat and shmdt rely on mmap_sem for write. If the waiting task
gets killed by the oom killer it would block oom_reaper from
asynchronous address space reclaim and reduce the chances of timely
OOM resolving. Wait for the lock in the k
On Tue, 8 Mar 2016 09:10:36 +0100
Sebastian Andrzej Siewior wrote:
> On 03/08/2016 12:45 AM, Yang Shi wrote:
> > diff --git a/include/trace/events/hist.h b/include/trace/events/hist.h
> > index 6122e42..37f6eb8 100644
> > --- a/include/trace/events/hist.h
> > +++ b/include/trace/events/hist.h
> >
On Sun, 28 Feb 2016 01:41:51 +0900
Taeung Song wrote:
Have we decided what we are going to do with this patch? Pull it as is
and see what the fall out is?
Was there a perf patch with this too?
-- Steve
> Some syscalls tracepoint duplicated fields with the same name 'nr' i.e.
>
> # cat
>
When using the device tree binding OF compatible = "hid-over-i2c" the
i2c id table also needs to have that name in order to auto load this
driver, since i2c core reports module alias as i2c: where
is compatible string of OF binding stripped of manufacturer's
prefix.
Signed-off-by: Benson Leung
S
On 03/08/2016 11:03 AM, David Daney wrote:
From: David Daney
This reverts commit dfd55ad85e4a7fbaa82df12467515ac3c81e8a3e.
Commit dfd55ad85e4a ("arm64: vmemmap: use virtual projection of linear
region") causes this failure on Cavium Thunder systems:
EFI stub: Booting Linux Kernel...
EFI stub:
On Tue, Mar 08, 2016 at 07:00:57PM +0100, Rafael J. Wysocki wrote:
> On Tue, Mar 8, 2016 at 12:27 PM, Peter Zijlstra wrote:
> > Seeing how frequency invariance is an arch feature, and cpufreq drivers
> > are also typically arch specific, do we really need a flag at this
> > level?
>
> The next f
Quoting Rafael J. Wysocki (2016-02-23 18:01:06)
> On Tuesday, February 23, 2016 11:01:18 AM Juri Lelli wrote:
> > On 22/02/16 22:26, Rafael J. Wysocki wrote:
> > > On Mon, Feb 22, 2016 at 10:32 AM, Juri Lelli wrote:
> > > > On 19/02/16 23:14, Rafael J. Wysocki wrote:
> > > >> On Friday, February 1
Em Tue, Mar 08, 2016 at 02:24:34PM -0500, Steven Rostedt escreveu:
> On Sun, 28 Feb 2016 01:41:51 +0900
> Taeung Song wrote:
>
>
> Have we decided what we are going to do with this patch? Pull it as is
> and see what the fall out is?
That was my understanding, you said somewhere that I could ad
Em Tue, Mar 08, 2016 at 04:32:12PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Tue, Mar 08, 2016 at 02:24:34PM -0500, Steven Rostedt escreveu:
> > On Sun, 28 Feb 2016 01:41:51 +0900
> > Taeung Song wrote:
> >
> >
> > Have we decided what we are going to do with this patch? Pull it as is
> > a
On Tue, 8 Mar 2016, Thomas Gleixner wrote:
On Wed, 2 Mar 2016, Vikas Shivappa wrote:
Please fix the subject line prefix: "x86/perf/intel/cqm:"
Will fix..
Fixes the hotcpu notifier leak and other global variable memory leaks
during cqm(cache quality of service monitoring) initialization.
On Tue, 8 Mar 2016, Thomas Gleixner wrote:
On Thu, 3 Mar 2016, Thomas Gleixner wrote:
On Thu, 3 Mar 2016, Vikas Shivappa wrote:
On Wed, 2 Mar 2016, Thomas Gleixner wrote:
On Wed, 2 Mar 2016, Vikas Shivappa wrote:
+ if (cqm_enabled && mbm_enabled)
+ intel_cqm_events_
Last time I spoke with Linus and Andrew, the requirement for getting
HMM upstream was having real hardware working with it beside Mellanox
(as Mellanox does not use all HMM features), both with closed source
driver and open source driver. Work on open source driver is underway,
and I anticipate we
Listener of mm event might not have easy way to get the struct page
behind an address invalidated with mmu_notifier_invalidate_page()
function as this happens after the cpu page table have been clear/
updated. This happens for instance if the listener is storing a dma
mapping inside its secondary p
This patch only introduce core HMM functions for registering a new
mirror and stopping a mirror as well as HMM device registering and
unregistering.
The lifecycle of HMM object is handled differently then the one of
mmu_notifier because unlike mmu_notifier there can be concurrent
call from both mm
The event information will be useful for new user of mmu_notifier API.
The event argument differentiate between a vma disappearing, a page
being write protected or simply a page being unmaped. This allow new
user to take different path for different event for instance on unmap
the resource used to
Heterogeneous memory management main purpose is to mirror a process
address. To do so it must maintain a secondary page table that is
use by the device driver to program the device or build a device
specific page table.
Radix tree can't be use to create this secondary page table because
HMM needs
This patch add the per mirror page table. It also propagate CPU page
table update to this per mirror page table using mmu_notifier callback.
All update are contextualized with an HMM event structure that convey
all information needed by device driver to take proper actions (update
its own mmu to re
This patch allow to invalidate a range while excluding call to a specific
mmu_notifier which allow for a subsystem to invalidate a range for everyone
but itself.
Signed-off-by: Jérôme Glisse
---
include/linux/mmu_notifier.h | 66
mm/mmu_notifier.c
To migrate memory back we first need to lock HMM special CPU page
table entry so we know no one else might try to migrate those entry
back. Helper also allocate new page where data will be copied back
from the device. Then we can proceed with the device DMA operation.
Once DMA is done we can updat
Migration to device memory is done as a special kind of device mirror
fault. Memory migration being initiated by device driver and never by
HMM (unless it is a migration back to system memory).
Changed since v1:
- Adapt to HMM page table changes.
Changed since v2:
- Fix error code path for mi
Several use case for getting pointer to spinlock protecting a directory.
Signed-off-by: Jérôme Glisse
---
include/linux/hmm_pt.h | 25 +
1 file changed, 25 insertions(+)
diff --git a/include/linux/hmm_pt.h b/include/linux/hmm_pt.h
index f745d6c..22100a6 100644
--- a/incl
For HMM we will need to resort to the old way of allocating new page
for anonymous memory when that anonymous memory have been migrated
to device memory.
This does not impact any process that do not use HMM through some
device driver. Only process that migrate anonymous memory to device
memory wit
Once we store the dma mapping inside the secondary page table we can
no longer easily find back the page backing an address. Instead use
the cpu page table which still has the proper information, except for
the invalidate_page() case which is handled by using the page passed
by the mmu_notifier lay
A common use case is for device driver to stop caring for a range of
address long before said range is munmapped by userspace program. To
avoid keeping track of such range provide an helper function that will
free HMM resources for a range of address.
NOTE THAT DEVICE DRIVER MUST MAKE SURE THE HAR
When forking if process being fork had any memory migrated to some
device memory, we need to make a system copy for the child process.
Latter patches can revisit this and use the same COW semantic for
device memory.
Signed-off-by: Jérôme Glisse
---
mm/hmm.c | 38 +
For doing memory migration to remote memory we need to unmap range
of anonymous memory from CPU page table and replace page table entry
with special HMM entry.
This is a multi-stage process, first we save and replace page table
entry with special HMM entry, also flushing tlb in the process. If
we
When migrating memory the same array for HMM page table entry might be
use with several different devices. Add a new select flag so current
device driver callback can know which entry are selected for the device.
Signed-off-by: Jérôme Glisse
---
include/linux/hmm_pt.h | 6 --
mm/hmm.c
This add documentation on how HMM works and a more in depth view of how it
should be use by device driver writers.
Signed-off-by: Jérôme Glisse
---
Documentation/vm/hmm.txt | 219 +++
1 file changed, 219 insertions(+)
create mode 100644 Documentation/
From: Jerome Glisse
When migrating anonymous memory from system memory to device memory
CPU pte are replaced with special HMM swap entry so that page fault,
get user page (gup), fork, ... are properly redirected to HMM helpers.
This patch only add the new swap type entry and hooks HMM helpers
fu
Because inside the mmu_notifier callback we do not have access to the
vma nor do we know which lock we are holding (the mmap semaphore or
the i_mmap_lock) we can not rely on the regular page table walk (nor
do we want as we have to be carefull to not split huge page).
So this patch introduce an he
When faulting or updating the device page table properly handle the case of
device memory entry.
Signed-off-by: Jérôme Glisse
---
mm/hmm.c | 13 +
1 file changed, 13 insertions(+)
diff --git a/mm/hmm.c b/mm/hmm.c
index a5706d2..9455443 100644
--- a/mm/hmm.c
+++ b/mm/hmm.c
@@ -616,6
When CPU try to access memory that have been migrated to device memory
we have to copy it back to system memory. This patch implement the CPU
page fault handler for special HMM pte swap entry.
Signed-off-by: Jérôme Glisse
---
mm/hmm.c | 54 +-
This patch add all necessary functions and helpers for migration
from device memory back to system memory. They are 3 differents
case that would use that code :
- CPU page fault
- fork
- device driver request
Note that this patch use regular memory accounting this means that
migration can fa
From: Jesper Dangaard Brouer
Date: Mon, 7 Mar 2016 16:36:07 +0100
> I lack of better, I coded up my own tool softnet_stat.pl here:
>
> https://github.com/netoptimizer/network-testing/blob/master/bin/softnet_stat.pl
>
> The output format/columns in /proc/net/softnet_stat is undocumented,
> plus
On Tue, Nov 24 2015, Rasmus Villemoes wrote:
> This reduces the impact of choosing CONFIG_SCSI_CONSTANTS by about 8KB.
>
ping? does anyone feel like picking these up?
Rasmus
For memory migrated to device we need a new type of memory entry.
Signed-off-by: Jérôme Glisse
Signed-off-by: Sherry Cheung
Signed-off-by: Subhash Gutti
Signed-off-by: Mark Hairgrove
Signed-off-by: John Hubbard
Signed-off-by: Jatin Kumar
---
include/linux/hmm_pt.h | 24 +++--
To be able to reuse the DMA mapping logic, split it in two functions.
Signed-off-by: Jérôme Glisse
---
mm/hmm.c | 120 ++-
1 file changed, 65 insertions(+), 55 deletions(-)
diff --git a/mm/hmm.c b/mm/hmm.c
index d26abe4..07f1ab6 100644
From: Jerome Glisse
This patch only adds the new callback device driver must implement
to copy memory from and to device memory.
Changed since v1:
- Pass down the vma to the copy function.
Signed-off-by: Jérôme Glisse
Signed-off-by: Sherry Cheung
Signed-off-by: Subhash Gutti
Signed-off-by:
On Tue, Mar 08, 2016 at 10:10:52AM +0800, Kefeng Wang wrote:
>
>
> On 2016/3/7 21:37, Paul E. McKenney wrote:
> > On Mon, Mar 07, 2016 at 03:02:05PM +0800, Kefeng Wang wrote:
> >>
> >>
> >> On 2016/3/7 13:40, Davidlohr Bueso wrote:
> >>> On Mon, 07 Mar 2016, Kefeng Wang wrote:
> On 2016/3/3
The invalidate_range_start() and invalidate_range_end() can be
considered as forming an "atomic" section for the cpu page table
update point of view. Between this two function the cpu page
table content is unreliable for the address range being
invalidated.
This patch use a structure define at all
Device driver must properly toggle the dirty inside the mirror page table
so dirtyness is properly accounted when core mm code needs to know. Provide
a simple helper to toggle that bit for a range of address.
Changed since v1:
- Adapt to HMM page table changes.
Signed-off-by: Jérôme Glisse
---
On Wed, Mar 2, 2016 at 4:59 PM, Li Yang wrote:
> On Mon, Feb 22, 2016 at 4:07 PM, Bjorn Andersson
> wrote:
>> On Mon 22 Feb 02:03 PST 2016, Srinivas Kandagatla wrote:
>>
>>>
>>>
>>> On 22/02/16 05:32, Bjorn Andersson wrote:
>>> >On certain platforms (e.g. ARM64) the dma_ops needs to be explicitly
Do the DMA mapping on behalf of the device as HMM is a good place
to perform this common task. Moreover in the future we hope to
add new infrastructure that would make DMA mapping more efficient
(lower overhead per page) by leveraging HMM data structure.
Changed since v1:
- Adapt to HMM page tab
This patch add helper for device page fault. Thus helpers will fill
the mirror page table using the CPU page table and synchronizing
with any update to CPU page table.
Changed since v1:
- Add comment about directory lock.
Changed since v2:
- Check for mirror->hmm in hmm_mirror_fault()
Change
201 - 300 of 1206 matches
Mail list logo