Skip to content

Conversation

xonatius
Copy link

@xonatius xonatius commented Sep 6, 2011

Models:

  • N120
  • R468/R418
  • X320/X420/X520
  • R510/P510
  • N350
  • R470/R420
  • R528/R728
  • SQ1S

Models:
 * N120
 * R468/R418
 * X320/X420/X520
 * R510/P510
 * N350
 * R470/R420
 * R528/R728
 * SQ1S
@torvalds
Copy link
Owner

torvalds commented Sep 6, 2011

I'm not doing github pulls. The pull requests are seriously
misdesigned, and github does horrible things to the commits.

Please don't press the "pull request" github button. Do proper kernel
pull request with diffstat, git source tree (which can be on github,
of course), branch, commit information etc etc etc.

                  Linus

@xonatius xonatius closed this Sep 7, 2011
@nils-werner
Copy link

How are pullrequest seriously misdesigned (apart from that you might be used to a different kind of workflow)?

@valpackett
Copy link
Contributor

I'm not doing linux kernel pulls. The kernel pulls are seriously
misdesigned, and linux does horrible things to the commits.

Please don't press the "pull request" kernel button. Do proper github
pull request with diffstat, git source tree (which can be on linux,
of course), branch, commit information etc etc etc.

GitHub

@tilsammans
Copy link

I honestly would like to know why github pull requests are misdesigned. I'll grant that I didn't actually create git but they seem to work just fine, is there something I am missing?

@hotwoofy
Copy link

hotwoofy commented Sep 7, 2011

@nils-werner
Copy link

See https://github.com/torvalds/diveclog/pull/18#issuecomment-2023552

Wow, great discussion went on there. Shacon raised perfectly valid points and Torvalds was basically "f this, I don't care, you're crazy". Great response!

@torvalds
Copy link
Owner

torvalds commented Sep 9, 2011

On Fri, Sep 9, 2011 at 12:49 AM, Nils Werner
reply@reply.github.com
wrote:

Wow, great discussion went on there. Shacon raised perfectly valid points and Torvalds was basically "f this, I don't care, you're crazy". Great response!

Can you read?

"If the merge message doesn't tell me who the merge is from and what
branch it was, the merge message is totally useless."

If you can't understand that, then yes, you're crazy. Or just terminally stupid.

The quality of github "issues" and comments really is very low. This
being just another example of it.

                          Linus

@nils-werner
Copy link

First, I agree with Scott: In many cases people delete their fork (or at least the branch). So where would the message point you to? The pull request of the pulling repository will much more likely be around for a long time.

Also, what if the branch you'll pull from has changed in the meantime? You'd end up with changes that are not documented in the pull request and thus not reviewed by the ones discussing the pull request. As soon as the PR is posted you must put them out of reach of the author to keep them from sneaking in changes.

Great response!

Can you read?

Also, you did notice that you've proven my point right there, right?

@torvalds
Copy link
Owner

torvalds commented Sep 9, 2011

On Fri, Sep 9, 2011 at 12:10 PM, Nils Werner
reply@reply.github.com
wrote:

First, I agree with Scott: In many cases people delete their fork (or at least the branch). So where would the message point you to? The pull request of the pulling repository will much more likely be around for a long time.

That's a "implementation problem". It's not an argument for doing crap.

Simple solution: if people delete the branch or repository, consider
the pull request dead.

You can make the "pull request" namespace separate from the branch
namespace, but do it on the source side, instead of on the
destination side like you do now. So if somebody says "please pull by
branch xyzzy", you turn it into a pull request for

git pull git://github.com/ pull/xyzzy

and then if there i a previous pull request, add a number to it (so it
becomes "pull/xyzzy-2" or whatever).

Or something along those lines. The important part is that YOU MUST
NOT THROW AWAY THE SOURCE INFORMATION!

Also, what if the branch you'll pull from has changed in the meantime?

We actually do this in the kernel on purpose sometimes - people fix up
their stuff.

That said, again, you could do the same thing: if somebody changes a
branch after created a pull request off it, just invalidate the pull
request and refuse to honor it. Again, if you do a separate
"pull/xyzzy" namespace, you should be able to validate that trivially
(save off the commit ID at the time of the pull, and refuse to serve
"pull/xyzzy" if the commit ID doesn't match the branch "xyzzy" any
more).

You'd end up with changes that are not documented in the pull request and thus not reviewed by the ones discussing the pull request.

Umm, considering that the pull requests used to have no documentation
what-so-ever before I even complained about it, that's a pretty damn
weak argument, isn't it?

As soon as the PR is posted you must put them out of reach of the
author to keep them from sneaking in changes.

Can you read?

Also, you did notice that you've proven my point right there, right?

Umm. I'm not polite. Big news. I'd rather be acerbic than stupid.

                       Linus

@nils-werner
Copy link

That's a "implementation problem".

A decentralized system that doesn't accept disappearing nodes sounds more like a design problem.

Simple solution: if people delete the branch or repository, consider the pull request dead.

Years after the branch has been merged? Is that a problem we wanted to solve?

Also, what if the branch you'll pull from has changed in the meantime?

We actually do this in the kernel on purpose sometimes - people fix up their stuff.

I meant malicuous changes. Hierarchies are shallow, elite circles basically nonexistant so that's a real issue. And the biggest strength of GitHub.

save off the commit ID at the time of the pull, and refuse to serve "pull/xyzzy" if the commit ID doesn't match the branch "xyzzy" any more

Thats the first constructive comment to this discussion. And sounds like a good idea, apart from the problem that you'd lose the link to the PR wich, to many, is more useful than being able to immediately recognise the source.

Also it would probably require lots of modifications to the deamon though.And very disciplined contributors (always make sure to use dead-end topic-branches, not everybody does that). Separating the two simply improves the workflow a lot.

It'd be interesting what @schacon has to say about it.

Umm, considering that the pull requests used to have no documentation what-so-ever before I even complained about it, that's a pretty damn weak argument, isn't it?

When was that? Months ago? I am talking about your comment 2 days ago.

@nils-werner
Copy link

Umm. I'm not polite. Big news. I'd rather be acerbic than stupid.

A personal, unrelated note: Being unable to lead an objective discussion. Judging people, then insulting them just to prove a point. Recognising ones flaws but being unwilling to change them, instead bragging about them. Missing the ability to reflect on ones actions during interactions with others.

That sounds pretty stupid to me. Anyways, I'm moving on.

@jeffWelling
Copy link

@nils-werner

A decentralized system that doesn't accept disappearing nodes sounds more like a design problem.

I thought we were talking about pull requests and branches? When did a branch become a node?
Perhaps I'm missing something but this sounds simple; if you have a change and you want someone else to pull it, it sounds reasonable to expect you to keep the change published at least until it is pulled.

I meant malicuous changes. Hierarchies are shallow, elite circles basically nonexistant so that's a real issue. And the biggest strength of GitHub.

Except that, as indicated by Scott Chacon [0], the most common scenario is to perform the pull request locally on your machine, allowing you to pull the code and then review it without said code being changed before merging. I can understand your argument in relation to pull requests done using the button on the website though.

[0] https://github.com/torvalds/diveclog/pull/18

cuviper pushed a commit to cuviper/linux-uprobes that referenced this pull request Nov 3, 2011
* Ingo Molnar <mingo@elte.hu> wrote:

> The patch below addresses these concerns, serializes the output, tidies up the
> printout, resulting in this new output:

There's one bug remaining that my patch does not address: the vCPUs are not
printed in order:

# vCPU #0's dump:
# vCPU #2's dump:
# vCPU torvalds#24's dump:
# vCPU #5's dump:
# vCPU torvalds#39's dump:
# vCPU torvalds#38's dump:
# vCPU torvalds#51's dump:
# vCPU torvalds#11's dump:
# vCPU torvalds#10's dump:
# vCPU torvalds#12's dump:

This is undesirable as the order of printout is highly random, so successive
dumps are difficult to compare.

The patch below serializes the signalling itself. (this is on top of the
previous patch)

