Page MenuHomeFreeBSD

igoro (Igor Ostapenko)
User

Projects

User Details

User Since
Mar 2 2023, 11:30 AM (103 w, 22 h)

Recent Activity

Tue, Feb 18

igoro updated the diff for D49039: kyua: Pass unprivileged user config prop to ATF using all known names.

Add the respective code comment

Tue, Feb 18, 11:22 PM
igoro added a comment to D49039: kyua: Pass unprivileged user config prop to ATF using all known names.

LGTM. Except that the commit message contains a typo: "uprivileged_user" => "unprivileged_user"

Tue, Feb 18, 11:21 PM

Mon, Feb 17

igoro added a comment to D49039: kyua: Pass unprivileged user config prop to ATF using all known names.

I guess it could be helpful for a couple of test cases from tests/sys/netinet/fibs_multibind_test.c and/or tests/sys/netinet/socket_afinet.c.

Mon, Feb 17, 11:25 PM
igoro added a reviewer for D49039: kyua: Pass unprivileged user config prop to ATF using all known names: tests.
Mon, Feb 17, 11:23 PM
igoro requested review of D49039: kyua: Pass unprivileged user config prop to ATF using all known names.
Mon, Feb 17, 11:16 PM

Thu, Feb 13

igoro added a comment to D48087: kyua: Add "prepare" command.

@ngie , it would be appreciated if you could find time to consider this. It seems that your opinion is necessary to move forward.

Thu, Feb 13, 11:46 PM

Sun, Feb 2

igoro committed rG6befd3511105: kyua: Support require.diskspace ATF metadata (authored by igoro).
kyua: Support require.diskspace ATF metadata
Sun, Feb 2, 7:54 PM
igoro closed D48333: kyua: Support require.diskspace ATF metadata.
Sun, Feb 2, 7:54 PM

Sun, Jan 26

igoro updated the diff for D48333: kyua: Support require.diskspace ATF metadata.

Update kyuafile.5 after landing of D48190

Sun, Jan 26, 5:54 PM
igoro committed rG68206add1173: kyuafile.5: ATF metadata mapping reference (authored by igoro).
kyuafile.5: ATF metadata mapping reference
Sun, Jan 26, 5:36 PM
igoro closed D48190: kyuafile.5: ATF metadata mapping reference.
Sun, Jan 26, 5:36 PM

Sat, Jan 25

igoro committed rGb40ca26721d7: kyua: Support is_exclusive metadata coming from an ATF test case (authored by igoro).
kyua: Support is_exclusive metadata coming from an ATF test case
Sat, Jan 25, 7:47 PM

Fri, Jan 24

igoro added a watcher for ZFS: igoro.
Fri, Jan 24, 8:43 AM
igoro added a member for DTrace: igoro.
Fri, Jan 24, 8:40 AM

Thu, Jan 23

igoro added inline comments to D47668: jail: Add meta and env parameters.
Thu, Jan 23, 10:06 PM
igoro updated the diff for D47668: jail: Add meta and env parameters.

Improve the comment regarding the retry mechansim

Thu, Jan 23, 10:04 PM

Jan 22 2025

igoro added inline comments to D47668: jail: Add meta and env parameters.
Jan 22 2025, 8:35 AM

Jan 6 2025

igoro added a reviewer for D47668: jail: Add meta and env parameters: jamie.
Jan 6 2025, 6:25 PM
igoro updated the diff for D47668: jail: Add meta and env parameters.

tests: Use recently added support of is.exclusive coming from ATF side

Jan 6 2025, 6:12 PM
igoro added a comment to D48333: kyua: Support require.diskspace ATF metadata.

This is a follow-up to https://reviews.freebsd.org/D48190, where it was discovered that this support is missing. It's obvious that our test suite does not use it, and this patch is for consistency and not to say "not mapped" in the kyuafile.5. Also, I found that Kyua 0.11 release notes state that it should work, so actually this is a fix.

Jan 6 2025, 12:22 PM
igoro requested review of D48333: kyua: Support require.diskspace ATF metadata.
Jan 6 2025, 12:17 PM
igoro added a comment to D48190: kyuafile.5: ATF metadata mapping reference.

