Page MenuHomeFreeBSD

aokblast (SHENG-YI HONG)
AoK_Blast

Projects

User does not belong to any projects.

User Details

User Since
Jun 21 2022, 7:17 PM (103 w, 6 d)

Recent Activity

Fri, Jun 7

aokblast added a comment to D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.

So do you means we only aware of the incompatible kernel and don't implement similar check for kernel module?

Fri, Jun 7, 9:07 PM
aokblast added a comment to D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.

I think you are right, I don't think about kernel problem. And in my opinion, it is the chicken-and-egg conundrum if we implemented it in a normal ELF way (rely on VMA of section) for kernel. But it is still a mitigation for driver developer when developing kernel module. Besides, we still need uuid_addr for relocatable kernel module. I have extract my patch to contain relocatable file handling only. So I think we should preserve this patch not merge it until finding a way to verify who is the correct kernel?

Fri, Jun 7, 7:34 PM

Thu, Jun 6

aokblast updated the diff for D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.

Expose uuid for kernel module in kernel to prevent incompetable coredump loaded by debugger for relocatable file

Thu, Jun 6, 7:04 PM
aokblast added a comment to D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.

But we cannot just rely on the file to tell use where the memory is because it maybe wrong. We should use uuid_addr from kernel. This is why I think we should have build-id feature.

Thu, Jun 6, 6:58 PM
aokblast added a comment to D43251: Update riscv-isa-sim to 2024-05-31 snapshot.

Got it. Thanks for your response!

Thu, Jun 6, 3:15 PM
aokblast added a comment to D43251: Update riscv-isa-sim to 2024-05-31 snapshot.

Just a question, how you test on kernel, I use spike --kernel /path/to/kernel /path/to/sbi. It give me invalid address error even after I add -m0x1000000,0x2000.

Thu, Jun 6, 3:06 PM
aokblast retitled D43251: Update riscv-isa-sim to 2024-05-31 snapshot from Update riscv-isa-sim to 2023-12-23 snapshot to Update riscv-isa-sim to 2024-05-31 snapshot.
Thu, Jun 6, 2:24 PM
aokblast updated the diff for D43251: Update riscv-isa-sim to 2024-05-31 snapshot.

Update to 2024-05-31

Thu, Jun 6, 2:23 PM

Wed, Jun 5

aokblast added a comment to D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.

So should we divided our patch into amd64/arm64 for further discussion about two cases. Or divided the match into kernel/loader?

Wed, Jun 5, 9:13 PM

Mon, Jun 3

aokblast updated the diff for D45120: Add bhyve uart raw tcp backend.
  • Add bhyve uart tcp backend
  • Add manual page
Mon, Jun 3, 6:23 PM
aokblast updated the diff for D45120: Add bhyve uart raw tcp backend.
  • Add bhyve uart tcp backend
  • Add manual page
Mon, Jun 3, 6:14 PM
aokblast updated the diff for D45120: Add bhyve uart raw tcp backend.
  • Add bhyve uart tcp backend
  • Add manual page
Mon, Jun 3, 5:43 PM
aokblast updated the diff for D45120: Add bhyve uart raw tcp backend.
  • Add bhyve uart tcp backend
  • Add manual page
Mon, Jun 3, 4:40 PM
aokblast added a comment to D45120: Add bhyve uart raw tcp backend.

Fix it!!

Mon, Jun 3, 4:30 PM
aokblast updated the diff for D45120: Add bhyve uart raw tcp backend.
  • Add bhyve uart tcp backend
  • Add manual page
Mon, Jun 3, 4:30 PM

Sat, May 25

aokblast updated the diff for D45120: Add bhyve uart raw tcp backend.
  • Add bhyve uart tcp backend
  • Add manual page
Sat, May 25, 2:08 PM
aokblast added a comment to D45120: Add bhyve uart raw tcp backend.

I fix the previous error previously mentioned, and because uart_tcp_disconnect is a helper function and it parent has already lock it. I add comment to let everyone use this function in the future know this.

Sat, May 25, 1:54 PM
aokblast updated the diff for D45120: Add bhyve uart raw tcp backend.
  • Add bhyve uart tcp backend
  • Add manual page
Sat, May 25, 1:52 PM
aokblast updated the diff for D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.

Reset commit because I use wrong ID

Sat, May 25, 1:51 PM
aokblast updated the diff for D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.
  • Add bhyve uart tcp backend
  • Add manual page
Sat, May 25, 1:49 PM

Mon, May 20

aokblast added a comment to D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.

