NetBSD Wiki/
RecentChanges
Recent changes to this wiki:
Tiny commit to my personal page
Index: wikisrc/users/charlotte.mdwn =================================================================== RCS file: /cvsroot/wikisrc/users/charlotte.mdwn,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- wikisrc/users/charlotte.mdwn 16 Aug 2023 05:21:45 -0000 1.1 +++ wikisrc/users/charlotte.mdwn 6 Aug 2025 04:34:40 -0000 1.2 @@ -1 +1,3 @@ -Hola, this is Charlotte's spot +Hola, this is Charlotte's spot. + +- [My NetBSD www page](https://www.netbsd.org/~charlotte/)
Commenting has been turned off.
Index: wikisrc/wiki/start.mdwn =================================================================== RCS file: /cvsroot/wikisrc/wiki/start.mdwn,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- wikisrc/wiki/start.mdwn 30 May 2023 15:18:28 -0000 1.15 +++ wikisrc/wiki/start.mdwn 4 Aug 2025 20:43:02 -0000 1.16 @@ -7,8 +7,6 @@ Either or both. Whichever's more convenient when the urge strikes you. -If you're not a NetBSD developer, you can add a comment to any page. - ### Formatting Text is [[formatted|ikiwiki/formatting]] in [[ikiwiki/Markdown]],
all listed chores are done!
Index: wikisrc/releng-todo.mdwn =================================================================== RCS file: /cvsroot/wikisrc/releng-todo.mdwn,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- wikisrc/releng-todo.mdwn 18 Mar 2018 11:57:03 -0000 1.1 +++ wikisrc/releng-todo.mdwn 31 Jul 2025 17:49:32 -0000 1.2 @@ -1,5 +1,5 @@ -* Find someone to add Hybrid-HFS support to "makefs -t cd9660", to make all mac68k and macppc images bootable and save manual steps on official releases +* ~~Find someone to add Hybrid-HFS support to "makefs -t cd9660", to make all mac68k and macppc images bootable and save manual steps on official releases~~ -* If that fails: change the auto build scripts to deal with mkisofs by special casing mac* and add an extra step to invoke the mkisofs machinery in src/distrib/cdrom +* ~~If that fails: change the auto build scripts to deal with mkisofs by special casing mac* and add an extra step to invoke the mkisofs machinery in src/distrib/cdrom~~ -* Add timing information to the autobuild html output, so each build shows the total wall time it took next to the successfull/fail counts in the overview page +* ~~Add timing information to the autobuild html output, so each build shows the total wall time it took next to the successfull/fail counts in the overview page~~
update after netbsd-11 has been branched
Index: wikisrc/releng.mdwn =================================================================== RCS file: /cvsroot/wikisrc/releng.mdwn,v retrieving revision 1.54 retrieving revision 1.55 diff -u -r1.54 -r1.55 --- wikisrc/releng.mdwn 18 Dec 2024 19:51:02 -0000 1.54 +++ wikisrc/releng.mdwn 31 Jul 2025 17:43:11 -0000 1.55 @@ -5,7 +5,12 @@ This page contains various information about NetBSD Release Engineering, including status information about various branches, pointers to release engineering procedures and other documentation, and the status of various branches. ## Next Major Release -The next major release will be NetBSD 11.0 (not branched yet) + +The next major release will be NetBSD 11.0. + +* no fixed schedule, release hopefully in October + + CVS branch tag: <code>netbsd-11</code> +* [Current pull-up queue for the netbsd-11 branch](http://releng.netbsd.org/cgi-bin/req-11.cgi) ## Active Major Releases @@ -35,4 +40,4 @@ ## Release Engineer Documentation * [[Pull-up workflow and policies|workflow]] -* [[Long and mid-term releng chores|releng-todo]] +* ~~[[Long and mid-term releng chores|releng-todo]]~~
Remove non-useful comment.
--- wikisrc/kerberos/system/comment_1_9b42495d432f5bb3982e2ee188a50902._comment 2025-07-30 17:16:59.685313051 +0000 +++ /dev/null 2025-07-30 17:16:00.322133621 +0000 @@ -1,8 +0,0 @@ -[[!comment format=mdwn - username="https://launchpad.net/~sigo" - nickname="sigo" - subject="convenience ?" - date="2019-12-30T15:31:45Z" - content=""" -you state \"convenience\" as a reason? You gotta be kidding me... -"""]]
Remove unused tags autocreated before we had project templates quite right.
--- wikisrc/tag/category:__60__TMPL_VAR.mdwn 2025-07-30 16:01:44.308914407 +0000 +++ /dev/null 2025-07-30 16:01:19.524299796 +0000 @@ -1,4 +0,0 @@ -[[!meta title="pages tagged category:<TMPL VAR"]] - -[[!inline pages="tagged(category:__60__TMPL_VAR)" actions="no" archive="yes" -feedshow=10]] --- wikisrc/tag/difficulty:__60__TMPL_VAR.mdwn 2025-07-30 16:01:44.349487174 +0000 +++ /dev/null 2025-07-30 16:01:19.524299796 +0000 @@ -1,4 +0,0 @@ -[[!meta title="pages tagged difficulty:<TMPL VAR"]] - -[[!inline pages="tagged(difficulty:__60__TMPL_VAR)" actions="no" archive="yes" -feedshow=10]]
Merge Kevin's comment into the kqueue tutorial.
Index: wikisrc/tutorials/kqueue_tutorial.mdwn =================================================================== RCS file: /cvsroot/wikisrc/tutorials/kqueue_tutorial.mdwn,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- wikisrc/tutorials/kqueue_tutorial.mdwn 9 Sep 2020 14:28:56 -0000 1.6 +++ wikisrc/tutorials/kqueue_tutorial.mdwn 29 Jul 2025 18:21:21 -0000 1.7 @@ -367,7 +367,14 @@ More kqueue examples (including the aforementioned) may be found [here](http://repo.or.cz/w/eleutheria.git?a=tree;h=master;hb=master). - [26]: http://repo.or.cz/w/eleutheria.git?a=tree;h=master;hb=master (http://repo.or.cz/w/eleutheria.git?a=tree;h=master;hb=master) +_2015/01/01_ commenter Kevin reports: + +> The [example kqdir.c code](http://repo.or.cz/w/eleutheria.git/blob_plain/master:/kqueue/kqdir.c) +> has a bug. It skips the first file in the directory of files it's supposed to monitor. +> +> I was able to fix this by changing line 51 to +> +> while(cnt++ < 2 && (pdent = readdir(pdir)) != NULL) # Documentation --- wikisrc/tutorials/kqueue_tutorial/comment_1_7634af8fc38da897ad26939a4b43c02f._comment 2025-07-29 18:22:30.963081435 +0000 +++ /dev/null 2025-07-29 18:20:02.991781478 +0000 @@ -1,13 +0,0 @@ -[[!comment format=mdwn - username="https://www.google.com/accounts/o8/id?id=AItOawkBSeahkJSobxTKsgHyEHNyp_xcS9E-2X4" - nickname="Kevin" - subject="Bug in kqdir.c " - date="2015-01-01T07:44:52Z" - content=""" -The example code at -http://repo.or.cz/w/eleutheria.git/blob_plain/master:/kqueue/kqdir.c -has a bug. It skips the first file in the directory of files it's supposed to monitor. - -I was able to fix this by changeing line 51 to - while(cnt++ < 2 && (pdent = readdir(pdir)) != NULL) -"""]]
Remove a comment that's too vague to be a problem report.
--- wikisrc/tutorials/how_to_install_netbsd_on_hpcarm/comment_1_4ccf2cd6224e5e97c2fca71a02944ae7._comment 2025-07-29 18:17:18.202240916 +0000 +++ /dev/null 2025-07-29 18:16:00.288691619 +0000 @@ -1,10 +0,0 @@ -[[!comment format=mdwn - username="https://me.yahoo.com/a/ceCmhGBukoQo3T2YQY9d06pQzt76i4Jp#a1439" - nickname="Nigel" - subject="doesn't work" - date="2017-10-21T14:02:25Z" - content=""" -# disklabel -i -I sd0 -disklabel: /dev/rsd0: Device not configured - -"""]]
Merge hauke@'s comments into Sendmail TLS AUTH tutorial.
Index: wikisrc/tutorials/services/sendmail_auth_tls.mdwn =================================================================== RCS file: /cvsroot/wikisrc/tutorials/services/sendmail_auth_tls.mdwn,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- wikisrc/tutorials/services/sendmail_auth_tls.mdwn 29 Jul 2025 17:54:08 -0000 1.4 +++ wikisrc/tutorials/services/sendmail_auth_tls.mdwn 29 Jul 2025 18:06:52 -0000 1.5 @@ -54,7 +54,7 @@ Now we have to inform the *SASL* library that it should use *saslauthd* whenever *sendmail* asks for an authentication: - # echo "pwcheck_method:saslauthd" > /usr/pkg/lib/sasl2/Sendmail.conf + # echo "pwcheck_method:saslauthd" > /usr/pkg/etc/sasl2/Sendmail.conf ### Setting up the secure transport layer @@ -107,7 +107,11 @@ MAILER(procmail) EOF -Once your configuration is ready, build and install it using the following: +To debug your configuration, add this line: + + define(`confLOG_LEVEL', 22)dnl + +Once your config is ready, build and install it using the following: # make install-cf CF=korriban rm -f korriban.cf --- wikisrc/tutorials/services/sendmail_auth_tls/comment_2_034f10396448f43d2439f18a4ce32a2a._comment 2025-07-29 18:07:53.181872294 +0000 +++ /dev/null 2025-07-29 18:03:03.020447342 +0000 @@ -1,12 +0,0 @@ -[[!comment format=mdwn - username="hauke" - subject="Sendmail.conf has moved" - date="2017-07-26T08:47:43Z" - content=""" -Since Makefile.common v1.26, the application configuration files go to ${PKG_SYSCONFBASE}/sasl/, instead of ${PREFIX}/lib/sasl as documented in a multitude of web HowTo documents including this page. After a - -define(`confLOG_LEVEL', 22)dnl - -sendmail(8) told me about the error of my ways, but it sure was a long way... - -"""]]
Remove some comments.
--- wikisrc/ikiwiki/openid/comment_1_03aa0d0bc01c034abca907a997088685._comment 2025-07-29 18:01:06.446029322 +0000 +++ /dev/null 2025-07-29 18:00:57.814228680 +0000 @@ -1,8 +0,0 @@ -[[!comment format=py - username="https://launchpad.net/~sigo" - nickname="sigo" - subject="well" - date="2019-12-30T14:08:31Z" - content=""" -print \"openiddirectory.com is a bit of a joke.\" -"""]] --- wikisrc/ports/evbarm/odroid-c1/comment_1_05bcc1009bf23342220dacdfe6e8dcc1._comment 2025-07-29 18:01:06.491934755 +0000 +++ /dev/null 2025-07-29 18:00:57.814228680 +0000 @@ -1,8 +0,0 @@ -[[!comment format=mdwn - username="https://www.google.com/accounts/o8/id?id=AItOawnLCothbjAqByE8Ibp4T2U73QJAVPRvpQc" - nickname="Bo" - subject="Great job!" - date="2015-03-09T05:53:26Z" - content=""" -Really looking forward to the future of this port! I'd love to build a fileserver with my C1 using NetBSD as the OS. -"""]] --- wikisrc/ports/evbarm/odroid-c1/comment_2_998e6ac6918d3836141c424c292b63e8._comment 2025-07-29 18:01:06.604251157 +0000 +++ /dev/null 2025-07-29 18:00:57.814228680 +0000 @@ -1,9 +0,0 @@ -[[!comment format=mdwn - username="https://me.yahoo.com/a/lmCU3JosmfuLFlq8Qv4Jl2wJwoW6yeKanA--#d948b" - nickname="Luca" - subject="Odroid U3" - date="2016-08-22T08:51:04Z" - content=""" -Hello, nice news (even if published almost 2 years ago :)) ) and information. I would like to ask you how complex could be the porting on the Odroid U3. Do you have some hints or links to find some information? Is there any work in progress? -Many thanks in advance for your support. -"""]]
Merge Michael's comment into Sendmail AUTH TLS tutorial.
Index: wikisrc/tutorials/services/sendmail_auth_tls.mdwn =================================================================== RCS file: /cvsroot/wikisrc/tutorials/services/sendmail_auth_tls.mdwn,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- wikisrc/tutorials/services/sendmail_auth_tls.mdwn 12 Nov 2011 16:26:45 -0000 1.3 +++ wikisrc/tutorials/services/sendmail_auth_tls.mdwn 29 Jul 2025 17:54:08 -0000 1.4 @@ -26,6 +26,14 @@ $ grep SASL /home/bulk/etc/mk.conf SASL_DBTYPE= berkeley +_2012/12/14_ commenter Michael reports: + +> This worked fantastically on my 5.0.2 system. +> +> However, when I set up a new 6.0 system, it failed. Turns out that having \"SASL_DBTYPE=berkeley\" in the mk.conf makes your saslauthd stuff compile and link against libpthread, which sendmail does not use, which renders all AUTH attempts to failure. +> +> Follow everything else, just skip that one step, and we have SMTP Auth working. + We can now install *sendmail* with *TLS* and *SASL* support the classic way: $ cd /usr/pkgsrc/mail/sendmail && sudo make install clean --- wikisrc/tutorials/services/sendmail_auth_tls/comment_1_b4b87a8dbe1de6e2856703990c0ea0db._comment 2025-07-29 17:55:06.992343627 +0000 +++ /dev/null 2025-07-29 17:53:03.397245062 +0000 @@ -1,12 +0,0 @@ -[[!comment format=mdwn - username="https://www.google.com/accounts/o8/id?id=AItOawl8XBeahKNv5aOdVVcDgFgmGPlY2fbFS24" - nickname="Michael" - subject="Works on 5.x, not on 6.x (at least, not on 6.0)." - date="2012-12-14T02:26:33Z" - content=""" -This worked fantastically on my 5.0.2 system. - -However, when I set up a new 6.0 system, it failed. Turns out that having \"SASL_DBTYPE=berkeley\" in the mk.conf makes your saslauthd stuff compile and link against libpthread, which sendmail does not use, which renders all AUTH attempts to failure. - -Follow everything else, just skip that one step, and we have SMTP Auth working. -"""]]
remove test comment
--- wikisrc/users/schmonz/testing-kb-bugfix/comment_1_e860be6154074adde004fe5b11a05efa._comment 2025-07-29 17:53:31.768428806 +0000 +++ /dev/null 2025-07-29 17:53:03.397245062 +0000 @@ -1,8 +0,0 @@ -[[!comment format=mdwn - username="schmonz" - ip="69.203.118.245" - subject="testing first comment on page" - date="2012-02-05T01:26:59Z" - content=""" -hello there -"""]]
remove comment (that was perhaps meant as a joke?)
--- wikisrc/wiki/todo/write_wiki_howtos/comment_1_f3e50e818bc2fc512c2d0d1f2c2fb786._comment 2025-07-29 17:51:45.297129020 +0000 +++ /dev/null 2025-07-29 17:50:03.048014550 +0000 @@ -1,8 +0,0 @@ -[[!comment format=mdwn - username="https://launchpad.net/~sigo" - nickname="sigo" - subject="orange bar" - date="2019-12-30T15:34:15Z" - content=""" -there is no orange bar. maybe go to the orange juice bar. -"""]]
Commenting has been turned off. Help wanted to process existing comments.
Index: wikisrc/local.css =================================================================== RCS file: /cvsroot/wikisrc/local.css,v retrieving revision 1.21 retrieving revision 1.22 diff -u -r1.21 -r1.22 --- wikisrc/local.css 3 Nov 2021 09:44:05 -0000 1.21 +++ wikisrc/local.css 29 Jul 2025 17:39:31 -0000 1.22 @@ -2,12 +2,6 @@ border-top: 0; } -#comments { - border-top: 1px solid #000; - margin-left: 25px; - margin-right: 15px; -} - #searchform { box-sizing: border-box; width: 100%; Index: wikisrc/pkgsrc/local.css =================================================================== RCS file: /cvsroot/wikisrc/pkgsrc/local.css,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- wikisrc/pkgsrc/local.css 29 Jul 2020 21:47:59 -0000 1.5 +++ wikisrc/pkgsrc/local.css 29 Jul 2025 17:39:32 -0000 1.6 @@ -2,12 +2,6 @@ border-top: 0; } -#comments { - border-top: 1px solid #000; - margin-left: 25px; - margin-right: 15px; -} - #searchform { box-sizing: border-box; width: 100%; Index: wikisrc/wiki/web.mdwn =================================================================== RCS file: /cvsroot/wikisrc/wiki/web.mdwn,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- wikisrc/wiki/web.mdwn 25 Jul 2018 07:20:40 -0000 1.14 +++ wikisrc/wiki/web.mdwn 29 Jul 2025 17:39:32 -0000 1.15 @@ -1,7 +1,7 @@ #### Getting access 7. Developer? [[Set a password|kerberos/password]]. Non-developer? -Bear with us. For now, please freely add comments to pages. +Bear with us. #### Creating page "Foo Bar" Index: wikisrc/wiki/todo/let_non-developers_contribute_content.mdwn =================================================================== RCS file: /cvsroot/wikisrc/wiki/todo/let_non-developers_contribute_content.mdwn,v retrieving revision 1.36 retrieving revision 1.37 diff -u -r1.36 -r1.37 --- wikisrc/wiki/todo/let_non-developers_contribute_content.mdwn 4 Jul 2010 02:32:36 -0000 1.36 +++ wikisrc/wiki/todo/let_non-developers_contribute_content.mdwn 29 Jul 2025 17:39:32 -0000 1.37 @@ -210,4 +210,23 @@ --[[schmonz]] -[[done]] +----- + +This is back to not-done. +OpenID has gotten rarer, so commenting has gotten harder. +Also ikiwiki has an n^2 (or thereabouts) algorithm for identifying every source file that's a comment, +so turning off the comments plugin enormously speeds up full rebuilds and incremental refreshes. +If we want to bring back comments (or something like them), we'll need to adjust our approach. +In the meantime, existing comments have not been lost, they're merely not getting rendered in the site. + +Folks with [[CVS access to wikisrc|wiki/cvs]] can help out. +Run `find . -name '*._comment' | tail -5`, and for each entry, either: + +7. Merge the suggested content into the page where it belongs, then delete the comment file +7. Convert the request into a PR, then delete the comment file +7. Simply delete the comment file + +Then `cvs commit`. Thanks! + +--[[schmonz]] +
Update my picture.
Index: wikisrc/users/schmonz.mdwn =================================================================== RCS file: /cvsroot/wikisrc/users/schmonz.mdwn,v retrieving revision 1.47 retrieving revision 1.48 diff -u -r1.47 -r1.48 --- wikisrc/users/schmonz.mdwn 14 Mar 2025 00:32:24 -0000 1.47 +++ wikisrc/users/schmonz.mdwn 29 Jul 2025 17:22:40 -0000 1.48 @@ -1,7 +1,5 @@ [[schmonz_73x73.jpg]] -[[!template id=needs-update reason="been a while since he looked like that"]] - ## This site You can mostly point a finger at me for how `wiki.netbsd.org` works (or sometimes doesn't). Index: wikisrc/users/schmonz/schmonz_73x73.jpg =================================================================== RCS file: /cvsroot/wikisrc/users/schmonz/schmonz_73x73.jpg,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 Binary files /tmp/cvsLnh3xo and /tmp/cvsz3JxFk differ
Booting BE arm64 in Qemu via EDK2 works if one disables ACPI
Index: wikisrc/ports/evbarm/qemu_arm.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/evbarm/qemu_arm.mdwn,v retrieving revision 1.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- wikisrc/ports/evbarm/qemu_arm.mdwn 28 Jul 2025 16:55:48 -0000 1.16 +++ wikisrc/ports/evbarm/qemu_arm.mdwn 29 Jul 2025 08:29:07 -0000 1.17 @@ -40,12 +40,22 @@ # Booting a BE (Big Endian) arm64 system -This is not supported by Tianocore ED2K and you instead need to tell Qemu which kernel to boot. First, download the appropriate BE arm64.img.gz and kernel: +The linked images above are Little Endian images, so first download a BE image: * [NetBSD current arm64 BE image](https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-aarch64eb/binary/gzimg/arm64.img.gz) - at the time of this writing 20250726084938Z + +and uncompress and resize it as above. Booting this via Tianocore EDK2 requires disabling ACPI (see [PR port-arm/59558](https://gnats.netbsd.org/59558) for details): + + $ qemu-system-aarch64 -M virt -cpu cortex-a53 -smp 4 -m 4g \ + -drive if=none,file=arm64.img,id=hd0 -device virtio-blk-device,drive=hd0 \ + -netdev type=user,id=net0 -device virtio-net-device,netdev=net0,mac=00:11:22:33:44:55 \ + -bios QEMU_EFI.fd -nographic -machine acpi=off + +**Alternatively**, instead of using EDK2, you can tell Qemu to boot a kernel from a separate file (not in the filesystem image). For this, download the appropriate arm64 BE kernel: + * [NetBSD current arm64 BE kernel](https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-aarch64eb/binary/kernel/netbsd-GENERIC64.img.gz) - at the time of this writing 20250726084938Z -Uncompress and resize the image and kernel as above, then boot it as +Now also uncompress the kernel and boot it as $ qemu-system-aarch64 -M virt -cpu cortex-a57 -smp 1 -m 4g \ -drive if=none,file=arm64.img,id=hd0 -device virtio-blk-device,drive=hd0 \
Fix markdown and qemu call.
Index: wikisrc/ports/evbarm/qemu_arm.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/evbarm/qemu_arm.mdwn,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- wikisrc/ports/evbarm/qemu_arm.mdwn 26 Jul 2025 21:49:06 -0000 1.15 +++ wikisrc/ports/evbarm/qemu_arm.mdwn 28 Jul 2025 16:55:48 -0000 1.16 @@ -41,15 +41,16 @@ # Booting a BE (Big Endian) arm64 system This is not supported by Tianocore ED2K and you instead need to tell Qemu which kernel to boot. First, download the appropriate BE arm64.img.gz and kernel: + * [NetBSD current arm64 BE image](https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-aarch64eb/binary/gzimg/arm64.img.gz) - at the time of this writing 20250726084938Z * [NetBSD current arm64 BE kernel](https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-aarch64eb/binary/kernel/netbsd-GENERIC64.img.gz) - at the time of this writing 20250726084938Z -Uncompress and resize the image as above, then boot it as +Uncompress and resize the image and kernel as above, then boot it as $ qemu-system-aarch64 -M virt -cpu cortex-a57 -smp 1 -m 4g \ -drive if=none,file=arm64.img,id=hd0 -device virtio-blk-device,drive=hd0 \ -netdev type=user,id=net0 -device virtio-net-device,netdev=net0,mac=00:11:22:33:44:55 \ - netbsd-GENERIC64.img -append root=dk1 + -nographic -kernel netbsd-GENERIC64.img -append root=dk1 # Booting the system (arm64) directly into the kernel with hardware accelerated virtualization on a Linux host
Markdown fix
(and make arm64 BE qemu call a bit more consistent with others on page)
(and make arm64 BE qemu call a bit more consistent with others on page)
Members: ports/evbarm/qemu_arm.mdwn:1.14->1.15 Index: wikisrc/ports/evbarm/qemu_arm.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/evbarm/qemu_arm.mdwn,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- wikisrc/ports/evbarm/qemu_arm.mdwn 26 Jul 2025 17:41:30 -0000 1.14 +++ wikisrc/ports/evbarm/qemu_arm.mdwn 26 Jul 2025 21:49:06 -0000 1.15 @@ -41,16 +41,15 @@ # Booting a BE (Big Endian) arm64 system This is not supported by Tianocore ED2K and you instead need to tell Qemu which kernel to boot. First, download the appropriate BE arm64.img.gz and kernel: - * [NetBSD current arm64 BE image](https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-aarch64eb/binary/gzimg/arm64.img.gz) - at the time of this writing 20250726084938Z - * [NetBSD current arm64 BE kernel](https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-aarch64eb/binary/kernel/netbsd-GENERIC64.img.gz) - at the time of this writing 20250726084938Z +* [NetBSD current arm64 BE image](https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-aarch64eb/binary/gzimg/arm64.img.gz) - at the time of this writing 20250726084938Z +* [NetBSD current arm64 BE kernel](https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-aarch64eb/binary/kernel/netbsd-GENERIC64.img.gz) - at the time of this writing 20250726084938Z Uncompress and resize the image as above, then boot it as $ qemu-system-aarch64 -M virt -cpu cortex-a57 -smp 1 -m 4g \ -drive if=none,file=arm64.img,id=hd0 -device virtio-blk-device,drive=hd0 \ -netdev type=user,id=net0 -device virtio-net-device,netdev=net0,mac=00:11:22:33:44:55 \ - -nographic -serial stdio -monitor none -kernel netbsd-GENERIC64.img \ - -append root=dk1 + netbsd-GENERIC64.img -append root=dk1 # Booting the system (arm64) directly into the kernel with hardware accelerated virtualization on a Linux host
Document how to run BE arm64 in Qemu.
Index: wikisrc/ports/evbarm/qemu_arm.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/evbarm/qemu_arm.mdwn,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- wikisrc/ports/evbarm/qemu_arm.mdwn 26 Jul 2025 13:36:21 -0000 1.13 +++ wikisrc/ports/evbarm/qemu_arm.mdwn 26 Jul 2025 17:41:30 -0000 1.14 @@ -38,6 +38,20 @@ -netdev type=user,id=net0 -device virtio-net-device,netdev=net0,mac=00:11:22:33:44:55 \ -bios QEMU_EFI.fd -nographic +# Booting a BE (Big Endian) arm64 system + +This is not supported by Tianocore ED2K and you instead need to tell Qemu which kernel to boot. First, download the appropriate BE arm64.img.gz and kernel: + * [NetBSD current arm64 BE image](https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-aarch64eb/binary/gzimg/arm64.img.gz) - at the time of this writing 20250726084938Z + * [NetBSD current arm64 BE kernel](https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-aarch64eb/binary/kernel/netbsd-GENERIC64.img.gz) - at the time of this writing 20250726084938Z + +Uncompress and resize the image as above, then boot it as + + $ qemu-system-aarch64 -M virt -cpu cortex-a57 -smp 1 -m 4g \ + -drive if=none,file=arm64.img,id=hd0 -device virtio-blk-device,drive=hd0 \ + -netdev type=user,id=net0 -device virtio-net-device,netdev=net0,mac=00:11:22:33:44:55 \ + -nographic -serial stdio -monitor none -kernel netbsd-GENERIC64.img \ + -append root=dk1 + # Booting the system (arm64) directly into the kernel with hardware accelerated virtualization on a Linux host $ qemu-system-aarch64 -M virt,accel=kvm -cpu host -m 256 \
Update to most recent ED2k and disk image links
Also add links to NetBSD 10.x and current images.
Also add links to NetBSD 10.x and current images.
Members: ports/evbarm/qemu_arm.mdwn:1.12->1.13 Index: wikisrc/ports/evbarm/qemu_arm.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/evbarm/qemu_arm.mdwn,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- wikisrc/ports/evbarm/qemu_arm.mdwn 25 Jun 2024 11:58:47 -0000 1.12 +++ wikisrc/ports/evbarm/qemu_arm.mdwn 26 Jul 2025 13:36:21 -0000 1.13 @@ -7,11 +7,15 @@ # Requirements * qemu 4.1.0 or higher * disk image - * [NetBSD 9.x armv7](https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-9/latest/evbarm-earmv7hf/binary/gzimg/armv7.img.gz) - * [NetBSD 9.x arm64](https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-9/latest/evbarm-aarch64/binary/gzimg/arm64.img.gz) + * [NetBSD 9.x armv7](https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-9/latest/evbarm-earmv7hf/binary/gzimg/armv7.img.gz) - at the time of this writing 20250712110809Z + * [NetBSD 10.x armv7](https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-10/latest/evbarm-earmv7hf/binary/gzimg/armv7.img.gz) - at the time of this writing 20250714184213Z + * [NetBSD current armv7](https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-earmv7hf/binary/gzimg/armv7.img.gz) - at the time of this writing 20250726065821Z + * [NetBSD 9.x arm64](https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-10/latest/evbarm-aarch64/binary/gzimg/arm64.img.gz) - at the time of this writing 20250712110809Z + * [NetBSD 10.x arm64](https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-9/latest/evbarm-aarch64/binary/gzimg/arm64.img.gz) - at the time of this writing 20250714184213Z + * [NetBSD current arm64](https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/evbarm-aarch64/binary/gzimg/arm64.img.gz) - at the time of this writing 20250726065821Z * Tianocore EDK2 firmware - * [QEMU_EFI.fd for armv7](https://snapshots.linaro.org/components/kernel/leg-virt-tianocore-edk2-upstream/4480/QEMU-ARM/RELEASE_GCC5/QEMU_EFI.fd) - * [QEMU_EFI.fd for arm64](https://snapshots.linaro.org/components/kernel/leg-virt-tianocore-edk2-upstream/4480/QEMU-AARCH64/RELEASE_GCC5/QEMU_EFI.fd) + * [QEMU_EFI.fd for armv7](https://snapshots.linaro.org/components/kernel/leg-virt-tianocore-edk2-upstream/5552/QEMU-ARM/RELEASE_GCC/QEMU_EFI.fd) + * [QEMU_EFI.fd for arm64](https://snapshots.linaro.org/components/kernel/leg-virt-tianocore-edk2-upstream/5552/QEMU-AARCH64/RELEASE_GCC/QEMU_EFI.fd) # Installing QEMU on NetBSD You can install latest qemu with the following commands.
Trivial space cleanup.
Index: wikisrc/tutorials/acls_and_extended_attributes_on_ffs.mdwn =================================================================== RCS file: /cvsroot/wikisrc/tutorials/acls_and_extended_attributes_on_ffs.mdwn,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- wikisrc/tutorials/acls_and_extended_attributes_on_ffs.mdwn 19 Jul 2025 17:54:35 -0000 1.5 +++ wikisrc/tutorials/acls_and_extended_attributes_on_ffs.mdwn 19 Jul 2025 18:03:37 -0000 1.6 @@ -42,7 +42,7 @@ This says: **format FFSv2** meaning: EAs are **disabled**. -Example output (from a different disk) when EAs are enabled looks like this: +Example output (from a different disk) when EAs are enabled looks like this: [[!template id=programlisting text=""" # dumpfs /disk |head @@ -60,7 +60,6 @@ Here it says: **format FFSv2ea** meaning: EAs are **enabled**. - # Enabling or disabling EAs after installation You typically need to boot to single user mode (the file system you want to convert should not be mounted).
Minor spelling and grammar fixes.
Index: wikisrc/tutorials/acls_and_extended_attributes_on_ffs.mdwn =================================================================== RCS file: /cvsroot/wikisrc/tutorials/acls_and_extended_attributes_on_ffs.mdwn,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- wikisrc/tutorials/acls_and_extended_attributes_on_ffs.mdwn 16 Dec 2022 18:07:09 -0000 1.4 +++ wikisrc/tutorials/acls_and_extended_attributes_on_ffs.mdwn 19 Jul 2025 17:54:35 -0000 1.5 @@ -1,8 +1,8 @@ -NetBSD 10 or newer support extended attributes (EA) and access controll lists (ACLs) on FFS file systems. +NetBSD 10 or newer support extended attributes (EA) and access control lists (ACLs) on FFS file systems. # Enabling or disabling EA/ACLs during setup -During setup, this support is enabled by default on -current or NetBSD 11 and newer (once that exists), for NetBSD 10 you need to manually tell the installer to create the file system this way: +During setup, this support is enabled by default on -current or NetBSD 11 and newer (once that exists); for NetBSD 10 you need to manually tell the installer to create the file system this way: When you are at the partitioning step in Sysinst, you will see a display like this: @@ -42,7 +42,7 @@ This says: **format FFSv2** meaning: EAs are **disabled**. -Example output (from different disk) when EAs are enabled looks like this: +Example output (from a different disk) when EAs are enabled looks like this: [[!template id=programlisting text=""" # dumpfs /disk |head
sandbox.mdwn: test a commit
Index: wikisrc/sandbox.mdwn =================================================================== RCS file: /cvsroot/wikisrc/sandbox.mdwn,v retrieving revision 1.28 retrieving revision 1.29 diff -u -r1.28 -r1.29 --- wikisrc/sandbox.mdwn 26 Oct 2024 08:54:36 -0000 1.28 +++ wikisrc/sandbox.mdwn 18 Jul 2025 00:38:39 -0000 1.29 @@ -44,3 +44,4 @@ fnord again +test ikiwiki commit
add a couple things to the supported hw list
mention that we can now run X11
mention that we can now run X11
Index: wikisrc/ports/hppa.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/hppa.mdwn,v retrieving revision 1.25 retrieving revision 1.26 diff -u -r1.25 -r1.26 --- wikisrc/ports/hppa.mdwn 27 May 2025 10:06:08 -0000 1.25 +++ wikisrc/ports/hppa.mdwn 23 Jun 2025 03:34:41 -0000 1.26 @@ -116,27 +116,39 @@ 53c860, 53c875, 53c875J, 53c885, 53c895, and 53c896 (*siop/esiop*) - Qlogic ISP-10.1, ISP-10.1, ISP-10.1 (LVD), and ISP-2100 (FibreChannel) (*isp*) +- Adaptec [23]94x, aic78x0 SCSI (*ahc*) - Digital 21x4x and compatible Ethernet (*tlp*) - Intel EtherExpress Pro family Ethernet (*fxp*) - NE2000 and compatible Ethernet (*ne*) - RealTek RTL8129/8139 based Ethernet (*rtk*) - National Semiconductor DP83815 based Ethernet (*sip*) +- 3Com 90x[BC] Ethernet (*ex*) - ns16550a serial controller (*com*) - Framebuffers which are configured via the Boot ROM (*sti*) - PCI Visualize EG (*gftfb*) in -current - HCRX (*hyperfb*) in -current -- Visualize FX 2/4/6 (*summitfb*) in -current +- Visualize FX 4 (*summitfb*) in -current + FX 2 and 6 *should* work but are untested. - PS/2 style keyboard (*pckbd*) - PS/2 style mouse (*pms*) - Parallel port (*lpt*) - CS4215 audio (*harmony*) -- VIA and ALI USB 2.0 host controllers (*ohci/ehci*) +- VIA and ALI USB 2.0 host controllers (*ohci/uhci/ehci*) - USB mass storage devices (*umass*) - Realtek RTL8150L USB Ethernet (*url*) - Dino and Cujo Host/PCI bridges (*dino*) +- Elroy PCI Host (*elroy*) - Lasi I/O subsystem (*lasi*) - HIL keyboard (*hilkbd*) - HIL mouse (*hilms*) +- machine independent PCI drivers should work but most are untested + +X11 +--- + +Suport for running X11 has been added in -current. +The (*ngle*) driver supports basic acceleration on HCRX, PCI Visualize EG, and Visualize FX 4. +Older NGLE devices supported by (*sti*) may work with the (*wsfb*) driver - this needs more testing. QEMU ----
Fix link syntax
Index: wikisrc/kernel_debugging_with_qemu.mdwn =================================================================== RCS file: /cvsroot/wikisrc/kernel_debugging_with_qemu.mdwn,v retrieving revision 1.23 retrieving revision 1.24 diff -u -r1.23 -r1.24 --- wikisrc/kernel_debugging_with_qemu.mdwn 22 Jun 2025 13:53:24 -0000 1.23 +++ wikisrc/kernel_debugging_with_qemu.mdwn 22 Jun 2025 13:56:07 -0000 1.24 @@ -32,7 +32,7 @@ of them don't, for various reasons: they are either not supported by QEMU, not supported by anita, supported by anita only using install media that lack debug or source sets, or they fail to install. The macppc -port [[|can be made to work|ports/macppc/kernel_debugging_with_qemu/]] +port [[can be made to work|ports/macppc/kernel_debugging_with_qemu/]] with some work-arounds. The host and target system do not need to be the same architecture.
Add link to macppc specific instructions
Index: wikisrc/kernel_debugging_with_qemu.mdwn =================================================================== RCS file: /cvsroot/wikisrc/kernel_debugging_with_qemu.mdwn,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- wikisrc/kernel_debugging_with_qemu.mdwn 22 Jun 2025 11:23:34 -0000 1.22 +++ wikisrc/kernel_debugging_with_qemu.mdwn 22 Jun 2025 13:53:24 -0000 1.23 @@ -28,11 +28,12 @@ also work; just replace each instance of "amd64" in the commands below by "i386", and "qemu-system-x86_64" by "qemu-system-i386". -Other NetBSD ports should also work in principle, but in practice none -of them do, for various reasons: they are either not supported by QEMU, +Other NetBSD ports should also work in principle, but in practice most +of them don't, for various reasons: they are either not supported by QEMU, not supported by anita, supported by anita only using install media -that lack debug or source sets, fail to install, or have networking -issues when run under QEMU. +that lack debug or source sets, or they fail to install. The macppc +port [[|can be made to work|ports/macppc/kernel_debugging_with_qemu/]] +with some work-arounds. The host and target system do not need to be the same architecture.
Simplify, fix typo, try to fix links
Index: wikisrc/ports/macppc/kernel_debugging_with_qemu.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/macppc/kernel_debugging_with_qemu.mdwn,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- wikisrc/ports/macppc/kernel_debugging_with_qemu.mdwn 22 Jun 2025 13:33:35 -0000 1.1 +++ wikisrc/ports/macppc/kernel_debugging_with_qemu.mdwn 22 Jun 2025 13:44:09 -0000 1.2 @@ -1,11 +1,11 @@ [[!meta title="NetBSD/macppc kernel debugging with QEMU"]] -This is an addendum to [[Kernel debugging with QEMU]] with +This is an addendum to [[Kernel debugging with QEMU|/kernel_debugging_with_qemu]] with additional instructions specific to NetBSD/macppc. ## Installing the emulator -If you are using pkgsrc, the PPC emulator is part of the "qemu" package. +When using pkgsrc, the PPC emulator is part of the "qemu" package. On other systems you may have to install a separate packages such as "qemu-system-ppc". ## Installing the Target System @@ -45,4 +45,4 @@ interact http://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/macppc/ """]] -After thhat, everything should work the same as in [[Kernel debugging with QEMU]]. +After that, everything should work the same as in [[Kernel debugging with QEMU|/kernel_debugging_with_qemu]].
Add macppc specific instructions for kernel debugging using qemu
--- /dev/null 2025-07-29 17:43:02.530750491 +0000 +++ wikisrc/ports/macppc/kernel_debugging_with_qemu.mdwn 2025-07-29 17:47:22.322025238 +0000 @@ -0,0 +1,48 @@ +[[!meta title="NetBSD/macppc kernel debugging with QEMU"]] + +This is an addendum to [[Kernel debugging with QEMU]] with +additional instructions specific to NetBSD/macppc. + +## Installing the emulator + +If you are using pkgsrc, the PPC emulator is part of the "qemu" package. +On other systems you may have to install a separate packages such as "qemu-system-ppc". + +## Installing the Target System + +Installation of the target system is the same as for x86_64 except for +the release URL ending in "/macppc/": + +[[!template id=programlisting text=""" + $ anita --workdir work --disk-size 10G --memory-size 256M \ + --sets kern-GENERIC,modules,base,etc,comp,debug,games,man,misc,tests,text,syssrc,src,sharesrc,gnusrc \ + install http://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/macppc/ +"""]] + +## Booting the VMs + +NetBSD/macppc is currently unable to install a bootable system on a +hard disk. This can be worked around by starting qemu via anita +rather than directly, as anita will build a boot CD and boot from it +instead of the hard disk. + +Also, NetBSD's support for the "gem" network card qemu emulates by +default is broken, so you need to substitute a different network card. + +To boot the target VM with the above work-arounds, you can use + +[[!template id=programlisting text=""" + $ anita --workdir work --vmm-args "-net nic,model=ne2k_pci -net user -gdb tcp::1234" \ + --sets kern-GENERIC,modules,base,etc,comp,debug,games,man,misc,tests,text,syssrc,src,sharesrc,gnusrc \ + interact http://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/macppc/ +"""]] + +To boot the GDB VM, you can use + +[[!template id=programlisting text=""" + $ anita --workdir work --vmm-args "-net nic,model=ne2k_pci -net user" \ + --sets kern-GENERIC,modules,base,etc,comp,debug,games,man,misc,tests,text,syssrc,src,sharesrc,gnusrc \ + interact http://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/macppc/ +"""]] + +After thhat, everything should work the same as in [[Kernel debugging with QEMU]].
Bump the GDB VM memory to 512 MB to avoid swapping when loading the kernel
symbols into gdb.
symbols into gdb.
Index: wikisrc/kernel_debugging_with_qemu.mdwn =================================================================== RCS file: /cvsroot/wikisrc/kernel_debugging_with_qemu.mdwn,v retrieving revision 1.21 retrieving revision 1.22 diff -u -r1.21 -r1.22 --- wikisrc/kernel_debugging_with_qemu.mdwn 26 Oct 2022 15:42:55 -0000 1.21 +++ wikisrc/kernel_debugging_with_qemu.mdwn 22 Jun 2025 11:23:34 -0000 1.22 @@ -73,7 +73,7 @@ In a second terminal window, start the gdb VM: [[!template id=programlisting text=""" - $ qemu-system-x86_64 -nographic -snapshot -hda work/wd0.img -m 256 + $ qemu-system-x86_64 -nographic -snapshot -hda work/wd0.img -m 512 """]] Log in to the gdb VM as root and set up the network. Use the
Remove spurious line.
Now the key=value format has been explained a little, remove the comment saying this needs doing.
Now the key=value format has been explained a little, remove the comment saying this needs doing.
Index: wikisrc/ports/xen/howto.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v retrieving revision 1.276 retrieving revision 1.277 diff -u -r1.276 -r1.277 --- wikisrc/ports/xen/howto.mdwn 13 Jun 2025 13:07:59 -0000 1.276 +++ wikisrc/ports/xen/howto.mdwn 13 Jun 2025 13:51:27 -0000 1.277 @@ -726,15 +726,10 @@ Could not open '/dev/zvol/dsk/tank/rhdd': No such file or directory """]] -transform it and adds a -spurious r. - The vdev field can be 0x0 in PV mode but must be something like hda in HVM mode. Leaving as 0x0 will generate a warning such as 'unable to determine disk number for 0x0' -\todo Fold in or gc the following. - For key-value pairs: * Do not prefix the target path with file: or phy:. It appears that @@ -742,6 +737,8 @@ * cdroms are specified with devtype=cdrom + * target= should always be last + For 3-tuples: * The first element is "method:/path/to/disk". Common methods are
Clarify virtual disk syntax for key=value format.
Explain raw vs block devices.
Add Windows domU section.
Explain raw vs block devices.
Add Windows domU section.
Index: wikisrc/ports/xen/howto.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v retrieving revision 1.275 retrieving revision 1.276 diff -u -r1.275 -r1.276 --- wikisrc/ports/xen/howto.mdwn 23 Apr 2025 16:35:41 -0000 1.275 +++ wikisrc/ports/xen/howto.mdwn 13 Jun 2025 13:07:59 -0000 1.276 @@ -710,28 +710,45 @@ deprecated 3-tuple positional syntax. This HOWTO is slowly converting to keyword syntax. -One big hint is that target= should always be last (which contrasts with +In key-value format, target= should always be last (which contrasts with the deprecated format where the target is specified first). -A second hint is that for a physical target in PV mode, one must give a block -device. But for a target in HVM mode, one must give the raw device. -If passing a block device, xen tries to transform it and adds a -spurious r. \todo Check and maybe file a bug. +It is important to note that for a physical target in PV mode, one must give a block +device. For a target in HVM mode, one must give the raw device. +If a block device is specified in HVM, qemu tries to redirect to the raw +device by adding 'r' at the start of the final component of the path (e.g. +/dev/sd0a -> /dev/rsd0a). For ZFS zvols, this leads to an incorrect path as +block devices are /dev/zvol/dsk/ZPOOL/ZVOL whereas raw devices are +/dev/zvol/rdsk/ZPOOL/ZVOL not /dev/zvol/dsk/ZPOOL/rZVOL. The domU will not +start and qemu logs show: +[[!template id=programlisting text=""" +/dev/zvol/dsk/tank/hdd is a block device, using /dev/zvol/dsk/tank/rhdd +Could not open '/dev/zvol/dsk/tank/rhdd': No such file or directory +"""]] + +transform it and adds a +spurious r. -A third is that vdev can be 0x0 in PV mode but must be something like +The vdev field can be 0x0 in PV mode but must be something like hda in HVM mode. Leaving as 0x0 will generate a warning such as 'unable to determine disk number for 0x0' \todo Fold in or gc the following. -For key-value pairs: \todo +For key-value pairs: + + * Do not prefix the target path with file: or phy:. It appears that + this is automatically detected. + + * cdroms are specified with devtype=cdrom For 3-tuples: * The first element is "method:/path/to/disk". Common methods are "file:" for a file-backed vnd, and "phy:" for something that is already a device, such as an LVM logical volume, actual device, or - zvol. For phy: one must use the block device. + zvol. For phy: one must use the block device for PV domUs and the + raw device for HM domUs * The second element is an artifact of how virtual disks are passed to Linux, and a source of confusion with NetBSD Xen usage. Linux domUs @@ -1003,7 +1020,8 @@ A plain-text password may be specified with vncpasswd. You may need to specify a different keymap if en-us isn't what you use with the keymap option (e.g. keymap="en-gb"). N.B. specifying a non-existent -keymap may create a zombie VM that cannot be destroyed. +keymap may create a zombie VM that cannot be destroyed. Adding usbdevice="tablet" +will make the VM's mouse pointer align correctly. To enable a text (serial) console that you can access with xl console, add serial="pty". e.g. if you boot from a boot-com.iso image, you can install without using VNC. @@ -1015,7 +1033,7 @@ vcpus = 2 vif = [ 'mac=00:01:02:ab:cd:ef, bridge=bridge0' ] disk = [ 'format=raw, vdev=hda, access=rw, - target=phy:/dev/zvol/dsk/tank/foo' ] + target=/dev/zvol/rdsk/tank/foo' ] boot = "c" """]] @@ -1026,9 +1044,9 @@ vcpus = 2 vif = [ 'mac=00:01:02:ab:cd:ef, bridge=bridge0' ] disk = [ 'format=raw, vdev=hda, access=rw, - target=phy:/dev/zvol/dsk/tank/foo', + target=/dev/zvol/rdsk/tank/foo', 'format=raw, vdev=hdc, access=ro, - target=file:/n0/xen/iso/NetBSD-10.1_STABLE-amd64.iso' ] + target=/n0/xen/iso/NetBSD-10.1_STABLE-amd64.iso' ] boot = "d" """]] @@ -1136,6 +1154,39 @@ to your configuration since not all Linux distributions auto-attach a tty to the xen console. +## Creating a Windows domU + +Windows only supports HVM mode and you will want to have a graphical +interface rather than a serial console. + +[[!template id=filecontent name="Install Windows from ISO" text=""" +type = "hvm" +name = "server2022" +memory = 4095 +vcpus = 2 +vif = [ 'mac=00:01:02:ab:cd:ef, bridge=bridge0' ] +disk = [ 'format=raw, vdev=hda, access=rw, + target=/dev/zvol/rdsk/tank/foo', + 'format=raw, vdev=hdc, access=ro, + target=/n0/xen/iso/SW_DVD9_Win_Server_STD_CORE_2022_2108.6_64Bit_English_DC_STD_MLF_X23-03231.ISO' ] + +vncdisplay=0 +#vncpasswd="secret" +vnclisten="0.0.0.0" +keymap="en-gb" +usbdevice = "tablet" + +boot = "d" +"""]] + +The network and disks will be fully emulated rather than using PV drivers, +so performance will be impacted. PV drivers can be downloaded from the "XenServer VM Tools for Windows" +section of https://www.xenserver.com/downloads but if the installation goes +wrong, the Windows installation may not be bootable. It is recommended that +you snapshot the VM before attempting installation. It has been found that +the drivers cause the machine to freeze (seen with v9.4.1) with a NetBSD +dom0 even though they work reliably on XenServer and XCP-ng. + ## Creating a Solaris domU See the very outdated
Fix spelling.
Index: wikisrc/Installation_on_UEFI_systems.mdwn =================================================================== RCS file: /cvsroot/wikisrc/Installation_on_UEFI_systems.mdwn,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- wikisrc/Installation_on_UEFI_systems.mdwn 31 May 2025 15:07:26 -0000 1.8 +++ wikisrc/Installation_on_UEFI_systems.mdwn 31 May 2025 22:32:03 -0000 1.9 @@ -129,7 +129,7 @@ So we have a 30 GB disk, we subtract 8 GB of swap and a bit of space for the UEFI boot partition. That leaves us with (rounded down) 21 GB of space for the main NetBSD partition. -### Partitioning and Formating the Disk +### Partitioning and Formatting the Disk **NOTE** we are about to fully destroy all contents on this disk! Please stop if you are unsure or have no proper backup!
Minor grammar fix, wording simplifications, etc.
Index: wikisrc/Installation_on_UEFI_systems.mdwn =================================================================== RCS file: /cvsroot/wikisrc/Installation_on_UEFI_systems.mdwn,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- wikisrc/Installation_on_UEFI_systems.mdwn 15 Aug 2023 13:19:07 -0000 1.7 +++ wikisrc/Installation_on_UEFI_systems.mdwn 31 May 2025 15:07:26 -0000 1.8 @@ -3,7 +3,7 @@ Modern x86 machines have UEFI instead of BIOS firmware. The boot procedure is slightly different, and the installation needs to take care of this. The boot process for pre-UEFI systems is usually called "MBR". -Starting with NetBSD 9.0 the installer should be able to handle this automatically. Earlier NetBSD versions were able to boot in this setups, but needed a bit of manual help to get everything installed. The main part of this page assumes a recent version of 9, or 10 or current. +Starting with NetBSD 9.0 the installer should be able to handle this automatically. Earlier NetBSD versions were able to boot with this setup, but needed a bit of manual help to get everything installed. The main part of this page assumes a version of 9 or newer. NetBSD/amd64 provides two installation images: `NetBSD-9.3_STABLE-amd64-install.img.gz` and @@ -39,7 +39,7 @@  -Details depend on the size of the target disk and available memory (swap is also used to store kernel crash dumps, so with more installed RAM the installer will suggest bigger swap partitions). Note the MSDOS partition on the above screenshot, it is used by UEFI instead of bootblocks to load the bootloader. +Details depend on the size of the target disk and available memory (swap is also used to store kernel crash dumps, so with more installed RAM the installer will suggest bigger swap partitions). Note the MS-DOS partition on the above screenshot, it is used by UEFI instead of bootblocks to load the bootloader. Just continue the regular installation process from here - it should automatically create a UEFI bootable hard disk.
sprinkle 'in -current'
Index: wikisrc/ports/hppa.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/hppa.mdwn,v retrieving revision 1.24 retrieving revision 1.25 diff -u -r1.24 -r1.25 --- wikisrc/ports/hppa.mdwn 27 May 2025 09:41:34 -0000 1.24 +++ wikisrc/ports/hppa.mdwn 27 May 2025 10:06:08 -0000 1.25 @@ -123,9 +123,9 @@ - National Semiconductor DP83815 based Ethernet (*sip*) - ns16550a serial controller (*com*) - Framebuffers which are configured via the Boot ROM (*sti*) -- PCI Visualize EG (*gftfb*) -- HCRX (*hyperfb*) -- Visualize FX 2/4/6 (*summitfb*) +- PCI Visualize EG (*gftfb*) in -current +- HCRX (*hyperfb*) in -current +- Visualize FX 2/4/6 (*summitfb*) in -current - PS/2 style keyboard (*pckbd*) - PS/2 style mouse (*pms*) - Parallel port (*lpt*)
mention new graphics drivers
Index: wikisrc/ports/hppa.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/hppa.mdwn,v retrieving revision 1.23 retrieving revision 1.24 diff -u -r1.23 -r1.24 --- wikisrc/ports/hppa.mdwn 18 Dec 2024 19:51:02 -0000 1.23 +++ wikisrc/ports/hppa.mdwn 27 May 2025 09:41:34 -0000 1.24 @@ -122,7 +122,10 @@ - RealTek RTL8129/8139 based Ethernet (*rtk*) - National Semiconductor DP83815 based Ethernet (*sip*) - ns16550a serial controller (*com*) -- SGC Framebuffers which are configured via the Boot ROM (*sti*) +- Framebuffers which are configured via the Boot ROM (*sti*) +- PCI Visualize EG (*gftfb*) +- HCRX (*hyperfb*) +- Visualize FX 2/4/6 (*summitfb*) - PS/2 style keyboard (*pckbd*) - PS/2 style mouse (*pms*) - Parallel port (*lpt*)
KERNEL_DIR: change instructions for manual installation of the modules
Index: wikisrc/kernel_dir.mdwn =================================================================== RCS file: /cvsroot/wikisrc/kernel_dir.mdwn,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- wikisrc/kernel_dir.mdwn 2 May 2025 10:54:09 -0000 1.4 +++ wikisrc/kernel_dir.mdwn 21 May 2025 09:28:14 -0000 1.5 @@ -46,8 +46,11 @@ A possible update process would look like this: + build.sh -V KERNEL_DIR ... # build userland and new modules + build.sh -V KERNEL_DIR kernel=$KERNEL_CONFIG_NAME # build kernel rm -rf /onetbsd mv /netbsd /onetbsd mkdir /netbsd - copy new kernel{,.gdb} into /netbsd - build.sh install=/ -V KERNEL_DIR ... # for the rest, including new modules + copy new kernel{,.gdb} into /netbsd # path from 'build.sh kernel' output + cd $DESTDIR/netbsd/modules + pax -rw -pe . /netbsd/modules
nix trailing whitespace
Index: wikisrc/tutorials/how_to_enlarge_raidframe.mdwn =================================================================== RCS file: /cvsroot/wikisrc/tutorials/how_to_enlarge_raidframe.mdwn,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- wikisrc/tutorials/how_to_enlarge_raidframe.mdwn 16 May 2025 12:48:11 -0000 1.7 +++ wikisrc/tutorials/how_to_enlarge_raidframe.mdwn 16 May 2025 13:01:11 -0000 1.8 @@ -13,7 +13,7 @@ After migration we will have: - # gpt show -l wd0 + # gpt show -l wd0 start size index contents 0 1 PMBR (active) 1 1 Pri GPT header @@ -23,7 +23,7 @@ 11687490703 33554432 3 GPT part - swap@wd0 11721045135 32 Sec GPT table 11721045167 1 Sec GPT header - + # gpt show -l raid0 start size index contents 0 1 PMBR @@ -61,7 +61,7 @@ * optionally renamae raid1 to raid0 using raictl -U 0 raid1 -This approach is long, as it requires copying all the data. It requires a few reboots, but it has the advantage that the data is always available during the migration. +This approach is long, as it requires copying all the data. It requires a few reboots, but it has the advantage that the data is always available during the migration. A faster but less secure approach will be documented here, all the operations are done booting on an INSTALL kernel, using the ramdisk's shell. It takes aboit 10 minutes to complete, most of the time being spent in fsck and resize_ffs. @@ -69,9 +69,9 @@ * unconfigure raid0 -* migrate wd0 and wd1 to GPT and enlarge the RAID partiton, lower the RAID partition start of 34 blocks, so that once a GPT is added in the RAID, the FFS partition star block in unchanged. +* migrate wd0 and wd1 to GPT and enlarge the RAID partiton, lower the RAID partition start of 34 blocks, so that once a GPT is added in the RAID, the FFS partition star block in unchanged. -* configure a new raid0 with components NAME=raid0@wd0 and NAME=raid0@wd1 +* configure a new raid0 with components NAME=raid0@wd0 and NAME=raid0@wd1 * create a GPT inside raid0 with an FFS partition @@ -90,81 +90,81 @@ raidctl -G raid0 > raid0.conf.orig raidctl -u raid0 - + gpt create -Af wd0 gpt create -Af wd1 - + gpt add -t efi -l efi@wd0 -b 34 -s $(( 2048 - 34 - 34 )) wd0 gpt add -t raid -l raid0@wd0 -b $(( 2048 - 34 )) -s 11687488689 wd0 gpt add -t swap -l swap@wd0 wd0 gpt biosboot -A -i 2 wd0 - + gpt add -t efi -l efi@wd1 -b 34 -s $(( 2048 - 34 - 34 )) wd1 gpt add -t raid -l raid0@wd1 -b $(( 2048 - 34 )) -s 11687488689 wd1 gpt add -t swap -l swap@wd1 wd1 gpt biosboot -A -i 2 wd1 - + # Read the dk unit numbers from dmesg efi0=dk0 efi1=dk3 raid0=dk1 raid1=dk4 - + newfs_msdos /dev/r${efi0} mount -t msdos /dev/${efi0} /mnt && mkdir -p /mnt/EFI/BOOT && \ cp /usr/mdec/bootx64.efi /mnt/EFI/BOOT && umount /mnt - + newfs_msdos /dev/r${efi1} mount -t msdos /dev/${efi1} /mnt && mkdir -p /mnt/EFI/BOOT && \ cp /usr/mdec/bootx64.efi /mnt/EFI/BOOT && umount /mnt - + sed "s/wd0a/${raid0}/; s/wd1a/${raid1}/;" raid0.conf.orig > raid0.conf raidctl -C raid0.conf raid0 raidctl -A root raid0 raidctl -I 20230710 raid0 # Unique serial number is advised! raidctl -i raid0 - + gpt create -Af raid0 gpt add -t ffs -l root@raid0 raid0 gpt set -a bootme -i 1 raid0 - + # check the dk unit numbe from dmesg root=dk6 - + # INSTALL ramdisk lacks resize_ffs, copy it from the target filesystem # This is the opportunity to check that eveyrthing went fine. mount -o rw,log /dev/${root} /mnt cp /mnt/libexec/ld.elf_so /libexec/ cp /mnt/sbin/resize_ffs /tmp/ cp /mnt/lib/libc.so.12 /tmp/ - + # Copy secondary bootstrap cp /usr/mdec/boot /mnt/boot - + # Adjust fstab cp /mnt/etc/fstab /mnt/etc/fstab.orig - sed ' + sed ' s|/dev/raid0a|NAME=root@raid0|; s|/dev/wd0b|NAME=swap@wd0|; s|/dev/wd1b|NAME=swap@wd1|; ' /mnt/etc/fstab.orig > /mnt/etc/fstab - + umount /mnt - + # Adjust console settings, this is for 115200 bps serial console # and FFSv2 filesystem. As noted earlier, you need a recent bootxx_ffsv2 installboot -o console=com0,speed=115200 /dev/r${raid0} /usr/mdec/bootxx_ffsv2 installboot -o console=com0,speed=115200 /dev/r${raid1} /usr/mdec/bootxx_ffsv2 - + fsck -fy /dev/r${root} # Make sure resize_ffs finds libc.so.12 export LD_LIBRARY_PATH=/tmp/ /tmp/resize_ffs -y /dev/r${root} - + # Check new size mount /dev/${root} /mnt df -h /mnt umount /mnt - + # Reboot into normal operations reboot
replace two latin1 characters with the intended '0'
Fixes ikiwiki whining about non utf8 characters while scanning/rendering.
Fixes ikiwiki whining about non utf8 characters while scanning/rendering.
Members: tutorials/how_to_enlarge_raidframe.mdwn:1.6->1.7 Index: wikisrc/tutorials/how_to_enlarge_raidframe.mdwn =================================================================== RCS file: /cvsroot/wikisrc/tutorials/how_to_enlarge_raidframe.mdwn,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- wikisrc/tutorials/how_to_enlarge_raidframe.mdwn 19 Jul 2023 12:57:54 -0000 1.6 +++ wikisrc/tutorials/how_to_enlarge_raidframe.mdwn 16 May 2025 12:48:11 -0000 1.7 @@ -58,7 +58,7 @@ * reconstruct composent absent on spare NAME=raid@wd0 -* optionally renamae raid1 to raidà using raictl -U 0 raid1 +* optionally renamae raid1 to raid0 using raictl -U 0 raid1 This approach is long, as it requires copying all the data. It requires a few reboots, but it has the advantage that the data is always available during the migration. @@ -73,7 +73,7 @@ * configure a new raid0 with components NAME=raid0@wd0 and NAME=raid0@wd1 -* create a GPT inside raidà with an FFS partition +* create a GPT inside raid0 with an FFS partition * DO NOT format the FFS partition, as you created it at the exact place where the pre-migration FFS partition was. You data is still there, unchanged.
s/install/live/ image
Index: wikisrc/users/imil/microvm.mdwn =================================================================== RCS file: /cvsroot/wikisrc/users/imil/microvm.mdwn,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- wikisrc/users/imil/microvm.mdwn 9 May 2025 07:37:43 -0000 1.3 +++ wikisrc/users/imil/microvm.mdwn 9 May 2025 09:52:13 -0000 1.4 @@ -33,7 +33,7 @@ [1]: https://github.com/NetBSD/src/blob/trunk/sys/arch/x86/conf/MICROVM.common [2]: https://www.qemu.org/docs/master/system/i386/microvm.html -[3]: https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/images/NetBSD-10.99.12-amd64-install.img.gz +[3]: https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/images/NetBSD-10.99.12-amd64-live.img.gz [4]: https://smolbsd.org/#create-your-own-root-filesystem [5]: https://github.com/NetBSDfr/smolBSD [6]: https://docs.oasis-open.org/virtio/virtio/v1.3/csd01/virtio-v1.3-csd01.html#x1-1800002
s/This/These/ and link to cross-compiling
Index: wikisrc/users/imil/microvm.mdwn =================================================================== RCS file: /cvsroot/wikisrc/users/imil/microvm.mdwn,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- wikisrc/users/imil/microvm.mdwn 9 May 2025 07:16:40 -0000 1.2 +++ wikisrc/users/imil/microvm.mdwn 9 May 2025 07:37:43 -0000 1.3 @@ -1,9 +1,9 @@ -Since May 2025, _NetBSD/amd64_ and _NetBSD/i386_ have a new kernel configurations named [MICROVM][1]. This configurations permit the use of the [QEMU microvm machine type][2], optimized for boot time and footprint, and which does not have _PCI_ bus nor _ACPI_ support. +Since May 2025, _NetBSD/amd64_ and _NetBSD/i386_ have a new kernel configurations named [MICROVM][1]. These configurations permit the use of the [QEMU microvm machine type][2], optimized for boot time and footprint, and which does not have _PCI_ bus nor _ACPI_ support. Using a kernel built with this configuration allows to boot the system in about 10ms on an _AMD Ryzen 7 5800X_ CPU, thus opening doors to fully isolated micro-services. Here's an example on how to get such virtual machine running on a _Linux/KVM_ host. -First build a `MICROVM` kernel (refer to https://www.netbsd.org/docs/guide/en/chap-build.html for more information about cross-compiling _NetBSD_): +First build a `MICROVM` kernel (refer to [this guide][7] for more information about cross-compiling _NetBSD_): $ cd path/to/NetBSD/src $ ARCH=amd64 # or i386 @@ -37,3 +37,4 @@ [4]: https://smolbsd.org/#create-your-own-root-filesystem [5]: https://github.com/NetBSDfr/smolBSD [6]: https://docs.oasis-open.org/virtio/virtio/v1.3/csd01/virtio-v1.3-csd01.html#x1-1800002 +[7]: https://www.netbsd.org/docs/guide/en/chap-build.html
Precision, this is a Linux example
Index: wikisrc/users/imil/microvm.mdwn =================================================================== RCS file: /cvsroot/wikisrc/users/imil/microvm.mdwn,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- wikisrc/users/imil/microvm.mdwn 9 May 2025 07:10:11 -0000 1.1 +++ wikisrc/users/imil/microvm.mdwn 9 May 2025 07:16:40 -0000 1.2 @@ -1,7 +1,9 @@ Since May 2025, _NetBSD/amd64_ and _NetBSD/i386_ have a new kernel configurations named [MICROVM][1]. This configurations permit the use of the [QEMU microvm machine type][2], optimized for boot time and footprint, and which does not have _PCI_ bus nor _ACPI_ support. Using a kernel built with this configuration allows to boot the system in about 10ms on an _AMD Ryzen 7 5800X_ CPU, thus opening doors to fully isolated micro-services. -To build a `MICROVM` kernel: +Here's an example on how to get such virtual machine running on a _Linux/KVM_ host. + +First build a `MICROVM` kernel (refer to https://www.netbsd.org/docs/guide/en/chap-build.html for more information about cross-compiling _NetBSD_): $ cd path/to/NetBSD/src $ ARCH=amd64 # or i386 @@ -9,7 +11,7 @@ You will then need a root filesystem image, you can either use an official [NetBSD live image][3], or [create your own root filesystem][4] using [smolBSD][5]. -Here's the full `qemu` command in order to fire up a `MICROVM` kernel in direct/`PVH` mode, i.e. without the need of _BIOS_ or _UEFI_, with most of devices backed by [VirtIO-MMIO][6]: +Finally here's the full `qemu` command in order to fire up a `MICROVM` kernel in direct/`PVH` mode, i.e. without the need of _BIOS_ or _UEFI_, with most of devices backed by [VirtIO-MMIO][6]: $ KERNEL=/path/to/netbsd/MICROVM/kernel $ NBIMG=/path/to/root/filesystem.img
Add MICROVM instructions and example
Index: wikisrc/users/imil.mdwn =================================================================== RCS file: /cvsroot/wikisrc/users/imil.mdwn,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- wikisrc/users/imil.mdwn 25 Jul 2012 19:56:17 -0000 1.3 +++ wikisrc/users/imil.mdwn 9 May 2025 07:10:11 -0000 1.4 @@ -4,4 +4,6 @@ [The one and famous pkgin !](http://imil.net/pkgin) +[[NetBSD MICROVM|microvm]] + [[NetBSD cheat sheet|cheatsheet]] --- /dev/null 2025-07-29 17:43:02.530750491 +0000 +++ wikisrc/users/imil/microvm.mdwn 2025-07-29 17:47:28.016784760 +0000 @@ -0,0 +1,37 @@ +Since May 2025, _NetBSD/amd64_ and _NetBSD/i386_ have a new kernel configurations named [MICROVM][1]. This configurations permit the use of the [QEMU microvm machine type][2], optimized for boot time and footprint, and which does not have _PCI_ bus nor _ACPI_ support. +Using a kernel built with this configuration allows to boot the system in about 10ms on an _AMD Ryzen 7 5800X_ CPU, thus opening doors to fully isolated micro-services. + +To build a `MICROVM` kernel: + + $ cd path/to/NetBSD/src + $ ARCH=amd64 # or i386 + $ ./build.sh -u -U -j12 -T obj/tooldir -m $ARCH kernel=MICROVM + +You will then need a root filesystem image, you can either use an official [NetBSD live image][3], or [create your own root filesystem][4] using [smolBSD][5]. + +Here's the full `qemu` command in order to fire up a `MICROVM` kernel in direct/`PVH` mode, i.e. without the need of _BIOS_ or _UEFI_, with most of devices backed by [VirtIO-MMIO][6]: + + $ KERNEL=/path/to/netbsd/MICROVM/kernel + $ NBIMG=/path/to/root/filesystem.img + $ qemu-system-x86_64 -M microvm,rtc=on,acpi=off,pic=off,accel=kvm \ + -cpu host,+invtsc -kernel ${KERNEL} -append "root=ld0a console=com rw -z" \ + -device virtio-blk-device,drive=hd0 -drive file=${NBIMG},format=raw,id=hd0 \ + -device virtio-net-device,netdev=net0 -netdev user,id=net0,ipv6=off,hostfwd=::2322-:22 \ + -global virtio-mmio.force-legacy=false -display none -serial stdio + + And witness the magic: + + [ 1.0000000] entropy: ready + [ 1.0000000] NetBSD 10.99.14 (MICROVM) Notice: this software is protected by copyright + [ 1.0000000] Detecting hardware... (BOCHSCPU 0.1 ) + [ 1.0032414] done. + [ 1.0048665] kernel boot time: 9ms + Created tmpfs /dev (1867776 byte, 3616 inodes) + # + +[1]: https://github.com/NetBSD/src/blob/trunk/sys/arch/x86/conf/MICROVM.common +[2]: https://www.qemu.org/docs/master/system/i386/microvm.html +[3]: https://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/latest/images/NetBSD-10.99.12-amd64-install.img.gz +[4]: https://smolbsd.org/#create-your-own-root-filesystem +[5]: https://github.com/NetBSDfr/smolBSD +[6]: https://docs.oasis-open.org/virtio/virtio/v1.3/csd01/virtio-v1.3-csd01.html#x1-1800002
kernel_dir: update boot order list
Index: wikisrc/kernel_dir.mdwn =================================================================== RCS file: /cvsroot/wikisrc/kernel_dir.mdwn,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- wikisrc/kernel_dir.mdwn 29 Apr 2025 11:33:49 -0000 1.3 +++ wikisrc/kernel_dir.mdwn 2 May 2025 10:54:09 -0000 1.4 @@ -1,9 +1,8 @@ [[!meta title="KERNEL_DIR: Kernel directories"]] -Since April 28, 2025, NetBSD's build system (on amd64 for now) has a -new option "KERNEL_DIR". It allows having a kernel and the -corresponding debug kernel and kernel modules all together in a -directory. +Since April 28, 2025, NetBSD's build system (on amd64) has a new +option "KERNEL_DIR". It allows having a kernel and the corresponding +debug kernel and kernel modules all together in a directory. The option can be used from `build.sh` like this: @@ -40,9 +39,10 @@ A [change request](https://gnats.netbsd.org/59374) to simplify this has been filed, after which the behavior will change to: -If a "bare" filename is specified on a `boot` command, the boot loader will try -`filename/kernel{,.gz}` and then `filename{,.gz}`. If a directory is specified, the boot loader -only tries `directory/filename{,.gz}`. +If a "bare" filename is specified on a `boot` command, the boot loader +will try `filename{,.gz}` and then `filename/kernel{,.gz}`. If a +directory is specified, the boot loader only tries +`directory/filename{,.gz}`. A possible update process would look like this:
Update pkgsrc on Tiger status.
Index: wikisrc/pkgsrc/macosx_tiger_powerpc.mdwn =================================================================== RCS file: /cvsroot/wikisrc/pkgsrc/macosx_tiger_powerpc.mdwn,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- wikisrc/pkgsrc/macosx_tiger_powerpc.mdwn 17 Feb 2023 21:03:38 -0000 1.12 +++ wikisrc/pkgsrc/macosx_tiger_powerpc.mdwn 30 Apr 2025 13:42:50 -0000 1.13 @@ -1,268 +1,8 @@ [[!meta title="pkgsrc on Mac OS X 10.4 (Tiger) powerpc"]] -## Nice to have -Not specific to tiger, but better integration with OS X as a whole +`nia@` periodically drops new binary packages at [tigersrc](https://netbsd.org/~nia/tigersrc/). -* Encourage the use of `path_helper(8)` to append `PATH` & `MANPATH` on Leopard & newer -* Bundle `launchd.plist` for binaries which can be daemonised, inspired from the Joyent effort to bundle `SMF` -* The means to generate a Mac OS X bootstrap package is deprecated, while it's still currently possible to use tools for older releases to generate a package, the native method for Mavericks & newer needs to be integrated +[rc.d-boot](https://pkgsrc.se/pkgtools/rc.d-boot) works. -## Interesting problems - -Bored? Choose one of these problems we need solved. Annoyed? Write -down the problem here. - -### [[!toggle id="tmux" text="misc/tmux"]] -[[!toggleable id="tmux" text=""" -[[!template id=filecontent name="misc/tmux" text=<<TMUXINNER -osdep-darwin.c:22:21: error: libproc.h: No such file or directory -osdep-darwin.c: In function 'osdep_get_name': -osdep-darwin.c:36: error: storage size of 'bsdinfo' isn't known -osdep-darwin.c:43: warning: implicit declaration of function 'proc_pidinfo' -osdep-darwin.c:43: error: 'PROC_PIDTBSDINFO' undeclared (first use in this function) -osdep-darwin.c:43: error: (Each undeclared identifier is reported only once -osdep-darwin.c:43: error: for each function it appears in.) -osdep-darwin.c: In function 'osdep_get_cwd': -osdep-darwin.c:53: error: 'PATH_MAX' undeclared (first use in this function) -osdep-darwin.c:54: error: storage size of 'pathinfo' isn't known -osdep-darwin.c:61: error: 'PROC_PIDVNODEPATHINFO' undeclared (first use in this function) -*** Error code 1 -TMUXINNER]] -Macports deals with this issue by [switching osdep-darwin.c out for a previous version](https://svn.macports.org/repository/macports/trunk/dports/sysutils/tmux/files/osdep-darwin.8.c) which compiles under Darwin 8 -"""]] - -### [[!toggle id="cmake" text="devel/cmake"]] -[[!toggleable id="cmake" text=""" -[[!template id=filecontent name="devel/cmake" text=<<CMAKEINNER -Linking CXX executable ../bin/ccmake -/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning can't open dynamic library: /Developer/SDKs/MacOSX10.4u.sdk/usr/pkg/lib/liblzma.5.dylib referenced from: /tmp/devel/cmake/work/.buildlink/lib/libarchive.dylib (checking for undefined symbols may be affected) (No such file or directory, errno = 2) -/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning can't open dynamic library: /Developer/SDKs/MacOSX10.4u.sdk/usr/pkg/lib/libcrypto.1.0.0.dylib referenced from: /tmp/devel/cmake/work/.buildlink/lib/libarchive.dylib (checking for undefined symbols may be affected) (No such file or directory, errno = 2) -/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning can't open dynamic library: /Developer/SDKs/MacOSX10.4u.sdk/usr/pkg/lib/libidn.11.dylib referenced from: /tmp/devel/cmake/work/.buildlink/lib/libcurl.dylib (checking for undefined symbols may be affected) (No such file or directory, errno = 2) -/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning can't open dynamic library: /Developer/SDKs/MacOSX10.4u.sdk/usr/pkg/lib/libintl.8.dylib referenced from: /tmp/devel/cmake/work/.buildlink/lib/libcurl.dylib (checking for undefined symbols may be affected) (No such file or directory, errno = 2) -/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning can't open dynamic library: /Developer/SDKs/MacOSX10.4u.sdk/usr/pkg/lib/libssl.1.0.0.dylib referenced from: /tmp/devel/cmake/work/.buildlink/lib/libcurl.dylib (checking for undefined symbols may be affected) (No such file or directory, errno = 2) -/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: Undefined symbols: -_lzma_alone_decoder referenced from libarchive expected to be defined in /usr/pkg/lib/liblzma.5.dylib -_lzma_code referenced from libarchive expected to be defined in /usr/pkg/lib/liblzma.5.dylib -_lzma_end referenced from libarchive expected to be defined in /usr/pkg/lib/liblzma.5.dylib -_lzma_stream_decoder referenced from libarchive expected to be defined in /usr/pkg/lib/liblzma.5.dylib -_lzma_alone_encoder referenced from libarchive expected to be defined in /usr/pkg/lib/liblzma.5.dylib -_lzma_lzma_preset referenced from libarchive expected to be defined in /usr/pkg/lib/liblzma.5.dylib -_lzma_memusage referenced from libarchive expected to be defined in /usr/pkg/lib/liblzma.5.dylib -_lzma_stream_encoder referenced from libarchive expected to be defined in /usr/pkg/lib/liblzma.5.dylib -_RIPEMD160_Final referenced from libarchive expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_RIPEMD160_Init referenced from libarchive expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_RIPEMD160_Update referenced from libarchive expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_SHA256_Final referenced from libarchive expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_SHA256_Init referenced from libarchive expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_SHA256_Update referenced from libarchive expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_SHA384_Final referenced from libarchive expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_SHA384_Init referenced from libarchive expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_SHA384_Update referenced from libarchive expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_SHA512_Final referenced from libarchive expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_SHA512_Init referenced from libarchive expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_SHA512_Update referenced from libarchive expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_idn_free referenced from libcurl expected to be defined in /usr/pkg/lib/libidn.11.dylib -_idna_to_ascii_lz referenced from libcurl expected to be defined in /usr/pkg/lib/libidn.11.dylib -_idna_to_unicode_lzlz referenced from libcurl expected to be defined in /usr/pkg/lib/libidn.11.dylib -_stringprep_check_version referenced from libcurl expected to be defined in /usr/pkg/lib/libidn.11.dylib -_stringprep_locale_charset referenced from libcurl expected to be defined in /usr/pkg/lib/libidn.11.dylib -_tld_check_lz referenced from libcurl expected to be defined in /usr/pkg/lib/libidn.11.dylib -_tld_strerror referenced from libcurl expected to be defined in /usr/pkg/lib/libidn.11.dylib -_MD5_Final referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_MD5_Init referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_MD5_Update referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_idna_strerror referenced from libcurl expected to be defined in /usr/pkg/lib/libidn.11.dylib -_DES_ecb_encrypt referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_DES_set_key referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_DES_set_odd_parity referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_MD4_Final referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_MD4_Init referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_MD4_Update referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ASN1_INTEGER_get referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ASN1_STRING_data referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ASN1_STRING_length referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ASN1_STRING_print referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ASN1_STRING_to_UTF8 referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ASN1_STRING_type referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_BIO_ctrl referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_BIO_free referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_BIO_new referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_BIO_s_mem referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_BN_bn2bin referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_BN_num_bits referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_CRYPTO_cleanup_all_ex_data referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_CRYPTO_free referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_CRYPTO_malloc referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ENGINE_by_id referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ENGINE_cleanup referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ENGINE_ctrl referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ENGINE_ctrl_cmd referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ENGINE_finish referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ENGINE_free referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ENGINE_get_first referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ENGINE_get_id referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ENGINE_get_next referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ENGINE_init referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ENGINE_load_builtin_engines referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ENGINE_load_private_key referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ENGINE_set_default referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ERR_clear_error referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ERR_error_string referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ERR_error_string_n referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ERR_free_strings referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ERR_get_error referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ERR_peek_error referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_ERR_remove_thread_state referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_EVP_PKEY_copy_parameters referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_EVP_PKEY_free referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_EVP_cleanup referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_GENERAL_NAMES_free referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_OPENSSL_add_all_algorithms_noconf referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_OPENSSL_config referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_PEM_read_X509 referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_PEM_write_bio_X509 referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_PKCS12_PBE_add referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_PKCS12_free referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_PKCS12_parse referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_RAND_add referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_RAND_bytes referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_RAND_egd referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_RAND_file_name referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_RAND_load_file referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_RAND_status referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_SSL_CIPHER_get_name referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_add_client_CA referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_callback_ctrl referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_check_private_key referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_ctrl referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_free referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_get_cert_store referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_load_verify_locations referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_new referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_set_cipher_list referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_set_default_passwd_cb referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_set_default_passwd_cb_userdata referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_set_srp_password referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_set_srp_username referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_set_verify referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_use_PrivateKey referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_use_PrivateKey_file referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_use_certificate referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_use_certificate_chain_file referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_CTX_use_certificate_file referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_SESSION_free referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_connect referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_ctrl referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_free referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_get1_session referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_get_certificate referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_get_current_cipher referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_get_error referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_get_peer_cert_chain referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_get_peer_certificate referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_get_privatekey referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_get_session referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_get_shutdown referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_get_verify_result referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_library_init referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_load_error_strings referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_new referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_peek referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_pending referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_read referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_set_connect_state referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_set_fd referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_set_session referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_shutdown referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSL_write referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSLeay referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_SSLv23_client_method referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSLv2_client_method referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_SSLv3_client_method referenced from libcurl expected to be defined in /usr/pkg/lib/libssl.1.0.0.dylib -_UI_OpenSSL referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_UI_create_method referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_UI_destroy_method referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_UI_get0_user_data referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_UI_get_input_flags referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_UI_get_string_type referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_UI_method_get_closer referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib -_UI_method_get_opener referenced from libcurl expected to be defined in /usr/pkg/lib/libcrypto.1.0.0.dylib (Diff truncated)
Describe upcoming changes
Index: wikisrc/kernel_dir.mdwn =================================================================== RCS file: /cvsroot/wikisrc/kernel_dir.mdwn,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- wikisrc/kernel_dir.mdwn 28 Apr 2025 22:05:18 -0000 1.2 +++ wikisrc/kernel_dir.mdwn 29 Apr 2025 11:33:49 -0000 1.3 @@ -37,8 +37,12 @@ boot /netbsd.test/kernel -(A [change request](https://gnats.netbsd.org/59374) to simplify this -has been filed.) +A [change request](https://gnats.netbsd.org/59374) to simplify this +has been filed, after which the behavior will change to: + +If a "bare" filename is specified on a `boot` command, the boot loader will try +`filename/kernel{,.gz}` and then `filename{,.gz}`. If a directory is specified, the boot loader +only tries `directory/filename{,.gz}`. A possible update process would look like this:
kernel_dir: add possible update process, from pgoyette@
Index: wikisrc/kernel_dir.mdwn =================================================================== RCS file: /cvsroot/wikisrc/kernel_dir.mdwn,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- wikisrc/kernel_dir.mdwn 28 Apr 2025 15:03:37 -0000 1.1 +++ wikisrc/kernel_dir.mdwn 28 Apr 2025 22:05:18 -0000 1.2 @@ -1,8 +1,9 @@ [[!meta title="KERNEL_DIR: Kernel directories"]] -Since April 28, 2025, NetBSD's build system has a new option -"KERNEL_DIR". It allows having a kernel and the corresponding debug -kernel and kernel modules all together in a directory. +Since April 28, 2025, NetBSD's build system (on amd64 for now) has a +new option "KERNEL_DIR". It allows having a kernel and the +corresponding debug kernel and kernel modules all together in a +directory. The option can be used from `build.sh` like this: @@ -38,3 +39,11 @@ (A [change request](https://gnats.netbsd.org/59374) to simplify this has been filed.) + +A possible update process would look like this: + + rm -rf /onetbsd + mv /netbsd /onetbsd + mkdir /netbsd + copy new kernel{,.gdb} into /netbsd + build.sh install=/ -V KERNEL_DIR ... # for the rest, including new modules
Document KERNEL_DIR per my understanding of it.
--- /dev/null 2025-07-29 17:43:02.530750491 +0000 +++ wikisrc/kernel_dir.mdwn 2025-07-29 17:47:29.961112830 +0000 @@ -0,0 +1,40 @@ +[[!meta title="KERNEL_DIR: Kernel directories"]] + +Since April 28, 2025, NetBSD's build system has a new option +"KERNEL_DIR". It allows having a kernel and the corresponding debug +kernel and kernel modules all together in a directory. + +The option can be used from `build.sh` like this: + + build.sh -VKERNEL_DIR=yes ... + +and build a new kernel and distribution. + +Then make sure your third-stage bootloader is up-to-date. For +example, if you're booting via GPT from an EFI partition, install an +up-to-date `/usr/mdec/bootx64.efi` into `/efi/boot` on the EFI partition. + +The new structure then is as follows: + +Instead of + + /netbsd # kernel + /netbsd.gdb # kernel with debugging symbols + /stand/amd64/10.99.12/modules # kernel modules + +you'll have these files: + + /netbsd/kernel # kernel + /netbsd/kernel.gdb # kernel with debugging symbols + /netbsd/modules # kernel modules + +The bootloader will try loading `/netbsd/kernel`, `/onetbsd/kernel`, +`/netbsd.old/kernel` in that order. + +Please note, the boot loader UI changes slightly. If you want to load +a custom kernel, you must specify directory and path, i.e. + + boot /netbsd.test/kernel + +(A [change request](https://gnats.netbsd.org/59374) to simplify this +has been filed.)
OSC2025 Nagoya BoF 11:00-11:45
Index: wikisrc/users/jun.mdwn =================================================================== RCS file: /cvsroot/wikisrc/users/jun.mdwn,v retrieving revision 1.148 retrieving revision 1.149 diff -u -r1.148 -r1.149 --- wikisrc/users/jun.mdwn 4 Mar 2025 01:47:34 -0000 1.148 +++ wikisrc/users/jun.mdwn 24 Apr 2025 04:16:13 -0000 1.149 @@ -10,6 +10,7 @@ ## Open Source Conference 2025 Nagoya NetBSD Booth & NBUG BoF - 2025 May.31 Sat 10:00-18:00 JST (UTC+9) +- BoF 2025 May.31 Sat 11:00-11:45 JST [[https://event.ospn.jp/osc2025-nagoya/session/day1]] - Nagoya Trade & Industry Center [[https://www.nipc.or.jp/fukiage/sub/visitor-access.html#around]] - with [[http://nagoya.bug.gr.jp/]] - [[https://event.ospn.jp/osc2025-nagoya/]]
Fix some typos in FreeBSD section
Index: wikisrc/ports/xen/howto.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v retrieving revision 1.274 retrieving revision 1.275 diff -u -r1.274 -r1.275 --- wikisrc/ports/xen/howto.mdwn 23 Apr 2025 16:31:29 -0000 1.274 +++ wikisrc/ports/xen/howto.mdwn 23 Apr 2025 16:35:41 -0000 1.275 @@ -1070,11 +1070,11 @@ ## Creating a FreeBSD domU -For PVHVM, you can follow the NetBSD instructions and just use a FreeBSD ISO +For PVHVM, you can follow the NetBSD instructions above and just use a FreeBSD ISO image instead. If wanting to convert to PVH later, it is probably best to -usexbd0s1a ufs rather than zfs for your root filesystem. +use ufs rather than zfs for your root filesystem. -To convert a PVHVM domU to PVH, login to the running PVHVM VM and note the root partition (e.g. +To convert a PVHVM domU to PVH after installation, login to the running PVHVM VM and note the root partition (e.g. /dev/ada0s1a). You will likely need to keep a copy of the GENERIC kernel on your dom0 filesystem. You can copy this from /boot/kernel/kernel on the installed VM or by extracting it from /usr/freebsd-dist/kernel.txz on the @@ -1082,11 +1082,11 @@ You can then alter your domU config as follows: - type='pvh'. + type='pvh' kernel='/path/to/kernel' extra = "vfs.root.mountfrom=ufs:/dev/xbd0s1a" -Alter the root partition device from adaX to xbdX (e.g. /dev/ada0s1a to +Alter the root partition device you determined earlier from adaX to xbdX (e.g. /dev/ada0s1a to /dev/xbd0s1a) when doing this. Remember you will need to use the serial/text console not the graphical VNC console after you have converted to PVH.
Document FreeBSD PVH and PVHVM
Index: wikisrc/ports/xen/howto.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v retrieving revision 1.273 retrieving revision 1.274 diff -u -r1.273 -r1.274 --- wikisrc/ports/xen/howto.mdwn 23 Apr 2025 15:37:41 -0000 1.273 +++ wikisrc/ports/xen/howto.mdwn 23 Apr 2025 16:31:29 -0000 1.274 @@ -993,9 +993,6 @@ were a real machine. (Note that because GENERIC has PV drivers, this will be PVHVM, unless you remove or disable them.) -Perhaps configure serial="pty" to gain access to the domUs first -serial port (and hence console?). - The boot device will need to be specified if you do not wish to boot from the first hard disk (e.g. if you want to boot from CD). @@ -1073,9 +1070,26 @@ ## Creating a FreeBSD domU -For pvh: use type='pvh'. Configure a generic kernel. - -For others: \todo +For PVHVM, you can follow the NetBSD instructions and just use a FreeBSD ISO +image instead. If wanting to convert to PVH later, it is probably best to +usexbd0s1a ufs rather than zfs for your root filesystem. + +To convert a PVHVM domU to PVH, login to the running PVHVM VM and note the root partition (e.g. +/dev/ada0s1a). You will likely need to keep a copy of the GENERIC kernel +on your dom0 filesystem. You can copy this from /boot/kernel/kernel on the +installed VM or by extracting it from /usr/freebsd-dist/kernel.txz on the +ISO image. + +You can then alter your domU config as follows: + + type='pvh'. + kernel='/path/to/kernel' + extra = "vfs.root.mountfrom=ufs:/dev/xbd0s1a" + +Alter the root partition device from adaX to xbdX (e.g. /dev/ada0s1a to +/dev/xbd0s1a) when doing this. +Remember you will need to use the serial/text console not the graphical VNC +console after you have converted to PVH. ## Creating a Linux PV domU
Describe keymap option for HVM graphical console.
White-space improvements.
White-space improvements.
Index: wikisrc/ports/xen/howto.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v retrieving revision 1.272 retrieving revision 1.273 diff -u -r1.272 -r1.273 --- wikisrc/ports/xen/howto.mdwn 23 Apr 2025 15:11:51 -0000 1.272 +++ wikisrc/ports/xen/howto.mdwn 23 Apr 2025 15:37:41 -0000 1.273 @@ -1004,6 +1004,9 @@ To change the port use vncdisplay=XX where XX will be added to 5900 to determine the port to use. A plain-text password may be specified with vncpasswd. +You may need to specify a different keymap if en-us isn't what you use with +the keymap option (e.g. keymap="en-gb"). N.B. specifying a non-existent +keymap may create a zombie VM that cannot be destroyed. To enable a text (serial) console that you can access with xl console, add serial="pty". e.g. if you boot from a boot-com.iso image, you can install without using VNC. @@ -1027,8 +1030,8 @@ vif = [ 'mac=00:01:02:ab:cd:ef, bridge=bridge0' ] disk = [ 'format=raw, vdev=hda, access=rw, target=phy:/dev/zvol/dsk/tank/foo', - 'format=raw, vdev=hdc, access=ro, - target=file:/n0/xen/iso/NetBSD-10.1_STABLE-amd64.iso' ] + 'format=raw, vdev=hdc, access=ro, + target=file:/n0/xen/iso/NetBSD-10.1_STABLE-amd64.iso' ] boot = "d" """]]
Fix formatting of some configuration file fragments
Index: wikisrc/ports/xen/howto.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v retrieving revision 1.271 retrieving revision 1.272 diff -u -r1.271 -r1.272 --- wikisrc/ports/xen/howto.mdwn 23 Apr 2025 14:59:02 -0000 1.271 +++ wikisrc/ports/xen/howto.mdwn 23 Apr 2025 15:11:51 -0000 1.272 @@ -1008,7 +1008,7 @@ To enable a text (serial) console that you can access with xl console, add serial="pty". e.g. if you boot from a boot-com.iso image, you can install without using VNC. -[[!template id=programlisting name="After installation" text=""" +[[!template id=filecontent name="After installation" text=""" type = "hvm" name = "foo" memory = 2048 @@ -1019,7 +1019,7 @@ boot = "c" """]] -[[!template id=programlisting name="Install from CD" text=""" +[[!template id=filecontent name="Install from CD" text=""" type = "hvm" name = "foo" memory = 2048 @@ -1038,8 +1038,9 @@ incorrectly as a hard disk and will not be usable (and thus you will not be able to install from CD). See the Toolstack section below for details on how to alter this on a xapi-based Xen system (XenServer or XCP-ng). +Examples of correct and incorrect behaviour are below: -[[!template id=programlisting name="vdev=hdc" text=""" +[[!template id=filecontent name="vdev=hdc" text=""" wdc1 at isa0 port 0x170-0x177 irq 15 atabus0 at wdc1 channel 0 atapibus0 at atabus0: 2 targets @@ -1047,7 +1048,7 @@ cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 5 (Ultra/100) """]] -[[!template id=programlisting name="vdev=hdb" text=""" +[[!template id=filecontent name="vdev=hdb" text=""" wdc0 at isa0 port 0x1f0-0x1f7 irq 14 atabus0 at wdc0 channel 0 wd0 at atabus0 drive 0 @@ -1300,6 +1301,7 @@ [Citrix XenServer](https://xenserver.com/) and [XCP-ng](https://xcp-ng.org/) both use the xapi toolstack which is tightly tied to Linux as a dom0. VPS providers using XenServer or XCP-ng are likely to be more consistent +with each other as they will not be building the Xen kernel or toolstack themselves. However, this means some options may be compiled out and cannot be easily re-enabled. From XenServer 8.4 and XCP-ng onwards, PV32, PV_LINEAR_PT and @@ -1321,7 +1323,7 @@ or 3 (hdd a.k.a. xvdd). By default, the new VM will have its emulated CD drive as xvdd (device 3) and so will not work. To alter this, determine its vbd UUID and change userdevice to 2. -A transcript is as follows: +A transcript of both the viridian and CD changes is as follows: [[!template id=programlisting name="NetBSD HVM on xapi" text=""" [root@xenserver1 ~]# xe vm-list name-label="NetBSD 10" --minimal
Fix documentation links
Fix typos.
Be clearer about how disk images are specified.
Explain graphical and serial consoles with HVM guests.
Describe issues with emulated CD devices in HVM mode.
Explain how to successfully install as a guest on XenServer/XCP-ng.
Fix typos.
Be clearer about how disk images are specified.
Explain graphical and serial consoles with HVM guests.
Describe issues with emulated CD devices in HVM mode.
Explain how to successfully install as a guest on XenServer/XCP-ng.
Index: wikisrc/ports/xen/howto.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v retrieving revision 1.270 retrieving revision 1.271 diff -u -r1.270 -r1.271 --- wikisrc/ports/xen/howto.mdwn 25 Mar 2025 15:06:21 -0000 1.270 +++ wikisrc/ports/xen/howto.mdwn 23 Apr 2025 14:59:02 -0000 1.271 @@ -704,24 +704,23 @@ In domU config files, disks can be defined by key-value pairs or as a sequence of 3-tuples. See the -[upstream documentation] -(https://xenbits.xenproject.org/docs/4.18-testing/man/xl-disk-configuration.5.html). +[upstream documentation](https://xenbits.xenproject.org/docs/4.18-testing/man/xl-disk-configuration.5.html). Read the man page carefully. Note that NetBSD has a culture of using -deprecated positional syntax. This HOWTO is converting to keyword +deprecated 3-tuple positional syntax. This HOWTO is slowly converting to keyword syntax. -One big hint is that vdev= must precede target, despite the order in -which keywords are documented, and despite the fact that obviously -keywords may be in any order. \todo Check and maybe file a bug. +One big hint is that target= should always be last (which contrasts with +the deprecated format where the target is specified first). -A second hint is that for a target in PV mode, one must give a block +A second hint is that for a physical target in PV mode, one must give a block device. But for a target in HVM mode, one must give the raw device. If passing a block device, xen tries to transform it and adds a -suprious r. \todo Check and maybe file a bug. +spurious r. \todo Check and maybe file a bug. A third is that vdev can be 0x0 in PV mode but must be something like -hda in HVM mode. +hda in HVM mode. Leaving as 0x0 will generate a warning such as +'unable to determine disk number for 0x0' \todo Fold in or gc the following. @@ -737,8 +736,8 @@ * The second element is an artifact of how virtual disks are passed to Linux, and a source of confusion with NetBSD Xen usage. Linux domUs are given a device name to associate with the disk, and values like - "hda1" or "sda1" are common. In a NetBSD domU, the first disk appears - as xbd0, the second as xbd1, and so on. However, xl demands a + "hda1" or "sda1" are common. In a NetBSD domU, the first disk discovered appears + as xbd0, the second as xbd1, and so on However, xl demands a second argument. The name given is converted to a major/minor by calling stat(2) on the name in /dev and this is passed to the domU. In the general case, the dom0 and domU can be different operating @@ -752,13 +751,17 @@ * The third element is "w" for writable disks, and "r" for read-only disks. -Examples (key/value and positional): +Examples (key/value and positional). The two 'disk' lines have the identical +result: [[!template id=filecontent name="/usr/pkg/etc/xen/foo" text=""" -disk = [ '\todo key/value example', - 'file:/n0/xen/foo-wd0,0x0,w' ] +# Newer key/value format: +disk = [ 'format=raw, vdev=hdc, devtype=cdrom, access=ro, target=/n0/xen/iso/NetBSD-10.1_STABLE-amd64.iso' ] +# Older positional format: +disk = [ 'file:/n0/xen/iso/NetBSD-10.1_STABLE-amd64.iso,hdc:cdrom,r' ] """]] -Note that NetBSD by default creates only vnd[0123]. If you need more +Note that NetBSD by default creates only vnd[0123] in /dev which are used +for file:/ virtual disks. If you need more than 4 total virtual disks at a time, run e.g. "./MAKEDEV vnd4" in the dom0. @@ -772,8 +775,7 @@ configurations. We focus on two common and useful cases for which there are existing scripts: bridging and NAT. -See the [upstream documentation] -(https://xenbits.xen.org/docs/unstable/man/xl-network-configuration.5.html). +See the [upstream documentation](https://xenbits.xen.org/docs/unstable/man/xl-network-configuration.5.html). With bridging (in the example above), the domU perceives itself to be on the same network as the dom0. For server virtualization, this is @@ -994,11 +996,19 @@ Perhaps configure serial="pty" to gain access to the domUs first serial port (and hence console?). -This config snippet was stolen from a port-xen post. It might not -quite work, as it was in the context of debugging issues apparently -from zvol usage. +The boot device will need to be specified if you do not wish to boot +from the first hard disk (e.g. if you want to boot from CD). -[[!template id=programlisting text=""" +The graphical console will be accessible with VNC on 127.0.0.1 port 5900. +To change the IP address use vnclisten="IP.AD.DR.ESS". +To change the port use vncdisplay=XX where XX will be added to 5900 to determine +the port to use. +A plain-text password may be specified with vncpasswd. + +To enable a text (serial) console that you can access with xl console, add serial="pty". +e.g. if you boot from a boot-com.iso image, you can install without using VNC. + +[[!template id=programlisting name="After installation" text=""" type = "hvm" name = "foo" memory = 2048 @@ -1006,6 +1016,44 @@ vif = [ 'mac=00:01:02:ab:cd:ef, bridge=bridge0' ] disk = [ 'format=raw, vdev=hda, access=rw, target=phy:/dev/zvol/dsk/tank/foo' ] +boot = "c" +"""]] + +[[!template id=programlisting name="Install from CD" text=""" +type = "hvm" +name = "foo" +memory = 2048 +vcpus = 2 +vif = [ 'mac=00:01:02:ab:cd:ef, bridge=bridge0' ] +disk = [ 'format=raw, vdev=hda, access=rw, + target=phy:/dev/zvol/dsk/tank/foo', + 'format=raw, vdev=hdc, access=ro, + target=file:/n0/xen/iso/NetBSD-10.1_STABLE-amd64.iso' ] +boot = "d" +"""]] + +N.B. the vdev device for a cdrom device MUST be given as hdc, not hdb, +as this alters how the emulated ATA devices attach. With hdc, an emulated +CD drive will attach (and be usable), whereas with hdb, it will be seen +incorrectly as a hard disk and will not be usable (and thus you will not +be able to install from CD). See the Toolstack section below for details on +how to alter this on a xapi-based Xen system (XenServer or XCP-ng). + +[[!template id=programlisting name="vdev=hdc" text=""" +wdc1 at isa0 port 0x170-0x177 irq 15 +atabus0 at wdc1 channel 0 +atapibus0 at atabus0: 2 targets +cd0 at atapibus0 drive 0: <QEMU DVD-ROM, QM00003, 2.5+> cdrom removable +cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 5 (Ultra/100) +"""]] + +[[!template id=programlisting name="vdev=hdb" text=""" +wdc0 at isa0 port 0x1f0-0x1f7 irq 14 +atabus0 at wdc0 channel 0 +wd0 at atabus0 drive 0 +wd0: <ST506> +wd0: drive supports 1-sector PIO transfers, chs addressing +wd0: 69632 KB, 1024 cyl, 8 head, 17 sec, 512 bytes/sect x 139264 sectors """]] ## Creating a NetBSD PVHVM domU @@ -1258,7 +1306,31 @@ SHADOW_PAGING are compiled out from the Xen kernel. This means that running a NetBSD domU in PV mode is not possible. The xapi toolstack does not support PVH mode, but it does support pvshim (known as pv-in-pvh). -Unfortunately, a NetBSD domU will still not run. +Unfortunately, a NetBSD domU will still not run in PVH mode. + +When creating a PVHVM NetBSD VM with the xapi toolstack create +your guest using the Other install media VM template. You may use either +BIOS or UEFI boot options. Untick the Start the new VM automatically box. +Once you have created the VM, determine +its UUID either from XenCenter, XenOrchestra or using +xe vm-list name-label="VM NAME" --minimal from the hypervisor command line. +Disable the viridian flag with xe vm-param-set platform:viridian=false uuid=VMUUID. +This will enable the VM to detect it is running on the Xen hypervisor. + +As mentioned above, the emulated CD drive must be set as device 2 (hdc a.k.a. xvdc) not 1 (hdb) +or 3 (hdd a.k.a. xvdd). By default, the new VM will have its emulated CD drive as xvdd (device 3) +and so will not work. To alter this, determine its vbd UUID and change userdevice to 2. + +A transcript is as follows: + +[[!template id=programlisting name="NetBSD HVM on xapi" text=""" +[root@xenserver1 ~]# xe vm-list name-label="NetBSD 10" --minimal +30126d92-842a-ce8b-2939-c58f174d727f +[root@xenserver1 ~]# xe vm-param-set uuid=30126d92-842a-ce8b-2939-c58f174d727f platform:viridian=false +[root@xenserver1 ~]# xe vbd-list vm-uuid=30126d92-842a-ce8b-2939-c58f174d727f type=CD --minimal +515192ef-9019-e3d2-1322-48d51abfb080 +[root@xenserver1 ~]# xe vbd-param-set uuid=515192ef-9019-e3d2-1322-48d51abfb080 userdevice=2 +"""]] ## Complexities due to Xen changes
abi: Fix markup in hppa section.
Index: wikisrc/abi.mdwn =================================================================== RCS file: /cvsroot/wikisrc/abi.mdwn,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- wikisrc/abi.mdwn 20 Apr 2025 14:18:36 -0000 1.11 +++ wikisrc/abi.mdwn 20 Apr 2025 18:52:43 -0000 1.12 @@ -71,11 +71,11 @@ PA-RISC 1.1 ABI: -* [*The 32-bit PA-RISC Runtime Architecture Document*], HP-UX 10.20, Version 3.0, Hewlett-Packard, 1997 ([archive](https://web.archive.org/web/20240416161750/http://ftp.parisc-linux.org/docs/arch/pa-runtime-32-SOM.pdf)) +* *The 32-bit PA-RISC Runtime Architecture Document*, HP-UX 10.20, Version 3.0, Hewlett-Packard, 1997 ([archive](https://web.archive.org/web/20240416161750/http://ftp.parisc-linux.org/docs/arch/pa-runtime-32-SOM.pdf)) PA-RISC 2.0 ABI: -* *32-bit PA-RISC Runtime Architecture Document, HP-UX 11.0, Version 1.0, Hewlett-Packard, 1997 ([archive](https://web.archive.org/web/20240514162903/https://parisc.wiki.kernel.org/index.php/File:Rad_11_0_32.pdf)) +* *32-bit PA-RISC Runtime Architecture Document*, HP-UX 11.0, Version 1.0, Hewlett-Packard, 1997 ([archive](https://web.archive.org/web/20240514162903/https://parisc.wiki.kernel.org/index.php/File:Rad_11_0_32.pdf)) * [*64-bit Runtime Architecture for PA-RISC 2.0*](https://parisc.docs.kernel.org/en/latest/_downloads/b682a92bc0ecb0535f5edcb7c57f0bba/Pa64rt.pdf), Version 3.3, Hewlett-Packard, 1997-10-06 ([archive](https://web.archive.org/web/20221026065114/https://parisc.wiki.kernel.org/images-parisc/5/59/Pa64rt.pdf)) #### i386
abi: Dump some more hppa links.
Index: wikisrc/abi.mdwn =================================================================== RCS file: /cvsroot/wikisrc/abi.mdwn,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- wikisrc/abi.mdwn 18 Apr 2025 18:16:35 -0000 1.10 +++ wikisrc/abi.mdwn 20 Apr 2025 14:18:36 -0000 1.11 @@ -64,9 +64,20 @@ #### hppa +ELF and TLS: + * [*Processor-Specific ELF Supplement for PA-RISC*](https://parisc.wiki.kernel.org/images-parisc/0/0e/Elf-pa-hp.pdf), Version 1.5, 1998-08-20 ([archive](https://web.archive.org/web/20240712004045/https://parisc.wiki.kernel.org/images-parisc/0/0e/Elf-pa-hp.pdf)) * Randolph Chung, Carlos O'Donell, and John David Anglin, [*Implementing Thread Local Storage for HP PA-RISC Linux*](http://www.parisc-linux.org/documentation/tls/hppa-tls-implementation.pdf), 2013-11-11 ([archive](https://web.archive.org/web/20240722131647/http://www.parisc-linux.org/documentation/tls/hppa-tls-implementation.pdf)) +PA-RISC 1.1 ABI: + +* [*The 32-bit PA-RISC Runtime Architecture Document*], HP-UX 10.20, Version 3.0, Hewlett-Packard, 1997 ([archive](https://web.archive.org/web/20240416161750/http://ftp.parisc-linux.org/docs/arch/pa-runtime-32-SOM.pdf)) + +PA-RISC 2.0 ABI: + +* *32-bit PA-RISC Runtime Architecture Document, HP-UX 11.0, Version 1.0, Hewlett-Packard, 1997 ([archive](https://web.archive.org/web/20240514162903/https://parisc.wiki.kernel.org/index.php/File:Rad_11_0_32.pdf)) +* [*64-bit Runtime Architecture for PA-RISC 2.0*](https://parisc.docs.kernel.org/en/latest/_downloads/b682a92bc0ecb0535f5edcb7c57f0bba/Pa64rt.pdf), Version 3.3, Hewlett-Packard, 1997-10-06 ([archive](https://web.archive.org/web/20221026065114/https://parisc.wiki.kernel.org/images-parisc/5/59/Pa64rt.pdf)) + #### i386 * [*System V Application Binary Interface: Intel386 Architecture Processor Supplement*](https://www.sco.com/developers/devspecs/abi386-4.pdf), 4th ed., 1997-03-19, The Santa Cruz Operation, Inc. ([archive](https://web.archive.org/web/20250329184450/https://www.sco.com/developers/devspecs/abi386-4.pdf)) @@ -134,3 +145,5 @@ * [osdev.org: ELF](https://wiki.osdev.org/ELF) * [osdev.org: System V ABI](https://wiki.osdev.org/System_V_ABI) * [ATLAS Assembly Homepage](https://math-atlas.sourceforge.net/devel/assembly/) +* Linux PARISC Wiki: Technical Documentation ([archive](https://web.archive.org/web/20240106050251/https://parisc.wiki.kernel.org/index.php/Technical_Documentation)) +* [Linux on PA-RISC documentation](https://parisc.docs.kernel.org/en/latest/technical_documentation.html)
abi: Newer Alpha calling standard reference.
Index: wikisrc/abi.mdwn =================================================================== RCS file: /cvsroot/wikisrc/abi.mdwn,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- wikisrc/abi.mdwn 18 Apr 2025 18:07:57 -0000 1.9 +++ wikisrc/abi.mdwn 18 Apr 2025 18:16:35 -0000 1.10 @@ -51,6 +51,7 @@ XXX (add refs to libexec/ld.elf_so/arch/alpha/alpha_reloc.c too) * *Alpha Architecture Reference Manual*, 4th ed., Compaq Computer Corporation, January 2002 ([archive](https://archive.org/details/dec-alpha_arch_ref)) +* *Digital UNIX: Calling Standard for Alpha Systems*, Digital Equipment Corporation, Part Number: AA-PY8AC-TE, March 1996 ([archive](https://archive.org/details/digital-unix-calling-standard/page/n1/mode/2up)) * *ALPHA Calling Standard*, Revision 2.0, Digital Equipment Corporation, 1990-04-27 ([copy](https://bitsavers.trailing-edge.com/pdf/dec/alpha/Alpha_Calling_Standard_Rev_2.0_19900427.pdf), [archive](https://web.archive.org/web/20250124130035/https://bitsavers.trailing-edge.com/pdf/dec/alpha/Alpha_Calling_Standard_Rev_2.0_19900427.pdf)) #### amd64
abi: Link to another Alpha reference manual with some ABI details.
Index: wikisrc/abi.mdwn =================================================================== RCS file: /cvsroot/wikisrc/abi.mdwn,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- wikisrc/abi.mdwn 18 Apr 2025 12:59:35 -0000 1.8 +++ wikisrc/abi.mdwn 18 Apr 2025 18:07:57 -0000 1.9 @@ -50,6 +50,7 @@ XXX (add refs to libexec/ld.elf_so/arch/alpha/alpha_reloc.c too) +* *Alpha Architecture Reference Manual*, 4th ed., Compaq Computer Corporation, January 2002 ([archive](https://archive.org/details/dec-alpha_arch_ref)) * *ALPHA Calling Standard*, Revision 2.0, Digital Equipment Corporation, 1990-04-27 ([copy](https://bitsavers.trailing-edge.com/pdf/dec/alpha/Alpha_Calling_Standard_Rev_2.0_19900427.pdf), [archive](https://web.archive.org/web/20250124130035/https://bitsavers.trailing-edge.com/pdf/dec/alpha/Alpha_Calling_Standard_Rev_2.0_19900427.pdf)) #### amd64
abi: Link ia64 psABI and Linux Foundation refspecs.
Index: wikisrc/abi.mdwn =================================================================== RCS file: /cvsroot/wikisrc/abi.mdwn,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- wikisrc/abi.mdwn 17 Apr 2025 04:27:57 -0000 1.7 +++ wikisrc/abi.mdwn 18 Apr 2025 12:59:35 -0000 1.8 @@ -81,7 +81,7 @@ #### ia64 -XXX +* [*Intel Itanium Processor-specific Application Binary Interface*](https://refspecs.linuxfoundation.org/elf/IA64-SysV-psABI.pdf), Intel, Document Number: 245370-003, May 2001 ([archive](https://web.archive.org/web/20241218115909/https://refspecs.linuxfoundation.org/elf/IA64-SysV-psABI.pdf)) #### m68k @@ -128,6 +128,7 @@ * [μClibc: Specifications](https://uclibc.org/specs.html) * [Oracle: Linker and Libraries Guide](https://docs.oracle.com/cd/E23824_01/html/819-0690/toc.html) ([PDF](https://docs.oracle.com/cd/E23824_01/pdf/819-0690.pdf), [archive](https://web.archive.org/web/20241126175651/https://docs.oracle.com/cd/E23824_01/pdf/819-0690.pdf)) * [Wikipedia: Executable and Linking Format](https://en.wikipedia.org/wiki/Executable_and_Linkable_Format) +* [Linux Foundation: Referenced Specifications](https://refspecs.linuxfoundation.org/) * [osdev.org: ELF](https://wiki.osdev.org/ELF) * [osdev.org: System V ABI](https://wiki.osdev.org/System_V_ABI) * [ATLAS Assembly Homepage](https://math-atlas.sourceforge.net/devel/assembly/)
abi: Compacter lists.
Index: wikisrc/abi.mdwn =================================================================== RCS file: /cvsroot/wikisrc/abi.mdwn,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- wikisrc/abi.mdwn 17 Apr 2025 04:01:08 -0000 1.6 +++ wikisrc/abi.mdwn 17 Apr 2025 04:27:57 -0000 1.7 @@ -40,7 +40,6 @@ #### aarch64 * [*ELF for the Arm 64-bit Architecture (AArch64)*](https://github.com/ARM-software/abi-aa/blob/2982a9f3b512a5bfdc9e3fea5d3b298f9165c36b/aaelf64/aaelf64.rst), 2022Q3, Arm Ltd. - * Glauber de Oliveira Costa and Alexandre Oliva, [*Thread-Local Storage Access in Dynamic Libraries in the ARM Platform*](https://www.fsfla.org/~lxoliva/writeups/TLS/paper-lk2006.pdf), 2006. #### alpha @@ -64,7 +63,6 @@ #### hppa * [*Processor-Specific ELF Supplement for PA-RISC*](https://parisc.wiki.kernel.org/images-parisc/0/0e/Elf-pa-hp.pdf), Version 1.5, 1998-08-20 ([archive](https://web.archive.org/web/20240712004045/https://parisc.wiki.kernel.org/images-parisc/0/0e/Elf-pa-hp.pdf)) - * Randolph Chung, Carlos O'Donell, and John David Anglin, [*Implementing Thread Local Storage for HP PA-RISC Linux*](http://www.parisc-linux.org/documentation/tls/hppa-tls-implementation.pdf), 2013-11-11 ([archive](https://web.archive.org/web/20240722131647/http://www.parisc-linux.org/documentation/tls/hppa-tls-implementation.pdf)) #### i386 @@ -94,7 +92,6 @@ #### mips * [*System V Application Binary Interface: MIPS RISC Processor Supplement*](https://www.sco.com/developers/devspecs/mipsabi.pdf), 3rd ed., The Santa Cruz Operation, Inc. ([archive](https://web.archive.org/web/20221026055746/http://www.sco.com/developers/devspecs/mipsabi.pdf)) - * *64-bit ELF Object File Specification*, Draft Version 2.5, MIPS Technologies / Silicon Graphics Computer Systems ([archive](https://web.archive.org/web/20150818210955/http://techpubs.sgi.com/library/manuals/4000/007-4658-001/pdf/007-4658-001.pdf)) XXX Applicable? [MIPSpro 64-bit](https://math-atlas.sourceforge.net/devel/assembly/mipsabi64.pdf), [MIPSpro N32 ABI Handbook](https://math-atlas.sourceforge.net/devel/assembly/007-2816-005.pdf) @@ -102,7 +99,6 @@ #### powerpc * Ryan S. Arnold, Greg Davis, Brian Deitrich, Michael Eager, Emil Medve, Steven J. Munroe, Joseph S. Myers, Steve Papacharalambous, Anmol P. Paralkar, Katherine Stewart, and Edmar Wienskoski, *Power Architecture 32-bit Application Binary Interface Supplement*, Version 1.0, Power.org, 2011-04-19 ([archive](https://web.archive.org/web/20120608163845/https://www.power.org/resources/downloads/Power-Arch-32-bit-ABI-supp-1.0-Linux.pdf)) - * Ian Lance Taylor, [*64-bit PowerPC ELF Application Binary Interface Supplement*](https://refspecs.linuxfoundation.org/ELF/ppc64/PPC-elf64abi-1.9.pdf), Version 1.9, Zembu Labs ([archive](https://web.archive.org/web/20241216031338/https://refspecs.linuxfoundation.org/ELF/ppc64/PPC-elf64abi-1.9.pdf)) #### riscv
abi: Tweak ToC.
Index: wikisrc/abi.mdwn =================================================================== RCS file: /cvsroot/wikisrc/abi.mdwn,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- wikisrc/abi.mdwn 17 Apr 2025 03:58:02 -0000 1.5 +++ wikisrc/abi.mdwn 17 Apr 2025 04:01:08 -0000 1.6 @@ -1,4 +1,4 @@ -# NetBSD ABI: Application Binary Interface +# Application Binary Interface Documentation and references for the NetBSD ABI. @@ -8,40 +8,42 @@ * Make sure these are synced with the comments in src/ld.elf_so/arch/*/*reloc.c. * Save archival copies on TNF hosts in case the archive links go kaput. -[[!toc]] +[[!toc startlevel=2 levels=3]] -## ELF +## NetBSD Application Binary Interface + +### ELF XXX link gABI -## Thread-local storage +### Thread-local storage * Linker and Libraries Guide, Part IV: ELF Application Binary Interface, [Chapter 14: *Thread-Local Storage*](https://docs.oracle.com/cd/E23824_01/html/819-0690/chapter8-1.html), Oracle, Part No: 819-0690-10, November 2011 * Ulrich Drepper, [*ELF Handling For Thread-Local Storage*](https://akkadia.org/drepper/tls.pdf), Version 0.21, 2023-08-22 ([archive](https://web.archive.org/web/20240718081934/https://akkadia.org/drepper/tls.pdf)) -## Exception handling and unwinding +### Exception handling and unwinding XXX -## Debug data: DWARF, CTF +### Debug data: DWARF, CTF XXX -## Library versioning and compatibility +### Library versioning and compatibility * [[Symbol versions in NetBSD libraries|symbol_versions]] * Ulrich Drepper, [*How To Write Shared Libraries*](https://akkadia.org/drepper/dsohowto.pdf), 2011-12-10 ([archive](https://web.archive.org/web/20250328091912/https://akkadia.org/drepper/dsohowto.pdf)) * Ulrich Drepper, [*ELF Symbol Versioning*](https://akkadia.org/drepper/symbol-versioning), 2017-12-21 ([archive](https://web.archive.org/web/20250403043622/https://www.akkadia.org/drepper/symbol-versioning)) -## Processor supplements +### Processor supplements -### aarch64 +#### aarch64 * [*ELF for the Arm 64-bit Architecture (AArch64)*](https://github.com/ARM-software/abi-aa/blob/2982a9f3b512a5bfdc9e3fea5d3b298f9165c36b/aaelf64/aaelf64.rst), 2022Q3, Arm Ltd. * Glauber de Oliveira Costa and Alexandre Oliva, [*Thread-Local Storage Access in Dynamic Libraries in the ARM Platform*](https://www.fsfla.org/~lxoliva/writeups/TLS/paper-lk2006.pdf), 2006. -### alpha +#### alpha ELF Alpha support may be bespoke to NetBSD, or GNU gcc/binutils; it appears neither DEC nor SCO nor anyone else never published an Alpha @@ -51,21 +53,21 @@ * *ALPHA Calling Standard*, Revision 2.0, Digital Equipment Corporation, 1990-04-27 ([copy](https://bitsavers.trailing-edge.com/pdf/dec/alpha/Alpha_Calling_Standard_Rev_2.0_19900427.pdf), [archive](https://web.archive.org/web/20250124130035/https://bitsavers.trailing-edge.com/pdf/dec/alpha/Alpha_Calling_Standard_Rev_2.0_19900427.pdf)) -### amd64 +#### amd64 * *System V Application Binary Interface: AMD64 Architecture Processor Supplement*, Draft Version 0.99.6, 2013-10-07 ([archive](https://web.archive.org/web/20160801075146/www.x86-64.org/documentation/abi.pdf), [source code](https://gitlab.com/x86-psABIs/x86-64-ABI)) -### arm (32-bit) +#### arm (32-bit) * [*ELF for the Arm Architecture*](https://github.com/ARM-software/abi-aa/blob/2982a9f3b512a5bfdc9e3fea5d3b298f9165c36b/aaelf32/aaelf32.rst), 2022Q3, Arm Ltd. -### hppa +#### hppa * [*Processor-Specific ELF Supplement for PA-RISC*](https://parisc.wiki.kernel.org/images-parisc/0/0e/Elf-pa-hp.pdf), Version 1.5, 1998-08-20 ([archive](https://web.archive.org/web/20240712004045/https://parisc.wiki.kernel.org/images-parisc/0/0e/Elf-pa-hp.pdf)) * Randolph Chung, Carlos O'Donell, and John David Anglin, [*Implementing Thread Local Storage for HP PA-RISC Linux*](http://www.parisc-linux.org/documentation/tls/hppa-tls-implementation.pdf), 2013-11-11 ([archive](https://web.archive.org/web/20240722131647/http://www.parisc-linux.org/documentation/tls/hppa-tls-implementation.pdf)) -### i386 +#### i386 * [*System V Application Binary Interface: Intel386 Architecture Processor Supplement*](https://www.sco.com/developers/devspecs/abi386-4.pdf), 4th ed., 1997-03-19, The Santa Cruz Operation, Inc. ([archive](https://web.archive.org/web/20250329184450/https://www.sco.com/developers/devspecs/abi386-4.pdf)) @@ -79,17 +81,17 @@ the updated one has been incompatibly modified to guarantee 16-byte alignment. -### ia64 +#### ia64 XXX -### m68k +#### m68k XXX (add refs to libexec/ld.elf_so/arch/alpha/alpha_reloc.c too) * *System V Application Binary Interface: Motorola 68000 Processor Family Supplement*, AT&T, 1990 ([copy](https://people.debian.org/~glaubitz/m68k-sysv-abi.pdf), [archive](https://web.archive.org/web/20250317195959/https://people.debian.org/~glaubitz/m68k-sysv-abi.pdf)) -### mips +#### mips * [*System V Application Binary Interface: MIPS RISC Processor Supplement*](https://www.sco.com/developers/devspecs/mipsabi.pdf), 3rd ed., The Santa Cruz Operation, Inc. ([archive](https://web.archive.org/web/20221026055746/http://www.sco.com/developers/devspecs/mipsabi.pdf)) @@ -97,32 +99,32 @@ XXX Applicable? [MIPSpro 64-bit](https://math-atlas.sourceforge.net/devel/assembly/mipsabi64.pdf), [MIPSpro N32 ABI Handbook](https://math-atlas.sourceforge.net/devel/assembly/007-2816-005.pdf) -### powerpc +#### powerpc * Ryan S. Arnold, Greg Davis, Brian Deitrich, Michael Eager, Emil Medve, Steven J. Munroe, Joseph S. Myers, Steve Papacharalambous, Anmol P. Paralkar, Katherine Stewart, and Edmar Wienskoski, *Power Architecture 32-bit Application Binary Interface Supplement*, Version 1.0, Power.org, 2011-04-19 ([archive](https://web.archive.org/web/20120608163845/https://www.power.org/resources/downloads/Power-Arch-32-bit-ABI-supp-1.0-Linux.pdf)) * Ian Lance Taylor, [*64-bit PowerPC ELF Application Binary Interface Supplement*](https://refspecs.linuxfoundation.org/ELF/ppc64/PPC-elf64abi-1.9.pdf), Version 1.9, Zembu Labs ([archive](https://web.archive.org/web/20241216031338/https://refspecs.linuxfoundation.org/ELF/ppc64/PPC-elf64abi-1.9.pdf)) -### riscv +#### riscv * [*RISC-V ELF Specification*](https://github.com/riscv-non-isa/riscv-elf-psabi-doc/blob/9fec6080d15e7f009c9e714d1e9b8dd7177b0b67/riscv-elf.adoc), 2024-07-17 -### sh3 +#### sh3 * [*SH-4 generic and C specific application binary interface*](https://www.st.com/resource/en/reference_manual/rm0197-sh4-generic-and-c-specific-application-binary-interface-stmicroelectronics.pdf), 7839242 Rev 2, October 2011, STMicroelectronics ([archive](https://www.st.com/resource/en/reference_manual/rm0197-sh4-generic-and-c-specific-application-binary-interface-stmicroelectronics.pdf)) -### sparc/sparc64 +#### sparc/sparc64 * [*SPARC Compliance Definition*](http://sparc.org/wp-content/uploads/2014/01/SCD.2.4.1.pdf.gz), Version 2.4.1, 1999-07-24, SPARC International, Inc. ([archive](https://web.archive.org/web/20241213042953/http://sparc.org/wp-content/uploads/2014/01/SCD.2.4.1.pdf.gz)) Encompasses the SysV SPARC psABI (System V Application Binary Interface: SPARC Processor Supplement, 3rd ed., 1996, The Santa Cruz Operation, Inc., [archive](https://web.archive.org/web/20250124121714/https://math-atlas.sourceforge.net/devel/assembly/abi_sysV_sparc.pdf)). -### vax +#### vax ELF VAX support is bespoke to NetBSD, courtesy of Matt Thomas (matt@); there is no VAX psABI. -# External Links +## External Links Relevant information and further references, not necessarily applicable to NetBSD:
abi: Add some more links and TODOs.
Index: wikisrc/abi.mdwn =================================================================== RCS file: /cvsroot/wikisrc/abi.mdwn,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- wikisrc/abi.mdwn 16 Apr 2025 19:00:23 -0000 1.4 +++ wikisrc/abi.mdwn 17 Apr 2025 03:58:02 -0000 1.5 @@ -8,23 +8,30 @@ * Make sure these are synced with the comments in src/ld.elf_so/arch/*/*reloc.c. * Save archival copies on TNF hosts in case the archive links go kaput. +[[!toc]] + ## ELF -XXX +XXX link gABI ## Thread-local storage +* Linker and Libraries Guide, Part IV: ELF Application Binary Interface, [Chapter 14: *Thread-Local Storage*](https://docs.oracle.com/cd/E23824_01/html/819-0690/chapter8-1.html), Oracle, Part No: 819-0690-10, November 2011 * Ulrich Drepper, [*ELF Handling For Thread-Local Storage*](https://akkadia.org/drepper/tls.pdf), Version 0.21, 2023-08-22 ([archive](https://web.archive.org/web/20240718081934/https://akkadia.org/drepper/tls.pdf)) ## Exception handling and unwinding XXX +## Debug data: DWARF, CTF + +XXX + ## Library versioning and compatibility * [[Symbol versions in NetBSD libraries|symbol_versions]] -* Ulrich Drepper, [How To Write Shared Libraries](https://akkadia.org/drepper/dsohowto.pdf), 2011-12-10 ([archive](https://web.archive.org/web/20250328091912/https://akkadia.org/drepper/dsohowto.pdf)) -* Ulrich Drepper, [ELF Symbol Versioning](https://akkadia.org/drepper/symbol-versioning), 2017-12-21 ([archive](https://web.archive.org/web/20250403043622/https://www.akkadia.org/drepper/symbol-versioning)) +* Ulrich Drepper, [*How To Write Shared Libraries*](https://akkadia.org/drepper/dsohowto.pdf), 2011-12-10 ([archive](https://web.archive.org/web/20250328091912/https://akkadia.org/drepper/dsohowto.pdf)) +* Ulrich Drepper, [*ELF Symbol Versioning*](https://akkadia.org/drepper/symbol-versioning), 2017-12-21 ([archive](https://web.archive.org/web/20250403043622/https://www.akkadia.org/drepper/symbol-versioning)) ## Processor supplements @@ -60,7 +67,7 @@ ### i386 -* [*System V Application Binary Interface: Intel386 Architecture Processor Supplement*](https://www.sco.com/developers/devspecs/abi386-4.pdf), 4th ed., 1997-03-19, , The Santa Cruz Operation, Inc. ([archive](https://web.archive.org/web/20250329184450/https://www.sco.com/developers/devspecs/abi386-4.pdf)) +* [*System V Application Binary Interface: Intel386 Architecture Processor Supplement*](https://www.sco.com/developers/devspecs/abi386-4.pdf), 4th ed., 1997-03-19, The Santa Cruz Operation, Inc. ([archive](https://web.archive.org/web/20250329184450/https://www.sco.com/developers/devspecs/abi386-4.pdf)) Note: Intel and SuSE have published a [2015 revision](https://uclibc.org/docs/psABI-i386.pdf) @@ -121,6 +128,7 @@ to NetBSD: * [μClibc: Specifications](https://uclibc.org/specs.html) +* [Oracle: Linker and Libraries Guide](https://docs.oracle.com/cd/E23824_01/html/819-0690/toc.html) ([PDF](https://docs.oracle.com/cd/E23824_01/pdf/819-0690.pdf), [archive](https://web.archive.org/web/20241126175651/https://docs.oracle.com/cd/E23824_01/pdf/819-0690.pdf)) * [Wikipedia: Executable and Linking Format](https://en.wikipedia.org/wiki/Executable_and_Linkable_Format) * [osdev.org: ELF](https://wiki.osdev.org/ELF) * [osdev.org: System V ABI](https://wiki.osdev.org/System_V_ABI)
abi: Fix spurious markup.
Index: wikisrc/abi.mdwn =================================================================== RCS file: /cvsroot/wikisrc/abi.mdwn,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- wikisrc/abi.mdwn 16 Apr 2025 18:58:16 -0000 1.3 +++ wikisrc/abi.mdwn 16 Apr 2025 19:00:23 -0000 1.4 @@ -80,7 +80,7 @@ XXX (add refs to libexec/ld.elf_so/arch/alpha/alpha_reloc.c too) -* [*System V Application Binary Interface: Motorola 68000 Processor Family Supplement*], AT&T, 1990 ([copy](https://people.debian.org/~glaubitz/m68k-sysv-abi.pdf), [archive](https://web.archive.org/web/20250317195959/https://people.debian.org/~glaubitz/m68k-sysv-abi.pdf)) +* *System V Application Binary Interface: Motorola 68000 Processor Family Supplement*, AT&T, 1990 ([copy](https://people.debian.org/~glaubitz/m68k-sysv-abi.pdf), [archive](https://web.archive.org/web/20250317195959/https://people.debian.org/~glaubitz/m68k-sysv-abi.pdf)) ### mips
abi: Add some more references and links.
Suggested by mrg@ and tls@.
Suggested by mrg@ and tls@.
Members: abi.mdwn:1.2->1.3 Index: wikisrc/abi.mdwn =================================================================== RCS file: /cvsroot/wikisrc/abi.mdwn,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- wikisrc/abi.mdwn 16 Apr 2025 18:37:04 -0000 1.2 +++ wikisrc/abi.mdwn 16 Apr 2025 18:58:16 -0000 1.3 @@ -6,6 +6,7 @@ * Mark references as normative, informative, or possibly misleading. * Make sure these are synced with the comments in src/ld.elf_so/arch/*/*reloc.c. +* Save archival copies on TNF hosts in case the archive links go kaput. ## ELF @@ -35,8 +36,14 @@ ### alpha +ELF Alpha support may be bespoke to NetBSD, or GNU gcc/binutils; it +appears neither DEC nor SCO nor anyone else never published an Alpha +psABI. + XXX (add refs to libexec/ld.elf_so/arch/alpha/alpha_reloc.c too) +* *ALPHA Calling Standard*, Revision 2.0, Digital Equipment Corporation, 1990-04-27 ([copy](https://bitsavers.trailing-edge.com/pdf/dec/alpha/Alpha_Calling_Standard_Rev_2.0_19900427.pdf), [archive](https://web.archive.org/web/20250124130035/https://bitsavers.trailing-edge.com/pdf/dec/alpha/Alpha_Calling_Standard_Rev_2.0_19900427.pdf)) + ### amd64 * *System V Application Binary Interface: AMD64 Architecture Processor Supplement*, Draft Version 0.99.6, 2013-10-07 ([archive](https://web.archive.org/web/20160801075146/www.x86-64.org/documentation/abi.pdf), [source code](https://gitlab.com/x86-psABIs/x86-64-ABI)) @@ -65,16 +72,26 @@ the updated one has been incompatibly modified to guarantee 16-byte alignment. +### ia64 + +XXX + ### m68k XXX (add refs to libexec/ld.elf_so/arch/alpha/alpha_reloc.c too) +* [*System V Application Binary Interface: Motorola 68000 Processor Family Supplement*], AT&T, 1990 ([copy](https://people.debian.org/~glaubitz/m68k-sysv-abi.pdf), [archive](https://web.archive.org/web/20250317195959/https://people.debian.org/~glaubitz/m68k-sysv-abi.pdf)) + ### mips * [*System V Application Binary Interface: MIPS RISC Processor Supplement*](https://www.sco.com/developers/devspecs/mipsabi.pdf), 3rd ed., The Santa Cruz Operation, Inc. ([archive](https://web.archive.org/web/20221026055746/http://www.sco.com/developers/devspecs/mipsabi.pdf)) * *64-bit ELF Object File Specification*, Draft Version 2.5, MIPS Technologies / Silicon Graphics Computer Systems ([archive](https://web.archive.org/web/20150818210955/http://techpubs.sgi.com/library/manuals/4000/007-4658-001/pdf/007-4658-001.pdf)) +XXX Applicable? [MIPSpro 64-bit](https://math-atlas.sourceforge.net/devel/assembly/mipsabi64.pdf), [MIPSpro N32 ABI Handbook](https://math-atlas.sourceforge.net/devel/assembly/007-2816-005.pdf) + +### powerpc + * Ryan S. Arnold, Greg Davis, Brian Deitrich, Michael Eager, Emil Medve, Steven J. Munroe, Joseph S. Myers, Steve Papacharalambous, Anmol P. Paralkar, Katherine Stewart, and Edmar Wienskoski, *Power Architecture 32-bit Application Binary Interface Supplement*, Version 1.0, Power.org, 2011-04-19 ([archive](https://web.archive.org/web/20120608163845/https://www.power.org/resources/downloads/Power-Arch-32-bit-ABI-supp-1.0-Linux.pdf)) * Ian Lance Taylor, [*64-bit PowerPC ELF Application Binary Interface Supplement*](https://refspecs.linuxfoundation.org/ELF/ppc64/PPC-elf64abi-1.9.pdf), Version 1.9, Zembu Labs ([archive](https://web.archive.org/web/20241216031338/https://refspecs.linuxfoundation.org/ELF/ppc64/PPC-elf64abi-1.9.pdf)) @@ -95,4 +112,16 @@ ### vax -XXX ELF VAX psABI may be bespoke to NetBSD, courtesy of Matt Thomas (matt@). +ELF VAX support is bespoke to NetBSD, courtesy of Matt Thomas (matt@); +there is no VAX psABI. + +# External Links + +Relevant information and further references, not necessarily applicable +to NetBSD: + +* [μClibc: Specifications](https://uclibc.org/specs.html) +* [Wikipedia: Executable and Linking Format](https://en.wikipedia.org/wiki/Executable_and_Linkable_Format) +* [osdev.org: ELF](https://wiki.osdev.org/ELF) +* [osdev.org: System V ABI](https://wiki.osdev.org/System_V_ABI) +* [ATLAS Assembly Homepage](https://math-atlas.sourceforge.net/devel/assembly/)
abi: Fill this out with all the references I have handy.
Index: wikisrc/abi.mdwn =================================================================== RCS file: /cvsroot/wikisrc/abi.mdwn,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- wikisrc/abi.mdwn 25 Jul 2024 14:31:32 -0000 1.1 +++ wikisrc/abi.mdwn 16 Apr 2025 18:37:04 -0000 1.2 @@ -2,24 +2,97 @@ Documentation and references for the NetBSD ABI. +XXX TBD: + +* Mark references as normative, informative, or possibly misleading. +* Make sure these are synced with the comments in src/ld.elf_so/arch/*/*reloc.c. + ## ELF XXX ## Thread-local storage -XXX +* Ulrich Drepper, [*ELF Handling For Thread-Local Storage*](https://akkadia.org/drepper/tls.pdf), Version 0.21, 2023-08-22 ([archive](https://web.archive.org/web/20240718081934/https://akkadia.org/drepper/tls.pdf)) ## Exception handling and unwinding XXX +## Library versioning and compatibility + +* [[Symbol versions in NetBSD libraries|symbol_versions]] +* Ulrich Drepper, [How To Write Shared Libraries](https://akkadia.org/drepper/dsohowto.pdf), 2011-12-10 ([archive](https://web.archive.org/web/20250328091912/https://akkadia.org/drepper/dsohowto.pdf)) +* Ulrich Drepper, [ELF Symbol Versioning](https://akkadia.org/drepper/symbol-versioning), 2017-12-21 ([archive](https://web.archive.org/web/20250403043622/https://www.akkadia.org/drepper/symbol-versioning)) + ## Processor supplements -XXX +### aarch64 -## Library versioning and compatibility +* [*ELF for the Arm 64-bit Architecture (AArch64)*](https://github.com/ARM-software/abi-aa/blob/2982a9f3b512a5bfdc9e3fea5d3b298f9165c36b/aaelf64/aaelf64.rst), 2022Q3, Arm Ltd. -XXX +* Glauber de Oliveira Costa and Alexandre Oliva, [*Thread-Local Storage Access in Dynamic Libraries in the ARM Platform*](https://www.fsfla.org/~lxoliva/writeups/TLS/paper-lk2006.pdf), 2006. + +### alpha + +XXX (add refs to libexec/ld.elf_so/arch/alpha/alpha_reloc.c too) + +### amd64 + +* *System V Application Binary Interface: AMD64 Architecture Processor Supplement*, Draft Version 0.99.6, 2013-10-07 ([archive](https://web.archive.org/web/20160801075146/www.x86-64.org/documentation/abi.pdf), [source code](https://gitlab.com/x86-psABIs/x86-64-ABI)) + +### arm (32-bit) + +* [*ELF for the Arm Architecture*](https://github.com/ARM-software/abi-aa/blob/2982a9f3b512a5bfdc9e3fea5d3b298f9165c36b/aaelf32/aaelf32.rst), 2022Q3, Arm Ltd. + +### hppa + +* [*Processor-Specific ELF Supplement for PA-RISC*](https://parisc.wiki.kernel.org/images-parisc/0/0e/Elf-pa-hp.pdf), Version 1.5, 1998-08-20 ([archive](https://web.archive.org/web/20240712004045/https://parisc.wiki.kernel.org/images-parisc/0/0e/Elf-pa-hp.pdf)) + +* Randolph Chung, Carlos O'Donell, and John David Anglin, [*Implementing Thread Local Storage for HP PA-RISC Linux*](http://www.parisc-linux.org/documentation/tls/hppa-tls-implementation.pdf), 2013-11-11 ([archive](https://web.archive.org/web/20240722131647/http://www.parisc-linux.org/documentation/tls/hppa-tls-implementation.pdf)) + +### i386 + +* [*System V Application Binary Interface: Intel386 Architecture Processor Supplement*](https://www.sco.com/developers/devspecs/abi386-4.pdf), 4th ed., 1997-03-19, , The Santa Cruz Operation, Inc. ([archive](https://web.archive.org/web/20250329184450/https://www.sco.com/developers/devspecs/abi386-4.pdf)) + +Note: Intel and SuSE have published a +[2015 revision](https://uclibc.org/docs/psABI-i386.pdf) +([archive](https://web.archive.org/web/20250118211449/https://uclibc.org/docs/psABI-i386.pdf), +[source code](https://gitlab.com/x86-psABIs/i386-ABI)) +to the SysV ELF supplement, which NetBSD does not implement—for +example, the original SysV ABI from SCO only mandates 4-byte alignment +of the stack pointer, which is all that NetBSD/i386 guarantees, while +the updated one has been incompatibly modified to guarantee 16-byte +alignment. + +### m68k + +XXX (add refs to libexec/ld.elf_so/arch/alpha/alpha_reloc.c too) + +### mips + +* [*System V Application Binary Interface: MIPS RISC Processor Supplement*](https://www.sco.com/developers/devspecs/mipsabi.pdf), 3rd ed., The Santa Cruz Operation, Inc. ([archive](https://web.archive.org/web/20221026055746/http://www.sco.com/developers/devspecs/mipsabi.pdf)) + +* *64-bit ELF Object File Specification*, Draft Version 2.5, MIPS Technologies / Silicon Graphics Computer Systems ([archive](https://web.archive.org/web/20150818210955/http://techpubs.sgi.com/library/manuals/4000/007-4658-001/pdf/007-4658-001.pdf)) + +* Ryan S. Arnold, Greg Davis, Brian Deitrich, Michael Eager, Emil Medve, Steven J. Munroe, Joseph S. Myers, Steve Papacharalambous, Anmol P. Paralkar, Katherine Stewart, and Edmar Wienskoski, *Power Architecture 32-bit Application Binary Interface Supplement*, Version 1.0, Power.org, 2011-04-19 ([archive](https://web.archive.org/web/20120608163845/https://www.power.org/resources/downloads/Power-Arch-32-bit-ABI-supp-1.0-Linux.pdf)) + +* Ian Lance Taylor, [*64-bit PowerPC ELF Application Binary Interface Supplement*](https://refspecs.linuxfoundation.org/ELF/ppc64/PPC-elf64abi-1.9.pdf), Version 1.9, Zembu Labs ([archive](https://web.archive.org/web/20241216031338/https://refspecs.linuxfoundation.org/ELF/ppc64/PPC-elf64abi-1.9.pdf)) + +### riscv + +* [*RISC-V ELF Specification*](https://github.com/riscv-non-isa/riscv-elf-psabi-doc/blob/9fec6080d15e7f009c9e714d1e9b8dd7177b0b67/riscv-elf.adoc), 2024-07-17 + +### sh3 + +* [*SH-4 generic and C specific application binary interface*](https://www.st.com/resource/en/reference_manual/rm0197-sh4-generic-and-c-specific-application-binary-interface-stmicroelectronics.pdf), 7839242 Rev 2, October 2011, STMicroelectronics ([archive](https://www.st.com/resource/en/reference_manual/rm0197-sh4-generic-and-c-specific-application-binary-interface-stmicroelectronics.pdf)) + +### sparc/sparc64 + +* [*SPARC Compliance Definition*](http://sparc.org/wp-content/uploads/2014/01/SCD.2.4.1.pdf.gz), Version 2.4.1, 1999-07-24, SPARC International, Inc. ([archive](https://web.archive.org/web/20241213042953/http://sparc.org/wp-content/uploads/2014/01/SCD.2.4.1.pdf.gz)) + +Encompasses the SysV SPARC psABI (System V Application Binary Interface: SPARC Processor Supplement, 3rd ed., 1996, The Santa Cruz Operation, Inc., [archive](https://web.archive.org/web/20250124121714/https://math-atlas.sourceforge.net/devel/assembly/abi_sysV_sparc.pdf)). + +### vax -[XXX symbol versioning|symbol_versions] +XXX ELF VAX psABI may be bespoke to NetBSD, courtesy of Matt Thomas (matt@).
remove this from the GSoC projects for now
This project isn't very well thought out. It needs serious review and
more thinking about.
This project isn't very well thought out. It needs serious review and
more thinking about.
Members: projects/project/swap-auto.mdwn:1.3->1.4 Index: wikisrc/projects/project/swap-auto.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/swap-auto.mdwn,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- wikisrc/projects/project/swap-auto.mdwn 12 Mar 2022 18:27:25 -0000 1.3 +++ wikisrc/projects/project/swap-auto.mdwn 3 Apr 2025 09:24:30 -0000 1.4 @@ -29,6 +29,3 @@ """ ]] - -[[!tag gsoc]] -[[!tag gsoc175h]]
Note that it is now March 2025, not July 2024.
Remove some more typos.
Describe difference between Xen dom0 toolstacks and how they will impact running NetBSD domUs
Remove some more typos.
Describe difference between Xen dom0 toolstacks and how they will impact running NetBSD domUs
Index: wikisrc/ports/xen/howto.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v retrieving revision 1.269 retrieving revision 1.270 diff -u -r1.269 -r1.270 --- wikisrc/ports/xen/howto.mdwn 24 Mar 2025 15:16:36 -0000 1.269 +++ wikisrc/ports/xen/howto.mdwn 25 Mar 2025 15:06:21 -0000 1.270 @@ -149,7 +149,7 @@ and the [Xen Security Advisory page](http://xenbits.xen.org/xsa/). -As of July 2024, both 4.15 and 4.18 generally work well on NetBSD 9 +As of March 2025, both 4.15 and 4.18 generally work well on NetBSD 9 through current with i386 and amd64 guests. The standard approach is 4.18. However, there is a timekeeping issue on some systems with 4.18; see @@ -159,7 +159,7 @@ see the "Creating a NetBSD PV Shim domU" section below for the required minor adjustment. -As of July 2024, there are no efforts to package 4.19 (not yet +As of March 2025, there are no efforts to package 4.19 (not yet released), and there are hints that 4.20 (not even listed on the support matrix page yet) might be packaged. Note that 4.18 is the current stable release of Xen; pkgsrc is not behind. @@ -386,8 +386,6 @@ menu=Xen:load /netbsd-XEN3_DOM0.gz rndseed=/var/db/entropy-file bootdev=sd0; multiboot /xen.gz dom0_mem=1024M console=com1 com1=115200,8n1 """]] -is 115200, it is - ### Selecting the console for NetBSD dom0 Note that com0 is never available to a NetBSD dom0; it is instead @@ -1188,6 +1186,14 @@ https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html#pv-linear-pt-x86 +N.B. with XenServer 8.4 or XCP-ng 8.3, the kernel is NOT compiled with +CONFIG_PV_LINEAR_PT and thus NetBSD domUs cannot be run in PV mode. +With Citrix Hypervisor 8.2 (XenServer was renamed for that release) and +earlier, it is compiled in, but not enabled. It must be enabled with the +following command in the dom0 (which must be rebooted to take effect): + +/opt/xensource/libexec/xen-cmdline --set-xen pv-linear-pt=true + ## Nesting under Linux KVM It is possible to run Xen and a NetBSD dom0 under Linux KVM. One @@ -1237,6 +1243,23 @@ multiple vcpus, and it is typical for VPS providers to enable multiple CPUs for NetBSD domUs. +## Toolstacks + +There are two different open-source toolstacks for Xen: xl and xapi. The +documentation above describes the xl toolstack (known in pkgsrc as +xentools). This is the only toolstack supported by a NetBSD dom0. + +[Citrix XenServer](https://xenserver.com/) and [XCP-ng](https://xcp-ng.org/) +both use the xapi toolstack which is tightly tied to Linux as a dom0. +VPS providers using XenServer or XCP-ng are likely to be more consistent +as they will not be building the Xen kernel or toolstack themselves. +However, this means some options may be compiled out and cannot be easily +re-enabled. From XenServer 8.4 and XCP-ng onwards, PV32, PV_LINEAR_PT and +SHADOW_PAGING are compiled out from the Xen kernel. This means that +running a NetBSD domU in PV mode is not possible. The xapi toolstack does +not support PVH mode, but it does support pvshim (known as pv-in-pvh). +Unfortunately, a NetBSD domU will still not run. + ## Complexities due to Xen changes Xen has many security advisories and people running Xen systems make @@ -1281,7 +1304,7 @@ ### pygrub -As of 2014, pygrub seems to be of mostly historical interest. As of +With the xl toolstack as of 2014, pygrub seems to be of mostly historical interest. As of 2021, the section should perhaps be outright deleted. pygrub runs in the dom0 and looks into the domU file system. This @@ -1293,6 +1316,10 @@ dom0. For both these reasons, pygrub should not be used, and is only still present so that historical DomU images using it still work. +With the xapi toolstack, pygrub is still used to load the domU kernel +in pv or pvshim mode. Unfortunately, as noted above, recent releases of +xapi-based products will not boot a NetBSD kernel in pv or pvshim mode. + ### Kernel in dom0 If you run your own dom0, putting the domU kernel there might be ok. @@ -1330,7 +1357,8 @@ Xen-based NetBSD hosting. See their [dedicated hosting page](https://www.precedence.co.uk/internet/dedicated/) for some -details. +details. Both xl (NetBSD dom0) and xapi (XenServer/XCP-ng on Linux dom0) +toolstacks are supported. ### providers that do not document support for NetBSD
Sort summits by meta title.
Index: wikisrc/summits.mdwn =================================================================== RCS file: /cvsroot/wikisrc/summits.mdwn,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- wikisrc/summits.mdwn 23 Feb 2018 17:29:48 -0000 1.11 +++ wikisrc/summits.mdwn 24 Mar 2025 18:48:03 -0000 1.12 @@ -4,21 +4,21 @@ ## Contents -[[!map pages="summits/*" show=title]] - -# Add a summit - -[[!edittemplate -template="summit" -match="summits/*" -silent=yes -]] - +<ul> [[!inline -pages="empty and pagespec" -feeds=no rootpage="summits" +pages="summits/*" +feeds=no +archive=yes +template="bulletedtitlepage" +sort="meta(title)" postform=yes postformtext="Add a new summit page:" ]] +</ul> +[[!edittemplate +template="summit" +match="summits/*" +silent=yes +]]
Add titlepage.tmpl variant with <li> (expecting to be inside <ul>).
--- /dev/null 2025-07-29 17:43:02.530750491 +0000 +++ wikisrc/templates/bulletedtitlepage.tmpl 2025-07-29 17:47:38.379479175 +0000 @@ -0,0 +1,5 @@ +<TMPL_IF PERMALINK> +<li><a href="<TMPL_VAR PERMALINK>"><TMPL_VAR TITLE></a></li> +<TMPL_ELSE> +<li><a href="<TMPL_VAR PAGEURL>"><TMPL_VAR TITLE></a></li> +</TMPL_IF>
Fix typos and grammar.
Be more explicity about serial consoles and speeds.
Fix some links.
Be more explicity about serial consoles and speeds.
Fix some links.
Index: wikisrc/ports/xen/howto.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/xen/howto.mdwn,v retrieving revision 1.268 retrieving revision 1.269 diff -u -r1.268 -r1.269 --- wikisrc/ports/xen/howto.mdwn 20 Sep 2024 17:07:43 -0000 1.268 +++ wikisrc/ports/xen/howto.mdwn 24 Mar 2025 15:16:36 -0000 1.269 @@ -4,7 +4,7 @@ systems on a single physical machine. One uses the Xen kernel to control the CPU, memory and console, a dom0 operating system which mediates access to other hardware (e.g., disks, network, USB), and one or more domU operating -systems which operate in an unprivileged virtualized environment. IO requests +systems which operate in an unprivileged virtualized environment. I/O requests from the domU systems are forwarded by the Xen hypervisor to the dom0 to be fulfilled. @@ -21,8 +21,7 @@ not, it is best to ask on port-xen and if you are correct to file a PR. -See also an [earlier Xen tutorial] -(http://wiki.netbsd.org/tutorials/how_to_set_up_a_guest_os_using_xen3/) +See also an [earlier Xen tutorial](http://wiki.netbsd.org/tutorials/how_to_set_up_a_guest_os_using_xen3/) which should perhaps be folded into this HOWTO. [[!toc]] @@ -177,7 +176,7 @@ NetBSD 8 and later as a dom0 supports running HVM domUs. NetBSD 10 and later as a domU can be run in PVH and PVHVM modes, and -s a dom0 can (experimentally) be run in PVH mode.etBSD up to and including NetBSD 9 as a dom0 cannot safely run SMP +a dom0 can (experimentally) be run in PVH mode. NetBSD up to and including NetBSD 9 as a dom0 cannot safely run SMP (due to inadequate locking). NetBSD 10 supports SMP in dom0, and XEN3_DOM0 includes "options MULTIPROCESSOR". @@ -240,10 +239,11 @@ documentation. Read boot.cfg(8) carefully. Add lines to /boot.cfg to boot Xen, -adjusting for your root filesystem: +adjusting for your root filesystem (if you installed with GPT partitioning, +your root filesystem is likely to be /dev/dk0): [[!template id=filecontent name="/boot.cfg" text=""" -menu=Xen:load /netbsd-XEN3_DOM0.gz bootdev=wd0a rndseed=/var/db/entropy-file console=pc;multiboot /xen.gz dom0_mem=1024M +menu=Xen:load /netbsd-XEN3_DOM0.gz rndseed=/var/db/entropy-file bootdev=wd0a console=pc;multiboot /xen.gz dom0_mem=1024M menu=Xen single user:load /netbsd-XEN3_DOM0.gz rndseed=/var/db/entropy-file bootdev=wd0a console=pc -s;multiboot /xen.gz dom0_mem=1024M """]] @@ -318,7 +318,7 @@ modified GENERIC. GENERIC with DOM0OPS and the extra dom0-side PV drivers should work -fine on bare metal and if not it's a bug -- but so far we have no +fine on bare metal and, if not, it's a bug -- but so far we have no reports either way. In the glorious future, it will be normal to run a dom0 as PVH (because it's faster), and to run a domU as PVH or PVHVM (because it's faster), and thus: - DOM00PS and xenevt, xvif, and @@ -347,7 +347,7 @@ loading Xen and the dom0, before Xen starts, and for GENERIC), one must also configure it for Xen (if non-default behavior is desired). -See the console= xen command line option in xen-command-line(7), which +See the console= xen command line option in [xen-command-line(7)](https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html#console), which says it defaults to "com1,vga". This means that Xen will use both the VGA device and the first serial port (which it calls "com1"; NetBSD calls it "com0") as the console, sending output to both @@ -360,7 +360,7 @@ default) three times in quick succession, it will take over serial I/O until three more presses. Xen console interactions can be used for various debugging features which are not usually present in the -default /xen kernel. +default /xen kernel (the xenkernel package also includes a xen-debug kernel). When Xen uses vga as a console, the vga console is relinquished at the conclusion of hypervisor boot, before the dom0 is started. See also @@ -377,6 +377,17 @@ get into DDB, which differs from non-Xen amd64.) \todo Xen's vga console is probably output only, but this needs clarifying. +The default serial console speed may depend on whether the whether the +bootloader or earlier firmware has already set it up. To be certain, +the desired speed can be specified with the com1= boot command. For example, +the following configures use of serial console with the speed explicitly +set to 115200 +[[!template id=filecontent name="/boot.cfg" text=""" +menu=Xen:load /netbsd-XEN3_DOM0.gz rndseed=/var/db/entropy-file bootdev=sd0; multiboot /xen.gz dom0_mem=1024M console=com1 com1=115200,8n1 +"""]] + +is 115200, it is + ### Selecting the console for NetBSD dom0 Note that com0 is never available to a NetBSD dom0; it is instead @@ -391,7 +402,9 @@ because Xen will have relinquished the vga console. NetBSD will connect its console(4) device to xencons(4) and console I/O will happen there, and thus on the console Xen is using. To use the -default xencons(4) for NetBSD and force Xen to serial only: +default xencons(4) for NetBSD and force Xen to serial only use the following. +To be explicit, console=pc has been removed from the NetBSD part of the boot +command compared to the examples in the Configuring booting section above. [[!template id=filecontent name="/boot.cfg" text=""" menu=Xen:load /netbsd-XEN3_DOM0.gz rndseed=/var/db/entropy-file bootdev=sd0; multiboot /xen.gz dom0_mem=1024M console=com1 @@ -418,7 +431,8 @@ ### Xen Options Related to NetBSD Versions -See xen-command-line.html(7), but other than dom0 memory and +See [xen-command-line.html(7)](https://xenbits.xen.org/docs/unstable/misc/xen-command-line.html), +but other than dom0 memory and max_vcpus, tuning options are not generally necessary. When the dom0 kernel is NetBSD 9 before 2021-04-17 (9.3 is ok), Xen @@ -508,7 +522,8 @@ Domain-0 0 64 0 r---- 58.1 """]] -Xen logs will be in /var/log/xen. +Xen logs will be in /var/log/xen. If the xl commands hang, you have +probably forgotten to run the xencommons rc.d script. ### Issues with xencommons @@ -532,7 +547,12 @@ of the #defines change, so there are separate sets of modules in /stand. (Further, zfs in Xen is troubled because of differing MAXPHYS; see the zfs howto for more.) In NetBSD 10 and later, there -is only one set of modules. +is only one set of modules. However, it is still important that the +kernel build options match between the modules and XEN3_DOMU/XEN3_DOM0 kernels. +For example, until March 2025, the XEN3_DOMU kernel in NetBSD 10 was +built without KDTRACE_HOOKS, but the modules were built with it. +This meant that a XEN3_DOMU kernel could not load the solaris module +and hence could not load zfs. The other difference is that XEN3_DOM0 does not have exactly the same options as GENERIC. While this is roughly agreed to be in large part
Add warning about difficult to aquire hardware
Index: wikisrc/projects/project/Convert_a_Wi-Fi_driver_to_the_new_Wi-Fi_stack.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/Convert_a_Wi-Fi_driver_to_the_new_Wi-Fi_stack.mdwn,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- wikisrc/projects/project/Convert_a_Wi-Fi_driver_to_the_new_Wi-Fi_stack.mdwn 23 Mar 2025 10:49:51 -0000 1.4 +++ wikisrc/projects/project/Convert_a_Wi-Fi_driver_to_the_new_Wi-Fi_stack.mdwn 23 Mar 2025 10:56:12 -0000 1.5 @@ -21,8 +21,9 @@ Successful completion of this project requires you to have access to hardware that is already supported by NetBSD but not yet converted. See the -[[/wifi_driver_state_matrix]] for a list of devices to convert. Many older devices -can be found cheap on sites like eBay. +[[wifi_driver_state_matrix]] for a list of devices to convert. + +It is increasingly difficult to find the relevant hardware on sites like ebay, if you do not have one of the affected devices, this project is probably not for you. When applying for this project, please note which driver(s) you want to convert.
Fix wiki link to driver state matrix
Index: wikisrc/projects/project/Convert_a_Wi-Fi_driver_to_the_new_Wi-Fi_stack.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/Convert_a_Wi-Fi_driver_to_the_new_Wi-Fi_stack.mdwn,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- wikisrc/projects/project/Convert_a_Wi-Fi_driver_to_the_new_Wi-Fi_stack.mdwn 1 Mar 2022 10:38:49 -0000 1.3 +++ wikisrc/projects/project/Convert_a_Wi-Fi_driver_to_the_new_Wi-Fi_stack.mdwn 23 Mar 2025 10:49:51 -0000 1.4 @@ -21,7 +21,7 @@ Successful completion of this project requires you to have access to hardware that is already supported by NetBSD but not yet converted. See the -[[Driver state matrix]] for a list of devices to convert. Many older devices +[[/wifi_driver_state_matrix]] for a list of devices to convert. Many older devices can be found cheap on sites like eBay. When applying for this project, please note which driver(s) you want to
Index: wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn =================================================================== RCS file: /cvsroot/wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 21 Mar 2025 01:14:56 -0000 1.7 +++ wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 22 Mar 2025 02:05:23 -0000 1.8 @@ -3,6 +3,8 @@ ## AsiaBSDCon-Lite in Tokyo +## [[https://hackmd.io/@AsiaBSDCon/2025lite]] + ä»å¹´ã¯è«¸è¬ã®äºæ ã§ AsiaBSDCon ã®éå¬ãã§ããªãã£ãã®ã§ãããéå¬ãããã¨æã£ã¦æµ·å¤ããæ¥æ¬ã«æ¥ã¦ãã¾ã£ã人ãä½äººããã¾ãã®ã§ãææ¥ 3/22ï¼åï¼ã«ã¤ãã³ããéå¬ãããã¨ã«ãã¾ãããã¨ã¦ãã®ãªã®ãªã®ãé£çµ¡ã§ããã人æ°ãå°ãªãã¨å¯ããã®ã§ããåå ããã ããã¨å©ããã¾ãã
Remove from the GSoC list.
Index: wikisrc/projects/project/project__47__efficient-package-distribution.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/project__47__efficient-package-distribution.mdwn,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- wikisrc/projects/project/project__47__efficient-package-distribution.mdwn 15 Jan 2025 19:20:22 -0000 1.1 +++ wikisrc/projects/project/project__47__efficient-package-distribution.mdwn 21 Mar 2025 07:16:07 -0000 1.2 @@ -29,7 +29,5 @@ ]] [[!tag status:active]] -[[!tag gsoc]] -[[!tag gsoc350h]]
nit format
Index: wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn =================================================================== RCS file: /cvsroot/wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 21 Mar 2025 01:05:23 -0000 1.6 +++ wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 21 Mar 2025 01:14:56 -0000 1.7 @@ -11,10 +11,11 @@ æéï¼3æ22æ¥ 10:00-17:00ï¼ãã®å¾æè¦ªä¼ï¼ åå è²»ã¯ç¡æã§ãããæ¼é£ã»æè¦ªä¼ã«åå ã®å ´åã¯10,000åãç¾å°å¾´åãã¾ã -ä¼å ´ï¼æ±äº¬ç§å¦å¤§å¦ 大岡山ãã£ã³ãã¹ - https://www.isct.ac.jp/ja/001/about/campuses-and-offices/ookayama - 大岡山西å°åº 西9å·é¤¨ï¼çªå·22ï¼ - æå¯ãé§ ï¼æ±æ¥å¤§äºçºç·å¤§å²¡å±±é§ +ä¼å ´ï¼"æ±äº¬ç§å¦å¤§å¦ 大岡山ãã£ã³ãã¹" + +- https://www.isct.ac.jp/ja/001/about/campuses-and-offices/ookayama +- "大岡山西å°åº 西9å·é¤¨ï¼çªå·22ï¼" +- "æå¯ãé§ ï¼æ±æ¥å¤§äºçºç·å¤§å²¡å±±é§ " ä¸è©±äººï¼ä½è¤åºçï¼æ±äº¬ç§å¦å¤§å¦ï¼
AsiaBSDCon-Lite in Tokyo
Index: wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn =================================================================== RCS file: /cvsroot/wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 12 Mar 2025 01:18:54 -0000 1.5 +++ wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 21 Mar 2025 01:05:23 -0000 1.6 @@ -1,13 +1,31 @@ <!-- we are supposed to use all lowercase letters in the link, so set a proper title for the page: --> [[!meta title="AsiaBSDCon 2025 NetBSD BoF"]] +## AsiaBSDCon-Lite in Tokyo + +ä»å¹´ã¯è«¸è¬ã®äºæ ã§ AsiaBSDCon ã®éå¬ãã§ããªãã£ãã®ã§ãããéå¬ãããã¨æã£ã¦æµ·å¤ããæ¥æ¬ã«æ¥ã¦ãã¾ã£ã人ãä½äººããã¾ãã®ã§ãææ¥ +3/22ï¼åï¼ã«ã¤ãã³ããéå¬ãããã¨ã«ãã¾ãããã¨ã¦ãã®ãªã®ãªã®ãé£çµ¡ã§ããã人æ°ãå°ãªãã¨å¯ããã®ã§ããåå ããã ããã¨å©ããã¾ãã + +å ´æã ã確ä¿ãã¦ãããä¸èº«ã¯æ±ºã¾ã£ã¦ãã¾ããããã*BSDé¢é£ã®çºè¡¨ãã§ãã人ãããã°ã彿¥é£ã³è¾¼ã¿ã»æ¥æ¬èªã»è±èªåããæè¿ã§ããè±è¦ã«ã¯ã¡ãã£ã¨æ©ãã§ãããçµãã£ãå¾ã¯è¿ãã®å± é å±ã§æè¦ªä¼ãè¡ãäºå®ã§ãã + +æéï¼3æ22æ¥ 10:00-17:00ï¼ãã®å¾æè¦ªä¼ï¼ + åå è²»ã¯ç¡æã§ãããæ¼é£ã»æè¦ªä¼ã«åå ã®å ´åã¯10,000åãç¾å°å¾´åãã¾ã + +ä¼å ´ï¼æ±äº¬ç§å¦å¤§å¦ 大岡山ãã£ã³ãã¹ + https://www.isct.ac.jp/ja/001/about/campuses-and-offices/ookayama + 大岡山西å°åº 西9å·é¤¨ï¼çªå·22ï¼ + æå¯ãé§ ï¼æ±æ¥å¤§äºçºç·å¤§å²¡å±±é§ + +ä¸è©±äººï¼ä½è¤åºçï¼æ±äº¬ç§å¦å¤§å¦ï¼ + +åãåããï¼hrs@ict.eng.isct.ac.jp + ## Details * Make meetup instead of AsiaBSDCon 2025 canceled. * [announce on netbsd-advocacy][[]] * All BSD speakers are welcome * Day & time: - * 2025/3/21ï¼Friï¼13:00-17:00ï¼ï¼Dinnerï¼ * 2025/3/22ï¼Satï¼10:00-17:00ï¼ï¼Dinnerï¼ * Venue @@ -25,7 +43,7 @@ Jun Ebihara | `jun@` | | | Tamotsu Kanoh | | | | Christian Horn | | | | -Makoto Fujiwara | `mef@`| | | +Makoto Fujiwara | `mef@`|? |? | """]] ## Planning to NetBSD related present something?
update the lints for the RPi 1 and 2-3 standard images to netbsd-10
Index: wikisrc/ports/evbarm/raspberry_pi.mdwn =================================================================== RCS file: /cvsroot/wikisrc/ports/evbarm/raspberry_pi.mdwn,v retrieving revision 1.156 retrieving revision 1.157 diff -u -r1.156 -r1.157 --- wikisrc/ports/evbarm/raspberry_pi.mdwn 10 Oct 2024 11:06:18 -0000 1.156 +++ wikisrc/ports/evbarm/raspberry_pi.mdwn 16 Mar 2025 10:48:15 -0000 1.157 @@ -96,8 +96,8 @@ The simplest way is to download the appropriate SD card image from the NetBSD mirrors: -- The Raspberry Pi 1 requires the ARMv6 [rpi.img.gz](http://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-9/latest/evbarm-earmv6hf/binary/gzimg/rpi.img.gz). -- The Raspberry Pi 2-3 can use the standard ARMv7 [armv7.img.gz](https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-9/latest/evbarm-earmv7hf/binary/gzimg/armv7.img.gz) image. +- The Raspberry Pi 1 requires the ARMv6 [rpi.img.gz](http://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-10/latest/evbarm-earmv6hf/binary/gzimg/rpi.img.gz). +- The Raspberry Pi 2-3 can use the standard ARMv7 [armv7.img.gz](https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-10/latest/evbarm-earmv7hf/binary/gzimg/armv7.img.gz) image. - The Raspberry Pi 2-1.2 and 3 can also use [arm64.img.gz](https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-10/latest/evbarm-aarch64/binary/gzimg/arm64.img.gz). - The Raspberry Pi 4 uses [arm64.img.gz](https://nycdn.netbsd.org/pub/NetBSD-daily/netbsd-10/latest/evbarm-aarch64/binary/gzimg/arm64.img.gz).
acutally clean the work dirs of the dependencies too
Index: wikisrc/wiki/previewing_with_template.mdwn =================================================================== RCS file: /cvsroot/wikisrc/wiki/previewing_with_template.mdwn,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- wikisrc/wiki/previewing_with_template.mdwn 4 May 2019 10:44:10 -0000 1.7 +++ wikisrc/wiki/previewing_with_template.mdwn 14 Mar 2025 09:24:00 -0000 1.8 @@ -14,7 +14,7 @@ # Installing ikiwiki engine $ cd /usr/pkgsrc/www/ikiwiki - $ make install clean + $ make install clean-depends # Setting up ikiwiki with cgi mode
Update my page.
Index: wikisrc/users/schmonz.mdwn =================================================================== RCS file: /cvsroot/wikisrc/users/schmonz.mdwn,v retrieving revision 1.46 retrieving revision 1.47 diff -u -r1.46 -r1.47 --- wikisrc/users/schmonz.mdwn 23 Mar 2024 17:38:18 -0000 1.46 +++ wikisrc/users/schmonz.mdwn 14 Mar 2025 00:32:24 -0000 1.47 @@ -13,7 +13,9 @@ Start with my [overview of qmail patches and packages](https://schmonz.com/software/), particularly -[qmail-run](https://schmonz.com/software/pkgsrc-qmail-run/). +[qmail-run](https://schmonz.com/software/pkgsrc-qmail-run/), +which is now built atop +[notqmail](https://notqmail.org). ## schmonz.com blog posts
use a title meta tag
Index: wikisrc/users/bad.mdwn =================================================================== RCS file: /cvsroot/wikisrc/users/bad.mdwn,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- wikisrc/users/bad.mdwn 13 Mar 2025 23:33:46 -0000 1.1 +++ wikisrc/users/bad.mdwn 13 Mar 2025 23:53:47 -0000 1.2 @@ -1 +1 @@ -# Christoph Badura (bad) +[[!meta title="Christoph Badura (bad)"]]
add a users page for me
--- /dev/null 2025-07-29 17:43:02.530750491 +0000 +++ wikisrc/users/bad.mdwn 2025-07-29 17:47:43.138249879 +0000 @@ -0,0 +1 @@ +# Christoph Badura (bad)
mark as no longer eligible for gsoc
Index: wikisrc/projects/project/kernel_setroot_tests.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/kernel_setroot_tests.mdwn,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- wikisrc/projects/project/kernel_setroot_tests.mdwn 13 Mar 2025 11:15:20 -0000 1.5 +++ wikisrc/projects/project/kernel_setroot_tests.mdwn 13 Mar 2025 11:20:27 -0000 1.6 @@ -73,5 +73,4 @@ """ ]] -[[!tag gsoc]] [[!tag gsoc350h]]
update project description and status
Index: wikisrc/projects/project/kernel_setroot_tests.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/kernel_setroot_tests.mdwn,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- wikisrc/projects/project/kernel_setroot_tests.mdwn 11 Mar 2025 20:57:29 -0000 1.4 +++ wikisrc/projects/project/kernel_setroot_tests.mdwn 13 Mar 2025 11:15:20 -0000 1.5 @@ -15,6 +15,8 @@ duration="350h" description=""" +# Description + NetBSD has an extensive test suite that tests native kernel and userland code. @@ -51,6 +53,23 @@ documented use cases. The project would initially be focussed on x86 (amd64 and i386). + +To a certain extent this is a research project. +The existing rump-based kernel tests use rump components and factions that +are encapsulte kernel functionality with clear boundaries. +This project deals with code in the kernel that can't easily be separated +into an independent module. + +# Project Status + +This project was worked on Diviyam Pathak for Google Summer of Code 2024. +We ran into bugs in other areas, particularly in using vnd(4) in a +rumpkernel that we couldn't resolve in time for the project to make use of +it. +Therefore Diviyam had to resort to stubbing and mocking of functions. +Diviyam's work can be found in his [Github +repository](https://github.com/DiviyamPathak/Gsoc-2024-NetBSD) documenting +his project. """ ]]
Remove GSOC tag.
Index: wikisrc/projects/project/build-system-rework.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/build-system-rework.mdwn,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- wikisrc/projects/project/build-system-rework.mdwn 20 Jan 2025 16:49:34 -0000 1.1 +++ wikisrc/projects/project/build-system-rework.mdwn 12 Mar 2025 16:33:59 -0000 1.2 @@ -27,5 +27,3 @@ - Manual conversion of Makefiles to Starlark syntax (perhaps out of scope for GSoc). """ ]] - -[[!tag gsoc]]
Index: wikisrc/projects/project/userspace-emulation-for-fun-and-profit.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/userspace-emulation-for-fun-and-profit.mdwn,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- wikisrc/projects/project/userspace-emulation-for-fun-and-profit.mdwn 15 Jan 2025 19:20:22 -0000 1.1 +++ wikisrc/projects/project/userspace-emulation-for-fun-and-profit.mdwn 12 Mar 2025 16:31:25 -0000 1.2 @@ -35,5 +35,3 @@ """ ]] -[[!tag gsoc]] -
delete JNUG financial report
Index: wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn =================================================================== RCS file: /cvsroot/wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 11 Mar 2025 12:44:37 -0000 1.4 +++ wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 12 Mar 2025 01:18:54 -0000 1.5 @@ -33,7 +33,6 @@ [[!table data=""" Speaker |Title `login@` |_Very Interesting Thing_ -Tamotsu Kanoh | The financial report of Japan NetBSD Users' Group Christian Horn | Tales (regarding performance and efficiency) from emulating various virtual guests with QEMU and running NetBSD inside Jun Ebihara | Open Source Conference 2025 NetBSD Booth """]]
add descriptions for the gsoc project size tags
Index: wikisrc/templates/project.mdwn =================================================================== RCS file: /cvsroot/wikisrc/templates/project.mdwn,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- wikisrc/templates/project.mdwn 23 Mar 2024 18:42:05 -0000 1.8 +++ wikisrc/templates/project.mdwn 11 Mar 2025 21:54:22 -0000 1.9 @@ -57,3 +57,9 @@ - *gsoc*: Use this tag to denote a project suitable for the Google Summer of Code program. If you set this tag, the project must provide a set of mentors and its duration has to be 3 months. +- *gsoc90h*: Use this tag in addition to the *gsoc* tag to mark this as a + small size project that should take about 90 hours complete. +- *gsoc175h*: Use this tag in addition to the *gsoc* tag to mark this as a + medium size project that should take about 175 hours complete. +- *gsoc350h*: Use this tag in addition to the *gsoc* tag to mark this as a + large project that should take about 350 hours complete.
whitespace police
Index: wikisrc/projects/project/kernel_setroot_tests.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/kernel_setroot_tests.mdwn,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- wikisrc/projects/project/kernel_setroot_tests.mdwn 1 Mar 2022 10:38:49 -0000 1.3 +++ wikisrc/projects/project/kernel_setroot_tests.mdwn 11 Mar 2025 20:57:29 -0000 1.4 @@ -15,7 +15,6 @@ duration="350h" description=""" - NetBSD has an extensive test suite that tests native kernel and userland code. @@ -27,8 +26,8 @@ How to find the root file system is specfied in the kernel configuration file. E.g.: - config netbsd root on ? type ? - config netbsd root on sd0a type ? + config netbsd root on ? type ? + config netbsd root on sd0a type ? The first is a wildcard specification which causes the kernel to look for the root file system on the device that the kernel was booted from.
(AsiaBSDCon_2025_NetBSD_BoF) + mef@ for attend
Index: wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn =================================================================== RCS file: /cvsroot/wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 10 Mar 2025 23:55:41 -0000 1.3 +++ wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 11 Mar 2025 12:44:37 -0000 1.4 @@ -25,6 +25,7 @@ Jun Ebihara | `jun@` | | | Tamotsu Kanoh | | | | Christian Horn | | | | +Makoto Fujiwara | `mef@`| | | """]] ## Planning to NetBSD related present something?
Index: wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn =================================================================== RCS file: /cvsroot/wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 10 Mar 2025 22:51:09 -0000 1.2 +++ wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 10 Mar 2025 23:55:41 -0000 1.3 @@ -3,21 +3,22 @@ ## Details -* Make NetBSD BoF instead of AsiaBSDCon 2025 canceled, +* Make meetup instead of AsiaBSDCon 2025 canceled. * [announce on netbsd-advocacy][[]] * All BSD speakers are welcome -* Day & time: 2025/3/22 (Saturday) Not Fixed,Request welcome. - * 11:00-18:00(JST) - * 02:00-09:00(UTC) -* Venue Not Fixed,Request welcome. - * Morito Hall - * u-tokyo? +* Day & time: + * 2025/3/21ï¼Friï¼13:00-17:00ï¼ï¼Dinnerï¼ + * 2025/3/22ï¼Satï¼10:00-17:00ï¼ï¼Dinnerï¼ + +* Venue + * Institute of Science Tokyo, West Bldg.9 COLLABORATION ROOM + * OOkayama campus [[https://www.isct.ac.jp/en/001/access]] -### NetBSD Dinner +### Dinner more description -## Planning to attend? +## Planning to NetBSD related attend? [[!table data=""" First Last | `login@` | join dinner? | comment(s) @@ -26,7 +27,7 @@ Christian Horn | | | | """]] -## Planning to present something? +## Planning to NetBSD related present something? [[!table data=""" Speaker |Title
add Tamotsu Kanoh and Christian Horn
Index: wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn =================================================================== RCS file: /cvsroot/wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 10 Mar 2025 18:05:43 -0000 1.1 +++ wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 10 Mar 2025 22:51:09 -0000 1.2 @@ -22,6 +22,8 @@ [[!table data=""" First Last | `login@` | join dinner? | comment(s) Jun Ebihara | `jun@` | | | +Tamotsu Kanoh | | | | +Christian Horn | | | | """]] ## Planning to present something? @@ -29,7 +31,9 @@ [[!table data=""" Speaker |Title `login@` |_Very Interesting Thing_ -Jun Ebihara | Open Source Conference 2025 NetBSD Booth. +Tamotsu Kanoh | The financial report of Japan NetBSD Users' Group +Christian Horn | Tales (regarding performance and efficiency) from emulating various virtual guests with QEMU and running NetBSD inside +Jun Ebihara | Open Source Conference 2025 NetBSD Booth """]] ## Discussions
--- /dev/null 2025-07-29 17:43:02.530750491 +0000 +++ wikisrc/summits/AsiaBSDCon_2025_NetBSD_BoF.mdwn 2025-07-29 17:47:47.443537209 +0000 @@ -0,0 +1,37 @@ +<!-- we are supposed to use all lowercase letters in the link, so set a proper title for the page: --> +[[!meta title="AsiaBSDCon 2025 NetBSD BoF"]] + +## Details + +* Make NetBSD BoF instead of AsiaBSDCon 2025 canceled, +* [announce on netbsd-advocacy][[]] +* All BSD speakers are welcome +* Day & time: 2025/3/22 (Saturday) Not Fixed,Request welcome. + * 11:00-18:00(JST) + * 02:00-09:00(UTC) +* Venue Not Fixed,Request welcome. + * Morito Hall + * u-tokyo? + +### NetBSD Dinner + +more description + +## Planning to attend? + +[[!table data=""" +First Last | `login@` | join dinner? | comment(s) +Jun Ebihara | `jun@` | | | +"""]] + +## Planning to present something? + +[[!table data=""" +Speaker |Title +`login@` |_Very Interesting Thing_ +Jun Ebihara | Open Source Conference 2025 NetBSD Booth. +"""]] + +## Discussions + +## Varia
add Nagoya-Shimae-Hokkaido-Osaka
Index: wikisrc/users/jun.mdwn =================================================================== RCS file: /cvsroot/wikisrc/users/jun.mdwn,v retrieving revision 1.147 retrieving revision 1.148 diff -u -r1.147 -r1.148 --- wikisrc/users/jun.mdwn 20 Feb 2025 05:39:30 -0000 1.147 +++ wikisrc/users/jun.mdwn 4 Mar 2025 01:47:34 -0000 1.148 @@ -8,6 +8,38 @@ #2025 +## Open Source Conference 2025 Nagoya NetBSD Booth & NBUG BoF +- 2025 May.31 Sat 10:00-18:00 JST (UTC+9) +- Nagoya Trade & Industry Center [[https://www.nipc.or.jp/fukiage/sub/visitor-access.html#around]] +- with [[http://nagoya.bug.gr.jp/]] +- [[https://event.ospn.jp/osc2025-nagoya/]] +- Tour Guide [[]] +- togetter [[]] + +## Open Source Conference 2025 Shimane NetBSD Booth +- Booth: 2025 Jun.21 Sat 10:00-17:00 JST (UTC+9) +- [[https://event.ospn.jp/osc2025-shimane/]] +- Tour Guide [[]] +- togetter [[]] + +## Open Source Conference 2025 Hokkaido NetBSD Booth and NetBSD BoF +- 2025 Jul.5 Sat 10:00-18:00 JST (UTC+9) +- Sapporo Business Innovation Center [[https://www.sapporosansin.jp/access/]] +- with [[https://www.no.bug.gr.jp/]] +- [[https://event.ospn.jp/osc2025-do/]] +- Tour Guide [[]] +- togetter [[]] + +## Kansai Open Forum 2025 +- 2025 Nov.7-8 Sat 10:00-18:00 JST (UTC+9) +- [[https://www.k-of.jp/]] +- ATC (Asia and Pacific Trade Center) +- Nankou-kita 2-1-10, Suminoe Area, Osaka Japan. +- Tour Guide [[]] +- togetter [[]] + +# Past in 2025 + ## Open Source Conference 2025 Tokyo/Spring NetBSD Booth & BoF - Booth: 2025 Feb.21-22 Fri-Sat 10:00-16:00 JST (UTC+9) - BoF: 2025 Feb.21 16:15-17:00 JST (UTC+9) [[https://event.ospn.jp/osc2025-spring/session/1962010]] @@ -16,8 +48,6 @@ - Tour Guide [[https://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2025tokyospring.pdf]] - togetter [[https://posfie.com/@ebijun/p/AeMxGBR]] -# Past in 2025 - ## Open Source Conference 2025 Osaka NetBSD Booth & BoF - Booth: 2024 Jan.25 Sat 10:00-16:00 JST (UTC+9) - BoF: 2024 Jan.25 Sat 10:00-10:45 JST (UTC+9) @@ -26,7 +56,6 @@ - Tour Guide [[https://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2025osaka.pdf]] - togetter [[https://togetter.com/li/2496475]] - # Monthly ## Nagoya *BSD Users' Group monthly meeting
Index: wikisrc/reproducable_builds.mdwn =================================================================== RCS file: /cvsroot/wikisrc/reproducable_builds.mdwn,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- wikisrc/reproducable_builds.mdwn 22 Nov 2019 14:34:04 -0000 1.2 +++ wikisrc/reproducable_builds.mdwn 20 Feb 2025 19:25:56 -0000 1.3 @@ -1,16 +1,16 @@ -[[!meta title="Reproducable Builds"]] +[[!meta title="Reproducible Builds"]] -# What is a Reproducable Build? +# What is a Reproducible Build? There are various definitions, but we will use common sense here: if I install a NetBSD release on a machine and come back to it in a year (or 10), it should be possible to create all of the installation again, 100% bitwise identical. -# Why are Reproducable Builds a good thing? +# Why are Reproducible Builds a good thing? There are various advantages, one of them is the possibility to create binary patches later (after changing small things in the source, e.g. for security fixes). They are also useful if you do not trust the official builds, or are doing local builds and want to compare parts supposed to be identical. # The Source -First prerequisite for reproducing a build is to get the same source. With cvs (as we use it now) this either happens via using a relase tag or a date for a checkout. Assuming you do a clean new checkout, examples would be: +First prerequisite for reproducing a build is to get the same source. With cvs (as we use it now) this either happens via using a release tag or a date for a checkout. Assuming you do a clean new checkout, examples would be: cvs -d anoncvs@anoncvs.NetBSD.org:/cvsroot co -r netbsd-8-1-RELEASE src xsrc
Unlist GSoC projects with inactive mentor
Delete the gsoc tag to all the projects that has a mentor but the mentor is
currently an inactive NetBSD developer.
We can readd the GSoC tag once they will be active again and/or if
anyone is interested in mentoring these projects please assign yourself
too and re-add the gsoc tag!
XXX: No idea if the gsoc*h tag should be removed too, I have currently
XXX: preserved it.
Delete the gsoc tag to all the projects that has a mentor but the mentor is
currently an inactive NetBSD developer.
We can readd the GSoC tag once they will be active again and/or if
anyone is interested in mentoring these projects please assign yourself
too and re-add the gsoc tag!
XXX: No idea if the gsoc*h tag should be removed too, I have currently
XXX: preserved it.
We can readd the GSoC tag once they will be active again and/or if anyone is interested in mentoring these projects please assign yourself too and re-add the gsoc tag! XXX: No idea if the gsoc*h tag should be removed too, I have currently XXX: preserved it. Members: projects/project/libfuzzer.mdwn:1.3->1.4 projects/project/pkgsrc-sanitizers.mdwn:1.5->1.6 projects/project/scudo.mdwn:1.3->1.4 projects/project/sso.mdwn:1.3->1.4 projects/project/syzkaller.mdwn:1.4->1.5 Index: wikisrc/projects/project/libfuzzer.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/libfuzzer.mdwn,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- wikisrc/projects/project/libfuzzer.mdwn 1 Mar 2022 10:38:49 -0000 1.3 +++ wikisrc/projects/project/libfuzzer.mdwn 20 Feb 2025 11:28:36 -0000 1.4 @@ -28,5 +28,4 @@ """ ]] -[[!tag gsoc]] [[!tag gsoc350h]] Index: wikisrc/projects/project/pkgsrc-sanitizers.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/pkgsrc-sanitizers.mdwn,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- wikisrc/projects/project/pkgsrc-sanitizers.mdwn 1 Mar 2022 10:38:49 -0000 1.5 +++ wikisrc/projects/project/pkgsrc-sanitizers.mdwn 20 Feb 2025 11:28:36 -0000 1.6 @@ -37,5 +37,4 @@ """ ]] -[[!tag gsoc]] [[!tag gsoc350h]] Index: wikisrc/projects/project/scudo.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/scudo.mdwn,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- wikisrc/projects/project/scudo.mdwn 1 Mar 2022 10:38:49 -0000 1.3 +++ wikisrc/projects/project/scudo.mdwn 20 Feb 2025 11:28:36 -0000 1.4 @@ -29,5 +29,4 @@ """ ]] -[[!tag gsoc]] [[!tag gsoc350h]] Index: wikisrc/projects/project/sso.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/sso.mdwn,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- wikisrc/projects/project/sso.mdwn 1 Mar 2022 10:38:49 -0000 1.3 +++ wikisrc/projects/project/sso.mdwn 20 Feb 2025 11:28:36 -0000 1.4 @@ -45,5 +45,4 @@ """ ]] -[[!tag gsoc]] [[!tag gsoc350h]] Index: wikisrc/projects/project/syzkaller.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/syzkaller.mdwn,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- wikisrc/projects/project/syzkaller.mdwn 1 Mar 2022 10:38:49 -0000 1.4 +++ wikisrc/projects/project/syzkaller.mdwn 20 Feb 2025 11:28:36 -0000 1.5 @@ -28,5 +28,4 @@ """ ]] -[[!tag gsoc]] [[!tag gsoc350h]]
2025 Feb.21-22 Open Source Conference 2025 Tokyo/Spring NetBSD Booth & BoF
Index: wikisrc/users/jun.mdwn =================================================================== RCS file: /cvsroot/wikisrc/users/jun.mdwn,v retrieving revision 1.146 retrieving revision 1.147 diff -u -r1.146 -r1.147 --- wikisrc/users/jun.mdwn 23 Jan 2025 21:06:01 -0000 1.146 +++ wikisrc/users/jun.mdwn 20 Feb 2025 05:39:30 -0000 1.147 @@ -7,17 +7,25 @@ 2001-2002-2003-2004-2005-2006-2007-2008-2009 #2025 + +## Open Source Conference 2025 Tokyo/Spring NetBSD Booth & BoF +- Booth: 2025 Feb.21-22 Fri-Sat 10:00-16:00 JST (UTC+9) +- BoF: 2025 Feb.21 16:15-17:00 JST (UTC+9) [[https://event.ospn.jp/osc2025-spring/session/1962010]] +- KOMAZAWA UNIVERSITY SHUGETSUKAN [[https://www.komazawa-u.ac.jp/english/access/]] +- [[https://event.ospn.jp/osc2025-spring/]] +- Tour Guide [[https://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2025tokyospring.pdf]] +- togetter [[https://posfie.com/@ebijun/p/AeMxGBR]] + +# Past in 2025 + ## Open Source Conference 2025 Osaka NetBSD Booth & BoF - Booth: 2024 Jan.25 Sat 10:00-16:00 JST (UTC+9) - BoF: 2024 Jan.25 Sat 10:00-10:45 JST (UTC+9) - Osaka Sangyo Sozoukan [[https://www.sansokan.jp/map/]] - [[https://event.ospn.jp/osc2025-osaka/]] -- Tour Guide [https://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2025osaka.pdf[]] +- Tour Guide [[https://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2025osaka.pdf]] - togetter [[https://togetter.com/li/2496475]] -## Open Source Conference 2024 Tokyo/Spring NetBSD Booth & BoF -- Booth: 2024 Feb.21-22 Fri-Sat 10:00-16:00 JST (UTC+9) -- [[https://event.ospn.jp/osc2025-spring/]] # Monthly
Open Source Conference 2025 Osaka NetBSD Booth setting start at 9:00 am
Index: wikisrc/users/jun.mdwn =================================================================== RCS file: /cvsroot/wikisrc/users/jun.mdwn,v retrieving revision 1.145 retrieving revision 1.146 diff -u -r1.145 -r1.146 --- wikisrc/users/jun.mdwn 15 Jan 2025 19:42:20 -0000 1.145 +++ wikisrc/users/jun.mdwn 23 Jan 2025 21:06:01 -0000 1.146 @@ -12,8 +12,8 @@ - BoF: 2024 Jan.25 Sat 10:00-10:45 JST (UTC+9) - Osaka Sangyo Sozoukan [[https://www.sansokan.jp/map/]] - [[https://event.ospn.jp/osc2025-osaka/]] -- Tour Guide [[]] -- togetter [[]] +- Tour Guide [https://cdn.netbsd.org/pub/NetBSD/misc/jun/OSC/OSC2025osaka.pdf[]] +- togetter [[https://togetter.com/li/2496475]] ## Open Source Conference 2024 Tokyo/Spring NetBSD Booth & BoF - Booth: 2024 Feb.21-22 Fri-Sat 10:00-16:00 JST (UTC+9)
Mark project as done
Requested by <rjs> and this was done in GSoC 2022.
Requested by <rjs> and this was done in GSoC 2022.
Members: projects/project/vc4.mdwn:1.4->1.5 Index: wikisrc/projects/project/vc4.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/vc4.mdwn,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- wikisrc/projects/project/vc4.mdwn 1 Mar 2022 10:38:50 -0000 1.4 +++ wikisrc/projects/project/vc4.mdwn 22 Jan 2025 16:07:32 -0000 1.5 @@ -13,6 +13,7 @@ category="kernel" difficulty="medium" duration="350h" +done_by="bschnepp, Robert Swindells" description=""" [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi) is a very popular ARM board.
make it a gsoc project
Index: wikisrc/projects/project/npf_user_group_filtering.mdwn =================================================================== RCS file: /cvsroot/wikisrc/projects/project/npf_user_group_filtering.mdwn,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- wikisrc/projects/project/npf_user_group_filtering.mdwn 22 Jan 2025 14:35:50 -0000 1.1 +++ wikisrc/projects/project/npf_user_group_filtering.mdwn 22 Jan 2025 14:46:54 -0000 1.2 @@ -3,13 +3,16 @@ title="NPF user/group filtering" contact=""" -[tech-kern](mailto:tech-kern@NetBSD.org) [tech-net](mailto:tech-net@NetBSD.org) -[christos](mailto:christos@NetBSD.org) """ -category="networking" +mentors=""" +[Christos Zoulas](mailto:christos@NetBSD.org) +""" + +category="kernel" difficulty="hard" +duration="350h" description=""" Add the ability to filter packets by user or group that owns the socket sending @@ -20,3 +23,6 @@ options and allow/drop packets. """ ]] + +[[!tag gsoc]] +[[!tag gsoc350h]]
new project
--- /dev/null 2025-07-29 17:43:02.530750491 +0000 +++ wikisrc/projects/project/npf_user_group_filtering.mdwn 2025-07-29 17:47:50.953764385 +0000 @@ -0,0 +1,22 @@ +[[!template id=project + +title="NPF user/group filtering" + +contact=""" +[tech-kern](mailto:tech-kern@NetBSD.org) +[tech-net](mailto:tech-net@NetBSD.org) +[christos](mailto:christos@NetBSD.org) +""" + +category="networking" +difficulty="hard" + +description=""" +Add the ability to filter packets by user or group that owns the socket sending +or receiving packets. This ability is available in other packet filters for +example [pf](https://man.openbsd.org/pf.conf). The project involves modifying +the parser to accept the syntax, passing the information to the kernel, and +modifying the kernel packet filter code to process the user/group filtering +options and allow/drop packets. +""" +]]
Add a project for the 'build system rework' GSoC project.
--- /dev/null 2025-07-29 17:43:02.530750491 +0000 +++ wikisrc/projects/project/build-system-rework.mdwn 2025-07-29 17:47:51.433511422 +0000 @@ -0,0 +1,31 @@ +[[!template id=project + +title="Hermetic builds for the base system" + +contact=""" +[jkoshy@NetBSD.org](mailto:jkoshy@NetBSD.org) +""" + +mentors=""" +[Joseph Koshy](mailto:jkoshy@NetBSD.org) +""" + +category="userland" +difficulty="hard" +duration="3 months" + +description=""" +Evolve the NetBSD build system to support minimal, hermetic, globally correct builds. + +For more information, please see: [Reworking the NetBSD⢠build system](https://jkoshy.net/projects/reworking-the-netbsd-build-system.html). + +Milestones: + +- [gsoc-1] The build dependency graph for Makefiles under `/usr/src` can be extracted to a suitable graph database. +- [gsoc-2] An executor that 'executes' the build graph is ready. +- A translator from [Starlark](https://bazel.build/rules/language) to the build graph is ready. +- Manual conversion of Makefiles to Starlark syntax (perhaps out of scope for GSoc). +""" +]] + +[[!tag gsoc]]