- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Advanced Search
Sep 21 2019
Sep 19 2019
Sep 18 2019
Sep 17 2019
My experience is not directly applicable. All I did was add kqueue support for /dev/fuse, not for files stored on fusefs, and I was only concerned with EVFILT_(READ|WRITE), not EVFILT_VNODE. I would suggest that before you continue working on this patch, you write a test case.
Sep 16 2019
Sep 15 2019
Sep 13 2019
Sep 12 2019
Sep 11 2019
Fix typo
Explicitly state that a timestamp may not be returned
Sep 9 2019
Sep 7 2019
In D21434#469719, @sucanjan_gmail.com wrote:Aha, to me it's similar to C++ templates. So there would be only one getopt loop at a source level, and two getopt loops at an object level. The two getopt loops (for the ping6's new option set and for the old one) would be called from a single source file like this:
if (strcmp(argv[0], "ping6") == 0) parse_old_options(); else parse_new_options();so the name of the parse function would also need to be parametrized to avoid conflicts of symbols at the object level.
Sep 6 2019
In D21434#469573, @sucanjan_gmail.com wrote:The single getopt loop would have to be parametrized at runtime. How do the preprocessor directives fit into this?
Sep 4 2019
In D21434#468839, @sucanjan_gmail.com wrote:Does it mean that there could be only one getopt loop with a variable getopt string for solving the compatibility problem?
Yes, exactly.
In this case there would have to be some syntactic check duplication in the getopt's switch-case. Some options were renamed according to the pattern (A ->B, B->C) so one case would contain syntactic check for option A and the other for both B and A. If only the case labels could have been non-constant.
In D21434#468697, @sucanjan_gmail.com wrote:I need to be sure I understand you correctly.
In D21434#468592, @asomers wrote:Since only a few options have changed, what about defining constants like #DEFINE ADDRTYPE_OPT 'k' before including options.h, and composing the getopt string like we already do with ADDOPTS.
Does it mean that there could be only one getopt loop with a variable getopt string for solving the compatibility problem?
Sep 3 2019
Add one more change that I forgot to save before starting the review
Since only a few options have changed, what about defining constants like #DEFINE ADDRTYPE_OPT 'k' before including options.h, and composing the getopt string like we already do with ADDOPTS. Then in options.c, for those options whose flags differ between the two programs, compose the error message at runtime.
So what's the plan for ping -6 vs ping? Are you going to have two different copies of options_parse?
Sep 1 2019
Yes, that's about what I had in mind. But did you intend to set f_sock_buff_size in the getopt loop?
Aug 31 2019
Aug 29 2019
Good catch. Looks like those have been dead code ever since r292373.
Aug 28 2019
In D21287#466723, @cem wrote:This approach looks technically correct to me, and it simplifies the logic, but there is definitely some microbenchmark cost to exiting to userspace every retry instead of doing so "a few times" in the kernel (with some algorithm). But this is maybe just premature optimization on my part.
Aug 27 2019
Accomodate buggy or malicious fuse servers that always return ERANGE for
FUSE_LISTXATTR. Instead of restarting within the VOP; return ERESTART.
That way the blocked process will be killable.
In D21434#466423, @sucanjan_gmail.com wrote:I would also like to ask for help with copyright. What should I use if some code is not mine (mainly the #define directives) and some is?
Aug 26 2019
Aug 24 2019
Well, it fixes the build. But now the program segfaults.
The build fails on sparc64 and powerpcspe with this error. Weirdly, it passed on powerpc and powerpc64; I don't know why:
/home/asomers/freebsd/base/head/sbin/ping/ping.c: In function 'main': /home/asomers/freebsd/base/head/sbin/ping/ping.c:923: warning: cast increases required alignment of target type
You still need to add entries to UPDATING and ObsoleteFiles.inc. Other than that, it looks good.
Aug 23 2019
This revision needs to be rebased since the changes to -n and -H.
In D21377#465322, @sucanjan_gmail.com wrote:It will take me some time to find out why. On my system it builds. Could you please send me your main.c? It's interesting that there are double definitions of the functions.
Now it doesn't even build:
/usr/home/somers/freebsd/base/head/sbin/ping/main.c:249:1: error: redefinition of 'main' main(int argc, char *argv[]) ^ /usr/home/somers/freebsd/base/head/sbin/ping/main.c:59:1: note: previous definition is here main(int argc, char *argv[]) ^ /usr/home/somers/freebsd/base/head/sbin/ping/main.c:331:1: error: redefinition of 'usage' usage(void) ^ /usr/home/somers/freebsd/base/head/sbin/ping/main.c:141:1: note: previous definition is here usage(void) ^ 2 errors generated.
Oh, and you need to update rescue/rescue/Makefile, too.
Don't forget to add an entry to UPDATING and to ObsoleteFiles.inc