glebius (Gleb Smirnoff)
User

Projects

User Details

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

Recent Activity

Fri, Jan 5

glebius committed rS327596: In sendfile_iodone() both pru_abort and sorele need to be executed.
In sendfile_iodone() both pru_abort and sorele need to be executed
Fri, Jan 5, 8:21 PM

Dec 7 2017

glebius committed rS326673: Separate out send buffer autoscaling code into function, so that.
Separate out send buffer autoscaling code into function, so that
Dec 7 2017, 10:37 PM

Dec 6 2017

glebius committed rS326642: Garbage collect IFCAP_POLLING_NOCOUNT. It wasn't used since very.
Garbage collect IFCAP_POLLING_NOCOUNT. It wasn't used since very
Dec 6 2017, 11:03 PM
glebius committed rS326625: Fix crash with a dotless hostname..
Fix crash with a dotless hostname.
Dec 6 2017, 5:50 PM
glebius committed rS326608: Fix file missed in r326607..
Fix file missed in r326607.
Dec 6 2017, 12:45 AM
glebius committed rS326607: Reduce pollution via tmpfs.h..
Reduce pollution via tmpfs.h.
Dec 6 2017, 12:42 AM

Dec 5 2017

glebius committed rS326574: Generate fully RFC3164 compliant messages, with timestamp and hostname..
Generate fully RFC3164 compliant messages, with timestamp and hostname.
Dec 5 2017, 7:56 PM
glebius committed rS326573: When parsing remote messages, require them to have standard timestamp.
When parsing remote messages, require them to have standard timestamp
Dec 5 2017, 7:55 PM

Nov 28 2017

glebius committed rS326339: Revert r325558 as it is incorrect..
Revert r325558 as it is incorrect.
Nov 28 2017, 7:25 PM
glebius committed rS326338: Fix obvious NULL pointer dereference from r310350..
Fix obvious NULL pointer dereference from r310350.
Nov 28 2017, 7:18 PM
glebius committed rS326337: Revert r326103, as it appeared to be incorrect..
Revert r326103, as it appeared to be incorrect.
Nov 28 2017, 7:09 PM

Nov 22 2017

glebius committed rS326103: MFC r325558:.
MFC r325558:
Nov 22 2017, 9:20 PM

Nov 21 2017

glebius added a comment to D12914: Send a final ACK to local connections.

My fault, thanks for fixing.

Nov 21 2017, 10:53 PM

Nov 13 2017

glebius committed rS325782: Style r320614: don't initialize at declaration, new line after declarations,.
Style r320614: don't initialize at declaration, new line after declarations,
Nov 13 2017, 10:17 PM

Nov 8 2017

glebius committed rS325558: When parsing UDP messages skip optional hostname as described by.
When parsing UDP messages skip optional hostname as described by
Nov 8 2017, 4:46 PM

Oct 19 2017

glebius added a comment to D12404: Update tcpdump to 4.9.2..

D12405 looks good to me. Matches set of changed I had with 4.9.0. Is reduced actually, since tcpdump has incorporated some of our changes since.

Oct 19 2017, 10:15 PM
glebius accepted D12405: Diff showing stock tcpdump 4.9.2 vs FreeBSD 4.9.2.
Oct 19 2017, 10:12 PM
glebius added a comment to D12404: Update tcpdump to 4.9.2..

Hi! I think phabrickator is useless for such kinds of things. Did you follow instructions in vendor/tcpdump/FreeBSD-upgrade?

Oct 19 2017, 8:46 PM
glebius committed rS324767: Hide struct sockbuf from userland..
Hide struct sockbuf from userland.
Oct 19 2017, 6:04 PM

Oct 12 2017

glebius committed rS324569: Fix build after r324446..
Fix build after r324446.
Oct 12 2017, 9:27 PM

Oct 11 2017

glebius committed rS324539: Declare more TCP globals in tcp_var.h, so that alternative TCP stacks.
Declare more TCP globals in tcp_var.h, so that alternative TCP stacks
Oct 11 2017, 8:36 PM