Sorry about my late reply. The patch Ed commit is the pre-request to ensure my patch work. The logic of my patch i the loader would grab the build-id from elf file in .gnu.note.build-id section into memory. When kernel crashed, it generate coredump and the build-id loaded from the loader will dump into the coredump file at the same time. After that, when debugger load kernel and it's coredump, the debugger will try to find the elf file of module and its debug file. We can compare the build-id from memory with elf file. If they are different, we shouldn't load the debug file (because they are incompatible).

Mon, May 20, 12:28 AM

May 11 2024

aokblast added a comment to D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.

LLDB refer build-id as UUID. Sorry about the imprecise word.

May 11 2024, 10:33 PM
aokblast added a comment to D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.

After my investigation, I discover that shstrtab section is not loaded into memory (because no SHF_ALLOC). Thus I cannot compare the section name with ".note.gnu.build-id". Besides, in link_elf_link_preload, the function don't open the file as link_elf_load_file but use all of the memory and preload information from boot1. Thus if I want to compare the section name, I should load the file, create temp memory space for it, and read file. Does it worth to a file in kernel just for compare a section name?

May 11 2024, 12:50 PM
aokblast added a comment to D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.

I understand your point, I will try not to modify the loader.

May 11 2024, 10:28 AM
aokblast updated the diff for D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.

Seperate to two patches

May 11 2024, 10:25 AM
aokblast updated the diff for D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.
May 11 2024, 10:23 AM
aokblast added a comment to D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.

For preloaded relocatable kernel module, I think the modification of loader is necessary as I discover SHT_NOTE section was not loaded by boot1 originally when the kernel module is preloaded.
For shared object, actually we can get the address of uuid when kernel is loaded. I modify the loader because I discover that CTORS pass the information from loader and I think I should follow it?

May 11 2024, 10:12 AM
aokblast added a comment to D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.
In D45161#1030112, @kib wrote:

It probably makes sense to split the change into two: one for loader, one for kernel.

Don't we need to ensure that notes are preserved, in the modules linker scripts? (sys/conf/ldscript.kmod.ARCH)

I assume that the debugger changes as well as adding UUIDS to the built modules would happen somewhere else?

May 11 2024, 9:56 AM
aokblast updated the diff for D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.
  • Add uuid for module to prevent incompetable coredump loaded by debugger
  • Expose offset of uuid_addr and uuid_size in linker_file for debugger
May 11 2024, 7:20 AM
aokblast added a reviewer for D45161: Add uuid for module to prevent incompetable coredump loaded by debugger: lwhsu.
May 11 2024, 7:13 AM
aokblast updated the summary of D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.
May 11 2024, 7:13 AM
aokblast requested review of D45161: Add uuid for module to prevent incompetable coredump loaded by debugger.
May 11 2024, 7:09 AM

May 8 2024

aokblast abandoned D43514: Add Bhyve TCP raw socket on console.

Abandon because I submit the new one.

May 8 2024, 1:37 PM
aokblast updated the summary of D45120: Add bhyve uart raw tcp backend.
May 8 2024, 12:31 PM
aokblast retitled D45120: Add bhyve uart raw tcp backend from Add bhyve uart tcp backend to Add bhyve uart raw tcp backend.
May 8 2024, 12:28 PM
aokblast updated the summary of D45120: Add bhyve uart raw tcp backend.
May 8 2024, 12:28 PM
aokblast requested review of D45120: Add bhyve uart raw tcp backend.
May 8 2024, 12:26 PM

Apr 26 2024

aokblast added a comment to D44947: Move lock of uart frontend to uart backend in bhyve.

Fix it!

Apr 26 2024, 7:09 AM
aokblast updated the diff for D44947: Move lock of uart frontend to uart backend in bhyve.

Check the result of calloc

Apr 26 2024, 7:08 AM
aokblast abandoned D44966: Move lock of uart frontend to uart backend in bhyve.

Sorry I falsely create a duplicate patch...

Apr 26 2024, 7:05 AM
aokblast requested review of D44966: Move lock of uart frontend to uart backend in bhyve.
Apr 26 2024, 7:04 AM

Apr 25 2024

aokblast added reviewers for D44947: Move lock of uart frontend to uart backend in bhyve: markj, lwhsu.
Apr 25 2024, 4:14 PM
aokblast retitled D44947: Move lock of uart frontend to uart backend in bhyve from Move lock of uart frontend to uartbackend to Move lock of uart frontend to uart backend in bhyve.
Apr 25 2024, 4:12 PM
aokblast requested review of D44947: Move lock of uart frontend to uart backend in bhyve.
Apr 25 2024, 4:05 PM

Apr 2 2024

aokblast updated the summary of D44596: fix typo in acpidump.
Apr 2 2024, 4:11 PM
aokblast retitled D44596: fix typo in acpidump from fix typo in acpi to fix typo in acpidump.
Apr 2 2024, 4:09 PM
aokblast added a reviewer for D44596: fix typo in acpidump: lwhsu.
Apr 2 2024, 4:07 PM
aokblast requested review of D44596: fix typo in acpidump.
Apr 2 2024, 4:07 PM