I think submitting this upstream (freebsd/kyua) and filing an issue capturing the feedback/concerns would probably be ok.

Jan 6 2025, 10:01 AM
igoro added a comment to D48087: kyua: Add "prepare" command.
In D48087#1096440, @kp wrote:

One trivial remark about 'pip? # e.g. to have scapy installed'. We have a scapy package and that's how I've always installed it. Right now it's py311-scapy-2.6.1.

Jan 6 2025, 9:48 AM

Dec 27 2024

igoro added a comment to D48190: kyuafile.5: ATF metadata mapping reference.

It honestly seems like this documentation should live in another place, e.g., a "test driver" [1] (kyua-atf-driver(4)?) manpage. Putting all of this information in a single manpage seems like it would really clutter up what's being explained here, and the more "test drivers" get bolted on to kyua, the more complex the documentation will become.

  1. I'm not sold on the name "test driver", but it's the best I can offer for the concept right now.
Dec 27 2024, 7:42 PM

Dec 24 2024

igoro added a comment to D48190: kyuafile.5: ATF metadata mapping reference.

This is a follow-up to https://reviews.freebsd.org/D47671, where we discussed documenting of the mapping.

Dec 24 2024, 12:06 PM
igoro requested review of D48190: kyuafile.5: ATF metadata mapping reference.
Dec 24 2024, 12:03 PM
igoro added a comment to D47671: kyua: Support is_exclusive metadata coming from an ATF test case.

If you could commit it directly to the freebsd/src:main, that would be helpful :) (I think it's better to get it in sooner so it gets some bake time on FreeBSD).

Dec 24 2024, 8:43 AM
igoro closed D47671: kyua: Support is_exclusive metadata coming from an ATF test case.
Dec 24 2024, 8:40 AM
igoro committed rG2ed24e28d1d9: kyua: Support is_exclusive metadata coming from an ATF test case (authored by igoro).
kyua: Support is_exclusive metadata coming from an ATF test case
Dec 24 2024, 8:40 AM

Dec 22 2024

igoro updated the diff for D48087: kyua: Add "prepare" command.

Now the wording is away from the internals and closer to the end users:

> ./kyua help | grep prepare
  prepare                 Prepare env and resolve requirements before testing.
Dec 22 2024, 7:12 PM
igoro added a comment to D48087: kyua: Add "prepare" command.

My current favorite is the prepare term proposed by Kristof. So, I've changed it in the latest version of the patch for the sake of further testing and discussion. Everything is open for renaming. The internals still use requirement resolver terminology, I could not quickly find the replacement and probably it's not needed due to "prepare" is kind of higher level, anyway this is the encapsulated part with the only exposure via CLI help output.

Dec 22 2024, 3:46 PM
igoro updated the diff for D48087: kyua: Add "prepare" command.

Rename "kyua rr" to "kyua prepare"; Drop "kyua test --rr"

Dec 22 2024, 3:11 PM
igoro retitled D48087: kyua: Add "prepare" command from kyua: Add requirement resolver concept to kyua: Add "prepare" command.
Dec 22 2024, 3:10 PM

Dec 20 2024

igoro updated the diff for D47668: jail: Add meta and env parameters.

Make keyvalue_contention test case more accurate

Dec 20 2024, 9:24 PM
igoro updated the diff for D47668: jail: Add meta and env parameters.

Tiny code improvements, no functional change

Dec 20 2024, 9:15 PM

Dec 19 2024

igoro updated the diff for D47668: jail: Add meta and env parameters.

Add keyvalue_contention test case

Dec 19 2024, 3:01 PM

Dec 18 2024

igoro updated the diff for D47668: jail: Add meta and env parameters.

Fix jm_h_cut_occurrences() logic

Dec 18 2024, 9:01 PM
igoro updated the diff for D47668: jail: Add meta and env parameters.

libjail: Correctly differentiate no<boolparam> from keyvalue-based ones

Dec 18 2024, 5:22 PM
igoro updated the summary of D47668: jail: Add meta and env parameters.
Dec 18 2024, 4:14 PM
igoro updated the diff for D47668: jail: Add meta and env parameters.

Each buffer can be handled as a set of key=value\n strings

Dec 18 2024, 4:11 PM

Dec 16 2024

igoro added a comment to D48087: kyua: Add "prepare" command.

By the way, now I'm leaning towards resolve subcommand as you mentioned:

> kyua resolve kmods
> kyua test { --resolve | -r } kmods testprog
Dec 16 2024, 10:46 AM
igoro added a comment to D48087: kyua: Add "prepare" command.

As usual, I will quibble a bit about naming - the kyua subcommands are mostly english words, so "rr" is a bit odd. Why not "resolve" or even "resolve-requirements" (or "resolve-reqs")?

Dec 16 2024, 9:47 AM

Dec 15 2024

igoro added reviewers for D48087: kyua: Add "prepare" command: markj, kp, ngie, tests.
Dec 15 2024, 1:56 AM
igoro added a comment to D48087: kyua: Add "prepare" command.

This is the very first working version of the Project B: https://lists.freebsd.org/archives/freebsd-testing/2024-November/000395.html.

Dec 15 2024, 1:54 AM
igoro requested review of D48087: kyua: Add "prepare" command.
Dec 15 2024, 1:38 AM

Dec 14 2024

igoro added a comment to D47671: kyua: Support is_exclusive metadata coming from an ATF test case.

Thanks! Please update the differential revision with the tests. Memory serves me correctly, CI on main might start failing if the tests aren't introduced.

Dec 14 2024, 5:40 PM
igoro added a comment to D47671: kyua: Support is_exclusive metadata coming from an ATF test case.

Please open a PR against freebsd/atf .
Also: this deserves a test (upstream).

Dec 14 2024, 12:32 PM

Dec 13 2024

igoro added a comment to D47668: jail: Add meta and env parameters.
  • The allowed chars for each buffer are very limited by default, it covers Base64, k=v\n format, and some extra bytes. It can be changed via security.jail.meta_allowedchars sysctl. For convenience (as it seems to me for now), setting it to an empty string allows everything.

Why is this a kernel issue? Aside from NUL, because it preserves the C-string nature, allowed characters would seem only to be a concern on the user side.

Dec 13 2024, 7:18 PM
igoro added a comment to D47671: kyua: Support is_exclusive metadata coming from an ATF test case.

The change itself looks fine to me, but don't we need to document this somewhere?

Dec 13 2024, 7:04 PM
igoro added a comment to D47668: jail: Add meta and env parameters.

The latest update aggregates the recent discussions:

  • Rename metaext/metaint to meta/env. meta is expected to be used for "tagging" and hidden from the jail. env is intended for "configuring" and readable by the jail through security.jail.env sysctl.
  • The allowed chars for each buffer are very limited by default, it covers Base64, k=v\n format, and some extra bytes. It can be changed via security.jail.meta_allowedchars sysctl. For convenience (as it seems to me for now), setting it to an empty string allows everything.
  • The tests and man page are upgraded respectively.
Dec 13 2024, 6:10 PM
igoro updated the summary of D47668: jail: Add meta and env parameters.
Dec 13 2024, 6:01 PM
igoro added a reviewer for D47668: jail: Add meta and env parameters: security.
Dec 13 2024, 6:00 PM
igoro updated the diff for D47668: jail: Add meta and env parameters.

Rename to meta/env, add meta_allowedchars.

Dec 13 2024, 5:58 PM
igoro retitled D47668: jail: Add meta and env parameters from jail: Add meta parameter to jail: Add meta and env parameters.
Dec 13 2024, 5:42 PM

Dec 3 2024

igoro added a comment to D46653: kyua: Do not count skipped as passed in test cmd.

Regarding the change proposed on the GitHub PR. I think it's better to merge the existing PR to keep FreeBSD src/contrib/kyua and the github/freebsd/kyua in sync with absolutely the same commit. And I would open a new PR for the change requested with a reference to the previous GitHub discussion/PR. What do you think is the best here from the organizational perspective?

I don't think it would be a good idea to merge the PR as-is. I'm trying to avoid violating POLA as much as humanly possible for 0.14 and taking a look at the output definitely violates POLA. There are enough Linux/MacOS things to deal with -- I'd rather not get more questions with a UX change like has been made on main...

Dec 3 2024, 10:37 AM

Dec 2 2024

igoro added a comment to D46653: kyua: Do not count skipped as passed in test cmd.

For the record, stuff like this should really be committed to freebsd/kyua first, then backported. As of right now this change is not in what's intended to go in to 0.14 and in order to do the upgrade I would need to reapply this patch. I provided a ship-it earlier, but I was swayed by the comment in the PR about this change being confusing for naive results parsers: https://github.com/freebsd/kyua/pull/230 .

Dec 2 2024, 7:20 PM

Nov 28 2024

igoro closed D47824: devel/kyua: Keep IGNORE off until alignment with the dependent ports is complete.
Nov 28 2024, 12:48 PM
igoro committed R11:f0ec11ac76dc: devel/kyua: Keep IGNORE off until the alignment with other ports (authored by igoro).
devel/kyua: Keep IGNORE off until the alignment with other ports
Nov 28 2024, 12:48 PM
igoro added a comment to D47668: jail: Add meta and env parameters.

Yeah, it seems that on the Jail Call of 26-Nov we came to a conclusion that for now we would keep it very simple like two buffers per jail managed from the user-land side, while keeping a wide spectrum of opportunities to extend it in the future having a more specific production need in mind. Thus, we can postpone thinking about extra complexity on the kernel side.

If I had managed to make that call, I have to say that at least the conclusion wouldn't have been unanimous. The single blob is indeed simpler to implement, but not simpler to use. Still, you mention extension, and that's a possibility. I'm thinking something like:

meta="foo=bar\0baz=bletch"
meta.foo="bar"
meta.baz="bletch"

Nov 28 2024, 9:43 AM
igoro requested review of D47824: devel/kyua: Keep IGNORE off until alignment with the dependent ports is complete.
Nov 28 2024, 8:22 AM

Nov 27 2024

igoro added a comment to D47668: jail: Add meta and env parameters.

It seems there is an agreement to split it onto two buffers per jail: both are readable by parent jail, while only one is readable by a jail itself. The updated patch reflects this concept. For now metaext and metaint naming is used as external/internal concept. The naming is open for discussion.

There is a third useful combination: (privileged) access host access only e.g. as a place to store API token or similar things without ever writing them to a file.

The problem having a fixed set of sysctls with with their designated access permissions is that all accesses have to go through a single writer and use the same data format because a single sysctl is just one string. This means anyone else is required closely coupled to that writer unless there is some standardised patch and query interface (e.g. JSON patch and JSON query) and I can't imagine anyone wanting to deal with that complexity. A flat key=value store avoids this by allowing multiple writers to lay exclusive claim to their part of the keyspace, but it doesn't absolve the need for access control.

Nov 27 2024, 3:02 PM

Nov 26 2024

igoro updated the summary of D47668: jail: Add meta and env parameters.
Nov 26 2024, 5:58 PM

Nov 25 2024

igoro added a comment to D47668: jail: Add meta and env parameters.

It seems there is an agreement to split it onto two buffers per jail: both are readable by parent jail, while only one is readable by a jail itself. The updated patch reflects this concept. For now metaext and metaint naming is used as external/internal concept. The naming is open for discussion.

Nov 25 2024, 5:36 PM
igoro updated the diff for D47668: jail: Add meta and env parameters.

v2: Split onto two buffers per jail: external & internal

Nov 25 2024, 5:22 PM

Nov 24 2024

igoro added a comment to D47470: poc of atf_require_kld.

Great, I can continue from any point where you decide to stop and land your commits.

Nov 24 2024, 12:27 PM

Nov 22 2024

igoro updated the summary of D47332: sysctl: Revise meaning of CTLFLAG_PRISON.
Nov 22 2024, 7:53 PM
igoro added a comment to D47332: sysctl: Revise meaning of CTLFLAG_PRISON.

Thank you all for the discussion. I've refreshed the context for myself and I would like to share it:

  • We have got a new -J flag for sysctl(8). It filters the variables by CTLFLAG_PRISON.
  • It reminded me of a couple of existing sysctlS which are not listed with the -J flag.
  • That's because they are read-only (CTLFLAG_RD) without CTLFLAG_PRISON flag set. The reasoning follows.
  • The CTLFLAG_PRISON has been used as a way to allow jailed roots modify a sysctl. It works very simple way. If a sysctl sys call request means modification, i.e. a new buffer (the req->newptr) is provided, then the sys call will check if the user has PRIV_SYSCTL_WRITE privilege. It does not work for a jailed root, that's why the sys call will check for another privilege (PRIV_SYSCTL_WRITEJAIL) if the sysctl in question has CTLFLAG_PRISON flag set. That's the only use case for this flag for now.
  • And it's fine that read-only per-jail variables do not have this flag, it's not needed for them.
  • As long as I found this little inconsistency I proposed to update the meaning of this flag (sysctl.9) and add it to some read-only variables which are, kind of, expected to be found in the sysctl -aJ output.
Nov 22 2024, 7:45 PM
igoro updated the diff for D47332: sysctl: Revise meaning of CTLFLAG_PRISON.

Pivot the patch.

Nov 22 2024, 7:41 PM
igoro retitled D47332: sysctl: Revise meaning of CTLFLAG_PRISON from sysctl: Add missing CTLFLAG_PRISON to security.jail.children.* to sysctl: Revise meaning of CTLFLAG_PRISON.
Nov 22 2024, 7:39 PM

Nov 21 2024

igoro committed rG976ab1425da4: git-arc: Document how a reviewer group can be referenced (authored by igoro).
git-arc: Document how a reviewer group can be referenced
Nov 21 2024, 10:39 AM
igoro closed D47669: git-arc: Document how a reviewer group can be referenced.
Nov 21 2024, 10:39 AM
igoro added inline comments to D47669: git-arc: Document how a reviewer group can be referenced.
Nov 21 2024, 10:35 AM
igoro retitled D47669: git-arc: Document how a reviewer group can be referenced from git-arc: Document how a group of reviewers can be referred to to git-arc: Document how a reviewer group can be referenced.
Nov 21 2024, 10:33 AM

Nov 19 2024

igoro added a reviewer for D47671: kyua: Support is_exclusive metadata coming from an ATF test case: tests.
Nov 19 2024, 4:04 PM
igoro added a reviewer for D47671: kyua: Support is_exclusive metadata coming from an ATF test case: ngie.
Nov 19 2024, 1:17 PM
igoro added a comment to D47671: kyua: Support is_exclusive metadata coming from an ATF test case.

I would like to share my thoughts regarding this.

Nov 19 2024, 1:16 PM
igoro requested review of D47671: kyua: Support is_exclusive metadata coming from an ATF test case.
Nov 19 2024, 1:14 PM
igoro requested review of D47669: git-arc: Document how a reviewer group can be referenced.
Nov 19 2024, 11:44 AM
igoro updated the summary of D47668: jail: Add meta and env parameters.
Nov 19 2024, 10:54 AM
igoro updated the summary of D47668: jail: Add meta and env parameters.
Nov 19 2024, 10:54 AM
igoro added a comment to D47668: jail: Add meta and env parameters.

Currently, there is no accessible way to attach metadata to jails. This is commonly used elsewhere, for example in Kubernetes, to allow non-unique properties to enrich load balancers, schedulers, and volume provisioners to make more informed decisions.

Nov 19 2024, 10:44 AM
igoro requested review of D47668: jail: Add meta and env parameters.
Nov 19 2024, 10:40 AM

Nov 15 2024

igoro accepted D46689: LibAlias: implement RFC 4787 REQ 1 and 3 (full cone NAT).

Looks good to me too.

Nov 15 2024, 1:29 PM · network
igoro closed D47473: devel/kyua: Deprecate in favor of the base version.
Nov 15 2024, 12:56 PM · tests
igoro committed R11:20616e451e36: devel/kyua: Deprecate in favor of the base version (authored by igoro).
devel/kyua: Deprecate in favor of the base version
Nov 15 2024, 12:56 PM
igoro added inline comments to D47473: devel/kyua: Deprecate in favor of the base version.
Nov 15 2024, 12:51 PM · tests

Nov 12 2024

igoro added a comment to D47470: poc of atf_require_kld.

The email (https://lists.freebsd.org/archives/freebsd-testing/2024-November/000399.html) was understood to mean that you wanted to offer help with the development and were asking about a review. This was interpreted as a request to take over the project entirely, which is why I shared the full plan I intended to follow—to avoid prolonging the process, reduce the number of iterations, and clearly outline all expectations upfront. Please, let me know if you did not intend to work on this project and the email was misunderstood.

Nov 12 2024, 5:06 PM

Nov 9 2024

igoro added a comment to D47473: devel/kyua: Deprecate in favor of the base version.

I see the currently proposed change as the following outcome:

  • 13.x users should stay as is with old test suite and old Kyua from base or port/pkg. And the pkg is expected to be still cooked till 13 branch EOL.
  • 14.x users are expected to find kyua pkg missing after upgrade to the latest port branch. They are expected to do such upgrade with OS upgrade as well, i.e. up to 14.2, which has the test suite aligned with Kyua in its base. 14.0 and 14.1 users of older Q branches are expected to use the same older suite and pkg. Even if they upgrade only ports having old 14.0 or 14.1 then they still have the test suite runnable with Kyua in their base.
  • Just in case, the port is still available for anyone till 13 EOL (30 April 2026).
  • A port/pkg update is expected to show the deprecation notice. It should cover attended cases.
Nov 9 2024, 1:35 PM · tests
igoro updated the diff for D47473: devel/kyua: Deprecate in favor of the base version.

IGNORE it for 14.0+

Nov 9 2024, 1:29 PM · tests

Nov 8 2024

igoro added a comment to D47470: poc of atf_require_kld.

Thank you for working on this. If you plan to go ahead then please consider the following points.

Nov 8 2024, 11:25 AM
igoro added a comment to D47332: sysctl: Revise meaning of CTLFLAG_PRISON.

I had to double check the things. I've delved into the details and discovered that the existing code does not allow to use CTLFLAG_PRISON as a flag which means that a variable varies per jail. I've stumbled upon the *allow* variables like these ones:

SYSCTL_PROC(_security_jail, OID_AUTO, set_hostname_allowed,
     CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE,
     NULL, PR_ALLOW_SET_HOSTNAME, sysctl_jail_default_allow, "I",
     "Processes in jail can set their hostnames (deprecated)");
Nov 8 2024, 10:27 AM

Nov 7 2024

igoro updated the diff for D47473: devel/kyua: Deprecate in favor of the base version.

Bump PORTREVISION with the expectation that users will see the deprecation notice upon upgrade.

Nov 7 2024, 2:42 PM · tests
igoro added inline comments to D47473: devel/kyua: Deprecate in favor of the base version.
Nov 7 2024, 2:27 PM · tests
igoro added inline comments to D47473: devel/kyua: Deprecate in favor of the base version.
Nov 7 2024, 2:25 PM · tests
igoro updated the diff for D47473: devel/kyua: Deprecate in favor of the base version.

Update the deprecation notice as suggested.

Nov 7 2024, 2:08 PM · tests
igoro updated the diff for D47473: devel/kyua: Deprecate in favor of the base version.

Please, check the updated patch as the follow-up of your email.

Nov 7 2024, 1:41 PM · tests
igoro requested review of D47473: devel/kyua: Deprecate in favor of the base version.
Nov 7 2024, 11:43 AM · tests

Oct 31 2024

igoro abandoned D44040: tests: use built-in require.progs instead of custom solution.

Covered by https://reviews.freebsd.org/D47334.

Oct 31 2024, 5:47 PM
igoro committed rG68e013783780: tests: Switch bin/hostname/hostname_test to execenv=jail (authored by igoro).
tests: Switch bin/hostname/hostname_test to execenv=jail
Oct 31 2024, 5:46 PM
igoro closed D47334: tests: Switch bin/hostname/hostname_test to execenv=jail.
Oct 31 2024, 5:46 PM