Page MenuHomeFreeBSD

glebius (Gleb Smirnoff)
User

Projects (6)

User Details

User Since
May 28 2014, 2:27 PM (609 w, 6 d)

Recent Activity

Today

glebius committed rG64f7e3c9c178: sockets: let protocols be responsible for socket buffer mutexes (authored by glebius).
sockets: let protocols be responsible for socket buffer mutexes
Tue, Feb 3, 5:10 PM
glebius closed D54984: sockets: let protocols be responsible for socket buffer mutexes.
Tue, Feb 3, 5:10 PM
glebius added a comment to D55064: bpf: don't clear pointer from descriptor to the tap on descriptor close.

Is bpf_chkdir() dereferencing a NULL d->bd_bif in net epoch ?

Tue, Feb 3, 5:07 PM

Yesterday

glebius added a comment to D54986: sys/conf: enable -fms-extensions for the kernel.

and if they do I believe they deserve to go on a treasure hunt

Mon, Feb 2, 10:10 PM
glebius requested review of D55064: bpf: don't clear pointer from descriptor to the tap on descriptor close.
Mon, Feb 2, 10:00 PM
glebius added a comment to D55061: netgraph/ksocket tests: Bind to IN6ADDR_LOOPBACK.

Oops, sorry. If the reviews.freebsd.org mailbox was open in mutt while I was fixing the test, then I would not jump in front of you.

Mon, Feb 2, 8:37 PM
glebius committed rG32c3723f0655: tests/netgraph: fix tests that depended on connect(in6addr_any) (authored by glebius).
tests/netgraph: fix tests that depended on connect(in6addr_any)
Mon, Feb 2, 8:16 PM
glebius added a comment to D54986: sys/conf: enable -fms-extensions for the kernel.

Oh, sorry for that. Let it be then -fms-extensions until -fms-anonymous-structs hits our version of clang. But for the files that need it.

Mon, Feb 2, 7:13 PM
glebius added a comment to D54986: sys/conf: enable -fms-extensions for the kernel.

First, let's talk about -fms-anonymous-structs then instead of -fms-extensions, cause the latter enables much more. Second, please don't use the fact that I added this flag back in 2015 for gcc as an argument. Gcc is our second tier compiler and back then this change was the least intrusive hack to allow us to go forward with C11 feature and still be compilable by back-then version of gcc. Actually, I should look if this change can be reverted today. Finally, the list of files you provided doesn't look scary to me. It is 12 modules out of more than 500.

Mon, Feb 2, 6:09 PM
glebius accepted D55059: ip6_mroute: Deindent some code in ip6_mdq().
Mon, Feb 2, 5:47 PM
glebius accepted D55058: ip_mroute: Try to make function pointer declarations more consistent.
Mon, Feb 2, 5:47 PM
glebius accepted D55057: ip_mroute: Use a local variable to store a VIF pointer.
Mon, Feb 2, 5:45 PM
glebius added a comment to D54986: sys/conf: enable -fms-extensions for the kernel.
In D54986#1258395, @bz wrote:
struct _bar {
        int x;
};

struct foo {
        struct _bar;
        int y;
};

struct foo.x = 17;

That's pretty evil! I don't think we should encourage that around the kernel. C11 anonymous unions & structs don't leave any space for ambiguity, they do quite the opposite. This extension looks pretty scary, as I may have x in bar and in baz, and then make both baz and bar member of foo.

that just fails with error: duplicate member 'x'

But it's funny given jhb in an email thread pointed out that it was you moving this globally enabled in the kernel for gcc in cc4a90c445aa04be36c3ef745cbe67fa339b94b5 . I don't think that commit did what you thought it would back then.

Mon, Feb 2, 5:36 PM
glebius added a comment to D54986: sys/conf: enable -fms-extensions for the kernel.
struct _bar {
        int x;
};
Mon, Feb 2, 5:04 PM
glebius added inline comments to D54443: if_gre: Add netlink support with tests.
Mon, Feb 2, 4:12 AM
glebius added a comment to D55015: ndp: Add support for Gratuitous Neighbor Discovery (GRAND).