Oct 10 2017

glebius requested changes to D12583: check so_error earlier in sosend_generic.
Oct 10 2017, 8:10 PM
glebius added a comment to D12583: check so_error earlier in sosend_generic.

SUS specifies ECONNRESET for write(2), but BSD systems never did that. SUS also specifies EPIPE, and doesn't provide any clue when ECONNRESET is preferred over EPIPE. They got very similar descriptions.

Oct 10 2017, 8:09 PM
glebius accepted D12633: match sendfile() error handling to send().

I'm sorry for accepting the previous patch too fast, without investing time into proper review.

Oct 10 2017, 8:03 PM
glebius accepted D12633: match sendfile() error handling to send().

My suggestion is to commit in two patches. First, revert r324405. Second, move of SS_ISCONNECTED check.

Oct 10 2017, 12:15 AM

Oct 9 2017

glebius committed rS324448: Improvements to sendfile(2) mbuf free routine..
Improvements to sendfile(2) mbuf free routine.
Oct 9 2017, 9:06 PM
glebius committed rS324447: In mb_dupcl() don't copy full m_ext, to avoid cache miss. Respectively,.
In mb_dupcl() don't copy full m_ext, to avoid cache miss. Respectively,
Oct 9 2017, 8:52 PM
glebius closed D12615: Mbuf external storage improvements..
Oct 9 2017, 8:35 PM
glebius committed rS324446: Shorten list of arguments to mbuf external storage freeing function..
Shorten list of arguments to mbuf external storage freeing function.
Oct 9 2017, 8:35 PM
glebius added a comment to D12615: Mbuf external storage improvements..

The change doesn't affect sfbufs at all.

Oct 9 2017, 2:29 PM

Oct 7 2017

glebius added a comment to D12615: Mbuf external storage improvements..

Yes, it will be. It is split in commits in my git repo.

Oct 7 2017, 3:29 PM

Oct 6 2017

glebius committed rS324374: Declare pmtud_blackhole global variables in tcp_timer.h, so that.
Declare pmtud_blackhole global variables in tcp_timer.h, so that
Oct 6 2017, 8:33 PM
glebius created D12615: Mbuf external storage improvements..
Oct 6 2017, 8:17 PM
glebius accepted D12575: Check so_error early in sendfile() call.
Oct 6 2017, 8:09 PM
glebius added a comment to D12551: ifnet(9): split ifc_alloc_unit() (should make code a bit cleaner)..

Can you please grab the PR? :)

Oct 6 2017, 8:07 PM

Oct 2 2017

glebius committed rP451103: Fix lsof build after src r324225..
Fix lsof build after src r324225.
Oct 2 2017, 11:31 PM
glebius committed rS324227: Hide struct socket and struct unpcb from the userland..
Hide struct socket and struct unpcb from the userland.
Oct 2 2017, 11:30 PM
glebius added inline comments to D12492: Ensure strict error handling of tcp_usr_send.
Oct 2 2017, 7:11 PM
glebius added a comment to D12501: count bytes in vn_sendfile when pru_send returns EAGAIN.

How is that possible that tcp_usr_send leads to tcp_connect and in_pcbbind? Shouldn't we get immediate ENOTCONN if we try to sendfile on a not connected socket?

Oct 2 2017, 6:41 PM
glebius added a comment to D12501: count bytes in vn_sendfile when pru_send returns EAGAIN.

That's an interesting finding! However, I don't like that we are blindly following write() or send() logic. Copy-pasting the ERESTART is definitely superfluous. I'm pretty sure that protocols shall never return that. More complex question is that why are we sure that EAGAIN confirms that all bytes sent were actually sent? Could be bug not in sendfile, but in write :) Let me dig more on that.

Oct 2 2017, 6:39 PM
glebius added a comment to D12551: ifnet(9): split ifc_alloc_unit() (should make code a bit cleaner)..

Does this fix this bug? https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=217401

Oct 2 2017, 6:27 PM

Sep 26 2017