The patch also tweaks the vCPU printout line a bit so that it does not start
with '#', which is discarded if such messages are pasted into Git commit
messages.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
torvalds pushed a commit that referenced this pull request Dec 15, 2011
If the pte mapping in generic_perform_write() is unmapped between
iov_iter_fault_in_readable() and iov_iter_copy_from_user_atomic(), the
"copied" parameter to ->end_write can be zero. ext4 couldn't cope with
it with delayed allocations enabled. This skips the i_disksize
enlargement logic if copied is zero and no new data was appeneded to
the inode.

 gdb> bt
 #0  0xffffffff811afe80 in ext4_da_should_update_i_disksize (file=0xffff88003f606a80, mapping=0xffff88001d3824e0, pos=0x1\
 08000, len=0x1000, copied=0x0, page=0xffffea0000d792e8, fsdata=0x0) at fs/ext4/inode.c:2467
 #1  ext4_da_write_end (file=0xffff88003f606a80, mapping=0xffff88001d3824e0, pos=0x108000, len=0x1000, copied=0x0, page=0\
 xffffea0000d792e8, fsdata=0x0) at fs/ext4/inode.c:2512
 #2  0xffffffff810d97f1 in generic_perform_write (iocb=<value optimized out>, iov=<value optimized out>, nr_segs=<value o\
 ptimized out>, pos=0x108000, ppos=0xffff88001e26be40, count=<value optimized out>, written=0x0) at mm/filemap.c:2440
 #3  generic_file_buffered_write (iocb=<value optimized out>, iov=<value optimized out>, nr_segs=<value optimized out>, p\
 os=0x108000, ppos=0xffff88001e26be40, count=<value optimized out>, written=0x0) at mm/filemap.c:2482
 #4  0xffffffff810db5d1 in __generic_file_aio_write (iocb=0xffff88001e26bde8, iov=0xffff88001e26bec8, nr_segs=0x1, ppos=0\
 xffff88001e26be40) at mm/filemap.c:2600
 #5  0xffffffff810db853 in generic_file_aio_write (iocb=0xffff88001e26bde8, iov=0xffff88001e26bec8, nr_segs=<value optimi\
 zed out>, pos=<value optimized out>) at mm/filemap.c:2632
 #6  0xffffffff811a71aa in ext4_file_write (iocb=0xffff88001e26bde8, iov=0xffff88001e26bec8, nr_segs=0x1, pos=0x108000) a\
 t fs/ext4/file.c:136
 #7  0xffffffff811375aa in do_sync_write (filp=0xffff88003f606a80, buf=<value optimized out>, len=<value optimized out>, \
 ppos=0xffff88001e26bf48) at fs/read_write.c:406
 #8  0xffffffff81137e56 in vfs_write (file=0xffff88003f606a80, buf=0x1ec2960 <Address 0x1ec2960 out of bounds>, count=0x4\
 000, pos=0xffff88001e26bf48) at fs/read_write.c:435
 #9  0xffffffff8113816c in sys_write (fd=<value optimized out>, buf=0x1ec2960 <Address 0x1ec2960 out of bounds>, count=0x\
 4000) at fs/read_write.c:487
 #10 <signal handler called>
 #11 0x00007f120077a390 in __brk_reservation_fn_dmi_alloc__ ()
 #12 0x0000000000000000 in ?? ()
 gdb> print offset
 $22 = 0xffffffffffffffff
 gdb> print idx
 $23 = 0xffffffff
 gdb> print inode->i_blkbits
 $24 = 0xc
 gdb> up
 #1  ext4_da_write_end (file=0xffff88003f606a80, mapping=0xffff88001d3824e0, pos=0x108000, len=0x1000, copied=0x0, page=0\
 xffffea0000d792e8, fsdata=0x0) at fs/ext4/inode.c:2512
 2512                    if (ext4_da_should_update_i_disksize(page, end)) {
 gdb> print start
 $25 = 0x0
 gdb> print end
 $26 = 0xffffffffffffffff
 gdb> print pos
 $27 = 0x108000
 gdb> print new_i_size
 $28 = 0x108000
 gdb> print ((struct ext4_inode_info *)((char *)inode-((int)(&((struct ext4_inode_info *)0)->vfs_inode))))->i_disksize
 $29 = 0xd9000
 gdb> down
 2467            for (i = 0; i < idx; i++)
 gdb> print i
 $30 = 0xd44acbee

This is 100% reproducible with some autonuma development code tuned in
a very aggressive manner (not normal way even for knumad) which does
"exotic" changes to the ptes. It wouldn't normally trigger but I don't
see why it can't happen normally if the page is added to swap cache in
between the two faults leading to "copied" being zero (which then
hangs in ext4). So it should be fixed. Especially possible with lumpy
reclaim (albeit disabled if compaction is enabled) as that would
ignore the young bits in the ptes.

Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Cc: stable@kernel.org
jkstrick pushed a commit to jkstrick/linux that referenced this pull request Feb 11, 2012
If the netdev is already in NETREG_UNREGISTERING/_UNREGISTERED state, do not
update the real num tx queues. netdev_queue_update_kobjects() is already
called via remove_queue_kobjects() at NETREG_UNREGISTERING time. So, when
upper layer driver, e.g., FCoE protocol stack is monitoring the netdev
event of NETDEV_UNREGISTER and calls back to LLD ndo_fcoe_disable() to remove
extra queues allocated for FCoE, the associated txq sysfs kobjects are already
removed, and trying to update the real num queues would cause something like
below:

...
PID: 25138  TASK: ffff88021e64c440  CPU: 3   COMMAND: "kworker/3:3"
 #0 [ffff88021f007760] machine_kexec at ffffffff810226d9
 #1 [ffff88021f0077d0] crash_kexec at ffffffff81089d2d
 #2 [ffff88021f0078a0] oops_end at ffffffff813bca78
 #3 [ffff88021f0078d0] no_context at ffffffff81029e72
 #4 [ffff88021f007920] __bad_area_nosemaphore at ffffffff8102a155
 #5 [ffff88021f0079f0] bad_area_nosemaphore at ffffffff8102a23e
 torvalds#6 [ffff88021f007a00] do_page_fault at ffffffff813bf32e
 torvalds#7 [ffff88021f007b10] page_fault at ffffffff813bc045
    [exception RIP: sysfs_find_dirent+17]
    RIP: ffffffff81178611  RSP: ffff88021f007bc0  RFLAGS: 00010246
    RAX: ffff88021e64c440  RBX: ffffffff8156cc63  RCX: 0000000000000004
    RDX: ffffffff8156cc63  RSI: 0000000000000000  RDI: 0000000000000000
    RBP: ffff88021f007be0   R8: 0000000000000004   R9: 0000000000000008
    R10: ffffffff816fed00  R11: 0000000000000004  R12: 0000000000000000
    R13: ffffffff8156cc63  R14: 0000000000000000  R15: ffff8802222a0000
    ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0018
 torvalds#8 [ffff88021f007be8] sysfs_get_dirent at ffffffff81178c07
 torvalds#9 [ffff88021f007c18] sysfs_remove_group at ffffffff8117ac27
torvalds#10 [ffff88021f007c48] netdev_queue_update_kobjects at ffffffff813178f9
torvalds#11 [ffff88021f007c88] netif_set_real_num_tx_queues at ffffffff81303e38
torvalds#12 [ffff88021f007cc8] ixgbe_set_num_queues at ffffffffa0249763 [ixgbe]
torvalds#13 [ffff88021f007cf8] ixgbe_init_interrupt_scheme at ffffffffa024ea89 [ixgbe]
torvalds#14 [ffff88021f007d48] ixgbe_fcoe_disable at ffffffffa0267113 [ixgbe]
torvalds#15 [ffff88021f007d68] vlan_dev_fcoe_disable at ffffffffa014fef5 [8021q]
torvalds#16 [ffff88021f007d78] fcoe_interface_cleanup at ffffffffa02b7dfd [fcoe]
torvalds#17 [ffff88021f007df8] fcoe_destroy_work at ffffffffa02b7f08 [fcoe]
torvalds#18 [ffff88021f007e18] process_one_work at ffffffff8105d7ca
torvalds#19 [ffff88021f007e68] worker_thread at ffffffff81060513
torvalds#20 [ffff88021f007ee8] kthread at ffffffff810648b6
torvalds#21 [ffff88021f007f48] kernel_thread_helper at ffffffff813c40f4

Signed-off-by: Yi Zou <yi.zou@intel.com>
Tested-by: Ross Brattain <ross.b.brattain@intel.com>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
zachariasmaladroit pushed a commit to galaxys-cm7miui-kernel/linux that referenced this pull request Feb 11, 2012
If the netdev is already in NETREG_UNREGISTERING/_UNREGISTERED state, do not
update the real num tx queues. netdev_queue_update_kobjects() is already
called via remove_queue_kobjects() at NETREG_UNREGISTERING time. So, when
upper layer driver, e.g., FCoE protocol stack is monitoring the netdev
event of NETDEV_UNREGISTER and calls back to LLD ndo_fcoe_disable() to remove
extra queues allocated for FCoE, the associated txq sysfs kobjects are already
removed, and trying to update the real num queues would cause something like
below:

...
PID: 25138  TASK: ffff88021e64c440  CPU: 3   COMMAND: "kworker/3:3"
 #0 [ffff88021f007760] machine_kexec at ffffffff810226d9
 #1 [ffff88021f0077d0] crash_kexec at ffffffff81089d2d
 #2 [ffff88021f0078a0] oops_end at ffffffff813bca78
 #3 [ffff88021f0078d0] no_context at ffffffff81029e72
 #4 [ffff88021f007920] __bad_area_nosemaphore at ffffffff8102a155
 #5 [ffff88021f0079f0] bad_area_nosemaphore at ffffffff8102a23e
 torvalds#6 [ffff88021f007a00] do_page_fault at ffffffff813bf32e
 torvalds#7 [ffff88021f007b10] page_fault at ffffffff813bc045
    [exception RIP: sysfs_find_dirent+17]
    RIP: ffffffff81178611  RSP: ffff88021f007bc0  RFLAGS: 00010246
    RAX: ffff88021e64c440  RBX: ffffffff8156cc63  RCX: 0000000000000004
    RDX: ffffffff8156cc63  RSI: 0000000000000000  RDI: 0000000000000000
    RBP: ffff88021f007be0   R8: 0000000000000004   R9: 0000000000000008
    R10: ffffffff816fed00  R11: 0000000000000004  R12: 0000000000000000
    R13: ffffffff8156cc63  R14: 0000000000000000  R15: ffff8802222a0000
    ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0018
 torvalds#8 [ffff88021f007be8] sysfs_get_dirent at ffffffff81178c07
 torvalds#9 [ffff88021f007c18] sysfs_remove_group at ffffffff8117ac27
torvalds#10 [ffff88021f007c48] netdev_queue_update_kobjects at ffffffff813178f9
torvalds#11 [ffff88021f007c88] netif_set_real_num_tx_queues at ffffffff81303e38
torvalds#12 [ffff88021f007cc8] ixgbe_set_num_queues at ffffffffa0249763 [ixgbe]
torvalds#13 [ffff88021f007cf8] ixgbe_init_interrupt_scheme at ffffffffa024ea89 [ixgbe]
torvalds#14 [ffff88021f007d48] ixgbe_fcoe_disable at ffffffffa0267113 [ixgbe]
torvalds#15 [ffff88021f007d68] vlan_dev_fcoe_disable at ffffffffa014fef5 [8021q]
torvalds#16 [ffff88021f007d78] fcoe_interface_cleanup at ffffffffa02b7dfd [fcoe]
torvalds#17 [ffff88021f007df8] fcoe_destroy_work at ffffffffa02b7f08 [fcoe]
torvalds#18 [ffff88021f007e18] process_one_work at ffffffff8105d7ca
torvalds#19 [ffff88021f007e68] worker_thread at ffffffff81060513
torvalds#20 [ffff88021f007ee8] kthread at ffffffff810648b6
torvalds#21 [ffff88021f007f48] kernel_thread_helper at ffffffff813c40f4

Signed-off-by: Yi Zou <yi.zou@intel.com>
Tested-by: Ross Brattain <ross.b.brattain@intel.com>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
tworaz pushed a commit to tworaz/linux that referenced this pull request Feb 13, 2012
…S block during isolation for migration

commit 0bf380b upstream.

When isolating for migration, migration starts at the start of a zone
which is not necessarily pageblock aligned.  Further, it stops isolating
when COMPACT_CLUSTER_MAX pages are isolated so migrate_pfn is generally
not aligned.  This allows isolate_migratepages() to call pfn_to_page() on
an invalid PFN which can result in a crash.  This was originally reported
against a 3.0-based kernel with the following trace in a crash dump.

PID: 9902   TASK: d47aecd0  CPU: 0   COMMAND: "memcg_process_s"
 #0 [d72d3ad0] crash_kexec at c028cfdb
 #1 [d72d3b24] oops_end at c05c5322
 #2 [d72d3b38] __bad_area_nosemaphore at c0227e60
 #3 [d72d3bec] bad_area at c0227fb6
 #4 [d72d3c00] do_page_fault at c05c72e
 #5 [d72d3c80] error_code (via page_fault) at c05c47a4
    EAX: 00000000  EBX: 000c0000  ECX: 00000001  EDX: 00000807  EBP: 000c0000
    DS:  007b      ESI: 00000001  ES:  007b      EDI: f3000a80  GS:  6f50
    CS:  0060      EIP: c030b15a  ERR: ffffffff  EFLAGS: 00010002
 torvalds#6 [d72d3cb4] isolate_migratepages at c030b15a
 torvalds#7 [d72d3d1] zone_watermark_ok at c02d26cb
 torvalds#8 [d72d3d2c] compact_zone at c030b8d
 torvalds#9 [d72d3d68] compact_zone_order at c030bba1
torvalds#10 [d72d3db4] try_to_compact_pages at c030bc84
torvalds#11 [d72d3ddc] __alloc_pages_direct_compact at c02d61e7
torvalds#12 [d72d3e08] __alloc_pages_slowpath at c02d66c7
torvalds#13 [d72d3e78] __alloc_pages_nodemask at c02d6a97
torvalds#14 [d72d3eb8] alloc_pages_vma at c030a845
torvalds#15 [d72d3ed4] do_huge_pmd_anonymous_page at c03178eb
torvalds#16 [d72d3f00] handle_mm_fault at c02f36c6
torvalds#17 [d72d3f30] do_page_fault at c05c70ed
torvalds#18 [d72d3fb] error_code (via page_fault) at c05c47a4
    EAX: b71ff000  EBX: 00000001  ECX: 00001600  EDX: 00000431
    DS:  007b      ESI: 08048950  ES:  007b      EDI: bfaa3788
    SS:  007b      ESP: bfaa36e0  EBP: bfaa3828  GS:  6f50
    CS:  0073      EIP: 080487c8  ERR: ffffffff  EFLAGS: 00010202

It was also reported by Herbert van den Bergh against 3.1-based kernel
with the following snippet from the console log.

BUG: unable to handle kernel paging request at 01c00008
IP: [<c0522399>] isolate_migratepages+0x119/0x390
*pdpt = 000000002f7ce001 *pde = 0000000000000000

It is expected that it also affects 3.2.x and current mainline.

The problem is that pfn_valid is only called on the first PFN being
checked and that PFN is not necessarily aligned.  Lets say we have a case
like this

H = MAX_ORDER_NR_PAGES boundary
| = pageblock boundary
m = cc->migrate_pfn
f = cc->free_pfn
o = memory hole

H------|------H------|----m-Hoooooo|ooooooH-f----|------H

The migrate_pfn is just below a memory hole and the free scanner is beyond
the hole.  When isolate_migratepages started, it scans from migrate_pfn to
migrate_pfn+pageblock_nr_pages which is now in a memory hole.  It checks
pfn_valid() on the first PFN but then scans into the hole where there are
not necessarily valid struct pages.

This patch ensures that isolate_migratepages calls pfn_valid when
necessary.

Reported-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Tested-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Signed-off-by: Mel Gorman <mgorman@suse.de>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
xXorAa pushed a commit to xXorAa/linux that referenced this pull request Feb 17, 2012
…S block during isolation for migration

commit 0bf380b upstream.

When isolating for migration, migration starts at the start of a zone
which is not necessarily pageblock aligned.  Further, it stops isolating
when COMPACT_CLUSTER_MAX pages are isolated so migrate_pfn is generally
not aligned.  This allows isolate_migratepages() to call pfn_to_page() on
an invalid PFN which can result in a crash.  This was originally reported
against a 3.0-based kernel with the following trace in a crash dump.

PID: 9902   TASK: d47aecd0  CPU: 0   COMMAND: "memcg_process_s"
 #0 [d72d3ad0] crash_kexec at c028cfdb
 #1 [d72d3b24] oops_end at c05c5322
 #2 [d72d3b38] __bad_area_nosemaphore at c0227e60
 #3 [d72d3bec] bad_area at c0227fb6
 #4 [d72d3c00] do_page_fault at c05c72e
 #5 [d72d3c80] error_code (via page_fault) at c05c47a4
    EAX: 00000000  EBX: 000c0000  ECX: 00000001  EDX: 00000807  EBP: 000c0000
    DS:  007b      ESI: 00000001  ES:  007b      EDI: f3000a80  GS:  6f50
    CS:  0060      EIP: c030b15a  ERR: ffffffff  EFLAGS: 00010002
 torvalds#6 [d72d3cb4] isolate_migratepages at c030b15a
 torvalds#7 [d72d3d1] zone_watermark_ok at c02d26cb
 torvalds#8 [d72d3d2c] compact_zone at c030b8d
 torvalds#9 [d72d3d68] compact_zone_order at c030bba1
torvalds#10 [d72d3db4] try_to_compact_pages at c030bc84
torvalds#11 [d72d3ddc] __alloc_pages_direct_compact at c02d61e7
torvalds#12 [d72d3e08] __alloc_pages_slowpath at c02d66c7
torvalds#13 [d72d3e78] __alloc_pages_nodemask at c02d6a97
torvalds#14 [d72d3eb8] alloc_pages_vma at c030a845
torvalds#15 [d72d3ed4] do_huge_pmd_anonymous_page at c03178eb
torvalds#16 [d72d3f00] handle_mm_fault at c02f36c6
torvalds#17 [d72d3f30] do_page_fault at c05c70ed
torvalds#18 [d72d3fb] error_code (via page_fault) at c05c47a4
    EAX: b71ff000  EBX: 00000001  ECX: 00001600  EDX: 00000431
    DS:  007b      ESI: 08048950  ES:  007b      EDI: bfaa3788
    SS:  007b      ESP: bfaa36e0  EBP: bfaa3828  GS:  6f50
    CS:  0073      EIP: 080487c8  ERR: ffffffff  EFLAGS: 00010202

It was also reported by Herbert van den Bergh against 3.1-based kernel
with the following snippet from the console log.

BUG: unable to handle kernel paging request at 01c00008
IP: [<c0522399>] isolate_migratepages+0x119/0x390
*pdpt = 000000002f7ce001 *pde = 0000000000000000

It is expected that it also affects 3.2.x and current mainline.

The problem is that pfn_valid is only called on the first PFN being
checked and that PFN is not necessarily aligned.  Lets say we have a case
like this

H = MAX_ORDER_NR_PAGES boundary
| = pageblock boundary
m = cc->migrate_pfn
f = cc->free_pfn
o = memory hole

H------|------H------|----m-Hoooooo|ooooooH-f----|------H

The migrate_pfn is just below a memory hole and the free scanner is beyond
the hole.  When isolate_migratepages started, it scans from migrate_pfn to
migrate_pfn+pageblock_nr_pages which is now in a memory hole.  It checks
pfn_valid() on the first PFN but then scans into the hole where there are
not necessarily valid struct pages.

This patch ensures that isolate_migratepages calls pfn_valid when
necessary.

Reported-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Tested-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Signed-off-by: Mel Gorman <mgorman@suse.de>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
koct9i pushed a commit to koct9i/linux that referenced this pull request Feb 20, 2012
fixed:
WARNING: please, no space before tabs
torvalds#11: FILE: adt7411.c:11:
+ * ^I  use power-down mode for suspend?, interrupt handling?$

not fixed as all other macros around it are the same structure and this one is only 2 chars longer:
WARNING: line over 80 characters
torvalds#229: FILE: adt7411.c:229:
+static ADT7411_BIT_ATTR(fast_sampling, ADT7411_REG_CFG3, ADT7411_CFG3_ADC_CLK_225);

Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
koenkooi pushed a commit to koenkooi/linux that referenced this pull request Feb 23, 2012
…S block during isolation for migration

commit 0bf380b upstream.

When isolating for migration, migration starts at the start of a zone
which is not necessarily pageblock aligned.  Further, it stops isolating
when COMPACT_CLUSTER_MAX pages are isolated so migrate_pfn is generally
not aligned.  This allows isolate_migratepages() to call pfn_to_page() on
an invalid PFN which can result in a crash.  This was originally reported
against a 3.0-based kernel with the following trace in a crash dump.

PID: 9902   TASK: d47aecd0  CPU: 0   COMMAND: "memcg_process_s"
 #0 [d72d3ad0] crash_kexec at c028cfdb
 #1 [d72d3b24] oops_end at c05c5322
 #2 [d72d3b38] __bad_area_nosemaphore at c0227e60
 #3 [d72d3bec] bad_area at c0227fb6
 #4 [d72d3c00] do_page_fault at c05c72e
 #5 [d72d3c80] error_code (via page_fault) at c05c47a4
    EAX: 00000000  EBX: 000c0000  ECX: 00000001  EDX: 00000807  EBP: 000c0000
    DS:  007b      ESI: 00000001  ES:  007b      EDI: f3000a80  GS:  6f50
    CS:  0060      EIP: c030b15a  ERR: ffffffff  EFLAGS: 00010002
 #6 [d72d3cb4] isolate_migratepages at c030b15a
 #7 [d72d3d1] zone_watermark_ok at c02d26cb
 #8 [d72d3d2c] compact_zone at c030b8d
 #9 [d72d3d68] compact_zone_order at c030bba1
torvalds#10 [d72d3db4] try_to_compact_pages at c030bc84
torvalds#11 [d72d3ddc] __alloc_pages_direct_compact at c02d61e7
torvalds#12 [d72d3e08] __alloc_pages_slowpath at c02d66c7
torvalds#13 [d72d3e78] __alloc_pages_nodemask at c02d6a97
torvalds#14 [d72d3eb8] alloc_pages_vma at c030a845
torvalds#15 [d72d3ed4] do_huge_pmd_anonymous_page at c03178eb
torvalds#16 [d72d3f00] handle_mm_fault at c02f36c6
torvalds#17 [d72d3f30] do_page_fault at c05c70ed
torvalds#18 [d72d3fb] error_code (via page_fault) at c05c47a4
    EAX: b71ff000  EBX: 00000001  ECX: 00001600  EDX: 00000431
    DS:  007b      ESI: 08048950  ES:  007b      EDI: bfaa3788
    SS:  007b      ESP: bfaa36e0  EBP: bfaa3828  GS:  6f50
    CS:  0073      EIP: 080487c8  ERR: ffffffff  EFLAGS: 00010202

It was also reported by Herbert van den Bergh against 3.1-based kernel
with the following snippet from the console log.

BUG: unable to handle kernel paging request at 01c00008
IP: [<c0522399>] isolate_migratepages+0x119/0x390
*pdpt = 000000002f7ce001 *pde = 0000000000000000

It is expected that it also affects 3.2.x and current mainline.

The problem is that pfn_valid is only called on the first PFN being
checked and that PFN is not necessarily aligned.  Lets say we have a case
like this

H = MAX_ORDER_NR_PAGES boundary
| = pageblock boundary
m = cc->migrate_pfn
f = cc->free_pfn
o = memory hole

H------|------H------|----m-Hoooooo|ooooooH-f----|------H

The migrate_pfn is just below a memory hole and the free scanner is beyond
the hole.  When isolate_migratepages started, it scans from migrate_pfn to
migrate_pfn+pageblock_nr_pages which is now in a memory hole.  It checks
pfn_valid() on the first PFN but then scans into the hole where there are
not necessarily valid struct pages.

This patch ensures that isolate_migratepages calls pfn_valid when
necessary.

Reported-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Tested-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Signed-off-by: Mel Gorman <mgorman@suse.de>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
koenkooi pushed a commit to koenkooi/linux that referenced this pull request Mar 1, 2012
…S block during isolation for migration

commit 0bf380b upstream.

When isolating for migration, migration starts at the start of a zone
which is not necessarily pageblock aligned.  Further, it stops isolating
when COMPACT_CLUSTER_MAX pages are isolated so migrate_pfn is generally
not aligned.  This allows isolate_migratepages() to call pfn_to_page() on
an invalid PFN which can result in a crash.  This was originally reported
against a 3.0-based kernel with the following trace in a crash dump.

PID: 9902   TASK: d47aecd0  CPU: 0   COMMAND: "memcg_process_s"
 #0 [d72d3ad0] crash_kexec at c028cfdb
 #1 [d72d3b24] oops_end at c05c5322
 #2 [d72d3b38] __bad_area_nosemaphore at c0227e60
 #3 [d72d3bec] bad_area at c0227fb6
 #4 [d72d3c00] do_page_fault at c05c72e
 #5 [d72d3c80] error_code (via page_fault) at c05c47a4
    EAX: 00000000  EBX: 000c0000  ECX: 00000001  EDX: 00000807  EBP: 000c0000
    DS:  007b      ESI: 00000001  ES:  007b      EDI: f3000a80  GS:  6f50
    CS:  0060      EIP: c030b15a  ERR: ffffffff  EFLAGS: 00010002
 #6 [d72d3cb4] isolate_migratepages at c030b15a
 #7 [d72d3d1] zone_watermark_ok at c02d26cb
 #8 [d72d3d2c] compact_zone at c030b8d
 #9 [d72d3d68] compact_zone_order at c030bba1
torvalds#10 [d72d3db4] try_to_compact_pages at c030bc84
torvalds#11 [d72d3ddc] __alloc_pages_direct_compact at c02d61e7
torvalds#12 [d72d3e08] __alloc_pages_slowpath at c02d66c7
torvalds#13 [d72d3e78] __alloc_pages_nodemask at c02d6a97
torvalds#14 [d72d3eb8] alloc_pages_vma at c030a845
torvalds#15 [d72d3ed4] do_huge_pmd_anonymous_page at c03178eb
torvalds#16 [d72d3f00] handle_mm_fault at c02f36c6
torvalds#17 [d72d3f30] do_page_fault at c05c70ed
torvalds#18 [d72d3fb] error_code (via page_fault) at c05c47a4
    EAX: b71ff000  EBX: 00000001  ECX: 00001600  EDX: 00000431
    DS:  007b      ESI: 08048950  ES:  007b      EDI: bfaa3788
    SS:  007b      ESP: bfaa36e0  EBP: bfaa3828  GS:  6f50
    CS:  0073      EIP: 080487c8  ERR: ffffffff  EFLAGS: 00010202

It was also reported by Herbert van den Bergh against 3.1-based kernel
with the following snippet from the console log.

BUG: unable to handle kernel paging request at 01c00008
IP: [<c0522399>] isolate_migratepages+0x119/0x390
*pdpt = 000000002f7ce001 *pde = 0000000000000000

It is expected that it also affects 3.2.x and current mainline.

The problem is that pfn_valid is only called on the first PFN being
checked and that PFN is not necessarily aligned.  Lets say we have a case
like this

H = MAX_ORDER_NR_PAGES boundary
| = pageblock boundary
m = cc->migrate_pfn
f = cc->free_pfn
o = memory hole

H------|------H------|----m-Hoooooo|ooooooH-f----|------H

The migrate_pfn is just below a memory hole and the free scanner is beyond
the hole.  When isolate_migratepages started, it scans from migrate_pfn to
migrate_pfn+pageblock_nr_pages which is now in a memory hole.  It checks
pfn_valid() on the first PFN but then scans into the hole where there are
not necessarily valid struct pages.

This patch ensures that isolate_migratepages calls pfn_valid when
necessary.

Reported-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Tested-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Signed-off-by: Mel Gorman <mgorman@suse.de>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
koenkooi pushed a commit to koenkooi/linux that referenced this pull request Mar 19, 2012
…S block during isolation for migration

commit 0bf380b upstream.

When isolating for migration, migration starts at the start of a zone
which is not necessarily pageblock aligned.  Further, it stops isolating
when COMPACT_CLUSTER_MAX pages are isolated so migrate_pfn is generally
not aligned.  This allows isolate_migratepages() to call pfn_to_page() on
an invalid PFN which can result in a crash.  This was originally reported
against a 3.0-based kernel with the following trace in a crash dump.

PID: 9902   TASK: d47aecd0  CPU: 0   COMMAND: "memcg_process_s"
 #0 [d72d3ad0] crash_kexec at c028cfdb
 #1 [d72d3b24] oops_end at c05c5322
 #2 [d72d3b38] __bad_area_nosemaphore at c0227e60
 #3 [d72d3bec] bad_area at c0227fb6
 #4 [d72d3c00] do_page_fault at c05c72e
 #5 [d72d3c80] error_code (via page_fault) at c05c47a4
    EAX: 00000000  EBX: 000c0000  ECX: 00000001  EDX: 00000807  EBP: 000c0000
    DS:  007b      ESI: 00000001  ES:  007b      EDI: f3000a80  GS:  6f50
    CS:  0060      EIP: c030b15a  ERR: ffffffff  EFLAGS: 00010002
 #6 [d72d3cb4] isolate_migratepages at c030b15a
 #7 [d72d3d1] zone_watermark_ok at c02d26cb
 #8 [d72d3d2c] compact_zone at c030b8d
 #9 [d72d3d68] compact_zone_order at c030bba1
torvalds#10 [d72d3db4] try_to_compact_pages at c030bc84
torvalds#11 [d72d3ddc] __alloc_pages_direct_compact at c02d61e7
torvalds#12 [d72d3e08] __alloc_pages_slowpath at c02d66c7
torvalds#13 [d72d3e78] __alloc_pages_nodemask at c02d6a97
torvalds#14 [d72d3eb8] alloc_pages_vma at c030a845
torvalds#15 [d72d3ed4] do_huge_pmd_anonymous_page at c03178eb
torvalds#16 [d72d3f00] handle_mm_fault at c02f36c6
torvalds#17 [d72d3f30] do_page_fault at c05c70ed
torvalds#18 [d72d3fb] error_code (via page_fault) at c05c47a4
    EAX: b71ff000  EBX: 00000001  ECX: 00001600  EDX: 00000431
    DS:  007b      ESI: 08048950  ES:  007b      EDI: bfaa3788
    SS:  007b      ESP: bfaa36e0  EBP: bfaa3828  GS:  6f50
    CS:  0073      EIP: 080487c8  ERR: ffffffff  EFLAGS: 00010202

It was also reported by Herbert van den Bergh against 3.1-based kernel
with the following snippet from the console log.

BUG: unable to handle kernel paging request at 01c00008
IP: [<c0522399>] isolate_migratepages+0x119/0x390
*pdpt = 000000002f7ce001 *pde = 0000000000000000

It is expected that it also affects 3.2.x and current mainline.

The problem is that pfn_valid is only called on the first PFN being
checked and that PFN is not necessarily aligned.  Lets say we have a case
like this

H = MAX_ORDER_NR_PAGES boundary
| = pageblock boundary
m = cc->migrate_pfn
f = cc->free_pfn
o = memory hole

H------|------H------|----m-Hoooooo|ooooooH-f----|------H

The migrate_pfn is just below a memory hole and the free scanner is beyond
the hole.  When isolate_migratepages started, it scans from migrate_pfn to
migrate_pfn+pageblock_nr_pages which is now in a memory hole.  It checks
pfn_valid() on the first PFN but then scans into the hole where there are
not necessarily valid struct pages.

This patch ensures that isolate_migratepages calls pfn_valid when
necessary.

Reported-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Tested-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Signed-off-by: Mel Gorman <mgorman@suse.de>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
koenkooi pushed a commit to koenkooi/linux that referenced this pull request Mar 22, 2012
…S block during isolation for migration

commit 0bf380b upstream.

When isolating for migration, migration starts at the start of a zone
which is not necessarily pageblock aligned.  Further, it stops isolating
when COMPACT_CLUSTER_MAX pages are isolated so migrate_pfn is generally
not aligned.  This allows isolate_migratepages() to call pfn_to_page() on
an invalid PFN which can result in a crash.  This was originally reported
against a 3.0-based kernel with the following trace in a crash dump.

PID: 9902   TASK: d47aecd0  CPU: 0   COMMAND: "memcg_process_s"
 #0 [d72d3ad0] crash_kexec at c028cfdb
 #1 [d72d3b24] oops_end at c05c5322
 #2 [d72d3b38] __bad_area_nosemaphore at c0227e60
 #3 [d72d3bec] bad_area at c0227fb6
 #4 [d72d3c00] do_page_fault at c05c72e
 #5 [d72d3c80] error_code (via page_fault) at c05c47a4
    EAX: 00000000  EBX: 000c0000  ECX: 00000001  EDX: 00000807  EBP: 000c0000
    DS:  007b      ESI: 00000001  ES:  007b      EDI: f3000a80  GS:  6f50
    CS:  0060      EIP: c030b15a  ERR: ffffffff  EFLAGS: 00010002
 #6 [d72d3cb4] isolate_migratepages at c030b15a
 #7 [d72d3d1] zone_watermark_ok at c02d26cb
 #8 [d72d3d2c] compact_zone at c030b8d
 #9 [d72d3d68] compact_zone_order at c030bba1
torvalds#10 [d72d3db4] try_to_compact_pages at c030bc84
torvalds#11 [d72d3ddc] __alloc_pages_direct_compact at c02d61e7
torvalds#12 [d72d3e08] __alloc_pages_slowpath at c02d66c7
torvalds#13 [d72d3e78] __alloc_pages_nodemask at c02d6a97
torvalds#14 [d72d3eb8] alloc_pages_vma at c030a845
torvalds#15 [d72d3ed4] do_huge_pmd_anonymous_page at c03178eb
torvalds#16 [d72d3f00] handle_mm_fault at c02f36c6
torvalds#17 [d72d3f30] do_page_fault at c05c70ed
torvalds#18 [d72d3fb] error_code (via page_fault) at c05c47a4
    EAX: b71ff000  EBX: 00000001  ECX: 00001600  EDX: 00000431
    DS:  007b      ESI: 08048950  ES:  007b      EDI: bfaa3788
    SS:  007b      ESP: bfaa36e0  EBP: bfaa3828  GS:  6f50
    CS:  0073      EIP: 080487c8  ERR: ffffffff  EFLAGS: 00010202

It was also reported by Herbert van den Bergh against 3.1-based kernel
with the following snippet from the console log.

BUG: unable to handle kernel paging request at 01c00008
IP: [<c0522399>] isolate_migratepages+0x119/0x390
*pdpt = 000000002f7ce001 *pde = 0000000000000000

It is expected that it also affects 3.2.x and current mainline.

The problem is that pfn_valid is only called on the first PFN being
checked and that PFN is not necessarily aligned.  Lets say we have a case
like this

H = MAX_ORDER_NR_PAGES boundary
| = pageblock boundary
m = cc->migrate_pfn
f = cc->free_pfn
o = memory hole

H------|------H------|----m-Hoooooo|ooooooH-f----|------H

The migrate_pfn is just below a memory hole and the free scanner is beyond
the hole.  When isolate_migratepages started, it scans from migrate_pfn to
migrate_pfn+pageblock_nr_pages which is now in a memory hole.  It checks
pfn_valid() on the first PFN but then scans into the hole where there are
not necessarily valid struct pages.

This patch ensures that isolate_migratepages calls pfn_valid when
necessary.

Reported-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Tested-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Signed-off-by: Mel Gorman <mgorman@suse.de>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
koenkooi pushed a commit to koenkooi/linux that referenced this pull request Apr 2, 2012
…S block during isolation for migration

commit 0bf380b upstream.

When isolating for migration, migration starts at the start of a zone
which is not necessarily pageblock aligned.  Further, it stops isolating
when COMPACT_CLUSTER_MAX pages are isolated so migrate_pfn is generally
not aligned.  This allows isolate_migratepages() to call pfn_to_page() on
an invalid PFN which can result in a crash.  This was originally reported
against a 3.0-based kernel with the following trace in a crash dump.

PID: 9902   TASK: d47aecd0  CPU: 0   COMMAND: "memcg_process_s"
 #0 [d72d3ad0] crash_kexec at c028cfdb
 #1 [d72d3b24] oops_end at c05c5322
 #2 [d72d3b38] __bad_area_nosemaphore at c0227e60
 #3 [d72d3bec] bad_area at c0227fb6
 #4 [d72d3c00] do_page_fault at c05c72e
 #5 [d72d3c80] error_code (via page_fault) at c05c47a4
    EAX: 00000000  EBX: 000c0000  ECX: 00000001  EDX: 00000807  EBP: 000c0000
    DS:  007b      ESI: 00000001  ES:  007b      EDI: f3000a80  GS:  6f50
    CS:  0060      EIP: c030b15a  ERR: ffffffff  EFLAGS: 00010002
 #6 [d72d3cb4] isolate_migratepages at c030b15a
 #7 [d72d3d1] zone_watermark_ok at c02d26cb
 #8 [d72d3d2c] compact_zone at c030b8d
 #9 [d72d3d68] compact_zone_order at c030bba1
torvalds#10 [d72d3db4] try_to_compact_pages at c030bc84
torvalds#11 [d72d3ddc] __alloc_pages_direct_compact at c02d61e7
torvalds#12 [d72d3e08] __alloc_pages_slowpath at c02d66c7
torvalds#13 [d72d3e78] __alloc_pages_nodemask at c02d6a97
torvalds#14 [d72d3eb8] alloc_pages_vma at c030a845
torvalds#15 [d72d3ed4] do_huge_pmd_anonymous_page at c03178eb
torvalds#16 [d72d3f00] handle_mm_fault at c02f36c6
torvalds#17 [d72d3f30] do_page_fault at c05c70ed
torvalds#18 [d72d3fb] error_code (via page_fault) at c05c47a4
    EAX: b71ff000  EBX: 00000001  ECX: 00001600  EDX: 00000431
    DS:  007b      ESI: 08048950  ES:  007b      EDI: bfaa3788
    SS:  007b      ESP: bfaa36e0  EBP: bfaa3828  GS:  6f50
    CS:  0073      EIP: 080487c8  ERR: ffffffff  EFLAGS: 00010202

It was also reported by Herbert van den Bergh against 3.1-based kernel
with the following snippet from the console log.

BUG: unable to handle kernel paging request at 01c00008
IP: [<c0522399>] isolate_migratepages+0x119/0x390
*pdpt = 000000002f7ce001 *pde = 0000000000000000

It is expected that it also affects 3.2.x and current mainline.

The problem is that pfn_valid is only called on the first PFN being
checked and that PFN is not necessarily aligned.  Lets say we have a case
like this

H = MAX_ORDER_NR_PAGES boundary
| = pageblock boundary
m = cc->migrate_pfn
f = cc->free_pfn
o = memory hole

H------|------H------|----m-Hoooooo|ooooooH-f----|------H

The migrate_pfn is just below a memory hole and the free scanner is beyond
the hole.  When isolate_migratepages started, it scans from migrate_pfn to
migrate_pfn+pageblock_nr_pages which is now in a memory hole.  It checks
pfn_valid() on the first PFN but then scans into the hole where there are
not necessarily valid struct pages.

This patch ensures that isolate_migratepages calls pfn_valid when
necessary.

Reported-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Tested-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Signed-off-by: Mel Gorman <mgorman@suse.de>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
koenkooi pushed a commit to koenkooi/linux that referenced this pull request Apr 9, 2012
…S block during isolation for migration

commit 0bf380b upstream.

When isolating for migration, migration starts at the start of a zone
which is not necessarily pageblock aligned.  Further, it stops isolating
when COMPACT_CLUSTER_MAX pages are isolated so migrate_pfn is generally
not aligned.  This allows isolate_migratepages() to call pfn_to_page() on
an invalid PFN which can result in a crash.  This was originally reported
against a 3.0-based kernel with the following trace in a crash dump.

PID: 9902   TASK: d47aecd0  CPU: 0   COMMAND: "memcg_process_s"
 #0 [d72d3ad0] crash_kexec at c028cfdb
 #1 [d72d3b24] oops_end at c05c5322
 #2 [d72d3b38] __bad_area_nosemaphore at c0227e60
 #3 [d72d3bec] bad_area at c0227fb6
 #4 [d72d3c00] do_page_fault at c05c72e
 #5 [d72d3c80] error_code (via page_fault) at c05c47a4
    EAX: 00000000  EBX: 000c0000  ECX: 00000001  EDX: 00000807  EBP: 000c0000
    DS:  007b      ESI: 00000001  ES:  007b      EDI: f3000a80  GS:  6f50
    CS:  0060      EIP: c030b15a  ERR: ffffffff  EFLAGS: 00010002
 #6 [d72d3cb4] isolate_migratepages at c030b15a
 #7 [d72d3d1] zone_watermark_ok at c02d26cb
 #8 [d72d3d2c] compact_zone at c030b8d
 #9 [d72d3d68] compact_zone_order at c030bba1
torvalds#10 [d72d3db4] try_to_compact_pages at c030bc84
torvalds#11 [d72d3ddc] __alloc_pages_direct_compact at c02d61e7
torvalds#12 [d72d3e08] __alloc_pages_slowpath at c02d66c7
torvalds#13 [d72d3e78] __alloc_pages_nodemask at c02d6a97
torvalds#14 [d72d3eb8] alloc_pages_vma at c030a845
torvalds#15 [d72d3ed4] do_huge_pmd_anonymous_page at c03178eb
torvalds#16 [d72d3f00] handle_mm_fault at c02f36c6
torvalds#17 [d72d3f30] do_page_fault at c05c70ed
torvalds#18 [d72d3fb] error_code (via page_fault) at c05c47a4
    EAX: b71ff000  EBX: 00000001  ECX: 00001600  EDX: 00000431
    DS:  007b      ESI: 08048950  ES:  007b      EDI: bfaa3788
    SS:  007b      ESP: bfaa36e0  EBP: bfaa3828  GS:  6f50
    CS:  0073      EIP: 080487c8  ERR: ffffffff  EFLAGS: 00010202

It was also reported by Herbert van den Bergh against 3.1-based kernel
with the following snippet from the console log.

BUG: unable to handle kernel paging request at 01c00008
IP: [<c0522399>] isolate_migratepages+0x119/0x390
*pdpt = 000000002f7ce001 *pde = 0000000000000000

It is expected that it also affects 3.2.x and current mainline.

The problem is that pfn_valid is only called on the first PFN being
checked and that PFN is not necessarily aligned.  Lets say we have a case
like this

H = MAX_ORDER_NR_PAGES boundary
| = pageblock boundary
m = cc->migrate_pfn
f = cc->free_pfn
o = memory hole

H------|------H------|----m-Hoooooo|ooooooH-f----|------H

The migrate_pfn is just below a memory hole and the free scanner is beyond
the hole.  When isolate_migratepages started, it scans from migrate_pfn to
migrate_pfn+pageblock_nr_pages which is now in a memory hole.  It checks
pfn_valid() on the first PFN but then scans into the hole where there are
not necessarily valid struct pages.

This patch ensures that isolate_migratepages calls pfn_valid when
necessary.

Reported-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Tested-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Signed-off-by: Mel Gorman <mgorman@suse.de>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
koenkooi pushed a commit to koenkooi/linux that referenced this pull request Apr 11, 2012
…S block during isolation for migration

commit 0bf380b upstream.

When isolating for migration, migration starts at the start of a zone
which is not necessarily pageblock aligned.  Further, it stops isolating
when COMPACT_CLUSTER_MAX pages are isolated so migrate_pfn is generally
not aligned.  This allows isolate_migratepages() to call pfn_to_page() on
an invalid PFN which can result in a crash.  This was originally reported
against a 3.0-based kernel with the following trace in a crash dump.

PID: 9902   TASK: d47aecd0  CPU: 0   COMMAND: "memcg_process_s"
 #0 [d72d3ad0] crash_kexec at c028cfdb
 #1 [d72d3b24] oops_end at c05c5322
 #2 [d72d3b38] __bad_area_nosemaphore at c0227e60
 #3 [d72d3bec] bad_area at c0227fb6
 #4 [d72d3c00] do_page_fault at c05c72e
 #5 [d72d3c80] error_code (via page_fault) at c05c47a4
    EAX: 00000000  EBX: 000c0000  ECX: 00000001  EDX: 00000807  EBP: 000c0000
    DS:  007b      ESI: 00000001  ES:  007b      EDI: f3000a80  GS:  6f50
    CS:  0060      EIP: c030b15a  ERR: ffffffff  EFLAGS: 00010002
 #6 [d72d3cb4] isolate_migratepages at c030b15a
 #7 [d72d3d1] zone_watermark_ok at c02d26cb
 #8 [d72d3d2c] compact_zone at c030b8d
 #9 [d72d3d68] compact_zone_order at c030bba1
torvalds#10 [d72d3db4] try_to_compact_pages at c030bc84
torvalds#11 [d72d3ddc] __alloc_pages_direct_compact at c02d61e7
torvalds#12 [d72d3e08] __alloc_pages_slowpath at c02d66c7
torvalds#13 [d72d3e78] __alloc_pages_nodemask at c02d6a97
torvalds#14 [d72d3eb8] alloc_pages_vma at c030a845
torvalds#15 [d72d3ed4] do_huge_pmd_anonymous_page at c03178eb
torvalds#16 [d72d3f00] handle_mm_fault at c02f36c6
torvalds#17 [d72d3f30] do_page_fault at c05c70ed
torvalds#18 [d72d3fb] error_code (via page_fault) at c05c47a4
    EAX: b71ff000  EBX: 00000001  ECX: 00001600  EDX: 00000431
    DS:  007b      ESI: 08048950  ES:  007b      EDI: bfaa3788
    SS:  007b      ESP: bfaa36e0  EBP: bfaa3828  GS:  6f50
    CS:  0073      EIP: 080487c8  ERR: ffffffff  EFLAGS: 00010202

It was also reported by Herbert van den Bergh against 3.1-based kernel
with the following snippet from the console log.

BUG: unable to handle kernel paging request at 01c00008
IP: [<c0522399>] isolate_migratepages+0x119/0x390
*pdpt = 000000002f7ce001 *pde = 0000000000000000

It is expected that it also affects 3.2.x and current mainline.

The problem is that pfn_valid is only called on the first PFN being
checked and that PFN is not necessarily aligned.  Lets say we have a case
like this

H = MAX_ORDER_NR_PAGES boundary
| = pageblock boundary
m = cc->migrate_pfn
f = cc->free_pfn
o = memory hole

H------|------H------|----m-Hoooooo|ooooooH-f----|------H

The migrate_pfn is just below a memory hole and the free scanner is beyond
the hole.  When isolate_migratepages started, it scans from migrate_pfn to
migrate_pfn+pageblock_nr_pages which is now in a memory hole.  It checks
pfn_valid() on the first PFN but then scans into the hole where there are
not necessarily valid struct pages.

This patch ensures that isolate_migratepages calls pfn_valid when
necessary.

Reported-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Tested-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Signed-off-by: Mel Gorman <mgorman@suse.de>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
koenkooi pushed a commit to koenkooi/linux that referenced this pull request Apr 12, 2012
…S block during isolation for migration

commit 0bf380b upstream.

When isolating for migration, migration starts at the start of a zone
which is not necessarily pageblock aligned.  Further, it stops isolating
when COMPACT_CLUSTER_MAX pages are isolated so migrate_pfn is generally
not aligned.  This allows isolate_migratepages() to call pfn_to_page() on
an invalid PFN which can result in a crash.  This was originally reported
against a 3.0-based kernel with the following trace in a crash dump.

PID: 9902   TASK: d47aecd0  CPU: 0   COMMAND: "memcg_process_s"
 #0 [d72d3ad0] crash_kexec at c028cfdb
 #1 [d72d3b24] oops_end at c05c5322
 #2 [d72d3b38] __bad_area_nosemaphore at c0227e60
 #3 [d72d3bec] bad_area at c0227fb6
 #4 [d72d3c00] do_page_fault at c05c72e
 #5 [d72d3c80] error_code (via page_fault) at c05c47a4
    EAX: 00000000  EBX: 000c0000  ECX: 00000001  EDX: 00000807  EBP: 000c0000
    DS:  007b      ESI: 00000001  ES:  007b      EDI: f3000a80  GS:  6f50
    CS:  0060      EIP: c030b15a  ERR: ffffffff  EFLAGS: 00010002
 #6 [d72d3cb4] isolate_migratepages at c030b15a
 #7 [d72d3d1] zone_watermark_ok at c02d26cb
 #8 [d72d3d2c] compact_zone at c030b8d
 #9 [d72d3d68] compact_zone_order at c030bba1
torvalds#10 [d72d3db4] try_to_compact_pages at c030bc84
torvalds#11 [d72d3ddc] __alloc_pages_direct_compact at c02d61e7
torvalds#12 [d72d3e08] __alloc_pages_slowpath at c02d66c7
torvalds#13 [d72d3e78] __alloc_pages_nodemask at c02d6a97
torvalds#14 [d72d3eb8] alloc_pages_vma at c030a845
torvalds#15 [d72d3ed4] do_huge_pmd_anonymous_page at c03178eb
torvalds#16 [d72d3f00] handle_mm_fault at c02f36c6
torvalds#17 [d72d3f30] do_page_fault at c05c70ed
torvalds#18 [d72d3fb] error_code (via page_fault) at c05c47a4
    EAX: b71ff000  EBX: 00000001  ECX: 00001600  EDX: 00000431
    DS:  007b      ESI: 08048950  ES:  007b      EDI: bfaa3788
    SS:  007b      ESP: bfaa36e0  EBP: bfaa3828  GS:  6f50
    CS:  0073      EIP: 080487c8  ERR: ffffffff  EFLAGS: 00010202

It was also reported by Herbert van den Bergh against 3.1-based kernel
with the following snippet from the console log.

BUG: unable to handle kernel paging request at 01c00008
IP: [<c0522399>] isolate_migratepages+0x119/0x390
*pdpt = 000000002f7ce001 *pde = 0000000000000000

It is expected that it also affects 3.2.x and current mainline.

The problem is that pfn_valid is only called on the first PFN being
checked and that PFN is not necessarily aligned.  Lets say we have a case
like this

H = MAX_ORDER_NR_PAGES boundary
| = pageblock boundary
m = cc->migrate_pfn
f = cc->free_pfn
o = memory hole

H------|------H------|----m-Hoooooo|ooooooH-f----|------H

The migrate_pfn is just below a memory hole and the free scanner is beyond
the hole.  When isolate_migratepages started, it scans from migrate_pfn to
migrate_pfn+pageblock_nr_pages which is now in a memory hole.  It checks
pfn_valid() on the first PFN but then scans into the hole where there are
not necessarily valid struct pages.

This patch ensures that isolate_migratepages calls pfn_valid when
necessary.

Reported-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Tested-by: Herbert van den Bergh <herbert.van.den.bergh@oracle.com>
Signed-off-by: Mel Gorman <mgorman@suse.de>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
psanford pushed a commit to retailnext/linux that referenced this pull request Apr 16, 2012
BugLink: http://bugs.launchpad.net/bugs/907778

commit ea51d13 upstream.

If the pte mapping in generic_perform_write() is unmapped between
iov_iter_fault_in_readable() and iov_iter_copy_from_user_atomic(), the
"copied" parameter to ->end_write can be zero. ext4 couldn't cope with
it with delayed allocations enabled. This skips the i_disksize
enlargement logic if copied is zero and no new data was appeneded to
the inode.

 gdb> bt
 #0  0xffffffff811afe80 in ext4_da_should_update_i_disksize (file=0xffff88003f606a80, mapping=0xffff88001d3824e0, pos=0x1\
 08000, len=0x1000, copied=0x0, page=0xffffea0000d792e8, fsdata=0x0) at fs/ext4/inode.c:2467
 #1  ext4_da_write_end (file=0xffff88003f606a80, mapping=0xffff88001d3824e0, pos=0x108000, len=0x1000, copied=0x0, page=0\
 xffffea0000d792e8, fsdata=0x0) at fs/ext4/inode.c:2512
 #2  0xffffffff810d97f1 in generic_perform_write (iocb=<value optimized out>, iov=<value optimized out>, nr_segs=<value o\
 ptimized out>, pos=0x108000, ppos=0xffff88001e26be40, count=<value optimized out>, written=0x0) at mm/filemap.c:2440
 #3  generic_file_buffered_write (iocb=<value optimized out>, iov=<value optimized out>, nr_segs=<value optimized out>, p\
 os=0x108000, ppos=0xffff88001e26be40, count=<value optimized out>, written=0x0) at mm/filemap.c:2482
 #4  0xffffffff810db5d1 in __generic_file_aio_write (iocb=0xffff88001e26bde8, iov=0xffff88001e26bec8, nr_segs=0x1, ppos=0\
 xffff88001e26be40) at mm/filemap.c:2600
 #5  0xffffffff810db853 in generic_file_aio_write (iocb=0xffff88001e26bde8, iov=0xffff88001e26bec8, nr_segs=<value optimi\
 zed out>, pos=<value optimized out>) at mm/filemap.c:2632
 torvalds#6  0xffffffff811a71aa in ext4_file_write (iocb=0xffff88001e26bde8, iov=0xffff88001e26bec8, nr_segs=0x1, pos=0x108000) a\
 t fs/ext4/file.c:136
 torvalds#7  0xffffffff811375aa in do_sync_write (filp=0xffff88003f606a80, buf=<value optimized out>, len=<value optimized out>, \
 ppos=0xffff88001e26bf48) at fs/read_write.c:406
 torvalds#8  0xffffffff81137e56 in vfs_write (file=0xffff88003f606a80, buf=0x1ec2960 <Address 0x1ec2960 out of bounds>, count=0x4\
 000, pos=0xffff88001e26bf48) at fs/read_write.c:435
 torvalds#9  0xffffffff8113816c in sys_write (fd=<value optimized out>, buf=0x1ec2960 <Address 0x1ec2960 out of bounds>, count=0x\
 4000) at fs/read_write.c:487
 torvalds#10 <signal handler called>
 torvalds#11 0x00007f120077a390 in __brk_reservation_fn_dmi_alloc__ ()
 torvalds#12 0x0000000000000000 in ?? ()
 gdb> print offset
 $22 = 0xffffffffffffffff
 gdb> print idx
 $23 = 0xffffffff
 gdb> print inode->i_blkbits
 $24 = 0xc
 gdb> up
 #1  ext4_da_write_end (file=0xffff88003f606a80, mapping=0xffff88001d3824e0, pos=0x108000, len=0x1000, copied=0x0, page=0\
 xffffea0000d792e8, fsdata=0x0) at fs/ext4/inode.c:2512
 2512                    if (ext4_da_should_update_i_disksize(page, end)) {
 gdb> print start
 $25 = 0x0
 gdb> print end
 $26 = 0xffffffffffffffff
 gdb> print pos
 $27 = 0x108000
 gdb> print new_i_size
 $28 = 0x108000
 gdb> print ((struct ext4_inode_info *)((char *)inode-((int)(&((struct ext4_inode_info *)0)->vfs_inode))))->i_disksize
 $29 = 0xd9000
 gdb> down
 2467            for (i = 0; i < idx; i++)
 gdb> print i
 $30 = 0xd44acbee

This is 100% reproducible with some autonuma development code tuned in
a very aggressive manner (not normal way even for knumad) which does
"exotic" changes to the ptes. It wouldn't normally trigger but I don't
see why it can't happen normally if the page is added to swap cache in
between the two faults leading to "copied" being zero (which then
hangs in ext4). So it should be fixed. Especially possible with lumpy
reclaim (albeit disabled if compaction is enabled) as that would
ignore the young bits in the ptes.

Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Signed-off-by: Brad Figg <brad.figg@canonical.com>
intel-lab-lkp pushed a commit to intel-lab-lkp/linux that referenced this pull request Jul 17, 2025
Add JIT support for the load_acquire and store_release instructions. The
implementation is similar to the kernel where:

        load_acquire  => plain load -> lwsync
        store_release => lwsync -> plain store

To test the correctness of the implementation, following selftests were
run:

  [fedora@linux-kernel bpf]$ sudo ./test_progs -a \
  verifier_load_acquire,verifier_store_release,atomics
  torvalds#11/1    atomics/add:OK
  torvalds#11/2    atomics/sub:OK
  torvalds#11/3    atomics/and:OK
  torvalds#11/4    atomics/or:OK
  torvalds#11/5    atomics/xor:OK
  torvalds#11/6    atomics/cmpxchg:OK
  torvalds#11/7    atomics/xchg:OK
  torvalds#11      atomics:OK
  torvalds#519/1   verifier_load_acquire/load-acquire, 8-bit:OK
  torvalds#519/2   verifier_load_acquire/load-acquire, 8-bit @unpriv:OK
  torvalds#519/3   verifier_load_acquire/load-acquire, 16-bit:OK
  torvalds#519/4   verifier_load_acquire/load-acquire, 16-bit @unpriv:OK
  torvalds#519/5   verifier_load_acquire/load-acquire, 32-bit:OK
  torvalds#519/6   verifier_load_acquire/load-acquire, 32-bit @unpriv:OK
  torvalds#519/7   verifier_load_acquire/load-acquire, 64-bit:OK
  torvalds#519/8   verifier_load_acquire/load-acquire, 64-bit @unpriv:OK
  torvalds#519/9   verifier_load_acquire/load-acquire with uninitialized
  src_reg:OK
  torvalds#519/10  verifier_load_acquire/load-acquire with uninitialized src_reg
  @unpriv:OK
  torvalds#519/11  verifier_load_acquire/load-acquire with non-pointer src_reg:OK
  torvalds#519/12  verifier_load_acquire/load-acquire with non-pointer src_reg
  @unpriv:OK
  torvalds#519/13  verifier_load_acquire/misaligned load-acquire:OK
  torvalds#519/14  verifier_load_acquire/misaligned load-acquire @unpriv:OK
  torvalds#519/15  verifier_load_acquire/load-acquire from ctx pointer:OK
  torvalds#519/16  verifier_load_acquire/load-acquire from ctx pointer @unpriv:OK
  torvalds#519/17  verifier_load_acquire/load-acquire with invalid register R15:OK
  torvalds#519/18  verifier_load_acquire/load-acquire with invalid register R15
  @unpriv:OK
  torvalds#519/19  verifier_load_acquire/load-acquire from pkt pointer:OK
  torvalds#519/20  verifier_load_acquire/load-acquire from flow_keys pointer:OK
  torvalds#519/21  verifier_load_acquire/load-acquire from sock pointer:OK
  torvalds#519     verifier_load_acquire:OK
  torvalds#556/1   verifier_store_release/store-release, 8-bit:OK
  torvalds#556/2   verifier_store_release/store-release, 8-bit @unpriv:OK
  torvalds#556/3   verifier_store_release/store-release, 16-bit:OK
  torvalds#556/4   verifier_store_release/store-release, 16-bit @unpriv:OK
  torvalds#556/5   verifier_store_release/store-release, 32-bit:OK
  torvalds#556/6   verifier_store_release/store-release, 32-bit @unpriv:OK
  torvalds#556/7   verifier_store_release/store-release, 64-bit:OK
  torvalds#556/8   verifier_store_release/store-release, 64-bit @unpriv:OK
  torvalds#556/9   verifier_store_release/store-release with uninitialized
  src_reg:OK
  torvalds#556/10  verifier_store_release/store-release with uninitialized src_reg
  @unpriv:OK
  torvalds#556/11  verifier_store_release/store-release with uninitialized
  dst_reg:OK
  torvalds#556/12  verifier_store_release/store-release with uninitialized dst_reg
  @unpriv:OK
  torvalds#556/13  verifier_store_release/store-release with non-pointer
  dst_reg:OK
  torvalds#556/14  verifier_store_release/store-release with non-pointer dst_reg
  @unpriv:OK
  torvalds#556/15  verifier_store_release/misaligned store-release:OK
  torvalds#556/16  verifier_store_release/misaligned store-release @unpriv:OK
  torvalds#556/17  verifier_store_release/store-release to ctx pointer:OK
  torvalds#556/18  verifier_store_release/store-release to ctx pointer @unpriv:OK
  torvalds#556/19  verifier_store_release/store-release, leak pointer to stack:OK
  torvalds#556/20  verifier_store_release/store-release, leak pointer to stack
  @unpriv:OK
  torvalds#556/21  verifier_store_release/store-release, leak pointer to map:OK
  torvalds#556/22  verifier_store_release/store-release, leak pointer to map
  @unpriv:OK
  torvalds#556/23  verifier_store_release/store-release with invalid register
  R15:OK
  torvalds#556/24  verifier_store_release/store-release with invalid register R15
  @unpriv:OK
  torvalds#556/25  verifier_store_release/store-release to pkt pointer:OK
  torvalds#556/26  verifier_store_release/store-release to flow_keys pointer:OK
  torvalds#556/27  verifier_store_release/store-release to sock pointer:OK
  torvalds#556     verifier_store_release:OK
  Summary: 3/55 PASSED, 0 SKIPPED, 0 FAILED

Signed-off-by: Puranjay Mohan <puranjay@kernel.org>
roxell added a commit to roxell/linux that referenced this pull request Jul 18, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
TianyouLi pushed a commit to TianyouLi/linux that referenced this pull request Jul 21, 2025
Since commit 6b9f29b ("riscv: Enable pcpu page first chunk
allocator"), if NUMA is enabled, the page percpu allocator may be used
on very sparse configurations, or when requested on boot with
percpu_alloc=page.

In that case, percpu data gets put in the vmalloc area. However,
sbi_hsm_hart_start() needs the physical address of a sbi_hart_boot_data,
and simply assumes that __pa() would work. This causes the just started
hart to immediately access an invalid address and hang.

Fortunately, struct sbi_hart_boot_data is not too large, so we can
simply allocate an array for boot_data statically, putting it in the
kernel image.

This fixes NUMA=y SMP boot on Sophgo SG2042.

To reproduce on QEMU: Set CONFIG_NUMA=y and CONFIG_DEBUG_VIRTUAL=y, then
run with:

  qemu-system-riscv64 -M virt -smp 2 -nographic \
    -kernel arch/riscv/boot/Image \
    -append "percpu_alloc=page"

Kernel output:

[    0.000000] Booting Linux on hartid 0
[    0.000000] Linux version 6.16.0-rc1 (dram@sakuya) (riscv64-unknown-linux-gnu-gcc (GCC) 14.2.1 20250322, GNU ld (GNU Binutils) 2.44) torvalds#11 SMP Tue Jun 24 14:56:22 CST 2025
...
[    0.000000] percpu: 28 4K pages/cpu s85784 r8192 d20712
...
[    0.083192] smp: Bringing up secondary CPUs ...
[    0.086722] ------------[ cut here ]------------
[    0.086849] virt_to_phys used for non-linear address: (____ptrval____) (0xff2000000001d080)
[    0.088001] WARNING: CPU: 0 PID: 1 at arch/riscv/mm/physaddr.c:14 __virt_to_phys+0xae/0xe8
[    0.088376] Modules linked in:
[    0.088656] CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.16.0-rc1 torvalds#11 NONE
[    0.088833] Hardware name: riscv-virtio,qemu (DT)
[    0.088948] epc : __virt_to_phys+0xae/0xe8
[    0.089001]  ra : __virt_to_phys+0xae/0xe8
[    0.089037] epc : ffffffff80021eaa ra : ffffffff80021eaa sp : ff2000000004bbc0
[    0.089057]  gp : ffffffff817f49c0 tp : ff60000001d60000 t0 : 5f6f745f74726976
[    0.089076]  t1 : 0000000000000076 t2 : 705f6f745f747269 s0 : ff2000000004bbe0
[    0.089095]  s1 : ff2000000001d080 a0 : 0000000000000000 a1 : 0000000000000000
[    0.089113]  a2 : 0000000000000000 a3 : 0000000000000000 a4 : 0000000000000000
[    0.089131]  a5 : 0000000000000000 a6 : 0000000000000000 a7 : 0000000000000000
[    0.089155]  s2 : ffffffff8130dc00 s3 : 0000000000000001 s4 : 0000000000000001
[    0.089174]  s5 : ffffffff8185eff8 s6 : ff2000007f1eb000 s7 : ffffffff8002a2ec
[    0.089193]  s8 : 0000000000000001 s9 : 0000000000000001 s10: 0000000000000000
[    0.089211]  s11: 0000000000000000 t3 : ffffffff8180a9f7 t4 : ffffffff8180a9f7
[    0.089960]  t5 : ffffffff8180a9f8 t6 : ff2000000004b9d8
[    0.089984] status: 0000000200000120 badaddr: ffffffff80021eaa cause: 0000000000000003
[    0.090101] [<ffffffff80021eaa>] __virt_to_phys+0xae/0xe8
[    0.090228] [<ffffffff8001d796>] sbi_cpu_start+0x6e/0xe8
[    0.090247] [<ffffffff8001a5da>] __cpu_up+0x1e/0x8c
[    0.090260] [<ffffffff8002a32e>] bringup_cpu+0x42/0x258
[    0.090277] [<ffffffff8002914c>] cpuhp_invoke_callback+0xe0/0x40c
[    0.090292] [<ffffffff800294e0>] __cpuhp_invoke_callback_range+0x68/0xfc
[    0.090320] [<ffffffff8002a96a>] _cpu_up+0x11a/0x244
[    0.090334] [<ffffffff8002aae6>] cpu_up+0x52/0x90
[    0.090384] [<ffffffff80c09350>] bringup_nonboot_cpus+0x78/0x118
[    0.090411] [<ffffffff80c11060>] smp_init+0x34/0xb8
[    0.090425] [<ffffffff80c01220>] kernel_init_freeable+0x148/0x2e4
[    0.090442] [<ffffffff80b83802>] kernel_init+0x1e/0x14c
[    0.090455] [<ffffffff800124ca>] ret_from_fork_kernel+0xe/0xf0
[    0.090471] [<ffffffff80b8d9c2>] ret_from_fork_kernel_asm+0x16/0x18
[    0.090560] ---[ end trace 0000000000000000 ]---
[    1.179875] CPU1: failed to come online
[    1.190324] smp: Brought up 1 node, 1 CPU

Cc: stable@vger.kernel.org
Reported-by: Han Gao <rabenda.cn@gmail.com>
Fixes: 6b9f29b ("riscv: Enable pcpu page first chunk allocator")
Reviewed-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Tested-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Signed-off-by: Vivian Wang <wangruikang@iscas.ac.cn>
Link: https://lore.kernel.org/r/20250624-riscv-hsm-boot-data-array-v1-1-50b5eeafbe61@iscas.ac.cn
Signed-off-by: Alexandre Ghiti <alexghiti@rivosinc.com>
roxell added a commit to roxell/linux that referenced this pull request Jul 23, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
openunix referenced this pull request in DDNStorage/linux Jul 24, 2025
jira LE-3428
cve CVE-2025-37738
Rebuild_History Non-Buildable kernel-5.14.0-570.23.1.el9_6
commit-author Bhupesh <bhupesh@igalia.com>
commit c8e008b

Once inside 'ext4_xattr_inode_dec_ref_all' we should
ignore xattrs entries past the 'end' entry.

This fixes the following KASAN reported issue:

==================================================================
BUG: KASAN: slab-use-after-free in ext4_xattr_inode_dec_ref_all+0xb8c/0xe90
Read of size 4 at addr ffff888012c120c4 by task repro/2065

CPU: 1 UID: 0 PID: 2065 Comm: repro Not tainted 6.13.0-rc2+ #11
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014
Call Trace:
 <TASK>
 dump_stack_lvl+0x1fd/0x300
 ? tcp_gro_dev_warn+0x260/0x260
 ? _printk+0xc0/0x100
 ? read_lock_is_recursive+0x10/0x10
 ? irq_work_queue+0x72/0xf0
 ? __virt_addr_valid+0x17b/0x4b0
 print_address_description+0x78/0x390
 print_report+0x107/0x1f0
 ? __virt_addr_valid+0x17b/0x4b0
 ? __virt_addr_valid+0x3ff/0x4b0
 ? __phys_addr+0xb5/0x160
 ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90
 kasan_report+0xcc/0x100
 ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90
 ext4_xattr_inode_dec_ref_all+0xb8c/0xe90
 ? ext4_xattr_delete_inode+0xd30/0xd30
 ? __ext4_journal_ensure_credits+0x5f0/0x5f0
 ? __ext4_journal_ensure_credits+0x2b/0x5f0
 ? inode_update_timestamps+0x410/0x410
 ext4_xattr_delete_inode+0xb64/0xd30
 ? ext4_truncate+0xb70/0xdc0
 ? ext4_expand_extra_isize_ea+0x1d20/0x1d20
 ? __ext4_mark_inode_dirty+0x670/0x670
 ? ext4_journal_check_start+0x16f/0x240
 ? ext4_inode_is_fast_symlink+0x2f2/0x3a0
 ext4_evict_inode+0xc8c/0xff0
 ? ext4_inode_is_fast_symlink+0x3a0/0x3a0
 ? do_raw_spin_unlock+0x53/0x8a0
 ? ext4_inode_is_fast_symlink+0x3a0/0x3a0
 evict+0x4ac/0x950
 ? proc_nr_inodes+0x310/0x310
 ? trace_ext4_drop_inode+0xa2/0x220
 ? _raw_spin_unlock+0x1a/0x30
 ? iput+0x4cb/0x7e0
 do_unlinkat+0x495/0x7c0
 ? try_break_deleg+0x120/0x120
 ? 0xffffffff81000000
 ? __check_object_size+0x15a/0x210
 ? strncpy_from_user+0x13e/0x250
 ? getname_flags+0x1dc/0x530
 __x64_sys_unlinkat+0xc8/0xf0
 do_syscall_64+0x65/0x110
 entry_SYSCALL_64_after_hwframe+0x67/0x6f
RIP: 0033:0x434ffd
Code: 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 8
RSP: 002b:00007ffc50fa7b28 EFLAGS: 00000246 ORIG_RAX: 0000000000000107
RAX: ffffffffffffffda RBX: 00007ffc50fa7e18 RCX: 0000000000434ffd
RDX: 0000000000000000 RSI: 0000000020000240 RDI: 0000000000000005
RBP: 00007ffc50fa7be0 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000001
R13: 00007ffc50fa7e08 R14: 00000000004bbf30 R15: 0000000000000001
 </TASK>

The buggy address belongs to the object at ffff888012c12000
 which belongs to the cache filp of size 360
The buggy address is located 196 bytes inside of
 freed 360-byte region [ffff888012c12000, ffff888012c12168)

The buggy address belongs to the physical page:
page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x12c12
head: order:1 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
flags: 0x40(head|node=0|zone=0)
page_type: f5(slab)
raw: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004
raw: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000
head: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004
head: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000
head: 0000000000000001 ffffea00004b0481 ffffffffffffffff 0000000000000000
head: 0000000000000002 0000000000000000 00000000ffffffff 0000000000000000
page dumped because: kasan: bad access detected

Memory state around the buggy address:
 ffff888012c11f80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 ffff888012c12000: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
> ffff888012c12080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
                                           ^
 ffff888012c12100: fb fb fb fb fb fb fb fb fb fb fb fb fb fc fc fc
 ffff888012c12180: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
==================================================================

	Reported-by: syzbot+b244bda78289b00204ed@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=b244bda78289b00204ed
	Suggested-by: Thadeu Lima de Souza Cascardo <cascardo@igalia.com>
	Signed-off-by: Bhupesh <bhupesh@igalia.com>
Link: https://patch.msgid.link/20250128082751.124948-2-bhupesh@igalia.com
	Signed-off-by: Theodore Ts'o <tytso@mit.edu>
(cherry picked from commit c8e008b)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
roxell added a commit to roxell/linux that referenced this pull request Jul 24, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
kvmahesh9 pushed a commit to fortanix/linux that referenced this pull request Jul 25, 2025
BugLink: https://bugs.launchpad.net/bugs/2111953

[ Upstream commit c7b87ce ]

libtraceevent parses and returns an array of argument fields, sometimes
larger than RAW_SYSCALL_ARGS_NUM (6) because it includes "__syscall_nr",
idx will traverse to index 6 (7th element) whereas sc->fmt->arg holds 6
elements max, creating an out-of-bounds access. This runtime error is
found by UBsan. The error message:

  $ sudo UBSAN_OPTIONS=print_stacktrace=1 ./perf trace -a --max-events=1
  builtin-trace.c:1966:35: runtime error: index 6 out of bounds for type 'syscall_arg_fmt [6]'
    #0 0x5c04956be5fe in syscall__alloc_arg_fmts /home/howard/hw/linux-perf/tools/perf/builtin-trace.c:1966
    #1 0x5c04956c0510 in trace__read_syscall_info /home/howard/hw/linux-perf/tools/perf/builtin-trace.c:2110
    #2 0x5c04956c372b in trace__syscall_info /home/howard/hw/linux-perf/tools/perf/builtin-trace.c:2436
    #3 0x5c04956d2f39 in trace__init_syscalls_bpf_prog_array_maps /home/howard/hw/linux-perf/tools/perf/builtin-trace.c:3897
    #4 0x5c04956d6d25 in trace__run /home/howard/hw/linux-perf/tools/perf/builtin-trace.c:4335
    #5 0x5c04956e112e in cmd_trace /home/howard/hw/linux-perf/tools/perf/builtin-trace.c:5502
    torvalds#6 0x5c04956eda7d in run_builtin /home/howard/hw/linux-perf/tools/perf/perf.c:351
    torvalds#7 0x5c04956ee0a8 in handle_internal_command /home/howard/hw/linux-perf/tools/perf/perf.c:404
    torvalds#8 0x5c04956ee37f in run_argv /home/howard/hw/linux-perf/tools/perf/perf.c:448
    torvalds#9 0x5c04956ee8e9 in main /home/howard/hw/linux-perf/tools/perf/perf.c:556
    torvalds#10 0x79eb3622a3b7 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
    torvalds#11 0x79eb3622a47a in __libc_start_main_impl ../csu/libc-start.c:360
    torvalds#12 0x5c04955422d4 in _start (/home/howard/hw/linux-perf/tools/perf/perf+0x4e02d4) (BuildId: 5b6cab2d59e96a4341741765ad6914a4d784dbc6)

     0.000 ( 0.014 ms): Chrome_ChildIO/117244 write(fd: 238, buf: !, count: 1)                                      = 1

Fixes: 5e58fcf ("perf trace: Allow allocating sc->arg_fmt even without the syscall tracepoint")
Signed-off-by: Howard Chu <howardchu95@gmail.com>
Link: https://lore.kernel.org/r/20250122025519.361873-1-howardchu95@gmail.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Manuel Diewald <manuel.diewald@canonical.com>
Signed-off-by: Mehmet Basaran <mehmet.basaran@canonical.com>
kvmahesh9 pushed a commit to fortanix/linux that referenced this pull request Jul 25, 2025
BugLink: https://bugs.launchpad.net/bugs/2111953

[ Upstream commit 58f038e ]

During the update procedure, when overwrite element in a pre-allocated
htab, the freeing of old_element is protected by the bucket lock. The
reason why the bucket lock is necessary is that the old_element has
already been stashed in htab->extra_elems after alloc_htab_elem()
returns. If freeing the old_element after the bucket lock is unlocked,
the stashed element may be reused by concurrent update procedure and the
freeing of old_element will run concurrently with the reuse of the
old_element. However, the invocation of check_and_free_fields() may
acquire a spin-lock which violates the lockdep rule because its caller
has already held a raw-spin-lock (bucket lock). The following warning
will be reported when such race happens:

  BUG: scheduling while atomic: test_progs/676/0x00000003
  3 locks held by test_progs/676:
  #0: ffffffff864b0240 (rcu_read_lock_trace){....}-{0:0}, at: bpf_prog_test_run_syscall+0x2c0/0x830
  #1: ffff88810e961188 (&htab->lockdep_key){....}-{2:2}, at: htab_map_update_elem+0x306/0x1500
  #2: ffff8881f4eac1b8 (&base->softirq_expiry_lock){....}-{2:2}, at: hrtimer_cancel_wait_running+0xe9/0x1b0
  Modules linked in: bpf_testmod(O)
  Preemption disabled at:
  [<ffffffff817837a3>] htab_map_update_elem+0x293/0x1500
  CPU: 0 UID: 0 PID: 676 Comm: test_progs Tainted: G ... 6.12.0+ torvalds#11
  Tainted: [W]=WARN, [O]=OOT_MODULE
  Hardware name: QEMU Standard PC (i440FX + PIIX, 1996)...
  Call Trace:
  <TASK>
  dump_stack_lvl+0x57/0x70
  dump_stack+0x10/0x20
  __schedule_bug+0x120/0x170
  __schedule+0x300c/0x4800
  schedule_rtlock+0x37/0x60
  rtlock_slowlock_locked+0x6d9/0x54c0
  rt_spin_lock+0x168/0x230
  hrtimer_cancel_wait_running+0xe9/0x1b0
  hrtimer_cancel+0x24/0x30
  bpf_timer_delete_work+0x1d/0x40
  bpf_timer_cancel_and_free+0x5e/0x80
  bpf_obj_free_fields+0x262/0x4a0
  check_and_free_fields+0x1d0/0x280
  htab_map_update_elem+0x7fc/0x1500
  bpf_prog_9f90bc20768e0cb9_overwrite_cb+0x3f/0x43
  bpf_prog_ea601c4649694dbd_overwrite_timer+0x5d/0x7e
  bpf_prog_test_run_syscall+0x322/0x830
  __sys_bpf+0x135d/0x3ca0
  __x64_sys_bpf+0x75/0xb0
  x64_sys_call+0x1b5/0xa10
  do_syscall_64+0x3b/0xc0
  entry_SYSCALL_64_after_hwframe+0x4b/0x53
  ...
  </TASK>

It seems feasible to break the reuse and refill of per-cpu extra_elems
into two independent parts: reuse the per-cpu extra_elems with bucket
lock being held and refill the old_element as per-cpu extra_elems after
the bucket lock is unlocked. However, it will make the concurrent
overwrite procedures on the same CPU return unexpected -E2BIG error when
the map is full.

Therefore, the patch fixes the lock problem by breaking the cancelling
of bpf_timer into two steps for PREEMPT_RT:
1) use hrtimer_try_to_cancel() and check its return value
2) if the timer is running, use hrtimer_cancel() through a kworker to
   cancel it again
