On 04/14/2016 01:52 AM, Wolfram Sang wrote:
That makes things quite tricky. Best I can think of is a series of boolean
devicetree properties, such as
broken-reset-handler
last-resort-restart-handler
secondary-restart-handler
default-restart-handler
prima
Add a helper to determine if a given pmd represents a huge page
either by hugetlb or thp, as we have for arm. This will be used
by KVM MMU code.
Suggested-by: Mark Rutland
Cc: Catalin Marinas
Cc: Steve Capper
Cc: Will Deacon
Acked-by: Christoffer Dall
Signed-off-by: Suzuki K Poulose
---
arc
This series adds support for stage2 page table helpers and makes
the core kvm-arm MMU code make use of it. At the moment we assume
that the host/hyp and the stage2 page tables have same number of
levels and hence use the host level accessors (except for some
hooks, e.g kvm_p.d_addr_end) and shares
Now that we have switched to explicit page table routines,
get rid of the obsolete kvm_* wrappers.
Also, kvm_tlb_flush_vmid_by_ipa is now called only on stage2
page tables, hence get rid of the redundant check.
Cc: Marc Zyngier
Acked-by: Christoffer Dall
Signed-off-by: Suzuki K Poulose
---
ar
Now that we don't have any fake page table levels for arm64,
cleanup the common code to get rid of the dead code.
Cc: Marc Zyngier
Acked-by: Christoffer Dall
Signed-off-by: Suzuki K Poulose
---
Changes since V1:
- Un-inline kvm_alloc_hwpgd(), kvm_get_hwpgd_size()
---
arch/arm/include/asm/kvm
Now that the hyp page table is handled by different set of
routines, rename the original shared routines to stage2 handlers.
Also make explicit use of the stage2 page table helpers.
unmap_range has been merged to existing unmap_stage2_range.
Cc: Marc Zyngier
Acked-by: Christoffer Dall
Signed-of
On Thu, Apr 14, 2016 at 10:47:04AM +0200, Miroslav Benes wrote:
> On Fri, 25 Mar 2016, Josh Poimboeuf wrote:
>
> > Update a tasks's universe when returning from a system call or user
> > space interrupt, or after handling a signal.
> >
> > This greatly increases the chances of a patch operation s
On arm64, the hardware supports concatenation of upto 16 tables,
at entry level for stage2 translations and we make use that whenever
possible. This could lead to reduced number of translation levels than
the normal (stage1 table) table. Also, since the IPA(40bit) is smaller
than the some of the su
We have common routines to modify hyp and stage2 page tables
based on the 'kvm' parameter. For a smoother transition to
using separate routines for each, duplicate the routines
and modify the copy to work on hyp.
Marks the forked routines with _hyp_ and gets rid of the
kvm parameter which is no lo
Introduce hyp_pxx_table_empty helpers for checking whether
a given table entry is empty. This will be used explicitly
once we switch to explicit routines for hyp page table walk.
Cc: Marc Zyngier
Acked-by: Christoffer Dall
Signed-off-by: Suzuki K Poulose
---
arch/arm64/include/asm/kvm_mmu.h |
We have stage2 page table helpers for both arm and arm64. Switch to
the stage2 helpers for routines that only deal with stage2 page table.
Cc: Marc Zyngier
Acked-by: Christoffer Dall
Signed-off-by: Suzuki K Poulose
---
arch/arm/kvm/mmu.c | 48
Now that we can handle stage-2 page tables independent
of the host page table levels, wire up the 16K page
support.
Cc: Marc Zyngier
Reviewed-by: Christoffer Dall
Signed-off-by: Suzuki K Poulose
---
arch/arm64/include/asm/kvm_arm.h | 13 +++--
arch/arm64/kvm/Kconfig |1
Get rid of kvm_pud_huge() which falls back to pud_huge. Use
pud_huge instead.
Cc: Marc Zyngier
Acked-by: Christoffer Dall
Signed-off-by: Suzuki K Poulose
---
arch/arm/kvm/mmu.c |4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/arch/arm/kvm/mmu.c b/arch/arm/kvm/mmu.c
ind
Define the page table helpers for walking the stage2 pagetable
for arm. Since both hyp and stage2 have the same number of levels,
as that of the host we reuse the host helpers.
The exceptions are the p.d_addr_end routines which have to deal
with IPA > 32bit, hence we use the open coded version of
TCR_EL1, TCR_EL2 and VTCR_EL2, all share some field positions
(TG0, ORGN0, IRGN0 and SH0) and their corresponding value definitions.
This patch makes the TCR_EL1 definitions reusable and uses them for TCR_EL2
and VTCR_EL2 fields.
This also fixes a bug where we assume TG0 in {V}TCR_EL2 is 1bit fie
Introduce hyp_pxx_table_empty helpers for checking whether
a given table entry is empty. This will be used explicitly
once we switch to explicit routines for hyp page table walk.
Cc: Marc Zyngier
Reviewed-by: Christoffer Dall
Signed-off-by: Suzuki K Poulose
---
arch/arm/include/asm/kvm_mmu.h |
On 14 April 2016 at 14:13, Matt Fleming wrote:
> Most of the users of for_each_efi_memory_desc() are equally happy
> iterating over the EFI memory map in efi.memmap instead of 'memmap',
> since the former is usually a pointer to the later.
>
s/later/latter/
> For those users that want to specify
We share most of the bits for VTCR_EL2 for different page sizes,
except for the TG0 value and the entry level value. This patch
makes the definitions a bit more cleaner to reflect this fact.
Also cleans up the VTTBR_X calculation. No functional changes.
Cc: Marc Zyngier
Reviewed-by: Christoffer
Both arm and arm64 now provides a helper, pmd_thp_or_huge()
to check if the given pmd represents a huge page. Use that
instead of our own custom check.
Suggested-by: Mark Rutland
Cc: Marc Zyngier
Acked-by: Christoffer Dall
Signed-off-by: Suzuki K Poulose
---
arch/arm/kvm/mmu.c | 17
Introduce stage2 page table helpers for arm64. With the fake
page table level still in place, the stage2 table has the same
number of levels as that of the host (and hyp), so they all
fallback to the host version.
Cc: Marc Zyngier
Reviewed-by: Christoffer Dall
Signed-off-by: Suzuki K Poulose
--
Rearrange the code for fake pgd handling, which is applicable
only for arm64. This will later be removed once we introduce
the stage2 page table walker macros.
Reviewed-by: Marc Zyngier
Reviewed-by: Christoffer Dall
Signed-off-by: Suzuki K Poulose
---
arch/arm/include/asm/kvm_mmu.h | 11 ++
On Wed, 13 Apr 2016, Jessica Yu wrote:
> +++ Miroslav Benes [13/04/16 15:01 +0200]:
> > On Wed, 13 Apr 2016, Michael Ellerman wrote:
> >
> > > This series adds live patching support for powerpc (ppc64le only ATM).
> > >
> > > It's unchanged since the version I posted on March 24, with the except
On 14/04/16 14:20, Suzuki K Poulose wrote:
This series adds support for stage2 page table helpers and makes
the core kvm-arm MMU code make use of it. At the moment we assume
that the host/hyp and the stage2 page tables have same number of
levels and hence use the host level accessors (except for
160413' of
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
> (2016-04-13 20:27:58 +0200)
>
> are available in the git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git
> tags/
Commit-ID: 6fb35b9515c6300cb25022ac74f5f5617a349e18
Gitweb: http://git.kernel.org/tip/6fb35b9515c6300cb25022ac74f5f5617a349e18
Author: Arnaldo Carvalho de Melo
AuthorDate: Wed, 13 Apr 2016 11:50:23 -0300
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 14 Apr 2016 08:57:53 -0300
pe
Commit-ID: a355a61e43484ac02553b34b5f84ee84ca765fd6
Gitweb: http://git.kernel.org/tip/a355a61e43484ac02553b34b5f84ee84ca765fd6
Author: Arnaldo Carvalho de Melo
AuthorDate: Wed, 13 Apr 2016 11:55:18 -0300
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 14 Apr 2016 08:57:53 -0300
pe
Commit-ID: df4cb1678e2ea91eb5f00c4a43d898a12697
Gitweb: http://git.kernel.org/tip/df4cb1678e2ea91eb5f00c4a43d898a12697
Author: Arnaldo Carvalho de Melo
AuthorDate: Wed, 13 Apr 2016 12:05:44 -0300
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 14 Apr 2016 08:57:53 -0300
pe
Commit-ID: 4532f642974d871f9a50e9a09bc482eaed5394f6
Gitweb: http://git.kernel.org/tip/4532f642974d871f9a50e9a09bc482eaed5394f6
Author: Wang Nan
AuthorDate: Wed, 13 Apr 2016 08:21:04 +
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 14 Apr 2016 08:57:54 -0300
perf ordered_event
Commit-ID: ea8dc3cefba0a0decaedc710b218a6ceffe0194a
Gitweb: http://git.kernel.org/tip/ea8dc3cefba0a0decaedc710b218a6ceffe0194a
Author: Arnaldo Carvalho de Melo
AuthorDate: Wed, 13 Apr 2016 12:10:19 -0300
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 14 Apr 2016 08:57:53 -0300
pe
Commit-ID: c0bdc1c461dd5b2e492c0746708a3e0da6b13515
Gitweb: http://git.kernel.org/tip/c0bdc1c461dd5b2e492c0746708a3e0da6b13515
Author: Wang Nan
AuthorDate: Wed, 13 Apr 2016 08:21:06 +
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 14 Apr 2016 08:58:19 -0300
perf record: Turns
Commit-ID: b26dc73018d2e3a68cad0cf0bad902a8637f9bdf
Gitweb: http://git.kernel.org/tip/b26dc73018d2e3a68cad0cf0bad902a8637f9bdf
Author: Wang Nan
AuthorDate: Wed, 13 Apr 2016 08:21:04 +
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 14 Apr 2016 08:57:54 -0300
perf session: Make
Commit-ID: 040f9915e99e604688c2880e0b1e5b59dbfefa54
Gitweb: http://git.kernel.org/tip/040f9915e99e604688c2880e0b1e5b59dbfefa54
Author: Wang Nan
AuthorDate: Wed, 13 Apr 2016 08:21:05 +
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 14 Apr 2016 08:57:54 -0300
perf data: Add per
Commit-ID: ecfd7a9c044e98fc3da8937e652080bc5abe7918
Gitweb: http://git.kernel.org/tip/ecfd7a9c044e98fc3da8937e652080bc5abe7918
Author: Wang Nan
AuthorDate: Wed, 13 Apr 2016 08:21:07 +
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 14 Apr 2016 09:00:39 -0300
perf record: Add '
Commit-ID: 860b8d4b3f893c97f905b978ecf62f48816dc5de
Gitweb: http://git.kernel.org/tip/860b8d4b3f893c97f905b978ecf62f48816dc5de
Author: Taeung Song
AuthorDate: Thu, 14 Apr 2016 16:53:19 +0900
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 14 Apr 2016 09:15:47 -0300
perf config: Ma
On Thu, Apr 14, 2016 at 10:50:28AM +0200, Miroslav Benes wrote:
> On Thu, 14 Apr 2016, Miroslav Benes wrote:
>
> > On Fri, 25 Mar 2016, Josh Poimboeuf wrote:
> >
> > > Update a tasks's universe when returning from a system call or user
> > > space interrupt, or after handling a signal.
> > >
> >
On 04/14/2016 03:18 PM, Frederic Weisbecker wrote:
> I think I tried this but I got lockdep warnings because the other updaters
> happen on IRQ.
I booted and played a little but lockdep didn't scream here so far.
> In practive we can't be interrupted since the idle task hasn't even started.
>
>
The futex subsystem relies on futex_atomic_cmpxchg_inatomic() to
perform an atomic cmpxchg. Most architectures provide their own
implementation. For those who do not, provides a
generic software implementations that works on !SMP platforms.
To provide an atomicity guarantee on !SMP plaforms, the
Hi Thierry,
Many thanks for answering and do this accurate report. I'd add a comment
on something you (see below). Apart from this I'll add your changes and
send a new version.
On 14/04/16 15:10, Thierry Reding wrote:
On Fri, Apr 08, 2016 at 02:52:52PM +0200, Enric Balletbo i Serra wrote:
A
Commit-ID: 20105ca1240c3d3ac8cc79bf195022e5e5c1c3fb
Gitweb: http://git.kernel.org/tip/20105ca1240c3d3ac8cc79bf195022e5e5c1c3fb
Author: Taeung Song
AuthorDate: Thu, 14 Apr 2016 16:53:18 +0900
Committer: Arnaldo Carvalho de Melo
CommitDate: Thu, 14 Apr 2016 09:00:42 -0300
perf config: In
On 12/04/16 19:06, Stefano Stabellini wrote:
> On Tue, 12 Apr 2016, Boris Ostrovsky wrote:
>> On 04/11/2016 10:08 PM, Stefano Stabellini wrote:
>>> Hi all,
>>>
>>> Unfortunately this patch (now commit
>>> 8c058b0b9c34d8c8d7912880956543769323e2d8) causes a regression on Xen
>>> when running on top o
Got this at a 32 bit KVM during boot :
Apr 14 15:40:24 n22kvm-clone kernel:
Apr 14 15:40:24 n22kvm-clone kernel: UBSAN: Undefined behaviour in
./arch/x86/include/asm/atomic.h:156:2
Apr 14 15:40:24 n22kvm-clone kerne
On Thu, Apr 14, 2016 at 03:13:26PM +0200, Roman Peniaev wrote:
> Hi, Chris.
>
> Is it made on purpose not to drop VM_LAZY_FREE flag in
> __purge_vmap_area_lazy()? With your patch va->flags
> will have two bits set: VM_LAZY_FREE | VM_LAZY_FREEING.
> Seems it is not that bad, because all other code
Toralf Förster:
> Got this at a 32 bit KVM during boot :
and later while fuzzying with trinity :
Apr 14 15:44:56 n22kvm-clone kernel:
Apr 14 15:44:56 n22kvm-clone kernel: UBSAN: Undefined behaviour in
./arch/x86/in
On 14 April 2016 at 14:13, Matt Fleming wrote:
> Abolish the poorly named EFI memory map, 'memmap'. It is shadowed by a
> bunch of local definitions in various files and having two ways to
> access the EFI memory map ('efi.memmap' vs 'memmap') is rather
> confusing.
>
> Furthermore, ia64 doesn't e
Hi, Alex
I think this one is correct. It applies on v4.5 and works fine.
Or I missed something else?
On Wed, Mar 23, 2016 at 10:25:10PM +, Wei Yang wrote:
>According to the code path, iommu_callback_data is passed in
>iommu_bus_init() and just used in {add/remove}_iommu_group, by when the
>b
Hi,
We've run into the following lockdep warning while using a system with
ecryptfs, under heavy memory pressure.
If I understand the issue correctly,
fs/ecryptfs/crypto.c:ecryptfs_calculate_md5:
- Locks &crypt_stat->cs_hash_tfm_mutex
-> Calls crypto_alloc_hash
-> Calls crypto_alloc_base
Hi Enric,
On 14 April 2016 at 14:42, Enric Balletbo i Serra
wrote:
> The patch was implemented first without OR'ing error codes. The reason why I
> changed this is because I received the comments that checking the error on
> every regmap_* didn't help the readability of the driver and is likely t
Hi Emil,
On 14/04/16 16:06, Emil Velikov wrote:
Hi Enric,
On 14 April 2016 at 14:42, Enric Balletbo i Serra
wrote:
The patch was implemented first without OR'ing error codes. The reason why I
changed this is because I received the comments that checking the error on
every regmap_* didn't help
Implement bus recovery methods for i2c designware so we can recover
from situations where SCL/SDA are stuck low.
The recovery method is similar as i2c-imx: "config the i2c pinctrl to
gpio mode by calling pinctrl sleep set function, and then use GPIO to
emulate the i2c protocol to send nine dummy c
On Thu, 14 Apr 2016, Michael Ellerman wrote:
> On Thu, 2016-04-14 at 14:01 +0200, Miroslav Benes wrote:
> > On Wed, 13 Apr 2016, Michael Ellerman wrote:
>
> > > static void klp_disable_func(struct klp_func *func)
> > > {
> > > struct klp_ops *ops;
> > > @@ -312,8 +325,14 @@ static void kl
On Tue 12-04-16 18:54:43, Waiman Long wrote:
> Linked list is used everywhere in the Linux kernel. However, if many
> threads are trying to add or delete entries into the same linked list,
> it can create a performance bottleneck.
>
> This patch introduces a new per-cpu list subystem with associat
On 04/14/2016 05:46 AM, Ming Lei wrote:
Hi,
Interests[1] have been shown in multipage bvecs, so this patchset
try to prepare for the support and do two things:
1) the 1st 4 patches use bvec iterator to implement iterate_bvec(),
then we can drop the non-standard way for iterating bvec, which
can
On 14/04/16 14:20, Suzuki K Poulose wrote:
> TCR_EL1, TCR_EL2 and VTCR_EL2, all share some field positions
> (TG0, ORGN0, IRGN0 and SH0) and their corresponding value definitions.
>
> This patch makes the TCR_EL1 definitions reusable and uses them for TCR_EL2
> and VTCR_EL2 fields.
>
> This also
Linus,
Please pull the latest mm-urgent-for-linus git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git mm-urgent-for-linus
# HEAD: c12d2da56d0e07d230968ee2305aaa86b93a6832 mm/gup: Remove the macro
overload API migration helpers from the get_user*() APIs
This removes t
On 14/04/16 14:20, Suzuki K Poulose wrote:
> We share most of the bits for VTCR_EL2 for different page sizes,
> except for the TG0 value and the entry level value. This patch
> makes the definitions a bit more cleaner to reflect this fact.
>
> Also cleans up the VTTBR_X calculation. No functional
On 14/04/16 14:20, Suzuki K Poulose wrote:
> Add a helper to determine if a given pmd represents a huge page
> either by hugetlb or thp, as we have for arm. This will be used
> by KVM MMU code.
>
> Suggested-by: Mark Rutland
> Cc: Catalin Marinas
> Cc: Steve Capper
> Cc: Will Deacon
> Acked-by
Linus,
Please pull the latest x86-urgent-for-linus git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git
x86-urgent-for-linus
# HEAD: a3125494cff084b098c80bb36fbe2061ffed9d52 x86/mce: Avoid using object
after free in genpool
Misc fixes: a binutils fix, an lguest fix,
On 14/04/16 14:20, Suzuki K Poulose wrote:
> Both arm and arm64 now provides a helper, pmd_thp_or_huge()
> to check if the given pmd represents a huge page. Use that
> instead of our own custom check.
>
> Suggested-by: Mark Rutland
> Cc: Marc Zyngier
> Acked-by: Christoffer Dall
> Signed-off-by
Hello Songjun,
On Thursday 14 Apr 2016 13:44:27 Wu, Songjun wrote:
> The option 'CONFIG_COMMON_CLK=y' is needed to add to '.config'.
> But I do not validate, '.config' will be generated automatically and
> overwritten when it is changed.
Your driver's Kconfig entry should then contain "depends on
On 14/04/16 14:20, Suzuki K Poulose wrote:
> Get rid of kvm_pud_huge() which falls back to pud_huge. Use
> pud_huge instead.
>
> Cc: Marc Zyngier
> Acked-by: Christoffer Dall
> Signed-off-by: Suzuki K Poulose
Acked-by: Marc Zyngier
M.
--
Jazz is not dead. It just smells funny...
Hello Mark
On 4/13/2016 7:23 PM, Mark Brown wrote:
On Wed, Apr 13, 2016 at 09:59:00AM +0200, Giuseppe CAVALLARO wrote:
On 4/13/2016 8:15 AM, Mark Brown wrote:
+static void st_get_satinize_powerup_voltage(struct st_vsense *vsense)
+{
or am I missing something? Why do we need to do this anyw
Hi David,
On Tue, Apr 12, 2016 at 6:04 AM, David Daney wrote:
> On 04/11/2016 03:45 PM, Jayachandran C wrote:
>>
>> Use functions provided by drivers/pci/ecam.h for mapping the config
>> space in drivers/pci/host/pci-host-common.c, and update its users to
>> use 'struct pci_config_window' and 'st
From: Ross Zwisler
Use the new multi-order support functions to rewrite
radix_tree_tag_clear()
Signed-off-by: Ross Zwisler
Signed-off-by: Matthew Wilcox
---
lib/radix-tree.c | 44
1 file changed, 20 insertions(+), 24 deletions(-)
diff --git a/lib/
From: Ross Zwisler
Use the new multi-order support functions to rewrite radix_tree_tag_get()
Signed-off-by: Ross Zwisler
Signed-off-by: Matthew Wilcox
---
lib/radix-tree.c | 44 ++--
1 file changed, 18 insertions(+), 26 deletions(-)
diff --git a/lib/ra
The multiorder support is a sufficiently large feature to be worth adding
copyrigt lines for.
Signed-off-by: Matthew Wilcox
Reviewed-by: Ross Zwisler
---
lib/radix-tree.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/lib/radix-tree.c b/lib/radix-tree.c
index 9fe5b83..cd7dc59 100644
---
From: Ross Zwisler
Add a generic test for multi-order tag verification, and call it using
several different configurations.
This test creates a multi-order radix tree using the given index and order,
and then sets, checks and clears tags using the indices covered by the
single multi-order radix
From: Ross Zwisler
- Print which indices are covered by every leaf entry
- Print sibling entries
- Print the node pointer instead of the slot entry
- Build by default in userspace, and make it accessible to the test-suite
Signed-off-by: Ross Zwisler
Signed-off-by: Matthew Wilcox
---
lib/r
All the tree walking functions start with some variant of this code;
centralise it in one place so we're not chasing subtly different bugs
everywhere.
Signed-off-by: Matthew Wilcox
Reviewed-by: Ross Zwisler
---
lib/radix-tree.c | 23 +++
1 file changed, 23 insertions(+)
dif
The irqdomain code was checking for 0 or 1 entries, not 0 entries like
the comment said they were. Introduce a new helper that will actually
check for an empty tree.
Signed-off-by: Matthew Wilcox
Reviewed-by: Ross Zwisler
---
include/linux/radix-tree.h | 5 +
kernel/irq/irqdomain.c | 7
If the radix tree user attempted to insert a colliding entry with an
existing multiorder entry, then radix_tree_create() could encounter
a sibling entry when walking down the tree to look for a slot.
Use radix_tree_descend() to fix the problem, and add a test-case to make
sure the problem doesn't c
Hello Songjun,
On Wednesday 13 Apr 2016 15:44:18 Songjun Wu wrote:
> The Image Sensor Controller driver includes two parts.
> 1) Driver code to implement the ISC function.
> 2) Device tree binding documentation, it describes how
>to add the ISC in device tree.
>
>
> Songjun Wu (2):
> [medi
The code I previously added to enable multiorder radix tree entries was
untested and therefore buggy. This commit adds the support functions that
Ross and I decided were necessary over a four-week period of iterating
various designs.
Signed-off-by: Matthew Wilcox
Reviewed-by: Ross Zwisler
---
I've been receiving increasingly concerned notes from 0day about how much
my recent changes have been bloating the radix tree. Make it happier by
only including multiorder support if CONFIG_TRANSPARENT_HUGEPAGES is set.
This is an independent Kconfig option, so other radix tree users can
also set
On Tue 12-04-16 18:54:46, Waiman Long wrote:
> When many threads are trying to add or delete inode to or from
> a superblock's s_inodes list, spinlock contention on the list can
> become a performance bottleneck.
>
> This patch changes the s_inodes field to become a per-cpu list with
> per-cpu spi
Fairly simple tests; add various items to the tree, then make sure we
can find them again. Also check that a pointer that we know isn't in
the tree is not found.
Signed-off-by: Matthew Wilcox
Reviewed-by: Ross Zwisler
---
tools/testing/radix-tree/linux/kernel.h | 3 +++
tools/testing/radix-tr
These BUG_ON tests are to ensure that all the tags are clear when
inserting a new entry. If we insert a multiorder entry, we'll end up
looking at the tags for a different node, and so the BUG_ON can end up
triggering spuriously.
Also, we now have three tags, not two, so check all three are clear,
Now that sibling pointers are handled explicitly, there is no purpose
served by restricting the order to be >= RADIX_TREE_MAP_SHIFT.
Signed-off-by: Matthew Wilcox
Reviewed-by: Ross Zwisler
---
lib/radix-tree.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/lib/radix-tree.c b/lib/radix-tre
Use the new multi-order support functions to rewrite __radix_tree_lookup()
Signed-off-by: Matthew Wilcox
Reviewed-by: Ross Zwisler
---
lib/radix-tree.c | 48
1 file changed, 16 insertions(+), 32 deletions(-)
diff --git a/lib/radix-tree.c b/lib/r
I had previously decided that tagging a single multiorder entry would
count as tagging 2^order entries for the purposes of 'nr_to_tag'.
I now believe that decision to be a mistake, and it should count as a
single entry. That's more likely to be what callers expect.
When walking back up the tree f
On Thu, Apr 14, 2016 at 11:44:09AM +0900, Michel Dänzer wrote:
> On 12.04.2016 23:16, Greg Kroah-Hartman wrote:
> > On Mon, Apr 11, 2016 at 11:26:00AM +0900, Michel Dänzer wrote:
> >> On 11.04.2016 03:36, Greg Kroah-Hartman wrote:
> >>> 4.4-stable review patch. If anyone has any objections, please
From: Ross Zwisler
Currently the full suite of regression tests take upwards of 30 minutes to
run on my development machine. The vast majority of this time is taken by
the big_gang_check() and copy_tag_check() tests, which each run their tests
through thousands of iterations...does this have val
Without this patch, the last output doesn't have timestamp appended if
--timestamp-filename is not explicitly provided. For example:
# perf record -a --switch-output &
[1] 11224
# kill -s SIGUSR2 11224
[ perf record: dump data: Woken up 1 times ]
# [ perf record: Dump perf.data.20151226223728
On 14/04/16 14:20, Suzuki K Poulose wrote:
> Introduce hyp_pxx_table_empty helpers for checking whether
> a given table entry is empty. This will be used explicitly
> once we switch to explicit routines for hyp page table walk.
>
> Cc: Marc Zyngier
> Reviewed-by: Christoffer Dall
> Signed-off-by
Tracking events describe kernel and threads. They are generated by
reading /proc/kallsyms, /proc/*/maps and /proc/*/task/* during
initialization of 'perf record', serialized into event sequences and put
at the head of 'perf.data'. In case of output switching, each output
file should contain those e
From: Ross Zwisler
Add a unit test to verify that we can iterate over multi-order entries
properly via a radix_tree_for_each_slot() loop.
This was done with a single, somewhat complicated configuration that was
meant to test many of the various corner cases having to do with
multi-order entries:
Allow 'perf record' splits its output into multiple files.
For example:
# ~/perf record -a --timestamp-filename --switch-output &
[1] 10763
# kill -s SIGUSR2 10763
[ perf record: dump data: Woken up 1 times ]
# [ perf record: Dump perf.data.2015122622314468 ]
# kill -s SIGUSR2 10763
[ per
Create a new 'class' named 'trigger' to model state of a trigger
and implement auxtrace_snapshot with it.
'trigger' defines 3 state transfering functions ('on', 'enable',
'disable') and 1 state query function ('is_enabled'). The state
'ON' and 'OFF' take higher priority than 'ENABLED' and 'DISABLE
From: Ross Zwisler
The defines in regression2.c are already in radix-tree.h and duplicating
them in the test case makes experimenting with other values for the
fan-out harder than necessary. Allow the user of the radix tree to decide
what the fan-out should be rather than fixing it to 8 for non-
Add an empty linux/init.h, and definitions for a few parts of the kernel
API either in use now, or to be used in the near future. Start using
the common definitions in tools/include/linux, although more work needs
to be done here.
Signed-off-by: Matthew Wilcox
Reviewed-by: Ross Zwisler
---
too
Cost of buildid cache processing is high: reading all events in output
perf.data, opening each elf file to read buildids then copying them into
~/.debug directory. In switch output mode, these heavy works block perf
from receiving perf events for too long.
Enable no-buildid and no-buildid-cache by
This patch set is based on perf/core.
v1 -> v2: Fix a bug which triggers output switching without
'--switch-output' provided.
Patch 5/10 in v1 has a bug: with following cmdline:
# perf record -e intel_bts// --per-thread --snapshot -p 13588
Sending 'SIGUSR2' to perf triggers output swi
On Thu, Apr 14, 2016 at 03:41:17PM +0200, Sebastian Andrzej Siewior wrote:
> On 04/14/2016 03:18 PM, Frederic Weisbecker wrote:
> > I think I tried this but I got lockdep warnings because the other updaters
> > happen on IRQ.
>
> I booted and played a little but lockdep didn't scream here so far.
With 'perf record --switch-output' without -a, record__synthesize() in
record__switch_output() won't generate tracking events because there's
no thread_map in evlist. Which causes newly created perf.data doesn't
contain map and comm information.
This patch creates a fake thread_map and directly ca
On 14/04/16 14:20, Suzuki K Poulose wrote:
> Define the page table helpers for walking the stage2 pagetable
> for arm. Since both hyp and stage2 have the same number of levels,
> as that of the host we reuse the host helpers.
>
> The exceptions are the p.d_addr_end routines which have to deal
> wi
From: Ross Zwisler
When we make changes to radix-tree.h in the regular kernel source
(include/linux/radix-tree.h), we really want our test code to be rebuilt.
We also include a few other headers from tools/include and probably want
to rebuild if these have been changed.
Update the makefile so t
From: Ross Zwisler
radix_tree_for_each_chunk() and radix_tree_for_each_chunk_slot()
have never been used in the kernel since their introduction in 2012,
so remove them.
Signed-off-by: Ross Zwisler
Signed-off-by: Matthew Wilcox
---
include/linux/radix-tree.h | 28
If we deleted an entry through an index which looked up a sibling
pointer, we'd end up zeroing out the wrong slots in the node.
Use get_slot_offset() to find the right slot.
Signed-off-by: Matthew Wilcox
Reviewed-by: Ross Zwisler
---
lib/radix-tree.c | 2 +-
1 file changed, 1 insertion(+), 1 de
Test suite infrastructure for working with multiorder entries.
The test itself is pretty basic: Add an entry, check that all expected
indices return that entry and that indices around that entry don't return
an entry. Then delete the entry and check no index returns that entry.
Tests a few edge co
The subtraction was the wrong way round, leading to undefined behaviour
(shift by an amount larger than the size of the type).
Signed-off-by: Matthew Wilcox
Reviewed-by: Ross Zwisler
---
lib/radix-tree.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/radix-tree.c b/
On Sun, Apr 03, 2016 at 12:20:45PM +0800, Jitao Shi wrote:
[...]
> diff --git a/drivers/gpu/drm/bridge/parade-ps8640.c
> b/drivers/gpu/drm/bridge/parade-ps8640.c
> new file mode 100644
> index 000..87f8bc7
> --- /dev/null
> +++ b/drivers/gpu/drm/bridge/parade-ps8640.c
> @@ -0,0 +1,1066 @@
> +/
301 - 400 of 980 matches
Mail list logo