glebius committed rS324033: Fix regression from r323855. The EXIT trap now isn't cleared, so upon.
Fix regression from r323855. The EXIT trap now isn't cleared, so upon
Sep 26 2017, 9:54 PM

Sep 16 2017

glebius committed rS323634: Merge r323552:.
Merge r323552:
Sep 16 2017, 2:32 AM

Sep 14 2017

glebius committed rS323594: Fix locking in soisconnected()..
Fix locking in soisconnected().
Sep 14 2017, 6:06 PM
glebius added a comment to D11003: Load balance sockets with new SO_REUSEPORT_LB option.

It is possible to separate white space changes from the rest of changes? Do you have this in git or are you using just modified subversion workdir?

Sep 14 2017, 5:56 PM

Sep 13 2017

glebius committed rS323566: Use soref() in sendfile(2) instead fhold() to reference a socket..
Use soref() in sendfile(2) instead fhold() to reference a socket.
Sep 13 2017, 10:11 PM
glebius committed rS323552: Fix two issues with not ready data in sockets (read: sendfile).
Fix two issues with not ready data in sockets (read: sendfile)
Sep 13 2017, 4:47 PM

Aug 31 2017

glebius committed rS323077: Do not abuse flag that is clearly marked as unused..
Do not abuse flag that is clearly marked as unused.
Aug 31 2017, 11:19 PM

Aug 24 2017

glebius committed rS322866: Garbage collect RT_NORTREF, which is no longer in use after FLOWTABLE removal..
Garbage collect RT_NORTREF, which is no longer in use after FLOWTABLE removal.
Aug 24 2017, 11:08 PM
glebius committed rS322858: Add a test case for a connection on accept queue that is reset before.
Add a test case for a connection on accept queue that is reset before
Aug 24 2017, 8:52 PM
glebius committed rS322856: Third take on the r319685 and r320480. Actually allow for call soisconnected().
Third take on the r319685 and r320480. Actually allow for call soisconnected()
Aug 24 2017, 8:49 PM

Aug 21 2017

glebius committed rS322764: Merge r322321:.
Merge r322321:
Aug 21 2017, 5:41 PM

Aug 18 2017

glebius committed rS322659: Fix cut and paste typo that prevented T5 firmware to be compiled in..
Fix cut and paste typo that prevented T5 firmware to be compiled in.
Aug 18 2017, 2:30 PM

Aug 9 2017

glebius committed rS322321: Plug uninitialized stack variable leak in sendfile(2)..
Plug uninitialized stack variable leak in sendfile(2).
Aug 9 2017, 5:49 PM
glebius requested changes to D11806: Enable IPSEC_SUPPORT..

Sorry for clicking wrong button. I'm seconding ae@: IPSEC_SUPPORT should remain, but IPSEC should be removed. The ipsec.ko and tcpmd5.ko should be loadable, not statically compiled in.

Aug 9 2017, 4:54 PM
glebius accepted D11806: Enable IPSEC_SUPPORT..
Aug 9 2017, 4:13 PM

Jun 25 2017

glebius committed rS320324: Provide sbsetopt() that handles socket buffer related socket options..
Provide sbsetopt() that handles socket buffer related socket options.
Jun 25 2017, 1:41 AM

Jun 15 2017

glebius committed rS319988: Plug read(2) and write(2) on listening sockets..
Plug read(2) and write(2) on listening sockets.
Jun 15 2017, 8:11 PM

Jun 14 2017

glebius committed rS319944: Check return value from soaccept()..
Check return value from soaccept().
Jun 14 2017, 4:13 PM

Jun 13 2017

glebius added a comment to D11137: PF: implement RFC 4787 REQ 1 and 3 (full cone NAT).

Did a style review, now working on understanding the gist of changes.

Jun 13 2017, 12:10 AM

Jun 12 2017

glebius added a comment to D11156: uep(4): add evdev support.

The change consist also some changes to the protocol. Some new bits are parsed. I'm pretty sure that my particular device doesn't have any pressure. All I can do is to confirm that my device is still working.

Jun 12 2017, 9:46 PM
glebius added a comment to D11156: uep(4): add evdev support.