Considering that the current implementation of hrtimer_cancel() will try
to acquire a being held softirq_expiry_lock when the current timer is
running, these steps above are reasonable. However, it also has
downside. When the timer is running, the cancelling of the timer is
delayed when releasing the last map uref. The delay is also fixable
(e.g., break the cancelling of bpf timer into two parts: one part in
locked scope, another one in unlocked scope), it can be revised later if
necessary.

It is a bit hard to decide the right fix tag. One reason is that the
problem depends on PREEMPT_RT which is enabled in v6.12. Considering the
softirq_expiry_lock lock exists since v5.4 and bpf_timer is introduced
in v5.15, the bpf_timer commit is used in the fixes tag and an extra
depends-on tag is added to state the dependency on PREEMPT_RT.

Fixes: b00628b ("bpf: Introduce bpf timers.")
Depends-on: v6.12+ with PREEMPT_RT enabled
Reported-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Closes: https://lore.kernel.org/bpf/20241106084527.4gPrMnHt@linutronix.de
Signed-off-by: Hou Tao <houtao1@huawei.com>
Reviewed-by: Toke Høiland-Jørgensen <toke@kernel.org>
Link: https://lore.kernel.org/r/20250117101816.2101857-5-houtao@huaweicloud.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
CVE-2025-21825
Signed-off-by: Manuel Diewald <manuel.diewald@canonical.com>
Signed-off-by: Mehmet Basaran <mehmet.basaran@canonical.com>
roxell added a commit to roxell/linux that referenced this pull request Jul 25, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
intel-lab-lkp pushed a commit to intel-lab-lkp/linux that referenced this pull request Jul 25, 2025
When fuzzing USB with syzkaller on a PREEMPT_RT enabled kernel, following
bug is triggered in the ksoftirqd context.

| BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:48
| in_atomic(): 0, irqs_disabled(): 1, non_block: 0, pid: 30, name: ksoftirqd/1
| preempt_count: 0, expected: 0
| RCU nest depth: 2, expected: 2
| CPU: 1 UID: 0 PID: 30 Comm: ksoftirqd/1 Tainted: G        W           6.16.0-rc1-rt1 torvalds#11 PREEMPT_RT
| Tainted: [W]=WARN
| Hardware name: QEMU KVM Virtual Machine, BIOS 2025.02-8 05/13/2025
| Call trace:
|  show_stack+0x2c/0x3c (C)
|  __dump_stack+0x30/0x40
|  dump_stack_lvl+0x148/0x1d8
|  dump_stack+0x1c/0x3c
|  __might_resched+0x2e4/0x52c
|  rt_spin_lock+0xa8/0x1bc
|  kcov_remote_start+0xb0/0x490
|  __usb_hcd_giveback_urb+0x2d0/0x5e8
|  usb_giveback_urb_bh+0x234/0x3c4
|  process_scheduled_works+0x678/0xd18
|  bh_worker+0x2f0/0x59c
|  workqueue_softirq_action+0x104/0x14c
|  tasklet_action+0x18/0x8c
|  handle_softirqs+0x208/0x63c
|  run_ksoftirqd+0x64/0x264
|  smpboot_thread_fn+0x4ac/0x908
|  kthread+0x5e8/0x734
|  ret_from_fork+0x10/0x20

