- User Since
- Nov 13 2017, 4:43 AM (96 w, 8 h)
Sat, Sep 7
Fri, Sep 6
Thu, Sep 5
Tue, Aug 27
Remove uninteded debug print.
Mon, Aug 26
Also print length with PRIu32.
Sun, Aug 25
Include zutil.h instead of zlib.h in order to pick up OS_CODE and DEF_MEM_LEVEL.
Sat, Aug 24
Fri, Aug 23
We have a last item - sys/kern/subr_compressor.c includes sys/zutil.h.
I attempted and saw crc32() API conflict between gsb_crc32.h and zutil.h.
I haven't got a chance this week, though.
Thu, Aug 22
Thank you for explanations.
I found and had looked at that git repo while reviewing this change.
However, I didn't have enough guts to look into each of repo history to figure out which one came from where.
That explains why all of ppp use Z_PACKET_FLUSH while really NONE uses Z_SYNC_FLUSH.
Sun, Aug 18
The change looks reasonable based on PPP protocol and comparison to existing zlib code.
Aug 17 2019
I will take a closer look.
I've never used nor looked into details of this API.
Please allow me a bit extra time for review.
Aug 15 2019
Aug 9 2019
Aug 8 2019
I haven't looked into FreeBSD extension of zlib yet to see if this change is safe.
I wasn't aware of swap partition being the the first in a slice was the case. All of my swaps have been either one of whole device, whole slice or non-first partition, or NFS files. No wonder I never encountered any issues over years even with this change on my local tree.
Aug 7 2019
Aug 6 2019
I found and have one more minor comment.
Aug 5 2019
Aug 4 2019
I agree with the changes.
Aug 3 2019
Expose functions from compress.c with modified MY_ZCALLC handling.
Aug 2 2019
Enhancce MY_ZCALLOC to expose functions in compress.c.
This also allows to use default zfree.
Given we added -DZ_SOLO to zlib, pass zfree function explicitly.
Expose compressBound() function even with -DZ_SOLO.
compress2() doesn't work with -DZ_SOLO and not worth exposing as is.
Alternative is improve MY_ZCALLOC conditions along with Z_SOLO for compress2 to work as well.
Given we added -DZ_SOLO to zlib, pass zfree function explicitly.
Aug 1 2019
I tested reads and writes on gzipped ZFS between 12.0-RELEASE and 13-CURRENT with this changes.
The test result was good.
Jul 31 2019
It looks ZFS changes, dropping zlib files in zfs, are melded into this one.
I recall needing to add -DGZIP and/or -DGUNZIP option for zfs compression=gzip to properly uncompress gzipped zfs devices with older version; there was gzip header regression...
Jul 30 2019
D21099 removed gzip'ed a.out support. Rebased and adjusted.
Someone mentioned https://svnweb.freebsd.org/base?view=revision&revision=231885 was trigger in one of the mailing list. Anyway, if that's true, it's been broken for 7 years.
Jul 29 2019
The changes look okay.
Jul 28 2019
D21072, "Remove support for kernel.tramp and kernel.tramp.gz", precedes this revision. This removes obsolete use of legacy zlib version.
Jul 27 2019
Jul 15 2019
Actually, this file rename doesn't fix https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=205822.
I don't think it is worth addressing this bug report here as removing the zlib in zfs also fixes this issue and we are aiming for this serious of changes.
Jul 13 2019
Disable broken gzipped aout executable support and rename zlib in ZFS to avoid filename conflicts.
Jul 11 2019
D20635 picked up the changes.
Jul 9 2019
Adjusted sys/type.h include to FreeBSD section and also moved crypto_z* function implementations to top of file.
Jul 7 2019
Drop NO_GZIP compile option changes in zlib as these aren't necessary at this stage.
I had missed zcalloc.c in sys/modules/Makefile, too.
Missed zcallc.h/c files from last update.
Drop -DMY_ZCALLOC from kmod.mk but put zcfree() back.
Jul 5 2019
Drop -DMY_ZCALLOC as no use under -DZ_SOLO.
Use -DZ_SOLO to avoid standard C header files.
ZFS requires Non-Z_SOLO ZLIB and we will revisit when we work on ZFS.
Combined opencrypto conversion to avoid dtrace probe name changes.
Jul 3 2019
I've been away and haven't been able to follow up or read updates on any of "swapoff" related changes for the last one week.
I won't be able to get back to this for another week; I will find the situations and figure out what to do later.
It is currently looking like Doug is finalizing changes based at quick look of incoming email titles. I appreciate your passion.
Jun 27 2019
Added sys/contrib/zlib/crc32.c to zlib kernel module.
Drop underscore from symbols - changed prefix from _zlib104 to zlib104.
Jun 21 2019
Removed commented code in Makefiles.
Jun 19 2019
crc32 split has been comitted and code rebased.
Xin committed this change with minor adjustments and https://svnweb.freebsd.org/base?view=revision&revision=349151 was the revision.
Jun 18 2019
Jun 17 2019
Jun 15 2019
Pick up Doug's patch for searcing multiple blocks and split code check-in mergess.
Jun 14 2019
Doung, thank you for your very prompt responses. I looked into more after kib concerned locks and Alan's comment. I think they are right and this code has issues. Indeed, swp_pager_meta_ctl() calls are very expensive. I also experience few other issues and trying to figure out. For example, I use VMWare on Mac for this testing these days compare to when I used physical machines when I originally made this change; VMWare stalls at high memory utilization and heavy host I/O. I will be traveling shortly, too.
https://svnweb.freebsd.org/ports?view=revision&revision=504002 removed from the port tree per https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=21519#c15
Jun 12 2019
Jun 7 2019
Move vm_object_pip_wakeup() and vm_pager_page_unswapped() back to swp_pager_force_pagein().
Change -= SWAP_META_PAGES to %= SWAP_META_PAGES.
Jun 6 2019
Revert back some changes.
I don't think swp_pager_find_continuous() was a good idea/implementation. I will revert it shortly.
Jun 5 2019
Thank you for taking a look.
Created swp_pager_find_continuous instead of calling swap_pager_haspage().
Jun 4 2019
Doug, thank you for elaboration.
Let's see how that approach works this time.
When I started and tried, it wasn't as easy and I decided to take advantages of existing functions.
Resolve conflicts, fix style, and break a function.
Jun 1 2019
May 31 2019
Exp-run info: https://www.freebsd.org/doc/en/articles/committers-guide/ports.html#ports-exp-run
For example https://bugs.freebsd.org/214864 is the exp-run I requested for lld.
I agree that there shouldn't be any ports using sys/dir.h still but it is still good to confirm that prior to the commit. (Here it's almost certainly been long enough that it's not necessary, but is a best practice.)
I'll ask in the #bsdports channel if anyone there thinks it's necessary.
I updated test case section with performance measurement.
What do you mean by "an exp-run?" I had made buildworld and buildkernel successful on i386. Universe will be better but I don't have enough disk space.
May 30 2019
May 29 2019
Fix KERN to GSB.
After research, I found that our crc32 functions are based on the code written
by Gary S Brown. We also have many other *crc32.[hc] files, too. Rather than,
prefixing with kern, prefix with his initial to honor his work.
It looks kern prefix is used for sub-systems.
May 25 2019