Ack. Will test before 1st of July.

Jun 12 2017, 9:40 PM
glebius committed rS319880: Remove myself..
Remove myself.
Jun 12 2017, 9:31 PM
glebius committed rS319879: Save SA-17:03, SA-17:04 patches..
Save SA-17:03, SA-17:04 patches.
Jun 12 2017, 9:31 PM
glebius committed rS319878: Going to commit large patches to user/cperciva/freebsd-update-build..
Going to commit large patches to user/cperciva/freebsd-update-build.
Jun 12 2017, 9:30 PM
glebius committed rS319877: Add 11.1-BETA1 configuration..
Add 11.1-BETA1 configuration.
Jun 12 2017, 9:27 PM
glebius committed rS317061: - Remove 'struct vmmeter' from 'struct pcpu', leaving only global vmmeter.
- Remove 'struct vmmeter' from 'struct pcpu', leaving only global vmmeter
Jun 12 2017, 1:28 PM
glebius closed D10156: use counter(9) in vmmeter by committing rS317061: - Remove 'struct vmmeter' from 'struct pcpu', leaving only global vmmeter.
Jun 12 2017, 1:28 PM

Jun 10 2017

glebius added a comment to D11111: Hide struct unpcb under #ifdef _KERNEL..

I had this dialogue with jhb@ before. To not repeat myself, please read these two emails.

Jun 10 2017, 6:45 PM

Jun 9 2017

glebius closed D9770: Listening sockets revamp try #2. by committing rS319722: Listening sockets improvements..
Jun 9 2017, 8:00 PM
glebius committed rS319722: Listening sockets improvements..
Listening sockets improvements.
Jun 9 2017, 8:00 PM
glebius committed rS319754: Fix stat(2) on a listening socket..
Fix stat(2) on a listening socket.
Jun 9 2017, 3:55 PM
glebius added a comment to D11111: Hide struct unpcb under #ifdef _KERNEL..

I'm going to write python scripts for gdb.

Jun 9 2017, 3:52 PM
glebius created D11111: Hide struct unpcb under #ifdef _KERNEL..
Jun 9 2017, 7:44 AM
glebius added a comment to D10863: Add the action structure size (in words) to the sub-header..