To reproduce on PREEMPT_RT kernel:

 $ git remote add rt-devel git://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git
 $ git fetch rt-devel
 $ git checkout -b v6.16-rc1-rt1 v6.16-rc1-rt1

I have attached the syzlang and the C source code converted by syz-prog2c:

Link: https://gist.github.com/kzall0c/9455aaa246f4aa1135353a51753adbbe

Then, run with a PREEMPT_RT config.

This issue was introduced by commit
f85d39d ("kcov, usb: disable interrupts in kcov_remote_start_usb_softirq").

However, this creates a conflict on PREEMPT_RT kernels. The local_irq_save()
call establishes an atomic context where sleeping is forbidden. Inside this
context, kcov_remote_start() is called, which on PREEMPT_RT uses sleeping
locks (spinlock_t and local_lock_t are mapped to rt_mutex). This results in
a sleeping function called from invalid context.

On PREEMPT_RT, interrupt handlers are threaded, so the re-entrancy scenario
is already safely handled by the existing local_lock_t and the global
kcov_remote_lock within kcov_remote_start(). Therefore, the outer
local_irq_save() is not necessary.

This preserves the intended re-entrancy protection for non-RT kernels while
resolving the locking violation on PREEMPT_RT kernels.

After making this modification and testing it, syzkaller fuzzing the
PREEMPT_RT kernel is now running without stopping on latest announced
Real-time Linux.