I can't understand why do we need the global (pre-vnet) list. Can the queue just hang off the in6_ifaddr?

Mon, Feb 2, 4:09 AM
glebius accepted D52980: Update bcmp(3) manpage to following the Posix Standard.
Mon, Feb 2, 4:01 AM
glebius added a comment to D55031: netinet6: Pass IPv4-mapped ASM multicast joins/leaves to netinet..

Bruce, very glad to see you back!!!

Mon, Feb 2, 2:38 AM
glebius accepted D55032: socket.2: Cross-reference netintro(4).
Mon, Feb 2, 2:11 AM · manpages

Sat, Jan 31

glebius added inline comments to D54984: sockets: let protocols be responsible for socket buffer mutexes.
Sat, Jan 31, 5:20 PM
glebius updated the diff for D54984: sockets: let protocols be responsible for socket buffer mutexes.
  • Use rcvmtxopts as Mark suggests.
Sat, Jan 31, 5:17 PM

Fri, Jan 30

glebius accepted D54982: ip_mroute: Make privilege checking more consistent.
Fri, Jan 30, 9:41 PM
glebius accepted D54983: ip6_mroute: Make MF6CFIND a regular function.
Fri, Jan 30, 9:38 PM
glebius added a comment to D54948: bridge: Add checksum offloading.
Fri, Jan 30, 9:35 PM
glebius committed rG9df110b11f2d: tests/netinet: fix tests that depended on connect(in6addr_any) (authored by glebius).
tests/netinet: fix tests that depended on connect(in6addr_any)
Fri, Jan 30, 9:32 PM
glebius requested review of D54984: sockets: let protocols be responsible for socket buffer mutexes.
Fri, Jan 30, 9:23 PM
glebius added a comment to D54948: bridge: Add checksum offloading.

Might be off-topic. I have ever had an idea, that introducing SOFT checksum offload to all soft interfaces. The upper stack will see this and hand over the calculating of the checksums to the interfaces. The soft interfaces may calculate the checksums when absolutely necessary, or let the edge physical interfaces do the stuff when the packets are leaving the host. Then we can benefits the hardware checksum, or we have better icache locality ( batch processing the mbufs ) when doing soft checksum.

What do you think ?

Fri, Jan 30, 8:45 PM
glebius accepted D54941: rpc: correct resultproc_t's type.
Fri, Jan 30, 8:41 PM
glebius accepted D54940: clnt_broadcast(3): fix eachresult argument type.
Fri, Jan 30, 8:40 PM

Thu, Jan 29

glebius added a comment to D54940: clnt_broadcast(3): fix eachresult argument type.

Question on naming. I would read "resultproc" as "result process". What does "resultprot" stands for?

Thu, Jan 29, 5:06 PM
glebius accepted D54939: clnt_broadcast(3): don't free function pointers.
Thu, Jan 29, 5:05 PM
glebius added a reviewer for D54939: clnt_broadcast(3): don't free function pointers: jhb.
Thu, Jan 29, 4:57 PM
glebius accepted D54942: netinet6: Remove support for connecting to IN6ADDR_ANY.
Thu, Jan 29, 4:52 PM

Tue, Jan 27

glebius committed rG8a9508563542: tests/kern: make ssl_sendfile:truncate and ssl_sendfile:grow less flaky (authored by glebius).
tests/kern: make ssl_sendfile:truncate and ssl_sendfile:grow less flaky
Tue, Jan 27, 9:17 PM
glebius committed rG29c3350f395a: ipfw: fix my stupid error in casting void * to enum (authored by glebius).
ipfw: fix my stupid error in casting void * to enum
Tue, Jan 27, 6:03 PM
glebius committed rGd8a78048a246: ipfw: don't recurse on the upper half lock in ipfw_iface_ref() (authored by glebius).
ipfw: don't recurse on the upper half lock in ipfw_iface_ref()
Tue, Jan 27, 5:39 PM

Mon, Jan 26