Oh, they use struct pfsync_state. :( So we are limited to 512 byte subheaders for the time being of this 5.x protocol.

Jun 9 2017, 4:04 AM

Jun 8 2017

glebius committed rS319727: MFC r317806:.
MFC r317806:
Jun 8 2017, 10:13 PM
glebius committed rS319726: MFC r318677:.
MFC r318677:
Jun 8 2017, 10:12 PM
glebius committed rS319724: When we are in UMA_STARTUP use startup_alloc() for any zone, not for.
When we are in UMA_STARTUP use startup_alloc() for any zone, not for
Jun 8 2017, 9:33 PM
glebius abandoned D10156: use counter(9) in vmmeter.
Jun 8 2017, 9:28 PM
glebius added a comment to D10863: Add the action structure size (in words) to the sub-header..

I apologize, Marcel. Didn't notice the update. So, what do you plan to add for compatibility with older FreeBSD versions? My suggestion is that if we ever receive a bulk update request with version 5.0, we must downgrade to version 5.0. If this is implemented, I am all for this change.

Jun 8 2017, 5:31 PM
glebius requested changes to D10863: Add the action structure size (in words) to the sub-header..

Actually my comment was an objection. And you read me wrong on compatibility history. All FreeBSD versions that support pfsync, starting with FreeBSD 5.4 and ending in FreeBSD 12.0 are compatible. They are also compatible with OpenBSD versions that used protocol version 5.

Jun 8 2017, 3:43 PM
glebius added a comment to D9770: Listening sockets revamp try #2..

I plan to commit this tomorrow.

Jun 8 2017, 6:50 AM
glebius updated the diff for D9770: Listening sockets revamp try #2..
  • Fix check for the listen queue overflow. We shall not do this
  • Revert unnecessary changes to syncache KPI.
  • Put back SO_ACCEPTFILTER on the listening socket. It is inherited by
  • Copy so_options holding the lock. This closes race with accept
  • Two unrelated changes: accept filter teardown and close race.
  • Fix a degenerate case when soisdisconnected() would call soisconnected().
  • Improve fe263daf185e1b88691f9d1df5c92b56a496e050: check sol_accept_filter
Jun 8 2017, 6:47 AM
glebius committed rS319687: This code was missing socket unlock and socket buffer lock, but it.
This code was missing socket unlock and socket buffer lock, but it
Jun 8 2017, 6:37 AM
glebius committed rS319686: The desired lock here is socket buffer, not socket..
The desired lock here is socket buffer, not socket.
Jun 8 2017, 6:34 AM
glebius committed rS319685: Fix a degenerate case when soisdisconnected() would call soisconnected()..
Fix a degenerate case when soisdisconnected() would call soisconnected().
Jun 8 2017, 6:17 AM
glebius committed rS319684: Make the test to leave one connection on the incomplete queue.
Make the test to leave one connection on the incomplete queue
Jun 8 2017, 6:14 AM
glebius committed rS319683: Improve this unit test: make sure that the accept filter actually works..
Improve this unit test: make sure that the accept filter actually works.
Jun 8 2017, 5:12 AM

Jun 7 2017

glebius committed rS319641: Provide typedef for socket upcall function..
Provide typedef for socket upcall function.
Jun 7 2017, 1:48 AM
glebius committed rS319640: Remove a piece of dead code..
Remove a piece of dead code.
Jun 7 2017, 1:21 AM

Jun 2 2017

glebius updated the diff for D9770: Listening sockets revamp try #2..

Merge remote-tracking branch 'FreeBSD/master' into solisten

Jun 2 2017, 8:52 PM
glebius committed rS319505: Rename accept filter getopt/setopt functions, so that they are prefixed.
Rename accept filter getopt/setopt functions, so that they are prefixed
Jun 2 2017, 5:49 PM
glebius committed rS319504: Style: unwrap lines that doesn't have a good reason to be wrapped..
Style: unwrap lines that doesn't have a good reason to be wrapped.
Jun 2 2017, 5:44 PM
glebius committed rS319503: Remove write only flag UNP_HAVEPCCACHED..
Remove write only flag UNP_HAVEPCCACHED.
Jun 2 2017, 5:39 PM
glebius committed rS319502: For UNIX sockets make vnode point not to the socket, but to the UNIX PCB,.
For UNIX sockets make vnode point not to the socket, but to the UNIX PCB,
Jun 2 2017, 5:31 PM

Jun 1 2017

glebius updated the diff for D9770: Listening sockets revamp try #2..
  • Merge commit '153f9fe91de8a2d0aa5910076e983a7c9d76100a' into solisten
  • Check if socket is not listening or is listening with queue overflow.
  • SOCK_LOCK is no longer synonym for locking receive socket buffer.
  • Access to so_error and to receive socket buffer are not protected
  • Allow listening on 1-to-many sockets, but not actually convert them
  • Merge commit 'f92f6763f17a7dff5cd5e4b96b5c433c33931811' into solisten
  • Use the SCTP_PCB_FLAGS_ACCEPTING flags to check for listeners.
Jun 1 2017, 8:26 PM
glebius committed rS319450: As old prophecy says, some day UMA_DEBUG printfs shall be made CTRs..
As old prophecy says, some day UMA_DEBUG printfs shall be made CTRs.
Jun 1 2017, 6:36 PM
glebius committed rS319448: Simplify boot pages management in UMA..
Simplify boot pages management in UMA.
Jun 1 2017, 6:27 PM

May 24 2017

glebius committed rS318793: o Rearrange struct inpcb fields to optimize the TCP output code path.
o Rearrange struct inpcb fields to optimize the TCP output code path
May 24 2017, 5:47 PM
glebius closed D10686: Improve layout of struct inpcb by committing rS318793: o Rearrange struct inpcb fields to optimize the TCP output code path.
May 24 2017, 5:47 PM