Link: https://lore.kernel.org/linux-rt-devel/20250610080307.LMm1hleC@linutronix.de/
Fixes: f85d39d ("kcov, usb: disable interrupts in kcov_remote_start_usb_softirq")
Cc: Andrey Konovalov <andreyknvl@gmail.com>
Cc: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Cc: Byungchul Park <byungchul@sk.com>
Cc: stable@vger.kernel.org
Cc: kasan-dev@googlegroups.com
Cc: syzkaller@googlegroups.com
Cc: linux-usb@vger.kernel.org
Cc: linux-rt-devel@lists.linux.dev
Signed-off-by: Yunseong Kim <ysk@kzalloc.com>
maddy-kerneldev pushed a commit to linuxppc/linux that referenced this pull request Jul 28, 2025
Add JIT support for the load_acquire and store_release instructions. The
implementation is similar to the kernel where:

        load_acquire  => plain load -> lwsync
        store_release => lwsync -> plain store

To test the correctness of the implementation, following selftests were
run:

  [fedora@linux-kernel bpf]$ sudo ./test_progs -a \
  verifier_load_acquire,verifier_store_release,atomics
  torvalds#11/1    atomics/add:OK
  torvalds#11/2    atomics/sub:OK
  torvalds#11/3    atomics/and:OK
  torvalds#11/4    atomics/or:OK
  torvalds#11/5    atomics/xor:OK
  torvalds#11/6    atomics/cmpxchg:OK
  torvalds#11/7    atomics/xchg:OK
  torvalds#11      atomics:OK
  torvalds#519/1   verifier_load_acquire/load-acquire, 8-bit:OK
  torvalds#519/2   verifier_load_acquire/load-acquire, 8-bit @unpriv:OK
  torvalds#519/3   verifier_load_acquire/load-acquire, 16-bit:OK
  torvalds#519/4   verifier_load_acquire/load-acquire, 16-bit @unpriv:OK
  torvalds#519/5   verifier_load_acquire/load-acquire, 32-bit:OK
  torvalds#519/6   verifier_load_acquire/load-acquire, 32-bit @unpriv:OK
  torvalds#519/7   verifier_load_acquire/load-acquire, 64-bit:OK
  torvalds#519/8   verifier_load_acquire/load-acquire, 64-bit @unpriv:OK
  torvalds#519/9   verifier_load_acquire/load-acquire with uninitialized
  src_reg:OK
  torvalds#519/10  verifier_load_acquire/load-acquire with uninitialized src_reg
  @unpriv:OK
  torvalds#519/11  verifier_load_acquire/load-acquire with non-pointer src_reg:OK
  torvalds#519/12  verifier_load_acquire/load-acquire with non-pointer src_reg
  @unpriv:OK
  torvalds#519/13  verifier_load_acquire/misaligned load-acquire:OK
  torvalds#519/14  verifier_load_acquire/misaligned load-acquire @unpriv:OK
  torvalds#519/15  verifier_load_acquire/load-acquire from ctx pointer:OK
  torvalds#519/16  verifier_load_acquire/load-acquire from ctx pointer @unpriv:OK
  torvalds#519/17  verifier_load_acquire/load-acquire with invalid register R15:OK
  torvalds#519/18  verifier_load_acquire/load-acquire with invalid register R15
  @unpriv:OK
  torvalds#519/19  verifier_load_acquire/load-acquire from pkt pointer:OK
  torvalds#519/20  verifier_load_acquire/load-acquire from flow_keys pointer:OK
  torvalds#519/21  verifier_load_acquire/load-acquire from sock pointer:OK
  torvalds#519     verifier_load_acquire:OK
  torvalds#556/1   verifier_store_release/store-release, 8-bit:OK
  torvalds#556/2   verifier_store_release/store-release, 8-bit @unpriv:OK
  torvalds#556/3   verifier_store_release/store-release, 16-bit:OK
  torvalds#556/4   verifier_store_release/store-release, 16-bit @unpriv:OK
  torvalds#556/5   verifier_store_release/store-release, 32-bit:OK
  torvalds#556/6   verifier_store_release/store-release, 32-bit @unpriv:OK
  torvalds#556/7   verifier_store_release/store-release, 64-bit:OK
  torvalds#556/8   verifier_store_release/store-release, 64-bit @unpriv:OK
  torvalds#556/9   verifier_store_release/store-release with uninitialized
  src_reg:OK
  torvalds#556/10  verifier_store_release/store-release with uninitialized src_reg
  @unpriv:OK
  torvalds#556/11  verifier_store_release/store-release with uninitialized
  dst_reg:OK
  torvalds#556/12  verifier_store_release/store-release with uninitialized dst_reg
  @unpriv:OK
  torvalds#556/13  verifier_store_release/store-release with non-pointer
  dst_reg:OK
  torvalds#556/14  verifier_store_release/store-release with non-pointer dst_reg
  @unpriv:OK
  torvalds#556/15  verifier_store_release/misaligned store-release:OK
  torvalds#556/16  verifier_store_release/misaligned store-release @unpriv:OK
  torvalds#556/17  verifier_store_release/store-release to ctx pointer:OK
  torvalds#556/18  verifier_store_release/store-release to ctx pointer @unpriv:OK
  torvalds#556/19  verifier_store_release/store-release, leak pointer to stack:OK
  torvalds#556/20  verifier_store_release/store-release, leak pointer to stack
  @unpriv:OK
  torvalds#556/21  verifier_store_release/store-release, leak pointer to map:OK
  torvalds#556/22  verifier_store_release/store-release, leak pointer to map
  @unpriv:OK
  torvalds#556/23  verifier_store_release/store-release with invalid register
  R15:OK
  torvalds#556/24  verifier_store_release/store-release with invalid register R15
  @unpriv:OK
  torvalds#556/25  verifier_store_release/store-release to pkt pointer:OK
  torvalds#556/26  verifier_store_release/store-release to flow_keys pointer:OK
  torvalds#556/27  verifier_store_release/store-release to sock pointer:OK
  torvalds#556     verifier_store_release:OK
  Summary: 3/55 PASSED, 0 SKIPPED, 0 FAILED