glebius committed rGd1a8f1a62f31: ipfw: don't use the upper half lock to walk dynamic states buckets (authored by glebius).
ipfw: don't use the upper half lock to walk dynamic states buckets
Mon, Jan 26, 11:13 PM
glebius requested changes to D54896: tcp: report MSS correctly that subtracts TCP option length.

This is not correct. First, the TCP_MAXSEG set with setsockopt(2) should match TCP_MAXSEG later retrieved with getsockopt(2). It refers to configured MSS. Second, tcp_maxseg() determines current possible MSS to be used with cwnd calculations. The result of tcp_maxseg() maybe different depending on current state of SACK. Randall later added tcp_fixed_maxseg() that ignores SACK. I'd leave other congestions experts to judge which one is correct for cwnd calculations. But neither tcp_fixed_maxseg() will work correctly here, as would break setsockopt/getsockopt result.

Mon, Jan 26, 10:58 PM
glebius accepted D19960: Remove support for RFC2675.
Mon, Jan 26, 10:07 PM
glebius added a comment to D54573: bnxt: don't set media status if link is down.

@glebius Can I commit it with a 1-week MFC?

Mon, Jan 26, 10:05 PM
glebius added a comment to D54382: MFC sys/netinet6: Implement RFC 7217 (private stable addresses).

I don't plan to merge my changes.

Mon, Jan 26, 5:08 PM

Sun, Jan 25

glebius closed D54725: netinet6: store ND context directly in struct in6_ifextra.
Sun, Jan 25, 11:28 AM
glebius accepted D54785: witness: Provide facility to print detailed lock tree.
Sun, Jan 25, 3:11 AM

Fri, Jan 23

glebius committed rGf3de667137e9: netinet6: free in6_ifextra with epoch_call(9) (authored by glebius).
netinet6: free in6_ifextra with epoch_call(9)
Fri, Jan 23, 10:37 PM
glebius committed rGaa3bbc06e5f0: netinet6: embed struct scope6_id into struct in6_ifextra (authored by glebius).
netinet6: embed struct scope6_id into struct in6_ifextra
Fri, Jan 23, 10:37 PM
glebius committed rGcba9f88105c2: netinet6: embed struct mld_ifsoftc into struct in6_ifextra (authored by glebius).
netinet6: embed struct mld_ifsoftc into struct in6_ifextra
Fri, Jan 23, 10:37 PM
glebius committed rG576ee62dd2e5: netinet6: store ND context directly in struct in6_ifextra (authored by glebius).
netinet6: store ND context directly in struct in6_ifextra
Fri, Jan 23, 10:37 PM
glebius closed D54728: netinet6: free in6_ifextra with epoch_call(9).
Fri, Jan 23, 10:37 PM
glebius committed rG25a11d9805fc: netinet6: use in6_ifmtu() instead of IN6_LINKMTU() macro (authored by glebius).
netinet6: use in6_ifmtu() instead of IN6_LINKMTU() macro
Fri, Jan 23, 10:37 PM
glebius closed D54727: netinet6: embed struct mld_ifsoftc into struct in6_ifextra.
Fri, Jan 23, 10:37 PM
glebius closed D54726: netinet6: embed struct scope6_id into struct in6_ifextra.
Fri, Jan 23, 10:37 PM
glebius closed D54724: netinet6: use in6_ifmtu() instead of IN6_LINKMTU() macro.
Fri, Jan 23, 10:37 PM
glebius committed rG6857b3a04e59: netinet6: embed struct nd_ifinfo into struct in6_ndireq (authored by glebius).
netinet6: embed struct nd_ifinfo into struct in6_ndireq
Fri, Jan 23, 10:37 PM
glebius committed rG3182dc411788: netinet6: embed the counter(9) arrays in struct in6_ifextra (authored by glebius).
netinet6: embed the counter(9) arrays in struct in6_ifextra
Fri, Jan 23, 10:37 PM
glebius closed D54723: netinet6: embed the counter(9) arrays in struct in6_ifextra.
Fri, Jan 23, 10:36 PM
glebius closed D54722: netinet6: embed struct nd_ifinfo into struct in6_ndireq.
Fri, Jan 23, 10:36 PM
glebius updated the diff for D54725: netinet6: store ND context directly in struct in6_ifextra.

In in6_ifmtu() unroll the two level ternary operator into a more readable form.

Fri, Jan 23, 9:22 PM
glebius accepted D54848: divert: Update divert.4 to mention pf.
Fri, Jan 23, 9:13 PM
glebius accepted D54847: pf: Pass v6 packets to the divert socket.
Fri, Jan 23, 9:12 PM
glebius accepted D54846: pf tests: Set require.kmods in divert-to tests.
Fri, Jan 23, 9:12 PM
glebius accepted D54845: pf: Rationalize the ip_divert_ptr test.
Fri, Jan 23, 9:11 PM
glebius committed rG37d11fde8f58: tests/kern: add test for SSL_sendfile() (authored by glebius).
tests/kern: add test for SSL_sendfile()
Fri, Jan 23, 7:02 PM
glebius accepted D19960: Remove support for RFC2675.
Fri, Jan 23, 5:09 PM

Thu, Jan 22

glebius accepted D54109: netlink: use same cred as caller's cred similar to ifioctl.
Thu, Jan 22, 5:36 PM
glebius added a comment to D54785: witness: Provide facility to print detailed lock tree.

I agree with Kostik that this nice feature should be enabled by default.

Thu, Jan 22, 5:28 PM
glebius added inline comments to D54785: witness: Provide facility to print detailed lock tree.
Thu, Jan 22, 5:27 PM
glebius added inline comments to D54785: witness: Provide facility to print detailed lock tree.
Thu, Jan 22, 5:23 PM
glebius added a comment to D54820: sendfile(2): document that EINTR never happens on non-blocking socket.
In D54820#1253193, @kib wrote:

There is a call to kern_writev() on the socket, is it true that it never returns EINTR for non-blocking socket?

And, this sounds more like the bug than a useful feature. Slow (network) syscalls must be interruptible.

Thu, Jan 22, 2:59 PM
glebius requested review of D54820: sendfile(2): document that EINTR never happens on non-blocking socket.
Thu, Jan 22, 3:40 AM

Wed, Jan 21

glebius added a comment to D54382: MFC sys/netinet6: Implement RFC 7217 (private stable addresses).

JFYI: this patch will need some trivial adjustments after I land https://reviews.freebsd.org/D54725

Wed, Jan 21, 11:50 PM
glebius accepted D54763: Make sbin/ipfw on RELENG_14 compatible to ipfw kernel module on RELENG_15+.
Wed, Jan 21, 12:25 AM
glebius added a comment to D54763: Make sbin/ipfw on RELENG_14 compatible to ipfw kernel module on RELENG_15+.

To me the patch looks good enough. I can't approve the approach taken, that adds a future version tool to a stable/xx tree. This is up to releng as the main upgrade path gatekeeper and @jhb who requested the compatibility shim.

Wed, Jan 21, 12:25 AM

Tue, Jan 20

glebius accepted D54797: rpctls_impl.c: Use a direct cast to uintptr_t instead of __DECONST.
Tue, Jan 20, 5:43 PM
glebius added inline comments to D54763: Make sbin/ipfw on RELENG_14 compatible to ipfw kernel module on RELENG_15+.
Tue, Jan 20, 5:40 PM

Mon, Jan 19

glebius added inline comments to D54763: Make sbin/ipfw on RELENG_14 compatible to ipfw kernel module on RELENG_15+.
Mon, Jan 19, 6:45 PM
glebius accepted D54434: socket.2: Cross-reference protocol familiy man pages in section 4.

Looks great, thanks!

Mon, Jan 19, 6:31 PM · manpages

Sun, Jan 18

glebius committed rG76af334737b1: ipfw: fix !VIMAGE build (authored by glebius).
ipfw: fix !VIMAGE build
Sun, Jan 18, 5:53 AM

Sat, Jan 17

glebius added inline comments to D54434: socket.2: Cross-reference protocol familiy man pages in section 4.
Sat, Jan 17, 6:01 PM · manpages
glebius accepted D53786: netlink(4): add snl(3) to See Also section.

Approved!

Sat, Jan 17, 5:52 PM
glebius committed rG35caa56a329d: tests/ipfw: add a test for ipfw(4) log rules that write to bpf(4) (authored by glebius).
tests/ipfw: add a test for ipfw(4) log rules that write to bpf(4)
Sat, Jan 17, 4:10 AM
glebius committed rG65b4bf7a6e0d: ipfw: refactor how we store bpf tap points (authored by glebius).
ipfw: refactor how we store bpf tap points
Sat, Jan 17, 4:10 AM
glebius committed rG1a7b74d3125f: ipfw: in a vnet destructor use NET_EPOCH_WAIT() (authored by glebius).
ipfw: in a vnet destructor use NET_EPOCH_WAIT()
Sat, Jan 17, 4:10 AM
glebius committed rGb0c13e7e2446: ipfw: remove locking workarounds in the table code (authored by glebius).
ipfw: remove locking workarounds in the table code
Sat, Jan 17, 12:46 AM
glebius committed rG7eac31c83ee3: tests/ipfw: add a simple fuzzing test for ipfw tables (authored by glebius).
tests/ipfw: add a simple fuzzing test for ipfw tables
Sat, Jan 17, 12:46 AM
glebius committed rGe3caa360d5d0: ipfw: make the upper half lock sleepable (authored by glebius).
ipfw: make the upper half lock sleepable
Sat, Jan 17, 12:46 AM
glebius closed D54580: ipfw: remove locking workarounds in the table code.
Sat, Jan 17, 12:46 AM
glebius closed D54579: tests/ipfw: add a simple fuzzing test for ipfw tables.
Sat, Jan 17, 12:46 AM
glebius closed D54535: ipfw: make the upper half lock sleepable.
Sat, Jan 17, 12:46 AM
glebius closed D54721: net: on interface detach purge all its routes before detaching protocols.
Sat, Jan 17, 12:46 AM
glebius committed rGf102a1834933: net: on interface detach purge all its routes before detaching protocols (authored by glebius).
net: on interface detach purge all its routes before detaching protocols
Sat, Jan 17, 12:45 AM

Fri, Jan 16

glebius added a comment to D54726: netinet6: embed struct scope6_id into struct in6_ifextra.

I have very little idea about that. I'm just working on making interfaces detach more safe and I want in6_ifextra to be a single piece of memory which would have delayed reclamation.

Fri, Jan 16, 7:00 PM

Thu, Jan 15

glebius committed rG51786cdeb07c: sockets: remove unused pr_sosend_notsupp(), pr_soreceive_notsupp() (authored by glebius).
sockets: remove unused pr_sosend_notsupp(), pr_soreceive_notsupp()
Thu, Jan 15, 9:58 PM
glebius committed rG77f453e9f9ca: tests/if_ovpn: add missing cleanup to the multihome6 test (authored by glebius).
tests/if_ovpn: add missing cleanup to the multihome6 test
Thu, Jan 15, 9:41 PM
glebius committed rGf9ae08a88924: linux: on vnet detach call clean_unrhdr(9) always (authored by glebius).
linux: on vnet detach call clean_unrhdr(9) always
Thu, Jan 15, 9:41 PM
glebius added a reviewer for D54725: netinet6: store ND context directly in struct in6_ifextra: madpilot.
Thu, Jan 15, 5:36 AM
glebius added a comment to D54636: rtadvd: add multi pref64 support.

@glebius should these minor changes to the manual be approved by the manpages group?

Thu, Jan 15, 3:37 AM
glebius requested review of D54728: netinet6: free in6_ifextra with epoch_call(9).
Thu, Jan 15, 3:25 AM
glebius requested review of D54727: netinet6: embed struct mld_ifsoftc into struct in6_ifextra.
Thu, Jan 15, 3:25 AM
glebius requested review of D54726: netinet6: embed struct scope6_id into struct in6_ifextra.
Thu, Jan 15, 3:25 AM
glebius requested review of D54725: netinet6: store ND context directly in struct in6_ifextra.
Thu, Jan 15, 3:25 AM