Mar 24 2024

aokblast abandoned D43757: Make kernel's note segment to be loaded so that debugger can match with coredump.

I think MarkJ is right and then we can abandon this patch and just let the LLDB guys merge the patch into LLDB.

Mar 24 2024, 4:04 AM

Mar 23 2024

aokblast added a comment to D43757: Make kernel's note segment to be loaded so that debugger can match with coredump.

I will ask you again in AsiaBSDCon personally because I found something strange on my experiment. Thanks your guys help!

Mar 23 2024, 3:18 PM

Mar 2 2024

aokblast added a comment to D43757: Make kernel's note segment to be loaded so that debugger can match with coredump.

Does it works? Because the section name can only appear once in a ldscript. So if we move the .note.gnu.build-id section into rodata, it will cause the ELF cannot find this section and finally PT_NOTE segment will not contains .note.gnu.build-id. Besides, without this section, we cannot get the build-id hash data from section VMA as the most debugger expected.

Mar 2 2024, 8:47 PM
aokblast updated the diff for D43514: Add Bhyve TCP raw socket on console.

Tidy up commit

Mar 2 2024, 6:16 PM
aokblast updated the diff for D43514: Add Bhyve TCP raw socket on console.
  • Add manual page and use uniform interface for tcp
Mar 2 2024, 6:05 PM
aokblast updated the summary of D43514: Add Bhyve TCP raw socket on console.
Mar 2 2024, 6:05 PM
aokblast updated the diff for D43514: Add Bhyve TCP raw socket on console.

Add ipv6 support

Mar 2 2024, 5:45 PM
aokblast updated the diff for D43514: Add Bhyve TCP raw socket on console.
  • Add ipv6 support
Mar 2 2024, 5:12 PM

Feb 26 2024

aokblast abandoned D43718: Update mold to 2.4.0.
Feb 26 2024, 3:05 PM

Feb 16 2024

aokblast added a comment to D43514: Add Bhyve TCP raw socket on console.

I understand, but I'm awaiting testing from the OpenStack team to ensure everything is functioning properly. Additionally, I intend to incorporate IPv6 support, so I've chosen to clean up the commit after receiving feedback from the OpenStack team.

Feb 16 2024, 7:16 AM

Feb 14 2024

aokblast added a comment to D43718: Update mold to 2.4.0.

Hello, do you have any progress on this? If you found any issue, I can help on fixing it.

Feb 14 2024, 1:11 PM

Feb 6 2024

aokblast added a reviewer for D43718: Update mold to 2.4.0: ashish.
Feb 6 2024, 3:01 AM
aokblast updated the summary of D43757: Make kernel's note segment to be loaded so that debugger can match with coredump.
Feb 6 2024, 2:46 AM
aokblast updated the summary of D43757: Make kernel's note segment to be loaded so that debugger can match with coredump.
Feb 6 2024, 2:28 AM
aokblast requested review of D43757: Make kernel's note segment to be loaded so that debugger can match with coredump.
Feb 6 2024, 2:05 AM
aokblast updated the diff for D43514: Add Bhyve TCP raw socket on console.

Roll back to correct version

Feb 6 2024, 1:58 AM
aokblast updated the diff for D43514: Add Bhyve TCP raw socket on console.
Feb 6 2024, 1:56 AM

Feb 4 2024

aokblast updated the diff for D43718: Update mold to 2.4.0.
  • Use style compilant version naming and use port package as default
Feb 4 2024, 4:47 PM
aokblast added a comment to D43718: Update mold to 2.4.0.