Signed-off-by: Puranjay Mohan <puranjay@kernel.org>
Tested-by: Saket Kumar Bhaskar <skb99@linux.ibm.com>
Reviewed-by: Hari Bathini <hbathini@linux.ibm.com>
Signed-off-by: Madhavan Srinivasan <maddy@linux.ibm.com>
Link: https://patch.msgid.link/20250717202935.29018-2-puranjay@kernel.org
roxell added a commit to roxell/linux that referenced this pull request Jul 28, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Jul 30, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Jul 31, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 1, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 4, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 5, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 8, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 12, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 13, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 18, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 19, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 20, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 21, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 23, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 26, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 27, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 28, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Aug 29, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
roxell added a commit to roxell/linux that referenced this pull request Sep 1, 2025
[  123.491737][    T1] Unexpected kernel BRK exception at EL1
[  123.497593][    T1] Internal error: ptrace BRK handler: f20003e8 [#1] PREEMPT SMP
[  123.500785][    T1] Modules linked in:
[  123.502567][    T1] CPU: 0 PID: 1 Comm: swapper/0 Tainted: G        W         5.8.0-rc3-next-20200630-00003-g15e24419c239-dirty torvalds#11
[  123.507468][    T1] Hardware name: linux,dummy-virt (DT)
[  123.509826][    T1] pstate: 80400005 (Nzcv daif +PAN -UAO BTYPE=--)
[  123.512609][    T1] pc : of_unittest_untrack_overlay+0x64/0x134
[  123.515245][    T1] lr : of_unittest_untrack_overlay+0x64/0x134
[  123.517848][    T1] sp : ffff00006a65fb30
[  123.519668][    T1] x29: ffff00006a65fb30 x28: 0000000000000000
[  123.522295][    T1] x27: ffff00006a65fc30 x26: ffffa00016b86f00
[  123.524937][    T1] x25: 0000000000000000 x24: 0000000000000000
[  123.527592][    T1] x23: ffffa00014c72540 x22: ffffa00016b86000
[  123.530191][    T1] x21: 0000000000000000 x20: 00000000ffffffff
[  123.532845][    T1] x19: 00000000ffffffff x18: 0000000000002690
[  123.535547][    T1] x17: 0000000000002718 x16: 00000000000014b8
[  123.538299][    T1] x15: 0000000000000001 x14: 0080000000000000
[  123.541055][    T1] x13: 0000000000000002 x12: ffff94000298d209
[  123.543801][    T1] x11: 1ffff4000298d208 x10: ffff94000298d208
[  123.546580][    T1] x9 : dfffa00000000000 x8 : ffffa00014c69047
[  123.549247][    T1] x7 : 0000000000000001 x6 : ffffa00014c69040
[  123.552026][    T1] x5 : ffff00006a654040 x4 : 0000000000000000
[  123.554799][    T1] x3 : ffffa00011d59d04 x2 : 00000000ffffffff
[  123.557541][    T1] x1 : ffff00006a654040 x0 : 0000000000000000
[  123.560390][    T1] Call trace:
[  123.561935][    T1]  of_unittest_untrack_overlay+0x64/0x134
[  123.564469][    T1]  of_unittest+0x2220/0x2438
[  123.566585][    T1]  do_one_initcall+0x470/0xa10
[  123.568751][    T1]  kernel_init_freeable+0x510/0x5f0
[  123.571123][    T1]  kernel_init+0x18/0x1e8
[  123.573078][    T1]  ret_from_fork+0x10/0x18
[  123.575119][    T1] Code: 97978a9c d4210000 14000024 97978a99 (d4207d00)
[  123.578138][    T1] ---[ end trace c4e049fb5e3b0ba0 ]---
[  123.580449][    T1] Kernel panic - not syncing: Fatal exception
[  123.583116][    T1] Kernel Offset: disabled
[  123.585066][    T1] CPU features: 0x240002,20002004
[  123.587259][    T1] Memory Limit: none
[  123.588986][    T1] ---[ end Kernel panic - not syncing: Fatal exception ]---

Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants