Page MenuHomeFreeBSD

jason_zx2c4.com (Jason A. Donenfeld)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 14 2021, 8:54 PM (154 w, 1 d)

Recent Activity

Mon, Mar 18

jason_zx2c4.com added a comment to D37404: wg.8: Rewrite the manual page.
In D37404#1012430, @gbe wrote:

@des I am not sure how to handle the angle brackets. To remove them is the easy part, but that would change the output of what is currently upstream.

@jason_zx2c4.com would you be fine with the removal?

Mon, Mar 18, 12:14 AM

Feb 27 2024

jason_zx2c4.com added a comment to D37404: wg.8: Rewrite the manual page.

What ever happened to submitting this upstream in parts, as I described above in my first comment?

Feb 27 2024, 12:50 PM

Nov 24 2022

jason_zx2c4.com added a comment to D37404: wg.8: Rewrite the manual page.

I think this idea is fine, and I would like to upstream things as much as possible, since that currently what in base is mostly the same as upstream.

Is it possible for us to accommodate both Linux and FreeBSD parts in one wg(8) page? Most parts of the wg(8) are still sharable between platforms. I think we have some ways:

  1. Mention everything in the manual page, e.g.,
SEE ALSO

On Linux:  wg-quick(8), ip(8), ip-link(8), ip-address(8), ip-route(8).
On FreeBSD: netstat(1), ifconfig(8), route(8)
  1. If there are more and more difference, Let's split the manual pages into platform independent and platform dependent parts, i.e.: wg(8), wg-linux(8), wg-freebsd(8),
  1. If 2) looks scary or inconvenient to the users (seems so), we can have a simple pre-procressor to process 1) and accept platform as a parameter to generate the final file we want.

I think at this stage, 1) should be sufficient and let's try to avoid going to 2) and 3) in the future.

Nov 24 2022, 5:21 PM

Nov 17 2022

jason_zx2c4.com added a comment to D37404: wg.8: Rewrite the manual page.
In D37404#850530, @pauamma wrote:

Would replacing the roff(7) typographic markup with mdoc(7) semantic markup (in a future change if not here) be too much for upstream to take?

Nov 17 2022, 7:46 PM
jason_zx2c4.com added inline comments to D37404: wg.8: Rewrite the manual page.
Nov 17 2022, 7:44 PM
jason_zx2c4.com added a comment to D37404: wg.8: Rewrite the manual page.

Frankly, I'm not comfortable with taking -this- much of a diff without looping in upstream in advance -- the SEE ALSO proposal was reasonable, though. Adding Jason in on this.

Nov 17 2022, 7:43 PM

May 19 2021

jason_zx2c4.com added a comment to D28136: Make sure user-space calls are drained when detaching network interfaces..

Some kernel drivers call ifhwioctl() from under a mutex. Just grep for it in sys/

May 19 2021, 1:35 PM
jason_zx2c4.com added a comment to D28136: Make sure user-space calls are drained when detaching network interfaces..

We need to tweak this a little bit. There appears to be some sleepable mutex after non-sleepable mutex issues here.

May 19 2021, 1:16 PM

May 18 2021

jason_zx2c4.com accepted D28136: Make sure user-space calls are drained when detaching network interfaces..

Seems clean and simple to me. Nice improvement over the last revision. Let's merge this.

May 18 2021, 4:09 PM
jason_zx2c4.com added a comment to D28136: Make sure user-space calls are drained when detaching network interfaces..

Sure, that approach works fine too, and amounts to the same thing you'd arrive at with SRCU or epoch.

May 18 2021, 3:32 PM
jason_zx2c4.com added a comment to D28136: Make sure user-space calls are drained when detaching network interfaces..

Another approach would be to add SX_NOASSERTS (in addition to SX_NOWITNESS), which would skip those KASSERTs and such.

May 18 2021, 3:26 PM
jason_zx2c4.com added a comment to D28136: Make sure user-space calls are drained when detaching network interfaces..

If you look at _sx_xunlock() you see there is an assert that same thread locks and unlocks.

May 18 2021, 3:14 PM
jason_zx2c4.com added a comment to D28136: Make sure user-space calls are drained when detaching network interfaces..

I don't think we want LinuxKPI stuff in core networking code, right?

May 18 2021, 2:47 PM
jason_zx2c4.com added a comment to D28136: Make sure user-space calls are drained when detaching network interfaces..

I just wrote up a workaround of calling WITNESS_DESTROY and INIT manually like the vfs code which would work but was hackish, and then realized....

May 18 2021, 2:46 PM
jason_zx2c4.com added a comment to D28136: Make sure user-space calls are drained when detaching network interfaces..

Ping - any more comments or ideas here?

May 18 2021, 2:29 PM

May 3 2021

jason_zx2c4.com edited reviewers for D30087: uipc_socket: add sogetsockaddr convenience function, added: network; removed: Core Team.
May 3 2021, 12:07 PM
jason_zx2c4.com edited reviewers for D30087: uipc_socket: add sogetsockaddr convenience function, added: Core Team; removed: markj, jhb.
May 3 2021, 11:55 AM
jason_zx2c4.com added a comment to D30087: uipc_socket: add sogetsockaddr convenience function.

I had previously sent this to freebsd-net, but I'm told phrabricator is a better place for it. Copy and pasting from: https://lists.freebsd.org/pipermail/freebsd-net/2021-April/058173.html :

May 3 2021, 8:25 AM
jason_zx2c4.com requested review of D30087: uipc_socket: add sogetsockaddr convenience function.
May 3 2021, 8:21 AM

Apr 20 2021

jason_zx2c4.com added a comment to D28136: Make sure user-space calls are drained when detaching network interfaces..

Jason, we could possibly use a SX lock too, but I need to check it a bit. SX locks have a WITNESS object when debuggin is enabled and needs to be destroyed.
In your example, you need to point out where to xunlock aswell, because I'm not sure if it is a good idea to destroy locked mutexes.

Apr 20 2021, 4:36 PM

Apr 14 2021

jason_zx2c4.com added a comment to D28136: Make sure user-space calls are drained when detaching network interfaces..

It looks like the idea here is to increment a reference during ioctl, drop it at the end of an ioctl, and never increment a reference if it decrements to zero. Then, when destroying, you can simply drop the final reference and then sleep-loop until the reference drops to zero before you move on freeing things.

Apr 14 2021, 9:34 PM