Sorry, I fix it.
BTW, some test like LTO (because we don't open it) and tlsdesc failed when I run make test thus I decide to turn it off. I have use it to compile several programs and nothing wrong happens.
However, it shows this warning when compiling because crt is stripped when shipping. I think it is the bug from strip.

Feb 4 2024, 4:46 PM
aokblast added inline comments to D43718: Update mold to 2.4.0.
Feb 4 2024, 4:23 PM
aokblast added inline comments to D43718: Update mold to 2.4.0.
Feb 4 2024, 7:15 AM

Feb 3 2024

aokblast added a comment to D43718: Update mold to 2.4.0.

All fixed but I don't find blake3 in FreeBSD port.

Feb 3 2024, 7:41 PM
aokblast updated the diff for D43718: Update mold to 2.4.0.
  • Update to latest version with PR#1186
Feb 3 2024, 7:40 PM
aokblast updated the diff for D43718: Update mold to 2.4.0.
Feb 3 2024, 7:36 PM
aokblast updated the summary of D43718: Update mold to 2.4.0.
Feb 3 2024, 7:42 AM
aokblast updated the summary of D43718: Update mold to 2.4.0.
Feb 3 2024, 7:36 AM
aokblast requested review of D43718: Update mold to 2.4.0.
Feb 3 2024, 7:31 AM

Feb 2 2024

aokblast added inline comments to D43514: Add Bhyve TCP raw socket on console.
Feb 2 2024, 1:00 PM
aokblast added inline comments to D43514: Add Bhyve TCP raw socket on console.
Feb 2 2024, 12:51 PM
aokblast retitled D43514: Add Bhyve TCP raw socket on console from WIP: Add Bhyve TCP raw socket on console to Add Bhyve TCP raw socket on console.
Feb 2 2024, 10:27 AM
aokblast updated the diff for D43514: Add Bhyve TCP raw socket on console.

Use pointer instead of setting errno in userspace

Feb 2 2024, 10:27 AM
aokblast added inline comments to D43514: Add Bhyve TCP raw socket on console.
Feb 2 2024, 8:34 AM

Feb 1 2024

aokblast updated the diff for D43514: Add Bhyve TCP raw socket on console.

Fix indentation

Feb 1 2024, 11:15 PM
aokblast added a comment to D43514: Add Bhyve TCP raw socket on console.

I figure out the disconnection part. Hope everyone can give it a review. Thanks!

Feb 1 2024, 11:10 PM
aokblast updated the diff for D43514: Add Bhyve TCP raw socket on console.

Add reconnection mechanism

Feb 1 2024, 11:08 PM

Jan 24 2024

aokblast added inline comments to D43514: Add Bhyve TCP raw socket on console.
Jan 24 2024, 2:26 PM

Jan 23 2024

aokblast updated the diff for D43514: Add Bhyve TCP raw socket on console.

Add lock to sc and imporve the error logging message

Jan 23 2024, 7:38 PM

Jan 20 2024

aokblast updated the summary of D43514: Add Bhyve TCP raw socket on console.
Jan 20 2024, 5:50 AM

Jan 19 2024

aokblast retitled D43514: Add Bhyve TCP raw socket on console from WIP: Add Bhyve TCP raw socket to WIP: Add Bhyve TCP raw socket on console.
Jan 19 2024, 6:25 PM
aokblast retitled D43514: Add Bhyve TCP raw socket on console from Add Bhyve TCP raw socket to WIP: Add Bhyve TCP raw socket.
Jan 19 2024, 6:23 PM
aokblast requested review of D43514: Add Bhyve TCP raw socket on console.
Jan 19 2024, 6:19 PM

Dec 30 2023

aokblast added a reviewer for D43251: Update riscv-isa-sim to 2024-05-31 snapshot: lwhsu.
Dec 30 2023, 7:20 PM
aokblast requested review of D43251: Update riscv-isa-sim to 2024-05-31 snapshot.
Dec 30 2023, 7:19 PM

Oct 28 2023

aokblast added a comment to D42388: add asan_static to build.

The problem is found when I was looking at this issue.
Currently, -DWITH_ASAN cannot compile successfully before and after this patch.
After applying this patch, the error becomes:

Oct 28 2023, 5:47 PM
aokblast updated the summary of D42388: add asan_static to build.
Oct 28 2023, 5:46 PM
aokblast requested review of D42388: add asan_static to build.
Oct 28 2023, 5:41 PM

Oct 9 2023

aokblast added a comment to D42085: Add array bound checking mechanism for _ctype.h.

Yes, isprint is a macro in FreeBSD's libc, so it will disappear after c pre-processor.
But I don't think this is the reason why it doesn't behavior correctly. However, I will still try to build libc with sanitizer and try again and I am still checking the codes in contrib/llvm-project/compiler-rt/msan at the same time.

Oct 9 2023, 3:58 PM

Oct 6 2023

aokblast abandoned D42085: Add array bound checking mechanism for _ctype.h.

Oh, I found the comment in that file. Sorry about wasting your time. I close the revision right now and on the other hand checking the code on llvm-project that may cause the issue. Thanks you.

Oct 6 2023, 2:52 PM
aokblast added a comment to D42085: Add array bound checking mechanism for _ctype.h.

Sorry about my careless, I copy the wrong code segment.

Oct 6 2023, 2:40 PM

Oct 5 2023

lwhsu renamed aokblast from i19780219111_kimo.com to aokblast.
Oct 5 2023, 12:07 PM
aokblast updated the summary of D42085: Add array bound checking mechanism for _ctype.h.
Oct 5 2023, 11:09 AM
aokblast updated the summary of D42085: Add array bound checking mechanism for _ctype.h.
Oct 5 2023, 11:08 AM